System development model life cycles.

Computers & TechnologyTechnology

  • Author Rosemary Charles
  • Published January 13, 2018
  • Word count 1,087

In the field of software development and engineering, SDLC is the process that involves the planning, creation, test and implementation of a system that is meant to solve a certain problem in the information technology field. The system may range from the composition of software and hardware. There are other systems that are made of entirely the hardware while others are purely composed of the software only. When developing a system, engineers and system developers follow certain phases and processes in order to come up with a high quality and efficient system that solves the laid down problem. Most of the computer systems are so complex since they are linked with the traditional systems. To enable the user to overcome the complexity, the engineers have come up with several models that help in synchronizing and stabilizing these systems. Some of the models developed include spiral model development, rapid application development, and prototyping, incremental and iterative development.

To come up with the best model, the software engineers and developers must first make a feasibility analysis of the project’s requirement and needs. Once they analyze the project analysis, they come up with project design of the model that they want to develop. It is after this point they start inputting the codes in a language that is executable. After they are through with the coding, they do a test of the program to check of any errors and work to rectify them so as to produce the best results.

The spiral model of the SDLC uses the idea of the waterfall model and the iterative development. This model puts much emphasis on risk analysis thus allowing any model releases or incremental refinements on all the iterations in the spiral. The model includes four phases; the identification that allows gathering of business requirements in the first spiral. The next step, which is the design; where the engineers and the developers come up with the architectural design from the baseline spiral. The developers now move to build or construct the model at all the spirals to come up with the final product. The proof of concept is also developed to allow the customer to give feedback on the model and make suggestions. Once the architectural design has been built, the engineers move to the next level of analyzing the risk involved with the model and make improvements to come up with the best product ever. The final stage of the model is where the customer’s recommendations are implemented using linear iterations. The process of iterations does not stop for the whole life cycle of the model. It is very easy to change the requirement of the spiral, unlike the other seven-step models and allows the use of many prototypes in the model. Due to the consultations made while developing the system, the user or the customer can see the model early as opposed to other models where the user sees the model after its completion.

Rapid application development involves a lot of prototyping while the planning for software development is kept minimal. Since there is little planning in the model development, the project is easily written and executed very fast and then the changes are made later as the model is being implemented. The final and the user requirements are defined using prototyping and structured techniques. To start developing the model, the developers input preliminary data that they come to refine later in the process model. The next stage the model is requirements is verified and redefined using process models. To come up with a well-designed model, the steps are iteratively repeated coming up with a combination of the business and technical requirement design. Since it does not require too much planning, the model is cost effective and is developed in very short intervals ensuring that creep is minimized in the model. Unlike the seven-step models that require too much and heavy processes, the RAD ensures productivity is improved since the iterations used are short term to complete the backlog items. The measure of progress is on a daily basis thus allowing for correction of errors to maximize productivity in the teams.

The iterative development cycle follows a four-step model that involves identifying, plan, evolving and reviewing of the model and is in most cases embedded in the atern process. The process ensures that there is control of the timebox and at the same time the feedback from the loop is built on the solution evolution. The development team comes into the agreement on the objective of what they aim at developing; this step is the identification and is the first step. Once the team has identified and agreed on the next evolution, they get ahead to plan in meeting the objective. They evolve the model within the agreed timeline and finally review the results of the model before implementing it. Unlike the seven step and the twenty-one step models, this model is faster to create and implement as it only involves very few steps that are agreed upon by the group of developers. It is objective oriented hence it’s made to suit the needs of the customer, and since it is created within a short agreed upon timeline, the model is very cheap to develop, unlike other models.

The incremental model design is another model development design in which the model is implemented in steps with changes and increments being done at each stage. At each stage, there is development and maintenance of the design until the final product is achieved.

Conclusion

The models discussed above are used to develop software that is used in all the organizations. The above models all have advantages and disadvantages that the developers use to determine which model to use for a certain model.

References

Ali, A. (2009). A Conceptual Model for Learning to Program in Introductory Programming Courses. Issues In Informing Science & Information Technology, 6517-529.

Ali, A. (2009). A Conceptual Model for Learning to Program in Introductory Programming Courses. Issues In Informing Science & Information Technology, 6517-529.

Goyal, N., & Ram, M. (2014). Software development life cycle testing analysis: A reliability approach. Mathematics In Engineering, Science & Aerospace (MESA), 5(3), 313-329.

Johnson, S., Mengersen, K., de Waal, A., Marnewick, K., Cilliers, D., Houser, A. M., & Boast, L. (2010). Modelling cheetah relocation success in southern Africa using an Iterative Bayesian Network Development Cycle. Ecological Modelling, 221(4), 641-651.

Rosen, C. H. (2010). A Communications Model for the Software Development Process. Annual International Conference On Software Engineering & Applications, S130-S135.

Taft, D. (2014). No-Code Platforms, Cloud Services Offer Options for Mobile App Dev. Eweek, 1

Author is an academic writer and an editor and she offers custom research papers. Thus, people that doubt their own writing abilities can use the best custom paper writing service and forget about their fears and lack of confidence by visiting ResearchPapers247.org

Article source: https://articlebiz.com
This article has been viewed 971 times.

Rate article

Article comments

There are no posted comments.

Related articles