Thursday, January 24, 2019

system development life cycle models


Abstract
This paper contributes to the literature in system development life cycle (SDLC). It presents two enhanced SDLC models named seven-step SDLC model and four-step SDLC model. They are two integrated, independent, and complementary but different SDLC models. The paper is based on the systematic integration of the traditional four-step SDLC model with a well-established modern seven-step SDLC model.   
The difference in names shows the numerous changes SDLC has undergone. However, the model has maintained its reliability and steadfastness for the development of software. Although there is a debate on the suitable numbers of steps in an SDLC process, this paper does not aim at deciding for the system developers and analysts.
                                       Software Development Life Cycle (SDLC) Models
Introduction
            System development lifecycle is an old method that comes in many forms. However, it is widely used in the process of system development and acquisition in the field of information technology (IT). SDLC has evolved over the period it has existed being a necessity for changing environments and shifting of the paradigm regarding development and acquiring of software and systems. SDLC phases have gone through a change of names and number of phases. However, its core has been similar to the early application in that it is still applicable to various industries such as business and government among others. SDLC is one of the dominant system development models making it a must-learn for today’s and tomorrow’s student. However, there are some types of SDLC models that work for specific systems while others don’t. They depend on the number of steps involved.
Seven-step SDLC Model
            The seven-step SDLC model derives its name from the involvement of seven steps of system development. The seven steps of the model follow one another in chronological order. It means that the proceeding of a step depends on the outcomes of the previous step. The system developers and analysts cannot skip a step as it will cause disaster in the later stages. The seven-step model is a composition of seven steps through which system development passes. They follow one another as follows (Highsmith, 1999).


Planning and Feasibility Study
            Project planning also called feasibility study, helps the system developers and analysts in establishing a view of the proposed project at a high level. They also establish goals and objectives of the project. The system developers achieve planning by problem definition and analysis because it would have been difficult to plan for a solution to a problem without analysis. There is collaboration between developers and stakeholders to conduct a feasibility study. A feasibility study is broken into technical, economic, and operational. Each of them serves and answers a different question regarding the intended project (Highsmith, 1999). 
System Analysis and Definition of Requirements
            The second step enables the developers and analysts to refine the objectives of the intended project into comprehensive functions. The step helps in analysis of the needs of the end users. Developers and analysts take great care during this step to ensure the intended system meets the goals of the management too. Developers meet the stakeholders to identify and determine system requirements the new system needs. Requirements are documented to ease the process of inspection (Highsmith, 1999).
System Design
            Developers and analysts base their system design on the detailed analysis of the user requirements. System design is one of the most important steps the development lifecycle. They design the system logically and then physically. The phase moves the system from "what" descriptions to "how" descriptions of the system. The step also discusses input and output, database, system forms, and processing specifications. System designing can get done with a pen and paper only (Nunes & Cunha, 2000).
Development
            Development is also the programming phase where the system developer builds the system through programming using computer language. The step helps to turn procedures into control specifications using specific programming language according to the needs and specifications of the system. Implementation divides the program into modules to help in faster implementation, maintenance, and revision where necessary. The developers use tools such as compilers, interpreters, and various programming languages (Nunes & Cunha, 2000).
Integration and Testing
            The developers leave the new system to the testers before implementation to conduct a test run to remove bugs and errors if there are any. Every successful system requires passing through the step. The testers develop a test plan through which the coded program will pass. The plan should have expectations that the program should meet. Some developers consider testing part of the implementation, but it is an independent phase. Testing involves program and system testing (Avison & Fitzgerald, 2006).  
Implementation
            The above is the sixth and final stage of the initial stage of system development. However, the implementation should begin with the user accepting the development system. The implementation brings the developed system into production meaning that it turns theory into actual practice. Implementation goes through user acceptance, installation, and deployment. There may also be the training of the user and documentation to ease the process using the system. All the system programs are loaded into the computer of the user during implementation to enable usage after which user training make begin where necessary (Avison & Fitzgerald, 2006). 
Maintenance
            Maintenance is the explanation of the activities that take place after system implementation. There may be corrections and additions to the system to make it better or suitable to the user environment. It is a very important step since it eliminates errors and bugs during the system life. The system must be made to meet the requirements of future improvements, functionalities, and other added functionalities. Maintenance also means regular system review to determine full system capabilities, determine changes requirements, and study the system performance (Avison & Fitzgerald, 2006).
