The Unified Software Development Process

Slides:



Advertisements
Similar presentations
Chapter 7: Software production process Refers to the activities that are used for building, delivering, deploying, and evolving a software product, from.
Advertisements

1 Requirements and the Software Lifecycle The traditional software process models Waterfall model Spiral model The iterative approach Chapter 3.
Unit 2. Software Lifecycle
Arlow and Neustadt ch.21 What is the unified process? People are more important than any process. Good people with a good process will outperform good.
RUP/UP Software Development Method Hoang Huu Hanh, Hue University hanh-at-hueuni.edu.vn.
1 Prescriptive Process Models. 2 Prescriptive Models Prescriptive process models advocate an orderly approach to software engineering Prescriptive process.
Sharif University of Technology Session # 3.  Contents  Systems Analysis and Design Sharif University of Technology MIS (Management Information System),
SYSC System Analysis and Design
NJIT From Inception to Elaboration Chapter 8 Applying UML and Patterns Craig Larman.
Development Processes UML just is a modeling technique, yet for using it we need to know: »what do we model in an analysis model? »what do we model in.
Object-oriented Analysis and Design
03/12/2001 © Bennett, McRobb and Farmer Avoiding the Problems Based on Chapter 3 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis.
Iterative development and The Unified process
Objectives Explain the purpose and various phases of the traditional systems development life cycle (SDLC) Explain when to use an adaptive approach to.
UML - Development Process 1 Software Development Process Using UML (2)
Object-Oriented Analysis and Design Iterative Development and the Unified Process.
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
The Rational Unified Process
Rational Unified Process (Part 1) CS3300 Fall 2015.
A Development Process Lecture Oo13 Objectory based method.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 4 Slide 1 Software Processes.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
Chapter 2 Iterative, Evolutionary, and Agile You should use iterative development only on projects that you want to succeed. - Martin Fowler 1CS
Notes of Rational Related cyt. 2 Outline 3 Capturing business requirements using use cases Practical principles  Find the right boundaries for your.
Review of Software Process Models Review Class 1 Software Process Models CEN 4021 Class 2 – 01/12.
© Bennett, McRobb and Farmer Avoiding the Problems Based on Chapter 3 of Bennett, McRobb and Farmer: Object Oriented Systems Analysis and Design.
CSE 436—Software Development Models Ron K. Cytron 10 October 2005.
The principles of an object oriented software development process Week 04 1.
© Bennett, McRobb and Farmer 2005
Ivar Jacobson, Grady Booch, and James Rumbaugh The Unified Software Development Process Addison Wesley, : James Rumbaugh's OOMD 1992: Ivar Jacobson's.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Unified Process Software Development Darren Roback/Ravali Kallem CMIS Fall 2009.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
Object oriented analysis and design 1 Software Development Life Cycle (SDLC)
Software Development Framework
Iterative development and The Unified process
TK2023 Object-Oriented Software Engineering
Process 4 Hours.
Software engineering Software Processes.
Chapter 3 Prescriptive Process Models
Methodologies and Algorithms
CSC 355 – Newer Approaches to System Development Life Cycles & Processes, Spring 2017 March 2017 Dr. Dale Parson.
Chapter 1: Introduction to Systems Analysis and Design
Software Quality Engineering
Unified Process Source & Courtesy: Jing Zou.
Software Process Models
UNIFIED PROCESS.
UML: Unified modeling language
Software Processes.
Requirements and the Software Lifecycle
Introduction to Software Engineering
Object Oriented Analysis and Design
Rational Worldwide Software Symposium
Rational Unified Process
Rational Unified Process (RUP)
Chapter 2 – Software Processes
Requirements Engineering Bsc Applied Computing Year 2
Rational Worldwide Software Symposium
Software engineering -1
The Unified/Rational Unified Process (UP/RUP) Defined
Chapter 3 Prescriptive Process Models
Software Engineering: A Practitioner’s Approach, 6/e Chapter 3 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
SOFTWARE LIFE-CYCLES Beyond the Waterfall.
Software Engineering: A Practitioner’s Approach, 6/e Chapter 3 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
Rational Worldwide Software Symposium
Software Engineering: A Practitioner’s Approach, 6/e Chapter 3 Prescriptive Process Models copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
CSCI 360: Software Architecture & Design
Presentation transcript:

The Unified Software Development Process CMPT 371 Fall 2004 J.W. Benham

Software Development Activities Business Modeling Requirements Analysis Design Implementation Testing Deployment Maintenance Activities called disciplines in Unified Process Business modeling includes domain object modeling – develop sufficient understanding of context Requirements analysis includes writing use cases, and identifying non-functional requirements Non-functional requirements include requirements related to speed, throughput, scalability, etc. Design – determining classes that make up system, assigning responsibilities to classes, and specify how they work together to realize requirements. Testing – Unit testing, integration testing, system testing, acceptance testing Deployment – installation, training, etc. Maintenance – corrective, perfective, and adaptive changes

Waterfall Model Activities executed sequentially Advantages Disadvantages Adv – emphasis on understanding requirements before design, designing before implementation ,etc. Testing makes sure components work separately before testing whether they work together Disadv – too rigid, does not allow for changing requirements, major problems caught late in development & testing

V-shaped and Spiral models V-shaped model relates each stage of testing to an earlier stage of development Acceptance testing – requirements System testing – design Integration testing – design Unit testing – implementation Spiral model – iterate activities in order Each iteration builds part of system Each iteration builds on previous iterations V-shaped allows for early development of test suites Spiral model emphasized iterative nature of development – allows for changing requirements, learning from mistakes, etc. Possible to mitigate highest risks in early iterations.

Unified Software Development Process Use-case driven Driven by realization of use cases (or parts of use cases) Architecture-centric Define system in terms of components and the interactions and relations among those components. Iterative and incremental Each iteration produces an increment to a working system Define use case – scenario of interaction between user and system that accomplishes something of value to a user (actor). Grounding of functional requirements on needs/wants of classes of users. Types of architectures – layered, pipes and filters, data repository (central), object-oriented organization (data abstraction), etc. Iterative and incremental – handle high risks in early iterations, emphasize that each iteration produces a working program (though it may not do much after early iterations).

Iterations Each iteration includes all of the disciplines Earlier phases place greater emphasis on analysis and design activities Middle phases place greater emphasis on implementation and testing Later phases place greater emphasis on deployment (and large-scale testing) Refer to diagram on page 21 of Larman Discuss timeboxing of interations

Phases of Unified Process Inception Elaboration Construction Transition Inception – establish feasibility, develop vision of end product, present business case Elaboration – design architecture of system, develop most use cases, architectural baseline: “skeleton of system” Construction – add “muscle” to skeleton Transition – beta release, general release, training, correcting defects after delivery, Note that these do not correspond to the stages of the traditional waterfall model.