In: Computer Science
Prepare a document that addresses the following:
Describes the different phases of the traditional systems development life cycle (SDLC)
Compares the SDLC waterfall method to the spiral and agile methods.
Explains how these methods are similar and how they are different.
You may submit your paper in essay form or you may choose to use a table that highlights the different phases of the SDLC and compares it to spiral and agile methods.
Phases of the SDLC:
1. Planning: It is the first phase of software development process. It will focus on whether we need a new system or not. It is a sort of feasibility study to focus and find out the scope of the problem and determine solutions.
2. System Analysis and Requirements: Here the functional requirements of the systems are analyzed. It determines what the business needs are and how they can be met, responsibilities are distributed and timelines are decided.
3. System Design: Defines the solution system based on requirement and analysis decision.
4. Development: Here we use flowcharts, Visio etc. to ensure that the system is properly organized. This signifies the start of the production. Here the technical architecture is setup and database and programs are built.
5. Integration and Testing: Test cases are written and testing of the system is done.
6. Implementation: Detailed user documentation is written her, system users are provided with the initial required trainings.
7. Maintenance: A helpdesk support is provided to the system users, provides an environment to support system changes.
Compares the SDLC waterfall method to the spiral and agile methods.
Waterfall model has a sequentially structured approach, the team proceeds to next step once the previous step is fulfilled, each stage would require a considerable amount of time until all the doubts from a particular phase are cleared and all requirements are met whereas Agile/Spiral model involves multiple iterative development schedules that improves the output with every iteration. Each iteration goes through all the phases of design, coding and testing. These iterations continue until a customer is satisfied with the product.
In waterfall model it is believed all critical bugs are handled in advance whereas in Agile/Spiral model requirements are never freeze, with each release new ideas are evolved.
1. Agile/Spiral method has an incremental and iterative approach whereas Waterfall model flows from start point to end point.
2. Agile is unstructured compared to Waterfall model.
3. In Agile errors and bugs can be fixed in the middle of the project whereas in Waterfall whole model is tested at the end.
4. In Agile documentation is not a priority whereas in Waterfall model, documentation is of utmost priority.
5. In Agile testers and developers work together whereas in Waterfall model testers and developers work separately.
6. In Agile at the end of every release, User Acceptance is done whereas in Waterfall it is done at the end when complete project is delivered.