Software Development Life Cycle (SDLC) is a methodology that is typically used to develop, maintain and replace information systems for improving the quality of the software design and development process. The typical phases are analysis, estimation, design, development, integration and testing and implementation. The success of software largely depends on proper analysis, estimation, design and testing before the same is implemented.
This article discusses SDLC in detail with a view to improve return on investment by embracing change, mitigating risk, and customer as project partner while providing guidance for building successful software (www. aspalliance. com). It is the entire process of formal, logical steps taken to develop a software product. The phases of SDLC can vary somewhat but generally include the following: • conceptualization; • requirements and cost/benefits analysis; • detailed specification of the software requirements; • software design; • programming; • testing; • user and technical training;
• and finally, maintenance (www. mks. com). Once upon a time, software development consisted of a programmer writing code to solve a problem or automate a procedure. Nowadays, systems are so big and complex that teams of architects, analysts, programmers, testers and users must work together to create the millions of lines of custom-written code that drive our enterprises. To manage this, a number of system development life cycle (SDLC) models have been created: waterfall, fountain, spiral, build and fix, rapid prototyping, incremental, and synchronize and stabilize (www. computerworld. com).
Need essay sample on "Project Management"? We will write a custom essay sample specifically for you for only $13.90/page
This would like to look further into these models; Waterfall; this is the oldest and best known. It is a sequence of stages in which the output of each stage becomes the input for the next. In looking at this graphic, which was for major defense systems developments, please note this presumes that the system requirement have already been defined and scrubbed exhaustively, which is probably the most important step towards project success. Nevertheless, the graphic illustrates a few critical principles of a good methodology: • Work is done in stages, • Content reviews are conducted between stages, and
• Reviews represent quality gates and decision points for continuing. The waterfall provides an orderly sequence of development steps and helps ensure the adequacy of documentation and design reviews to ensure the quality, reliability, and maintainability of the developed software. While almost everyone these days disparages the “waterfall methodology” as being needlessly slow and cumbersome, it does illustrate a few sound principles of life cycle development (www. hyperthot. com). This model is simplistic in nature and best suited for routine and mechanical oriented software.
This is where the process is basic-when automating the activities of clerks and accountants. When it is used in building systems of knowledgeable workers-people in customer service or executives trying to lead companies, here it fails miserably. Its other shortfall is that, it assumes that the only role for users is in specifying requirements, and that all requirements can be specified in advance. Unfortunately, requirements grow and change throughout the process and beyond, calling for considerable feedback and iterative consultation (www. computerworld. com).