Wednesday, July 2, 2014

Information System Development

`
SDLC (System Development Life Cycle)

Phases: 

 1. Planning 

• Set project scope, develop project plan, conduct feasibility analysis 
• translating strategic and organizational goals into systems development initiatives 
• Aligning organizational goals and IS goals 
• Critical for successful systems development effort 
• Developing a competitive advantage 
• Creative analysis 
• New approaches to existing problems 
• Critical analysis 
• Unbiased, careful questioning of relationship among system elements 

2. analysis 
• Analyze the information needs of customers, employees, and other business stakeholders. Analyze the present system. 
• Develop functional requirements 
• What type of information does each business activity require? 
• Format, volume, frequency, response times 
• What are the information processing capabilities required? 
• Input, processing, output, storage, control 

Data Analysis
• Data modeling
– Entity-relationship (ER) diagrams
• Activity modeling
– Data-flow diagram (DFD)
• Symbols: data-flow line, process, entity, data store
• Application flowcharts
• Grid charts
• CASE tools
3. design 
• Input design, Process design, Output design 
• Design technical architecture and system models 
• Design style sheets, Design documents templates, Choose algorithms and data structures for
implementation, Choose technologies, Design databases. 
• Focuses on supporting the interactions between end users and the computer-based applications 
• Display screens, Interactive user/computer dialogues, Audio responses, Forms, documents, and reports 

4. Develop 
• Develop technical architecture, build databases and programs (coding) 

5. Test 
• Write test conditions 
• Perform testing 

6. Implement 
• Acquisition of Hardware and Software

Hardware Evaluation Factors
Software Evaluation Factors
performance
Quality
Cost
Efficiency
Reliability
Flexibility
Compatibility
Security
Technology
Connectivity
Ergonomics
Language
Connectivity
Documentation
Scalability
Hardware
Software
Other factors (Same as hardware evaluation factors)
Overall rating
Overall rating

• System conversion
• Plunge
• Parallel
• Phased
• Pilot
7. Support/Maintain 
• react to changes in user needs 
• keep system viable 
• not the last step
          the C in SDLC : stands for cycle 
– Maintenance 
• Post-implementation debugging 
• Updates 
• Adding postponed features
– User help
– Longest phase of system life cycle 



System Development Methodologies 

The water model
- traditionally, the developers have used the waterfall model.- As waterfall flows from the top to the bottom, the system model shows the development process from the 

top to the bottom in steps.
- As water does not rise from a lower level to a higher level, it is presumed that once a step in the model is over, it is not required to go back.
- This model fits well when the changes into the requirement specifications are not required frequently. The minor changes can be taken care of through a maintenance process or through small design changes.
- Advantages and Disadvantages of Insourcing/SDLC (Waterfall model)
- Advantages
o State of progress clear
o Good for project management
o Engineers know their tasks
o Development is (relatively) slow and deliberate
§ Results in solid, well-constructed systems
- Disadvantages
o Difficult (expensive) to accommodate change after process is underway
o Inflexible partitioning of the project into distinct stages
§ E.g., difficult to respond to changing customer requirements
o Therefore, model is most appropriate when requirements are well-understood 



The Spiral Model
• Build what you think you need
– Perhaps using the waterfall model
• Get a few users to help you debug it
– First an “alpha” release, then a “beta” release
• Release it as a product (version 1.0)
– Make small changes as needed (1.1, 1.2, ….)
• Save big changes for a major new release
– Often based on a total redesign (2.0, 3.0, …)
Some unpleasant Realities
• The waterfall model doesn’t work well
– Requirements usually incomplete or incorrect
• The spiral model is expensive
– Redesign leads to recoding and retesting

Prototyping model (RAD)
• Goal: explore requirements
– Without building the complete product
• Start with part of the functionality
– That will (hopefully) yield significant insight
• Build a prototype
– Focus on core functionality, not in efficiency
• Use the prototype to refine the requirements
• Repeat the process, expanding functionality
• An iterative approach
– Operational prototype: functioning prototype
• Accesses real data files, edits input data, makes necessary computations and comparisons, and produces real output
– Nonoperational prototype: a mock-up, or model
• Includes output and input specifications and formats
¥ The key difference between waterfall model and prototyping is that you produce a dummy system first.
¥ The dummy can be just a detailed interface; it can perform selected functions.
¥ Customer’s opinion on the dummy is incorporated for developing the final system 

• Advantages of Prototyping
– encourages user participation
– helps resolve discrepancies in requirements
– gives users a feel for the final system
– helps determine feasibility
– helps sell the proposed system
• Disadvantages of Prototyping
– schedule expectations raised
– not performance under regular conditions
– may lead to lax testing and documentation 


Object Oriented Development
• Uses the object as the basic unit of systems analysis and design
• Objects combine data, and processes used on the data
• Use class and inheritance to group objects and apply common embedded procedures
• Development is iterative and incremental
• Analysis identifies objects, classes of objects, and behavior of objects. 


Other Models
• Computer-aided software engineering (CASE)
– Tools that automate some or all steps in the SDLC. Integrated CASE tools automate the entire SDLC; upper CASE tools automate the planning, scoping, analysis and design steps; lower CASE tools automate the design, implementation, and support system.
CASE FEATURES
– Diagrams
– Documentation
– Data Dictionary
– Team Coordination
– Prototyping
– Code Generation
– Reverse Engineering
CASE TOOLS
– Visio 2000 - Microsoft
– on laptops
– Visible Analyst - Visible Systems
– ER/Studio - Embarcadero
– ERWin - Computer Associates
– Oracle Designer - Oracle
– Power Designer - Sybase
• Joint Application Development (JAD)
– A workshops that unites management, IT specialists, and knowledge workers to define and specify the logical requirements and technical alternatives for a proposed system.
• Enterprise Resource Planning (ERP)
– the coordinated planning of all resources involved in:
• production
• development
• selling
• servicing of goods & services



No comments:

Post a Comment