System Development Techniques Individual Assignment
System Development Techniques
Diploma in Information Technology
Lesson 11
Learning outcomes After studying this chapter and the recommended reading, you should be able to:
• Discuss the systems development life cycle • Explain the support phase
The System Development Life Cycle
• The SDLC : a way to think about the development of a new system as a progressive process.
• During its life cycle, an information system is – first conceived, – then it is designed, built, and deployed as part of a
development project, and, – finally, it is put into production and used to support the
business.
The System Development Life Cycle
• Even during the productive use, a system is still a dynamic, it is updated, modified, and repaired through smaller projects.
• Several projects may be required during the life of a system, – first to develop the original system and – then to upgrade.
The System Development Life Cycle
• Many approaches to developing systems, and they are based on different approaches to the SDLC.
• Difficult to find a single, comprehensive classification system that encompasses all the approaches.
• One useful way to categorize them is along a continuum from predictive to adaptive.
The System Development Life Cycle
• Predictive approach to the SDLC – assumes that the development project can be planned and
organized and that the new information system can be developed according to the plan.
– useful for building systems that are well understood and defined.
– For example, a company may want to convert its old networked client/server system to a newer Web-based system that includes a smartphone app. In this type of project, the staff already understands the requirements very well, and no new processes need to be added. Thus, the project can be carefully planned, and the system can be built according to the specifications.
The System Development Life Cycle
• Adaptive approach to the SDLC – when the system’s requirements and/or the users’ needs
aren’t well understood. – the project can’t be planned completely. Some system
requirements may need to be determined after preliminary development work.
– Developers should still be able to build the solution, but they need to be flexible and adapt the project as it progresses.
The System Development Life Cycle
• Predictive and Adaptive approach to the SDLC – In practice, any project could have—and most do have—
predictive and adaptive elements. – The figure shows them as endpoints along a continuum,
not as mutually exclusive categories.
The System Development Life Cycle
• Traditional Predictive Approaches to the SDLC – Six groups of activities 1. Project initiation
• activities that identify the problem and secures approval to develop a new system;
2. Project planning • activities, involves planning, organizing, and scheduling the
project. These activities map out the project’s overall structure.
3. Analysis • focuses on discovering and understanding the details of the
problem or need. Figure out exactly what the system must do to support the business processes.
The System Development Life Cycle
• Traditional Predictive Approaches to the SDLC 4. Design
• focuses on configuring and structuring the new system components.
• use the requirements that were defined earlier to develop the program structure and the algorithms for the new system.
5. Implementation • includes programming and testing the system.
6. Deployment • involves installing and putting the system into operation.
• The six group of activities provide the framework for managing the project.
The System Development Life Cycle
• Traditional Predictive Approaches to the SDLC – Another phase, support phase,
• includes activities needed to upgrade and maintain the system after it has been deployed.
• support phase is part of the overall SDLC, but not considered part of the initial development project
– Activities are carried out sequentially rather than repeated in each iteration.
The System Development Life Cycle
• Waterfall model – with the phases of the project flowing down, one after
another.
The System Development Life Cycle
• Waterfall model – assumes that the phases can be carried out and completed
sequentially. – After a project drops over the waterfall into the next
phase, there is no going back. – assumes rigid planning and final decision making at each
step of the development project. – doesn’t always work very well.
• Being human, developers are rarely able to complete a phase without making mistakes or leaving out important components that have to be added later.
The System Development Life Cycle
• Modified Waterfall model – project’s phases overlap, influencing and depending on
each other. – still predictive
The System Development Life Cycle
• Adaptive Approaches to the SDLC – All project activities are included in each iterations. – Iterations can be used to create a series of mini-projects
that address smaller parts of the application. • One of these smaller parts is analyzed, designed, built, and tested
during a single iteration; then, based on the results, the next iteration proceeds to analyze, design, build, and test the next smaller part.
The System Development Life Cycle
• Adaptive Approaches to the SDLC – the project is able to adapt to any changes as it proceeds. – parts of the system are available early on for user
evaluation and feedback, which helps ensure that the application will meet the needs of the users.
– The above idea is known as incremental development.
The System Development Life Cycle
• Incremental development. – based on an iterative life cycle. – system is built in small increments. – An increment may be developed within a single iteration
or it may require two or three iterations. – As each increment is completed, it is integrated with the
whole. – The system, in effect, is “grown” in an organic fashion. The
advantage of this approach is that portions of the system get into the users’ hands much sooner so the business can begin accruing benefits as early as possible.
The System Development Life Cycle
• Walking skeleton. – provides a complete front-to-back implementation of the new system
but with only the “bare bones” of functionality. – is developed in a few iterations early in the project. – add on the “flesh” (i.e. more functions and capabilities) in later
iterations – gets working software into the hands of the users early in the project.
• Incremental development and Walking skeleton approaches have the additional advantage of extensive user testing and feedback to the project team as the project progress.
Summary
• The SDLC : a way to think about the development of a new system as a progressive process.
• Adaptive Approaches to the SDLC – All project activities are included in each iteration. – Iterations can be used to create a series of mini-projects
that address smaller parts of the application.
Read
Textbook:
• Satzinger, Robert & Stephen Chapter 10