Lesson 3: Systems Analysis and Design Methodologies
After reading this lesson, you should be able to:
- Define an SAD methodology
- Discuss analysis, design, and implementation
- Identify examples of methodologies
An SAD methodology is a roadmap for developing, implementing and even maintaining an Information Technology (IT) system. There are numerous SAD methodologies, and organizations have their own proprietary methodologies.
Fortunately from a learning standpoint, the vast majority of SAD methodologies use the same basic steps. The three key steps to most SAD methodologies are analysis, design and ultimately implementation.
An SAD methodology can also be referred to as a Systems Development Life Cycle (SDLC). By definition a life cycle includes the development process as well as the ongoing maintenance process.
The classic SAD methodology is the waterfall model (see Figure 1). The waterfall model was originally conceived for software development, hence the focus on programming in the figure.
Figure 1: Waterfall Model Royce (1970)
The waterfall model concept is flawed because there is no feedback from one phase to the next. In reality, one phase is not always completed before the next phase starts. There also may be multiple iterations of phases. However, the waterfall model is the basis for practically all SAD methodologies and is useful in studying the concept of systems analysis and design. This model has been adapted for IT systems as shown in Figure 2.
Figure 2: IT Systems Waterfall Model
The five phases of the waterfall model are shown in Figure 2. Each of these phases will be discussed in subsequent lessons.
The key phases of the waterfall model are the analysis and design phases. It is obvious that there will always be an implementation phase and an operations phase, but most projects fail because of improper analysis and/or design. The analysis phase focuses on understanding the needs of the organization. The design phase focuses on designing the physical aspects of a system to support the needs of the organization. These two phases are the main focus of this course, although some time will be spent discussing the other two phases.
Many projects fail because the implementation of the system is pursued without understanding the reason for the system in the first place. This concept is equivalent to purchasing lumber for a new home without even having discussed the required size or style of the structure. While no one would start a house project by purchasing lumber without some planning, many IT projects have been initiated by purchasing software or hardware without fully considering the needs of the organization.
Obviously there are many ways to go about developing an IT system. Likewise, there are many SAD methodologies. For example, the spiral methodology shown in Figure 3 is somewhat complex, but it still is based on analysis and design phases.
Figure 3: Spiral Model, Boehm (1988)
The spiral model process starts in the center of the diagram and rotates outward. It may not be immediately obvious, but this model includes the same phases at the waterfall model. As shown in Figure 3, the model includes planning (requirements plan), analysis (risk analysis, software requirements), design (software product design, detailed design) and implementation. The spiral model iterates several times through the phases and includes some additional items. This model builds on the waterfall model concepts. The spiral model is intended for large software development projects, thus it would be overkill to use this methodology for a small project.
Extreme programming, shown in Figure 4, is another methodology. This methodology also has planning (release planning), analysis (user stories), design (iteration planning) and implementation (iteration) phases. Although this methodology is focused on software development, it could be adapted for developing IT systems.
Extreme programming is considered an agile development methodology tailored for small and medium sized projects. It streamlines the development process, but does not eliminate the fundamental steps of planning, analysis and design.
Figure 4: Extreme Programming Methodology, Beck and Andres (2005)