Chapter 8 Workflows of the Process Taken from Walker Royce’s textbook – Software Project Management plus a number of Personal Comments.

Slides:



Advertisements
Similar presentations
September 2008Mike Woodard Rational Unified Process Key Concepts Mike Woodard.
Advertisements

Ninth Lecture Hour 8:30 – 9:20 pm, Thursday, September 13
1 Requirements and the Software Lifecycle The traditional software process models Waterfall model Spiral model The iterative approach Chapter 3.
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.
Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Sixth Hour Lecture 10:30 – 11:20 am, September 9 Framework for a Software Management Process – Artifacts of the Process (Part II, Chapter 6 of Royce’ book)
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
SYSC System Analysis and Design
Rational Unified Process
OO Development Process. UML and Process UML standardizes notation, not process –Increase likelihood of widespread acceptance There is significant variability.
Iterative development and The Unified process
COMP 350: Object Oriented Analysis and Design Lecture 2
Page 1 R Risk-Driven and Iterative Development. Page 2 R Copyright © 1997 by Rational Software Corporation What the Iterative Life Cycle Is Not It is.
Chapter 8 Workflows of the Process Taken from Walker Royce’s textbook – Software Project Management plus a number of Personal Comments.
Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 1 /26 RUP Architecture.
Chapter 6– Artifacts of the process
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 3: Phase Management - Inception.
Principles of Object Technology Module 1: Principles of Modeling.
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.
Unified Software Development Process (UP) Also known as software engineering process SEP describes how requirements are turned into software Defines who,
Software Engineering Chapter 15 Construction Leads to Initial Operational Capability Fall 2001.
RUP Fundamentals - Instructor Notes
Software Development *Life-Cycle Phases* Compiled by: Dharya Dharya Daisy Daisy
The Rational Unified Process
Thirteenth Lecture Hour 8:30 – 9:20 am, Sunday, September 16 Software Management Disciplines Process Automation (from Part III, Chapter 12 of Royce’ book)
-Nikhil Bhatia 28 th October What is RUP? Central Elements of RUP Project Lifecycle Phases Six Engineering Disciplines Three Supporting Disciplines.
Rational Unified Process Fundamentals Module 4: Disciplines II.
RUP Fundamentals - Instructor Notes
Role-Based Guide to the RUP Architect. 2 Mission of an Architect A software architect leads and coordinates technical activities and artifacts throughout.
Object Oriented Design and Analysis Rational Unified Process.
Chapter – 9 Checkpoints of the process
Testing Workflow In the Unified Process and Agile/Scrum processes.
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 6: Phase Management -Transition.
Eighth Hour Lecture 7:30 – 8:20 pm, Thursday, September 13 Workflows of the Process (from Chapter 8 of Royce’ book)
Object-oriented Analysis and Design Stages in a Software Project Requirements Writing Analysis Design Implementation System Integration and Testing Maintenance.
CHECKPOINTS OF THE PROCESS Three sequences of project checkpoints are used to synchronize stakeholder expectations throughout the lifecycle: 1)Major milestones,
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.
Fifth Lecture Hour 9:30 – 10:20 am, September 9, 2001 Framework for a Software Management Process – Life Cycle Phases (Part II, Chapter 5 of Royce’ book)
Rational Unified Process (RUP) Process Meta-model Inception Phase These notes adopted and slightly modified from “RUP Made Easy”, provided by the IBM Academic.
J. Scott Hawker p. 1Some material © Rational Corp. Rational Unified Process Overview See and use the RUP Browser on lab machines.
The Rational Unified Process 1 EECS810: Software Engineering.
Software Project Management (SEWPZG622) BITS-WIPRO Collaborative Programme: MS in Software Engineering SECOND SEMESTER /1/ "The content of this.
CSPC 464 Fall 2014 Son Nguyen. 1. The Process of Software Architecting, Peter Eeles, Peter Cripss 2. Software Architecture for Developers, Simon Brown.
Overview of RUP Lunch and Learn. Overview of RUP © 2008 Cardinal Solutions Group 2 Welcome  Introductions  What is your experience with RUP  What is.
Yazd University, Electrical and Computer Engineering Department Course Title: Advanced Software Engineering By: Mohammad Ali Zare Chahooki The Project.
Rational Unified Process (RUP)
Rational Unified Process Fundamentals Best Practices of Software Engineering Rational Unified Process Fundamentals Best Practices of Software Engineering.
Unified Software Practices v 5.0-D Copyright  1998 Rational Software, all rights reserved 1 /26 Rational Unified Process – Part 2 Original slides modified.
RUP RATIONAL UNIFIED PROCESS Behnam Akbari 06 Oct
Review of Definitions Software life cycle: –Set of activities and their relationships to each other to support the development of a software system Software.
Iterative development and The Unified process
TK2023 Object-Oriented Software Engineering
Process 4 Hours.
IEEE Std 1074: Standard for Software Lifecycle
Unified Process Source & Courtesy: Jing Zou.
UNIFIED PROCESS.
Requirements and the Software Lifecycle
Introduction to Software Engineering
COMP 350: Object Oriented Analysis and Design Lecture 2
Object Oriented Analysis and Design
Rational Worldwide Software Symposium
Rational Worldwide Software Symposium
Software engineering -1
OO Design and Development
Rational Worldwide Software Symposium
CSCI 360: Software Architecture & Design
Presentation transcript:

Chapter 8 Workflows of the Process Taken from Walker Royce’s textbook – Software Project Management plus a number of Personal Comments

Overview Introductory Remarks 8.1 Software Process Workflows 8.2 Iteration Workflows

Introductory Remarks We like sequential activities. Human nature. We basically perform activities sequentially But Teams must operate in parallel. Requires synchronization, cross-checking, … Managing these workflows is a primary source of management complexity and leadership. Times have changed from the old days. We are required to more in less time with more tools, better support environments, but with very high expectations!

Old Way for Tracking Workflow: Sequential Activities In the past, projects ‘progressed’ via sequential progress through fixed activities. Successful projects had boundaries not rigid; non-adversarial stakeholders Unsuccessful projects had rigid boundaries. All activities had to be completed before pressing on… Much work spent on details (such as completing a manual…) while slighting important development / engineering activities.

New Way for Tracking Workflow: State of the Project We now avoid naming life-cycle phases after the predominant activities. Now we track the ‘state’ of development within phases (inception, elaboration, construction, transition), recognizing that activities and artifacts evolve and eventually become stable. We develop incrementally producing executables along way.

8.1 Software Process Workflows We have spoken about fundamental sets of artifacts and the phases in which they are largely produced – recognizing the evolution of these artifacts. (Scan Chapter 6) We now need to look inside the phases and the iterations – micro-level. Interestingly, within these boundaries, we will use the term workflow, and talk about a thread of cohesive activities that are mostly sequential. The Workflows will be mapped to the product artifacts and to the teams… So, let’s look at high-level workflows.

Management Workflow Level of Activities: Has a reasonably constant level of activity. Artifacts include Business Case Software Development Plan (SDP) Status Assessments Vision – Business and Product Work Breakdown structure Life Cycle Phase Emphasis Inception – prepare business case and vision (Business case + Vision) Elaboration – Plan development (map to SDP) Construction – Monitor and control development (map to Status Assessments) Transition – Monitor and control deployment

Environment Workflow Level of Activities: Reasonably medium level activity in inception; Quite low in Construction and Transition (should already be well established and operational); High level of activity in Elaboration, development environment and change management database are obtained, installed and configured for use. A robust Environment is essential! Artifacts Environment Defined (tools, procedures, standards, version / configuration ctl…) Software Change Order database (Mechanism for Change Control!!!) Life Cycle Phase Emphasis Inception – define development environment and change mgmt infrastructure Elaboration – install development environment; establish change management database Construction – maintain development environment; maintain software change order database Transition – Transition to maintenance environment and software change order database.

