03 module2-090710094221-phpapp02


Published on

  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

03 module2-090710094221-phpapp02

  1. 1. In this Module, we look at • what we mean by a “process” • software development products, processes & resources • several models of the software development process • tools & techniques for process modeling Back Next
  2. 2. - Process is a series of steps involving activities constraints and resources that produce an intended output of some kind.- in building a software product, process is refer to a life cycle- software development process is sometimescalled- software life cycle than a procedure a process is more- a process may require design to occur before coding, many different design may be used
  3. 3. - Process guides our actions by allowing use examine, control and improve that comprise the process.Characteristics of a Process- The process prescribes all of the major process activities.- The process uses resources, subject to a set of constraints (such schedule) and produces intermediate and final product.- The process may be composed that are linked in some way. The process may be defined as hierarchy of process, organized so that each sub- process has its own process models
  4. 4. - Each process activity has entry and exit criteria, so that when the activity begins and ends.- The activities are organized in sequence, so that it is clear when one activity is performed relative to the other activities.- Every process has a guiding principles that explain the goals of each activity.- Constraints or controls may apply to an activity, resource or product.
  5. 5. Reasons for Modeling Process - It forms common understanding of the activities, resources and constraints involved in software development. - It helps the development team find inconsistencies, redundancies and omissions inthe- process and in its constituent parts. such as It reflects the goals of development building high-quality software, finding faults in early development and meeting required budget and schedule constraints.
  6. 6. - It helps the development team understand where tailoring is to occur for the special situation.
  7. 7. - The waterfall model is a sequential software development model (a process for the creation of software) in which development is seen as flowing steadily downwards (like a waterfall) through the phases of software developmet.- Winston W. Royce (1929–1995), present this model cited in his article published in 1970.- It is very useful in helping the developers lay out what they need to do.- The biggest problem with the waterfall model is does not reflect the way the code is really developed.
  8. 8. In Royces original waterfall model, the followingphases are followed in order:1.Requirements specification2.Design3.Construction (AKA implementation or coding)4.Integration5.Testing and debugging (AKA validation)6.Installation7.Maintenance
  9. 9. Requirement Analysis System Design Program Design Coding Unit & Integration Testing System Testing Acceptance Testing Operation &The Waterfall Model Maintenance
  10. 10. The software development process in reality.
  11. 11. - The sashimi model (so called because it features overlapping phases, like the overlapping fish of Japanese sashimi) was originated by Peter DeGrace.- also referred as the waterfall model with overlapping phases or with feedback
  12. 12. Instructor’s idea about the Sashimi Model Requirement Analysis ystem S DesignProgram Design Coding Unit & Integration Testing ystem S Testing Acceptance Testing Operation & MaintenanceThe Waterfall Model with overlapping phases / The WaterfallModel with feedback
  13. 13. - Prototyping is a partially developed product that enables customers and developers to examine some aspect of the proposed system and decide if it is suitable or appropriate for the finished product.- Design prototyping helps developers assess alternative design strategies and decide which is the best for a particular project.
  14. 14. Validation Requirement Analysis System Design Verify Program Design Coding Unit & Integration Testing Prototyping System Testing Acceptance Testing Operation &The Waterfall Model Maintenance
  15. 15. - The V-Model (or VEE model) is a systems development model designed to simplify the understanding of the complexity associated with developing systems- a variation of the waterfall model that demonstrate how the activities are related to analysis and design- the focus of the V-Model is on activity and correctness
  16. 16. The V-Model
  17. 17. - It requires investigation to ensure that the developer, user and customer have a common understanding both of what is needed and what is proposed.- it reduce risk and uncertainty in development- The process of prototyping involves the following steps: 1. Identify basic requirements 2. Develop initial prototype 3. Review 4. Revise and enhancing prototype
  18. 18. The Prototyping Model.
  19. 19. - The system requirments are evaluated orexecuted in a way that demonstrates the behavior of the- system. requirements are specified, it can be Once the enacted using the software package, so that their implication can be assess before design begins.
  20. 20. The Operational Specification Model
  21. 21. - It tries to reduce the opportunity for error by eliminating several major development steps.- It uses automated support- Sample transformation can include: (1) changing the data representation; (2) selecting algorithms; (3) optimizing; (4) Compiling.
  22. 22. The Transformational Model
  23. 23. - Cycle time is the time the documents are written and the time for the system was delivered.- To reduce the cycle time is to use development phase , where two systems functioning in parallel.- The Operational or Production System being used by the customer or user- The Development System is the next version that is being prepared to replace the current production system.
  24. 24. The Phased Development Model
  25. 25. - The system as specified in the requirements documents are partitioned into subsystems by functionality.- The releases are defined by beginning with one small, functional subsystem and then adding with each new releases.
  26. 26. - It delivers the full system at the very beginning and it changes the functionality of each subsystem with each new releases.
  27. 27. - The spiral model is a software development process combining elements of both design and prototyping-in-stages, in an effort to combine advantages of top-down and bottom-up concepts - also known as the spiral life cycle model - it is a systems development method (SDM) usedin- Information technology (IT) Prototyping Model a combination of features of and Waterfall Model defined by Barry Boehm (1988)- The spiral model is intended for large, expensive and complicated projects
  28. 28. The Spiral Model.
  29. 29. - It depicts the process, showing the inputs are transformed to outputs.- See… A Toolset for Supporting Static andDynamic Model Checking
  30. 30. - It can enact the process, so that the user can see how intermediate and final products are transformed over time.- See… A Toolset for Supporting Static andDynamic Model Checking
  31. 31. - Model Driven Development- User Experience- Top-Down to Bottom Design- Chaos Model- Evolutionary Prototyping- ICONIX Process- Unified Process- Extreme Programming (XP)