Prescriptive Process Models

Slides:



Advertisements
Similar presentations
Prescriptive Process models
Advertisements

1 Requirements and the Software Lifecycle The traditional software process models Waterfall model Spiral model The iterative approach Chapter 3.
Software Development Life-Cycle Models
Lecture # 2 : Process Models
Chapter 3 Prescriptive Process Models
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes.
Software Engineering Saeed Akhtar The University of Lahore Lecture 4 Originally shared for: mashhoood.webs.com.
Prescriptive Process Models Developed to bring order and structure to the software development process. To get away from the chaos of most development.
CS487 Software Engineering Omar Aldawud
CSE 436—Personal Software Processes, Software Development Models Ron K. Cytron 3 October 2005.
Chapter 3 Process Models
CHAPTER 1 SOFTWARE DEVELOPMENT. 2 Goals of software development Aspects of software quality Development life cycle models Basic concepts of algorithm.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
29 September Interactions  There is no “right answer”  Typically people and product are fixed  … can adapt process  (which is where we will.
Software Process Models
1 Prescriptive Process Models. 2 Prescriptive Models Prescriptive process models advocate an orderly approach to software engineering Prescriptive process.
Gu & Maher University of Sydney, October 2004 DECO2005 Monitoring Team Process.
Chapter :Software Process Model
COMP 6710 Course NotesSlide 2-0 Auburn University Computer Science and Software Engineering Course Notes Set 2: Software Process Models Computer Science.
1 CS 425/625 Software Engineering CS 425/625 Software Engineering Software Processes Based on Chapter 4 of the textbook [SE-7] Ian Sommerville, Software.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Process Models.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
INTROSE Introduction to Software Engineering Raymund Sison, PhD College of Computer Studies De La Salle University Software: Definitions,
S/W Project Management Software Process Models. Objectives To understand  Software process and process models, including the main characteristics of.
CSE-433: Software Engineering Md. Kamal Hossen
Chapter 2 The process Process, Methods, and Tools
Software Process and Models
Software Engineering: A Practitioner’s Approach, 7/e Chapter 2 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
THE PROTOTYPING MODEL The prototyping model begins with requirements gathering. Developer and customer meet and define the overall objectives for the software.
Dr. Tom WayCSC Software Processes CSC 4700 Software Engineering.
PROCESS MODELS CHAPTER III.
Software Processes lecture 8. Topics covered Software process models Process iteration Process activities The Rational Unified Process Computer-aided.
Software Processes n What is a process?  Sequence of steps required to develop or maintain software n Characteristics  prescribes major activities 
Chapter 2 Process Models
1 SWE Introduction to Software Engineering Lecture 4.
Software Engineering MCS-2 Lecture # 6
1/23 Prescriptive Process Models. 2/23 Prescriptive Models Prescriptive process models advocate an orderly approach to software engineering Prescriptive.
1 Software Development Software Engineering is the study of the techniques and theory that support the development of high-quality software The focus is.
An Introduction to Software Engineering
Chapter 4 프로세스 모델 Process Models
Introduction to Software Development (Software Engineering - I)
Developed by Reneta Barneva, SUNY Fredonia The Process.
CS 3610: Software Engineering – Fall 2009 Dr. Hisham Haddad – CSIS Dept. Chapter 3 Prescriptive Process Models Discussion of the Software Process models:
Software Development Life Cycle (SDLC)
Process Asad Ur Rehman Chief Technology Officer Feditec Enterprise.
Software Model Process
Software Engineering Process Models Models for Guiding the Development of Software.
Chapter 1: Introduction Omar Meqdadi SE 3860 Lecture 1 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
The Code and Fix model It is a simple two phase model. In first phase: code is developed In second phase: fix the code until the client is not satisfied.
Software Engineering CE 501 Prepared by : Jay Dave.
Jaypee Institute of Information Technology, Noida.
By : Hisham Kahlifa Shreef Foda Khaled monir Tamer medhat Supervisor : Dr Doaa Nabil.
Chapter :Software Process Model. Chapter 4: Topic Covered About software process model Build and Fix Model Why Models are needed? ◦Process as a "black.
3 - Software Process Models. Based on slides of: Ian Sommerville :
Software Process Models. Process model or software engineering paradigm – development strategy encompassing Process Method Tool Generic phases Chosen.
1 Chapter 2 SW Process Models. 2 Objectives  Understand various process models  Understand the pros and cons of each model  Evaluate the applicability.
Chapter 2: The Process. What is Process? Software Engineering Process is the glue that holds the technology layers together and enables rational and timely.
Chapter 3 Prescriptive Process Models
Lecture 3 Prescriptive Process Models
Software Life Cycle “What happens in the ‘life’ of software”
Chapter 2 SW Process Models
Software Process Models
Software Life Cycle Models
Prescriptive Process Models
Software Process Models
Chapter 3 Prescriptive Process Models
Software Processes Process should be
SNS College of Engineering Coimbatore
The Waterfall Model Also known as: classic life cycle, the waterfall model, the linear model Rarely projects are sequential (allows iteration indirectly)
Prescriptive Process Models Pertemuan-3
Presentation transcript:

Prescriptive Process Models LECTURE 3 By Umm-e-Laila Compiled by: Umm-e-Laila

Compiled by: Umm-e-Laila Topics to be covered Prescriptive Process Models: Waterfall/The Linear Sequential Model The Incremental Model The RAD Model (from 6th ed.) Evolutionary Software Process Models: The Prototyping Model The Spiral Model Compiled by: Umm-e-Laila

Prescriptive Process Model Defines a distinct set of activities, actions, tasks, milestones, and work products that are required to engineer high-quality software The activities may be linear, incremental, or evolutionary 3

Waterfall Model (Diagram) Communication Project initiation Requirements gathering Planning Estimating Scheduling Tracking Modeling Analysis Design Construction Code Test Deployment Delivery Support Feedback 4

Waterfall Model (Description) Oldest software lifecycle model and best understood by upper management Used when requirements are well understood and risk is low Work flow is in a linear (i.e., sequential) fashion Used often with well-defined adaptations or enhancements to current software 5

Waterfall Model (Problems) Doesn't support iteration, so changes can cause confusion Difficult for customers to state all requirements explicitly and up front Requires customer patience because a working version of the program doesn't occur until the final phase Problems can be somewhat alleviated in the model through the addition of feedback loops. 6

Waterfall Model with Feedback (Diagram) Communication Project initiation Requirements gathering Planning Estimating Scheduling Tracking Modeling Analysis Design Construction Code Test Deployment Delivery Support Feedback 7

The V-Model

Incremental Model (Diagram) Communication Planning Modeling Construction Deployment Increment #2 Communication Planning Modeling Construction Deployment Increment #3 Communication Planning Modeling Construction Deployment 9

Incremental Model (Description) Used when requirements are well understood Multiple independent deliveries are identified Work flow is in a linear (i.e., sequential) fashion within an increment and is staggered between increments Iterative in nature; focuses on an operational product with each increment Provides a needed set of functionality sooner while delivering optional components later Useful also when staffing is too short for a full-scale development 10

Rapid Application Development Model Similar to waterfall but uses a very short development cycle (60 to 90 days to completion) Uses component-based construction and emphasises reuse and code generation Use multiple teams on scaleable projects Requires heavy resources Requires developers and customers who are heavily committed Performance can be a problem Difficult to use with new technology Rapid Application Development (RAD) is an incremental software process model that emphasizes a short development cycle. The RAD model is a "high-speed" adaptation of the waterfall model, in which rapid development is achieved by using a component-based construction approach. RAD process enables a development team to create a "fully functional system" within a very short time period (e.g., 60 to 90 days)

Rapid Application Development Team 1 Team 2 Team 3 Business modelling Data modelling Process modelling Application generation Testing and turnover Business modelling Data modelling Process modelling Application generation Testing and turnover Business modelling Data modelling Process modelling Application generation Testing and turnover

Evolutionary Software Process Models The Prototyping Model The Spiral Model

Prototyping Model (Diagram) Quick Planning Communication Start Modeling Quick Design Deployment, Delivery, and Feedback Construction Of Prototype 14

Prototyping Model (Description) Follows an evolutionary and iterative approach Used when requirements are not well understood Serves as a mechanism for identifying software requirements Focuses on those aspects of the software that are visible to the customer/user Feedback is used to refine the prototype 15

Prototyping Model (Potential Problems) The customer sees a "working version" of the software, wants to stop all development and then buy the prototype after a "few fixes" are made Developers often make implementation compromises to get the software running quickly (e.g., language choice, user interface, operating system choice, inefficient algorithms) Lesson learned Define the rules up front on the final disposition of the prototype before it is built In most circumstances, plan to discard the prototype and engineer the actual production software with a goal toward quality 16

Spiral Model (Diagram) Planning Communication Modeling Start Start Deployment Construction 17

Spiral Model (Description) Invented by Dr. Barry Boehm in 1988 while working at TRW Follows an evolutionary approach Used when requirements are not well understood and risks are high Inner spirals focus on identifying software requirements and project risks; may also incorporate prototyping Outer spirals take on a classical waterfall approach after requirements have been defined, but permit iterative growth of the software Operates as a risk-driven model…a go/no-go decision occurs after each complete spiral in order to react to risk determinations Requires considerable expertise in risk assessment Serves as a realistic model for large-scale software development 18

Evolutionary Models: Concurrent

General Weaknesses of Evolutionary Process Models Prototyping poses a problem to project planning because of the uncertain number of iterations required to construct the product Evolutionary software processes do not establish the maximum speed of the evolution If too fast, the process will fall into chaos If too slow, productivity could be affected Software processes should focus first on flexibility and extensibility, and second on high quality We should prioritize the speed of the development over zero defects Extending the development in order to reach higher quality could result in late delivery 20

END of Lecture 4