Information Systems Development Terms
SDLC - the development method used by most organizations today for large, complex systems
Systems Analysts - IS professionals who specialize in analyzing and designing information systems
Programmers - IS professionals who modify existing computer programs or write new computer programs to satisfy user requirements
Technical Specialists - experts in a certain type of technology, such as databases or telecommunications, who help create information systems
The Traditional SDLCA waterfall approach
(1) Systems Investigation
(2) Systems Analysis
(3) Systems Design
(4) Programming
(5) Testing
(6) Implementation
(7) Operation
(8) Maintenance
Go Back to a previous Stage or Stop
An eight-stage systems development life cycle (SDLC)
Key aspects with SDLC
Active end-user involvement– Throughout development process
Top Management Support– Steering committee represents top management
and all functional areas affected by project
How will you measure system success?– Should be established up-front
Phases in SDLC
System Investigation– Feasibility study determines the probability of
success of proposed system’s development project. Includes …
Technical feasibility (will we be able to build the system?)
Economic feasibility (how much will it cost to build the system and how much will it benefit us?)
Behavioral feasibility (if we build the system, will it be accepted and used?)
Phases in SDLC (continued)
Systems Analysis– Examines the business problem(s) that the
organization plans to solve with information systems– Determines what the new system must do by
examining: Strengths and weaknesses of the existing system Functions that the new systems must have to solve the
business problem(s) User information requirements for the new system
– Develops initial working relationship with current end users
Phases in SDLC (continued)
Systems Design– Describes how the system will fulfill the user
requirements – Develop both logical design and physical design– Output => technical design or system specification…
system outputs, inputs, and user interfaces hardware, software, databases, telecommunications,
personnel, and procedures how these components are integrated
Phases in SDLC (continued)
Systems Design (cont’d)– Factors to consider during make-or-buy decision
On-time/On-budget Full functionality User acceptance Favorable costs-to-benefits ratio Low maintenance Scalability Integration with other systems Minimal negative cross-impacts Reusability Customization (is source code available?)
Phases in SDLC (continued)
Programming– the translation of the design specifications into
computer code– structured programming techniques improve the
logical flow of the program by decomposing the computer code into modules
– issue of open-source vs proprietary development tools
Phases in SDLC (continued)
Testing (quality assurance)– Checks to see if the computer code will produce the
expected and desired results under certain conditions– Use combinations of black-box and white-box testing
Phases in SDLC (continued)
Implementation– The process of converting from the old system to the new
system– Four major conversion strategies
Parallel conversion: the old and new systems operate simultaneously for a period of time
Direct conversion: the old system is cut off and the new systems is turned on at a certain point in time
Pilot conversion: introduces the new system in one part of the organization
Phased conversion: introduces components of the new system in stages
SDLC Phases
Operation– the new system will operate for a period of time,
until it no longer meets its objectives
Maintenance (simultaneous with Operation)– debugging the programs– updating the system to accommodate changes in
business conditions– adding new functionality to the system
Alternatives to the SDLC
Prototyping– Starts with only a general idea of user requirements, and
develops models of the system ‘until it’s right’– Advantages:
Speeds up the development approach Gives the users the opportunity to clarify their information
requirements Useful in the development of decision support systems and
executive information systems
– Disadvantages: Replaces the systematic analysis and design stages of the SDLC -
quality may be sacrificed Can result in an excess of iterations
Alternatives to the SDLC -- continued
Joint Application Design (JAD)– A group-based method for collecting user
requirements and creating staged designs– Advantages:
Saves time Greater support for, and acceptance of new systems Produces higher quality systems Easier implementation Lower training costs
– Disadvantages: Very difficult to get all users to JAD meetings All the problems that may be caused by any group process
Alternatives to the SDLC -- continued
Integrated Computer-Assisted Software Engineering (ICASE) Tools
– Automate many of the tasks in the SDLC– Advantages:
Produces systems with a longer effective operational life Speeds up the development process and result in systems that are
more flexible and adaptable to changing business conditions Results in excellent documentation
– Disadvantages: More expensive to build and maintain initial system Requires more extensive and accurate definition of user needs and
requirements Difficult to customize and may be difficult to use with existing
systems
Alternatives to the SDLC -- continued
Rapid Application Development (RAD)– A method that can combine JAD, prototyping, and
integrated CASE tools, to rapidly produce a high-quality system
– Advantages: Active involvement of users in the development process Speeds the development process Reduces development costs Can create applications that are easier to maintain and
modify
– Disadvantages: May result in systems with limited functionality and
adaptability for change
Alternatives to the SDLC -- continued
End User Development– Users perform ad hoc programming to solve business problems– Factors that drive the trends toward increased end-user
computing and end-user development More powerful, inexpensive desktop hardware Increasingly diverse software capabilities Increasingly computer literate population Backlog of IS projects Apparent cost savings
– End-users (usually) don’t produce adequate documentation or perform adequate testing
– Security may be breached
Alternatives to the SDLC -- continued
Application Service Providers (ASPs)– Software obtained via subscription– Software resides on ASP’s systems– Software is accessed via Web or VPN– Subscriber does not have to host software on
existing computer systems– Updates and bug fixes are provided by the ASP– ASP can provide help-desk support