Four-step SDLC Model
            The four-step model is the alternative SDLC model to the seven-step model. It is not simply an SDLC model but a development framework that can be extended and customized to meet needs of a particular project or client. The SDLC model has four steps with different names but almost similar activities with the seven-step SDLC model as seen below (Cockburn, 2000).
System Inception
            Inception is the smallest phase among all the phases in the model. Additionally, it is quite short. However, there are instances where the phase is long which indicate excessive up-front specification. Excessive-up front specification goes against the requirements of the four-step SDLC model. Inception serves to meet goals such as the establishment of justification of project, determination of scope, risks identification, and feasibility. Others are determining whether the company should buy or develop the system, preparation of the project schedule, and determining use cases and key system requirements.
System Elaboration
            The step enables the system developers to determine and capture most of the system requirements. However, the step serves to address likely system risks as well as the validating architecture of the system. The developers also undertake to develop use case diagrams, conceptual diagrams, and package diagrams. The developers validate system architecture by implementing an executable architecture baseline. Validation sees the partial implementation of the system. The end of elaboration step sees a stabilization of the system architecture and a demonstration that the architecture has the capability to support critical functionalities of the system. It should also show desirable system behavior regarding system performance, cost, and scalability. The step delivers development plan with the inclusion of cost and project schedule (Cockburn, 2000).
System Construction
            System construction is the most involving and largest step in the development of the project. System developers build the system based on the outcomes of system elaboration. The step implements system features in systematic, short, and timeboxed iterations where each of the iterations enables the system developers to release executable software. The developers may also create full-text use cases during the step where each one of the cases enables beginning of a new iteration. System developers also use several UML diagrams during the step such activity diagrams, sequence diagrams, interaction diagrams, collaboration diagrams, and state diagrams (Lindvall & Rus, 2000).
System Transition
            System transition is the fourth and final step of the four-step SDLC model. The developers deploy the system to the end users. They release the system in phases where they encourage feedback from the users. Feedback received from the users after the initial release may be used to refine the system and incorporate the changes in the rest of iterative transition phases. Besides releasing the system to the people, the transition may include user training, conversions of the system, documentation, and maintenance (Lindvall & Rus, 2000).
Comparison between Seven-step and Four-step SDLC Models
            Seven-step SDLC model is a cut from the four-step SDLC model. The four-step model is a traditional model of system development. Therefore, the seven-step model is an enhanced and improved model. It has better outcomes than the four-step model because of the long process it takes to develop a system. The seven-step model has more steps of system development than the four-step model. It means that the four-step model addresses many details of system development from where the system gains completeness (Sims, 1997).
            The two models are system development models. Being system development models means that they have similar goals and objectives of system development. A system developer may argue that there is no criterion that a developer uses to choose one model over the other. Therefore, choice of one model over the other depends on the system requirements and goals and objectives of the whole system. It also depends on the availability of resources.
            Most system developers strive to reduce time-to-market of a new system. Therefore, they end up shrinking the steps of SDLC because they will produce a lot of products in the same out of time and need to gain competitive advantage. It is the case with the four-step SDLC model. However, shrinking of the cycle times may lead to compromising of cost, quality, and features of the system. Such a proceeding is a negative on the side of the four-step model that makes it less popular system development model than the seven-step model that is more involving and comprehensive (Sims, 1997).
  
                                                      References
Avison, D. E., & Fitzgerald, G. (2006). Information systems development: methodologies,             techniques, and tools. New York: McGraw-Hill.
Cockburn, A. (2000). Selecting a project's methodology. IEEE Software, 17 (4), 64-72.
Highsmith, J. (1999). Adaptive software development. New York: Dorset House Publishing.
Lindvall, M., & Rus, I. (2000). Process diversity in software development. IEEE Software, 17      (4), 14-18.
Nunes, N., & Cunha, J. (2000). Wisdom: A software engineering method for small software         development companies. IEEE Software, 17 (4), 113-119.
Sims, D. (1997). Vendors struggle with costs, benefits of shrinking cycle times. IEEE Computer, 30 (9), 12-14.

Sherry Roberts is the author of this paper. A senior editor at MeldaResearch.Com in legitimate paper writing services if you need a similar paper you can place your order from best custom research papers.

No comments:

Post a Comment

Political Essay in Colorado

Are you looking to order for Political Essay?  When you order with us,we assign your political essay to writers who have experience and are...