Final Essay of Software Project Manage


Final Essay

Predictive Life Cycle

The scope of the project can be articulated clearly and the schedule and cost can be predicted accurately.

Waterfall life cycle

  • Apply Condition

    Risks must be tightly controlled, and changes must be limited after requirements are defined

  • Example

    As the project progresses, tasks and milestones form a waterfall structure like the picture above. When one task or milestone is complete, the next one begins. For example, there will be no deployment until the end of the test and revision phase.

Spiral life cycle

  • Apply Condition

    Project changes can be combined with reasonable cost increases or acceptable time delays

  • Example

    Usually, some general models are used at the beginning of the project, and then additional stages are added when some special risks are identified later in the project. Perhaps the most important feature of this model is its ability to handle risks.

Incremental life cycle

  • Apply Condition

    The incremental build life cycle model provides for progressive development of operational software, with each release providing added capabilities.

  • Example

    Suppose we want to develop a web-based social network with the following functionalities;

    Component 1: Sign up and log in

    Component 2: Send Friend request

    Component 3: Accept friend request

    We can successively add components. Each component undergoes the phases of requirements gathering and analysis, design, implementation, deployment, and maintenance. When the component is ready, we will deliver the component to the customer.

Prototyping life cycle

  • Apply Condition

    This approach is often used in systems that involve a great deal of user interface design, or that automate previously manual functions.

  • Example

    A) Rapid Throwaway Prototyping –
    In this method, the developed prototype is not necessarily part of the final accepted prototype. Customer feedback helps prevent unnecessary design errors, so the final prototype developed has a higher quality.

    B) Evolutionary Prototyping –
    In this method, the initially developed prototype is gradually improved on the basis of customer feedback until it is finally accepted. Compared with rapid one-off prototyping, it provides a better method that can save time and effort.

    C) Incremental Prototyping –

    In this approach, the final desired product is broken down into different prototypes and developed separately. Finally, when all the individual parts have been properly developed, the different prototypes are assembled into the final product in a predetermined order.

    D) Extreme Prototyping –

    This method is mainly used for web development.

Adaptive Software Development

Software requirements cannot be clearly expressed early in the life cycle, so software is developed using a less structured, flexible approach.

Scrum

  • Apply Condition

    The Scrum framework utilized mainly in following tasks

    a. Delivering the complex product

    b. Developing a complex product

    c. Sustaining the complex product

  • Example

​ Google is following the scrum within the team. Many years ago, the user interface of google was very simple where you can search whatever you want. But nowadays the features are really user centric and user friendly. They are following the scrum and their focus is to enhance the product creatively. They are tackling the complex problems in scrums rather than big deployments they are concentrating on small deployments.


文章作者: mohan li
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 mohan li !
评论