In: Computer Science
What is Software Process Model (life cycle models)
Software Process : A set of related activities which result in production of a software . It may be creating a system or modifying an existing system. Any software process must include the following four activities .
A process not only includes the activities in it but also the process description like product , roles, Pre and Post conditions. It is a complex activity and involves lots of decisions. And each organisation generally developes its own model depending on its requirements .
Software Process Models: A software process model is a simplified representation of a software process. Each model represents a process from a specific perspective.The simple purpose of these procedures is to offer a customized software development as per the requirements. Sometimes they are also known as software developement life cycle(SDLC) methodologies .There are various types of models :
Incremental & Iterative: They are well suited for large projects and are less expensive to the change of requirements because they support customer interactions with each increment .They don’t fit into small projects or well structured projects.The phases of iterative development are:Inception,Elaboration,Construction,Transition.
Spiral:It is good for for high risky or large projects where the requirements are ambiguous.The project’s success is highly dependent on the risk analysis phase. It doesn’t work well for smaller projects.Each loop in the spiral represents a phase. Each loop is split into four sectors: Objective setting,Risk assessment and reduction,Development and validation,Planning.
Agile:It suits small-medium size project, with rapidly changes in the requirements as customer is involved during each phase.Very limited planning is required to get started with the project. There are a number of different agile methods available such as: Scrum, Crystal, Agile Modeling (AM), Extreme Programming (XP), etc.