Requirements Workflow Level of Activities: Construction / Transition: Very low level (does not mean NO activity…) Higher level in Inception, especially toward the end of Inception. In fact, activities of Requirements effort are highest at the end of inception and the start of Elaboration and continuing at a high (but lower) level in Elaboration. Artifacts: Requirements set – vision; business rules; risks; statements of work, … Release Specifications – Plans for dissemination of products/ documentation/ training/ customer support/ follow-on activities…. Vision Documents – further developed; refined; bought into; shared vision… Life Cycle Phase Emphasis Inception – define operational concept Elaboration – Define architecture objectives (components; distribution, platforms, …) Construction – Define iteration objectives – high level; purpose; plans Transition – Transition maintenance environment and software change order database.

Design Workflow Levels of activities – (model the solution and evolving the architecture and design artifacts) Builds like a symmetrical mountain from inception steadily upward and peaking in Elaboration and gradually diminishing during Construction. Remember: key architecture done early; remaining items should be done but not as architecturally-significant. Artifacts Design set – Models … Architecture Description – architectural model choices. … Life Cycle Phase Emphasis Inception – formulate architecture concept Elaboration – Achieve architecture baseline Construction – Design components Transition – Refine architecture and components.

Implementation Workflow Implementation workflow Levels of activities – (Programming the components and evolving the implementation and deployment artifacts) Inception: Low activity in Inception, Elaboration: medium activity Construction: very high activity Transition: tapering off during Transition but fixes / maintenance resulting from alpha, beta testing... Artifacts Implementation set: architectural models; subsystems, packages, programs, modules, etc. etc. Deployment set – what goes into the release? Life Cycle Phase Emphasis Inception – Support architecture prototype Elaboration – Produce architecture baseline Construction – Produce complete componentry Transition – Maintain components

Assessment Workflow Assessment workflow Levels of activities – (assessing the trends in process and product quality) Inception – very low Elaboration – a little higher, but low Construction and Transition: very very high in Construction and continuing at this height; gradually becoming a lower level of activity. Artifacts Release Specifications Release Descriptions User manuals Deployment Set Life Cycle Phase Emphasis Inception – Assess plans, vision, prototypes  Elaboration – Assess architecture  Construction – Assess interim releases  Transition – Assess product releases

Deployment Workflow Deployment workflow Levels of activities – (Transitioning the end products to the user) Inception: Very low level Elaboration: Medium level Construction: low during Transition: pretty high level of activity Artifacts Deployment Set Life Cycle Phase Emphasis Inception – Analyze user community Elaboration – Define use manual Construction – Prepare transition materials Transition – Transition product to user

Modern Process Framework These levels of activities and the artifacts produced represent one of the key signatures of a modern process framework 1. Architecture-first approach “Extensive requirements analysis, design, implementation, and assessment activities are performed before the construction phase (phase), when full-scale implementation (core disciplines) is the focus.  This early life-cycle focus on implementing and testing the architecture must precede full-scale development and testing of all the components and must precede the downstream focus on completeness and quality of the entire breadth of the product features.”

2. Iterative life-cycle process. “Each phase portrays at least two iterations of each workflow. This default is intended to be descriptive, not prescriptive. Some projects may require only one iteration in a phase; others may require several iterations. The point is that the activities and artifacts of any given … core discipline may require more than one pass to achieve adequate results.” 3. Round-trip Engineering “Raising the environment activities to a first-class … Core Supporting Discipline is critical. The environment is the tangible embodiment of the project’s process, methods, and notations for producing the artifacts.” 4. Demonstration-based Approach Implementation and assessment activities are initiated early in the life cycle, reflecting the emphasis on constructing executable subsets of the evolving architecture.”  Recall, each iteration contains assessment at its conclusion.