OO Project Management

Size: px
Start display at page:

Download "OO Project Management"

Transcription

1 OO Project Management Twin Cities Java User s Group November 17, 1999 Mary Poppendieck Poppendieck.LLC

2 Object Oriented Development Objects Simulate the Real World Example: Process Control On/Off Switch Timer Level Control Setpoint Control OO Design Creates s Instead of defining the task to be performed, the elements that perform the task. OO Programming Assembles Objects Fundamental business operations change slowly, Business rules and information needs change rapidly. ing the business objects creates a system that lasts. November 17, 1999 Poppendieck.LLC 2

3 Software Project Life Cycles Waterfall Spiral Software Concept Requirements Analysis Architectural Design Detailed Design Coding and Debugging System Testing Dean Muench, Sybase, 1994 November 17, 1999 Poppendieck.LLC 3

4 The Unified Process Life Cycle Inception Elaboration Construction Transition Requirements Analysis An Iteration in the elaboration phase Design Implementation Test Iter. #1 Iter. #2 Iter. #n-1 Iter. #n Adapted from The Unified Software Development Process by Ivar Jacobsen, 1999 Iterations November 17, 1999 Poppendieck.LLC 4

5 Several Mini Waterfalls Requirements Analysis Design Implement Test Iteration 1... Iteration 2 Iteration 3... Iteration n Inception Elaboration Transition Example - Six Iterations Inception - One iteration to produce a proof of concept prototype Elaboration - One iteration to produce an architectural prototype One iteration to fix the architectural baseline Construction - One iteration to implement most functionality One iteration to add details and allow maturing Transition - One iteration to go from initial operational capability to full product release November 17, 1999 Poppendieck.LLC 5

6 Iterative Development Visioning Requirements Scoping Planning Future Development Iteration 5 Iteration 6 Holistic Project View Deploy Version 1 Version Release Iteration 4 Beta Release Iteration 3 Most Functionality Iteration 2 Architectural Baseline Iteration 1 Architectural Prototype Proof of Concept Release November 17, 1999 Poppendieck.LLC 6

7 Project Management Tradeoffs Functionality fixed Time Iterative Resources Time Traditional Resources vary Functionality November 17, 1999 Poppendieck.LLC 7

8 OO Development is Based on s The goal of OO development is to move down the pyramid Requirements Application business requirements Business Analysis Business objects collaborating to fulfill requirements degree of abstraction number of objects User Interface Technical Design Implementation Visual interfaces to business object behavior Objects supporting business functionality in the tech environment Executable object code Copyright 1998 Fourth Generation, Inc.

9 OO Development s The Problem Statement and Business Case specify problem scope, solution constraints and priorities. The Requirements specifies problem domain entities, rules and behaviors and how they will interface to users. Technical Requirements constrain how the solution must be structured to deliver behaviors and interfaces. Problem Statement Entities & Process Analysis Objects & Behaviors Capabilities Needed Technical Reqts Design Anticipated Return Requirements Technical & Performance Reqts. Implementation Business Case Workflow User I/F Interfaces & Attributes Copyright 1998 Fourth Generation, Inc.

10 OO Development s The Analysis identifies the required domain objects and their required behaviors. The User Interface specifies domain attributes, business process rules, and user navigation. The Design satisfies all of these together and specifies exactly what needs to be coded. The Implementation is where the programming happens. Problem Statement Entities & Process Analysis Objects & Behaviors Capabilities Needed Technical Reqts Design Anticipated Return Requirements Technical & Performance Reqts. Implementation Business Case Workflow User I/F Interfaces & Attributes Copyright 1998 Fourth Generation, Inc.

11 Use Case The functionality of a system is defined by different use cases, each of which defines what happens when an actor interacts with the system to obtain a result. Withdraw Money Dr. Ivar Jacobsen invented use cases in 1967 to develop large telecommunications switching systems in Sweden. Transfer Money Check Balance In an automated teller machine the client can, for instance, withdraw money from an account, transfer money to an account, or check the balance of an account. These functions correspond to transactions that can be represented with use cases. November 17, 1999 Poppendieck.LLC 11

12 Sample Use Case Format Overview Brief overview of Use Case Pre-conditions Required Pre-conditions Flow of Event(s) Flow of events for the Use Case Post-conditions Required post-conditions Derived Use Cases & Business Rules Use Cases and Business Rules that have been derived from requirements within the Use Case November 17, 1999 Poppendieck.LLC 12

13 Use Cases Drive Iterations Large systems should be delivered in iterations. Iterations are based upon Use Cases. Use Cases are prioritized based on complexity and risk levels. The first iteration begins with a few of the highestpriority Use Cases. Each iteration consists of additional Use Cases decided upon in advance. The number and timing of iterations is based on complexity and specified in the project plan. Each iteration results in a running executable increment. November 17, 1999 Poppendieck.LLC 13

14 Use Cases Drive Development Activity A User Does System Does Activity B Use Case Activity C Workflows Scenarios Interaction Diagrams Business Rules Classes Attributes Methods Relationships Class3 Class1 relates to Class2 Class4 Domains November 17, 1999 Poppendieck.LLC 14

15 Work Products Requirements Artifacts from Rational Unified Process. November 17, 1999 Poppendieck.LLC 15

16 Template for System Use Case and Analysis Scenarios ID SU<n Name <the name should be the goal as a short active verb phrase Goal in context <a longer statement of the goal, if needed Implements <business use case, business use case step(s), or system use case step(s) implemented Primary Actor <a role name for the primary actor, or description Secondary <other Template actors that for participate System in this Use use case Case and Analysis Scenarios Actors Trigger <the action upon the system that starts the use case; may be time event Frequency <how ID often the use case is SU<n expected to happen Name <the name should be the goal as a short active verb phrase Preconditions ID Description Goal in context <a longer statement of the goal, if needed PR1 <statement of what Implements is expected to be true <business before execution use case, of the business use case use (any case ) step(s), or [Implemented system use case step(s) implemented by: <subordinate use Primary case, interaction Actor diagram, <a role or name class responsibility] for the primary actor, or description PR2 < Secondary <other Template actors that for participate System in this Use use case Case and Analysis Scenarios Actors Trigger <the action upon the system that starts the use case; may be time event Frequency <how ID often the use case is SU<n expected to happen Scenarios Name <the name should be the goal as a short active verb phrase Preconditions Success Failure ID Description Goal in context <ID <ID <a longer statement < <ID of the goal, < if needed PR1 <statement of what Implements is expected <nameof to be true <name <business before execution use case, of <name the business use case use (any case ) step(s), or [Implemented system use case step(s) implemented by: <subordinate use Primary case, interaction main Actor diagram, of <a role or name class responsibility] for the of primary failure actor, or description success alternate PR2 < Secondary success <other Template actors that for participate System in this Use use case Case and Analysis Scenarios Actors Trigger <the action upon the system that starts the use case; may be time event ConditionsandSteps Frequency <how often the use case is expected to happen ID SU<n Ref ID Description Seq. Seq. Seq. Seq. Seq. Scenarios 1 S1 <actor <action or sub-use case, written Preconditions as Name <seq. # < Success <the name should be the goal Failure as a short active verb phrase though it succeeds [Implemented by: ID Description Goal in context <ID <ID <a longer statement of the goal, if needed < <ID < <subordinateusecase,interactiondiagram,or PR1 <statement of what Implements is expected <nameof to be true <name <business before execution use case, of <name the business use case use (any case ) step(s), or [Implemented system use case step(s) implemented classresponsibility] by: <subordinate use Primary case, interaction main Actor diagram, of <a role or name class responsibility] for the of primary failure actor, or description 2 C1 <conditioncausingbranching <seq. # < Secondary success [Implemented by: <subordinate use case, PR2 < alternate success <other actors that participate in this use case interaction diagram, or class responsibility] Actors Trigger 3 S2 < < <the action upon the system that starts the use case; may be time event ConditionsandSteps Frequency <how often the use case is expected to happen 4 S3 < Ref ID Description Seq. Seq. Seq. Seq. Seq. Scenarios 5 C2 < 1 S1 <actor <action or sub-use case, written Preconditions as 6 S3 < <seq. # < Success Failure (etc. though it succeeds [Implemented by: ID Description <ID <ID < <ID < ) <subordinateusecase,interactiondiagram,or PR1 <statement of what is expected <nameof to be true <name before execution of <name the use case (any ) [Implemented classresponsibility] by: <subordinate use case, interaction main diagram, of or class responsibility] of failure 2 C1 <conditioncausingbranching <seq. # < success [Implemented by: <subordinate use case, PR2 < alternate success interaction diagram, or class responsibility] 3 S2 < < ConditionsandSteps 4 S3 < Ref ID Description Seq. Seq. Seq. Seq. Seq. Scenarios 5 C2 < 1 S1 <actor <action or sub-use case, written as 6 S3 < <seq. # < Success Failure (etc. though it succeeds [Implemented by: <ID <ID < <ID < ) <subordinateusecase,interactiondiagram,or <nameof <name <name classresponsibility] main of of failure 2 C1 <conditioncausingbranching <seq. # < success [Implemented by: <subordinate use case, alternate success interaction diagram, or class responsibility] 3 S2 < < ConditionsandSteps 4 S3 < Ref ID Description Seq. Seq. Seq. Seq. Seq. 5 C2 < 1 S1 <actor <action or sub-use case, written as 6 S3 < <seq. # < (etc. though it succeeds [Implemented by: ) <subordinateusecase,interactiondiagram,or classresponsibility] 2 C1 <conditioncausingbranching <seq. # < [Implemented by: <subordinate use case, interaction diagram, or class responsibility] 3 S2 < < 4 S3 < 5 C2 < 6 S3 < (etc. ) Template for System Use Case and Analysis Scenarios ID SU<n Name <the name should be the goal as a short active verb phrase Goal in context <a longer statement of the goal, if needed Implements <business use case, business use case step(s), or system use case step(s) implemented Primary Actor <a role name for the primary actor, or description Secondary <other Template actors that for participate System in this Use use Case case and Analysis Scenarios Actors Trigger <the action upon the system that starts the use case; may be time event Frequency <how ID often the use case SU<n is expected to happen Name <the name should be the goal as a short active verb phrase Preconditions ID Description Goal in context <a longer statement of the goal, if needed PR1 <statement of what Implements is expected to be true <business before execution use case, of business the use case use case (any ) step(s), or system [Implemented use case step(s) implemented by: <subordinate Primary use case, Actor interaction diagram, <a role name or class for responsibility] the primary actor, or description PR2 < Secondary <other Template actors that for participate System in this Use use case Case and Analysis Scenarios Actors Trigger <the action upon the system that starts the use case; may be time event Frequency <how often the use case is expected to happen ID SU<n Scenarios Preconditions Name <the Success name should be the goal Failure as a short active verb phrase ID Description Goal in context <ID <a longer <ID statement of the goal, if needed < <ID < PR1 <statement of what Implements is expected <nameof to be true <business before <name execution use case, of business the <name use use case case (any step(s), ) or system [Implemented use case step(s) implemented by: <subordinate Primary use case, interaction Actor main diagram, <a role of name or class for responsibility] the primary of failure actor, or description Secondary PR2 < success <other alternate success actors that participate in this use case Actors Trigger <the action upon the system that starts the use case; may be time event ConditionsandSteps Frequency <how often the use case is expected to happen Ref ID Description Seq. Seq. Seq. Seq. Seq. Scenarios 1 S1 <actor <action or sub-use case, written Preconditions as <seq. # < Success Failure though it succeeds [Implemented IDby: Description <ID <ID < <ID < <subordinateusecase,interactiondiagram,or PR1 <statement of what is expected to <nameof be true before <namexecution of the <name use case (any ) [Implemented classresponsibility] by: <subordinate use case, interaction main diagram, of or class responsibility] of failure 2 C1 <conditioncausingbranching <seq. # < success [Implemented by: <subordinate use PR2 case, < alternate success interaction diagram, or class responsibility] 3 S2 < < ConditionsandSteps 4 S3 < Ref ID Description Seq. Seq. Seq. Seq. Seq. Scenarios 5 C2 < 1 S1 <actor <action or sub-use case, written as 6 S3 < <seq. # < Success Failure (etc. though it succeeds [Implemented by: <ID <ID < <ID < ) <subordinate use case, interaction diagram, or <nameof <name <name classresponsibility] main of of failure 2 C1 <condition causing branching <seq. # < success [Implemented by: <subordinate use case, alternate success interaction diagram, or class responsibility] 3 S2 < < ConditionsandSteps 4 S3 < Ref ID Description Seq. Seq. Seq. Seq. Seq. 5 C2 < 1 S1 <actor <action or sub-use case, written as 6 S3 < <seq. # < (etc. though it succeeds [Implemented by: ) <subordinateusecase,interactiondiagram,or classresponsibility] 2 C1 <conditioncausingbranching <seq. # < [Implemented by: <subordinate use case, interaction diagram, or class responsibility] 3 S2 < < 4 S3 < 5 C2 < 6 S3 < (etc. ) Template for System Use Case and Analysis Scenarios ID Name Goal in context Implements Primary Actor Secondary Actors Trigger Frequency Preconditions ID Description PR1 PR2 SU<n <the name should be the goal as a short active verb phrase <a longer statement of the goal, if needed <business use case, business use case step(s), or system use case step(s) implemented <a role name for the primary actor, or description <other actors that participate in this use case <the action upon the system that starts the use case; may be time event <how often the use case is expected to happen <statement of what is expected to be true before execution of the use case (any ) [Implemented by: <subordinate use case, interaction diagram, or class responsibility] < <ID <nameof main success Scenarios Success <ID < <name of alternate success <ID <name of failure Failure < ConditionsandSteps Ref ID Description Seq. Seq. Seq. Seq. Seq. 1 S1 <actor <action or sub-use case, written as <seq. # < though it succeeds [Implemented by: <subordinateusecase,interactiondiagram,or classresponsibility] 2 C1 <conditioncausingbranching <seq. # < [Implemented by: <subordinate use case, interaction diagram, or class responsibility] 3 S2 < < 4 S3 < 5 C2 < 6 S3 < (etc. ) Work Products Evolve Throughout the Project Problem Statement and Business Case Business Process shows flow between Business Use Cases System Use Cases automate Business Use Case steps Analysis Scenarios extend behavior of System Use Cases Business Case CPN is not flexible enough to support our constantly changing Problem products and Statement network configurations, and as as result, CPN CPN is maintenance not flexible enough to has become support extremely our constantly cumbersome changing and products resource and intensive. network If CPN configurations, is to be the and as central repository as result, CPN of provider maintenance and network has become information, extremely it must be cumbersome able to accommodate and resource all current intensive. and future If CPN needs is to for be the all lines central of business. repository of provider and network information, it must be able to accommodate all current and future needs for all lines of business. U E E E Name, goal and steps define details of Business Use Cases Name, goal, primary actor, preconditions, steps, postconditions define System Use Case details Success and failure Analysis Scenarios describe all possible threads. Variations describe differences to be dealt with later Use Case Templates Copyright 1998 Fourth Generation, Inc.

17 OO Projects are Different Incremental implementation Iterative approach to workproducts Extensive Customer involvement Stability under rules changes due to domain modeling Adaptability to change Flexible functionality with predictable budget and schedule November 17, 1999 Poppendieck.LLC 17

18 Impact on Managing Projects Scheduling and staff loading are different: More time in requirements and analysis modeling Less time coding and testing Validation throughout the Life Cycle Deliverables Come Sooner. So does feedback. Workproducts are living, evolving documents: Configuration Management is essential. The focus shifts from project phase to phase: Early focus on Requirements and Analysis Later focus on Design and Implementation November 17, 1999 Poppendieck.LLC 18

19 Project Management Responsibilities Business Case Development Plan Project Plan Iteration Plan Risk Assessment Staffing Small, highly skilled, requirements and analysis staff. Experienced Technical Lead to design system architecture. Process Management (See next page.) Status Reports November 17, 1999 Poppendieck.LLC 19

20 Process Management Process Tailoring and Conformance Define the Process: Determine the techniques, tools and standards used to produce and validate work products. Tailor the Process: Select the work products to be produced Manage the Process: Establish a structure in which the process generates valid work products Architectural Vision Established by Technical Lead Assessed and supported by Project Manager Implemented through the Process Configuration Management November 17, 1999 Poppendieck.LLC 20

Systems Analysis and Design in a Changing World, Fourth Edition

Systems Analysis and Design in a Changing World, Fourth Edition Systems Analysis and Design in a Changing World, Fourth Edition Systems Analysis and Design in a Changing World, 4th Edition Learning Objectives Explain the purpose and various phases of the systems development

More information

Reducing the costs of rework. Coping with change. Software prototyping. Ways to Cope with change. Benefits of prototyping

Reducing the costs of rework. Coping with change. Software prototyping. Ways to Cope with change. Benefits of prototyping Coping with change Change is inevitable in all large software projects. Business changes lead to new and changed system requirements New technologies open up new possibilities for improving implementations

More information

Incremental development A.Y. 2018/2019

Incremental development A.Y. 2018/2019 Incremental development A.Y. 2018/2019 Incremental development Interleaves the activities of specification, development, and validation. The system is developed as a series of versions (increments), with

More information

Outline of Unified Process

Outline of Unified Process Outline of Unified Process Koichiro OCHIMIZU School of Information Science JAIST Schedule(3/3) March 12 13:00 Unified Process and COMET 14:30 Case Study of Elevator Control System (problem definition,

More information

UNIT-I Introduction of Object Oriented Modeling

UNIT-I Introduction of Object Oriented Modeling UNIT-I Introduction of Object Oriented Modeling - Prasad Mahale Object Oriented Modeling and Reference Books: Design 1. Grady Booch, James Rumbaugh, Ivar Jacobson Unified Modeling Language User Guide,

More information

History of object-oriented approaches

History of object-oriented approaches Prof. Dr. Nizamettin AYDIN naydin@yildiz.edu.tr http://www.yildiz.edu.tr/~naydin Object-Oriented Oriented Systems Analysis and Design with the UML Objectives: Understand the basic characteristics of object-oriented

More information

CS2353 OBJECT ORIENTED ANALYSIS AND DESIGN UNIT- I

CS2353 OBJECT ORIENTED ANALYSIS AND DESIGN UNIT- I CS2353 OBJECT ORIENTED ANALYSIS AND DESIGN UNIT- I Introduction to OOAD What is OOAD? What is UML? What are the United process(up) phases - Case study the NextGen POS system, Inception -Use case Modeling

More information

Software Processes. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 4 Slide 1

Software Processes. Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 4 Slide 1 Software Processes Ian Sommerville 2006 Software Engineering, 8th edition. Chapter 4 Slide 1 Objectives To introduce software process models To describe three generic process models and when they may be

More information

SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A

SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A SRI VENKATESWARA COLLEGE OF ENGINERRING AND TECHNOLOGY THIRUPACHUR,THIRUVALLUR UNIT I OOAD PART A 1. What is an object? An object is a combination of data and logic; the representation of some realworld

More information

OG The Open Group OG TOGAF 9 Combined Part 1 and Part 2

OG The Open Group OG TOGAF 9 Combined Part 1 and Part 2 The Open Group OG0-093 TOGAF 9 Combined Part 1 and Part 2 1 Set1, Part 1 QUESTION: 1 Which of the following TOGAF components was created to enable architects to design architectures addressing Boundaryless

More information

Lecture 7: Software Processes. Refresher: Software Always Evolves

Lecture 7: Software Processes. Refresher: Software Always Evolves Lecture 7: Software Processes What is a Software Development Process? The Lifecycle of a Software Project Agile vs. Disciplined Some common approaches: RUP, SCRUM, XP, ICONIX, Where UML fits in (next lecture)

More information

VO Software Engineering

VO Software Engineering Administrative Issues Univ.Prof. Dr. Peter Auer Chair for Information Technology Email: auer@unileoben.ac.at Lecture Thursday 10:15 11:45 Project Lab Montag 16:00 19:00 Literature Helmut Balzert, Lehrbuch

More information

Introduction. Chapter 1. What Is Visual Modeling? The Triangle for Success. The Role of Notation. History of the UML. The Role of Process

Introduction. Chapter 1. What Is Visual Modeling? The Triangle for Success. The Role of Notation. History of the UML. The Role of Process Quatrani_Ch.01.fm Page 1 Friday, October 27, 2000 9:02 AM Chapter 1 Introduction What Is Visual Modeling? The Triangle for Success The Role of Notation History of the UML The Role of Process What Is Iterative

More information

Analysis and Design with UML

Analysis and Design with UML Analysis and Design with UML Page 1 Agenda Benefits of Visual Modeling History of the UML Visual Modeling with UML The Rational Iterative Development Process Page 2 What is Visual Modeling? Item Order

More information

System Development Life Cycle Methods/Approaches/Models

System Development Life Cycle Methods/Approaches/Models Week 11 System Development Life Cycle Methods/Approaches/Models Approaches to System Development System Development Life Cycle Methods/Approaches/Models Waterfall Model Prototype Model Spiral Model Extreme

More information

The Web Service Sample

The Web Service Sample The Web Service Sample Catapulse Pacitic Bank The Rational Unified Process is a roadmap for engineering a piece of software. It is flexible and scalable enough to be applied to projects of varying sizes.

More information

CS487 Midterm Exam Summer 2005

CS487 Midterm Exam Summer 2005 1. (4 Points) How does software differ from the artifacts produced by other engineering disciplines? 2. (10 Points) The waterfall model is appropriate for projects with what Characteristics? Page 1 of

More information

Software Process. Software Process

Software Process. Software Process Software Process What is SW process? Definition, Development, Support phases Process models: Waterfall Prototyping Spiral, Incremental & iterative (best practices) UP process model What is it? How does

More information

Outline of UML and Unified Process. Object Oriented Analysis/Design/Programming UML1.5. Koichiro Ochimizu, JAIST. UML&UP outline 1.

Outline of UML and Unified Process. Object Oriented Analysis/Design/Programming UML1.5. Koichiro Ochimizu, JAIST. UML&UP outline 1. Outline of UML and Unified Process Koichiro OCHIMIZU School of Information Science JAIST Schedule Feb. 27th 13:00 Scope and Goal 14:30 Basic Concepts on Representing the World (object, class, association,

More information

index_ qxd 7/18/02 11:48 AM Page 259 Index

index_ qxd 7/18/02 11:48 AM Page 259 Index index_259-265.qxd 7/18/02 11:48 AM Page 259 Index acceptance testing, 222 activity definition, 249 key concept in RUP, 40 Actor artifact analysis and iterative development, 98 described, 97 136 in the

More information

CMSC 447: Software Engineering I

CMSC 447: Software Engineering I CMSC 447: Software Engineering I General Instructions System Requirements Specification Template (Adapted from Susan Mitchell and Michael Grasso) 1. Provide a cover page that includes the document name,

More information

Requirements and Design Overview

Requirements and Design Overview Requirements and Design Overview Robert B. France Colorado State University Robert B. France O-1 Why do we model? Enhance understanding and communication Provide structure for problem solving Furnish abstractions

More information

CMSC 435: Software Engineering Section 0201

CMSC 435: Software Engineering Section 0201 CMSC 435: Software Engineering Section 0201 Atif M. Memon (atif@cs.umd.edu) 4115 A.V.Williams building Phone: 301-405-3071 Office hours Tu.Th. (11:00am-1:00pm) Don t wait, don t hesitate, do communicate!!

More information

Introduction - SENG 330. Object-Oriented Analysis and Design

Introduction - SENG 330. Object-Oriented Analysis and Design Introduction - SENG 330 Object-Oriented Analysis and Design SENG 330 Fall 2006 Instructor: Alex Thomo Email: thomo@cs.uvic.ca Office hours: Office Hours: TWF 12:30-1:30 p.m. Location: ECS 556 Objective:

More information

Chapter 1: Programming Principles

Chapter 1: Programming Principles Chapter 1: Programming Principles Object Oriented Analysis and Design Abstraction and information hiding Object oriented programming principles Unified Modeling Language Software life-cycle models Key

More information

Change Management Process on Database Level within RUP Framework

Change Management Process on Database Level within RUP Framework Change Management Process on Database Level within RUP Framework ZELJKA CAR*, PETRA SVOBODA**, CORNELIA KRUSLIN** *Department of Telecommunications Faculty of Electrical Engineering Computing, University

More information

3Lesson 3: Web Project Management Fundamentals Objectives

3Lesson 3: Web Project Management Fundamentals Objectives 3Lesson 3: Web Project Management Fundamentals Objectives By the end of this lesson, you will be able to: 1.1.11: Determine site project implementation factors (includes stakeholder input, time frame,

More information

Schedule(3/3) March 18th 13:00 Unified Process and Usecase-Driven Approach. (problem definition, use case model)

Schedule(3/3) March 18th 13:00 Unified Process and Usecase-Driven Approach. (problem definition, use case model) Schedule(3/3) March 18th 13:00 Unified Process and Usecase-Driven Approach 14:30 Case Study of Elevator Control System (problem definition, use case model) March 19th 13:00 Case Study of Elevator Control

More information

SOFTWARE LIFE-CYCLE PROCESSES From Waterfall to Extreme Programming

SOFTWARE LIFE-CYCLE PROCESSES From Waterfall to Extreme Programming SOFTWARE LIFE-CYCLE PROCESSES From Waterfall to Extreme Programming Slide 1 Lesson Objectives Understand major activities of software projects Understand the place of these in different lifecycle models

More information

Software Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution

Software Life Cycle. Main issues: Discussion of different life cycle models Maintenance or evolution Software Life Cycle Main issues: Discussion of different life cycle models Maintenance or evolution Introduction software development projects are large and complex a phased approach to control it is necessary

More information

Index. : (colon), 80 <<>> (guillemets), 34, 56

Index. : (colon), 80 <<>> (guillemets), 34, 56 : (colon), 80 (guillemets), 34, 56 A Abstraction, 3 Acronyms, 54 Action field, 140 Actions tab, 140 ActiveX controls (Microsoft), 163 Activities. See also Activity diagrams basic description of, 241

More information

Index. brief description section (Use Case Specification documents), 138 Browser window (Rational Rose), 257 Business Rules document, 212

Index. brief description section (Use Case Specification documents), 138 Browser window (Rational Rose), 257 Business Rules document, 212 Index A abstract requirements, 10 activity diagram section (Use Case -144 actors identifying, 130-131 relationships, generalization between, 137 use cases, 133-135 Actual completion date attribute actual

More information

Final Exam CISC 475/675 Fall 2004

Final Exam CISC 475/675 Fall 2004 True or False [2 pts each]: Final Exam CISC 475/675 Fall 2004 1. (True/False) All software development processes contain at least separate planning, testing, and documentation phases. 2. (True/False) The

More information

Introduction to Software Engineering

Introduction to Software Engineering Chapter 1 Introduction to Software Engineering Content 1. Introduction 2. Components 3. Layered Technologies 4. Generic View of Software Engineering 4. Generic View of Software Engineering 5. Study of

More information

Chapter 1: Principles of Programming and Software Engineering

Chapter 1: Principles of Programming and Software Engineering Chapter 1: Principles of Programming and Software Engineering Data Abstraction & Problem Solving with C++ Fifth Edition by Frank M. Carrano Software Engineering and Object-Oriented Design Coding without

More information

Building the User Interface: The Case for Continuous Development in an Iterative Project Environment

Building the User Interface: The Case for Continuous Development in an Iterative Project Environment Copyright Rational Software 2002 http://www.therationaledge.com/content/dec_02/m_uiiterativeenvironment_jc.jsp Building the User Interface: The Case for Continuous Development in an Iterative Project Environment

More information

How Cisco IT Improved Development Processes with a New Operating Model

How Cisco IT Improved Development Processes with a New Operating Model How Cisco IT Improved Development Processes with a New Operating Model New way to manage IT investments supports innovation, improved architecture, and stronger process standards for Cisco IT By Patrick

More information

Process of Interaction Design and Design Languages

Process of Interaction Design and Design Languages Process of Interaction Design and Design Languages Process of Interaction Design This week, we will explore how we can design and build interactive products What is different in interaction design compared

More information

Agile Accessibility. Presenters: Ensuring accessibility throughout the Agile development process

Agile Accessibility. Presenters: Ensuring accessibility throughout the Agile development process Agile Accessibility Ensuring accessibility throughout the Agile development process Presenters: Andrew Nielson, CSM, PMP, MPA Ann Marie Davis, CSM, PMP, M. Ed. Cammie Truesdell, M. Ed. Overview What is

More information

Module 3. Overview of TOGAF 9.1 Architecture Development Method (ADM)

Module 3. Overview of TOGAF 9.1 Architecture Development Method (ADM) Module 3 Overview of TOGAF 9.1 Architecture Development Method (ADM) TOGAF 9.1 Structure The Architecture Development Method (ADM) Needs of the business shape non-architectural aspects of business operation

More information

Software Engineering Lifecycles. Controlling Complexity

Software Engineering Lifecycles. Controlling Complexity Software Engineering Lifecycles Class url:http://laser.cs.umass.edu/courses/cs320.spring11/ Controlling Complexity Separation of Concerns Planning Ahead Do a little work now to make later work easier The

More information

Vendor: The Open Group. Exam Code: OG Exam Name: TOGAF 9 Part 1. Version: Demo

Vendor: The Open Group. Exam Code: OG Exam Name: TOGAF 9 Part 1. Version: Demo Vendor: The Open Group Exam Code: OG0-091 Exam Name: TOGAF 9 Part 1 Version: Demo QUESTION 1 According to TOGAF, Which of the following are the architecture domains that are commonly accepted subsets of

More information

Software Engineering with Objects and Components Open Issues and Course Summary

Software Engineering with Objects and Components Open Issues and Course Summary Software Engineering with Objects and Components Open Issues and Course Summary Massimo Felici Software Engineering with Objects and Components Software development process Lifecycle models and main stages

More information

Object-Oriented Analysis and Design Using UML

Object-Oriented Analysis and Design Using UML Object-Oriented Analysis and Design Using UML Student Guide - Volume 1 OO-226 Rev C D61808GC10 Edition 1.0 D62408 Copyright 2003, 2009, Oracle and/or its affiliates. All rights reserved. Disclaimer This

More information

*ANSWERS * **********************************

*ANSWERS * ********************************** CS/183/17/SS07 UNIVERSITY OF SURREY BSc Programmes in Computing Level 1 Examination CS183: Systems Analysis and Design Time allowed: 2 hours Spring Semester 2007 Answer ALL questions in Section A and TWO

More information

Week 9 Implementation

Week 9 Implementation Week 9 Implementation Dr. Eliane l. Bodanese What is more important From a software engineering perspective: Good Gui? does what customer wants maintainable, extensible, reusable Commented Code? how is

More information

The Unified Modeling Language (UML)

The Unified Modeling Language (UML) The Unified Modeling Language (UML) A Very Distilled Introduction to The Unified Modeling Language (UML). A quick introduction to UML is given. Thereafter, the surface of class and activity diagrams and

More information

Copyright protected. Use is for Single Users only via a VHP Approved License. For information and printed versions please see

Copyright protected. Use is for Single Users only via a VHP Approved License. For information and printed versions please see TOGAF 9 Certified Study Guide 4th Edition The Open Group Publications available from Van Haren Publishing The TOGAF Series: The TOGAF Standard, Version 9.2 The TOGAF Standard Version 9.2 A Pocket Guide

More information

CSC Advanced Object Oriented Programming, Spring Overview

CSC Advanced Object Oriented Programming, Spring Overview CSC 520 - Advanced Object Oriented Programming, Spring 2018 Overview Brief History 1960: Simula first object oriented language developed by researchers at the Norwegian Computing Center. 1970: Alan Kay

More information

Answers NOT TO BE PRINTED

Answers NOT TO BE PRINTED Advanced Software Engineering, COMP3C05, 2002 Answer Question 1 and two further questions. Marks for each part of each question are indicated in square brackets Calculators are NOT permitted 1. Your 3C05

More information

SECURITY REDEFINED. Managing risk and securing the business in the age of the third platform. Copyright 2014 EMC Corporation. All rights reserved.

SECURITY REDEFINED. Managing risk and securing the business in the age of the third platform. Copyright 2014 EMC Corporation. All rights reserved. SECURITY REDEFINED Managing risk and securing the business in the age of the third platform 1 BILLIONS OF USERS MILLIONS OF APPS 2010 HUNDREDS OF MILLIONS OF USERS Mobile Cloud Big Data Social Mobile Devices

More information

VANCOUVER Chapter Study Group. BABOK Chapter 9 Techniques

VANCOUVER Chapter Study Group. BABOK Chapter 9 Techniques VANCOUVER Chapter Study Group BABOK Chapter 9 Techniques May 27, 2015 David Ghotbi, CBAP Agenda Chapter 8 Review Pop Quiz Break Chapter 9 Review Pop Quiz Q & A 2 Chapter 9 Techniques Techniques: Alter

More information

Session 8: UML The Unified Modeling (or the Unstructured Muddling) language?

Session 8: UML The Unified Modeling (or the Unstructured Muddling) language? Session 8: UML The Unified Modeling (or the Unstructured Muddling) language? A few observations, opinions, pros & cons COMP 320 / 420 Spring, 2018 Mr. Weisert Where did the UML come from? Object-oriented

More information

The Great TOGAF Scavenger Hunt. Enterprise Architecture Using TOGAF 9 Course Preparation Guide

The Great TOGAF Scavenger Hunt. Enterprise Architecture Using TOGAF 9 Course Preparation Guide Enterprise Architecture Using TOGAF 9 Course Preparation Guide 2011 Metaplexity Associates LLC All Rights Reserved Version 2.0 January 2, 2011 The Open Group Certification Mark logo and TOGAF are trademarks,

More information

Domain Engineering And Variability In The Reuse-Driven Software Engineering Business.

Domain Engineering And Variability In The Reuse-Driven Software Engineering Business. OBM 7 -draft 09/02/00 1 Domain Engineering And Variability In The Reuse-Driven Software Engineering Business. Martin L. Griss, Laboratory Scientist, Hewlett-Packard Laboratories, Palo Alto, CA. Effective

More information

Designing Component-Based Architectures with Rational Rose RealTime

Designing Component-Based Architectures with Rational Rose RealTime Designing Component-Based Architectures with Rational Rose RealTime by Reedy Feggins Senior System Engineer Rational Software Rose RealTime is a comprehensive visual development environment that delivers

More information

Object-Oriented Analysis and Design Using UML (OO-226)

Object-Oriented Analysis and Design Using UML (OO-226) Object-Oriented Analysis and Design Using UML (OO-226) The Object-Oriented Analysis and Design Using UML course effectively combines instruction on the software development processes, objectoriented technologies,

More information

Development Methodology TM

Development Methodology TM We use our proven iterative approach to each design and development project. With this 6 step methodology, once the preliminary requirements are clear, the next step is to prototype your website. From

More information

defined. defined. defined. defined. defined. defined. defined. defined. defined.

defined. defined. defined. defined. defined. defined. defined. defined. defined. Table of Contents Week 1 Software Development... 2 Software Eng Life-Cycle Development Phases... 2 Methodologies... 2 Week 2 - XP, Scrum, Agile... 3 Extreme Programming (XP)... 3 Values of XP Programming...

More information

The Design Space of Software Development Methodologies

The Design Space of Software Development Methodologies The Design Space of Software Development Methodologies Kadie Clancy, CS2310 Term Project I. INTRODUCTION The success of a software development project depends on the underlying framework used to plan and

More information

BDSA Introduction to OOAD. Jakob E. Bardram

BDSA Introduction to OOAD. Jakob E. Bardram BDSA Introduction to OOAD Jakob E. Bardram Programming is Fun Developing Quality Software is Hard. Craig Larman in [OOAD] book 2 Object-Oriented Analysis & Design (OOAD) This Lecture Unified Modeling Language

More information

The LUCID Design Framework (Logical User Centered Interaction Design)

The LUCID Design Framework (Logical User Centered Interaction Design) The LUCID Design Framework (Logical User Centered Interaction Design) developed by Cognetics Corporation LUCID Logical User Centered Interaction Design began as a way of describing the approach to interface

More information

To practice UCSD Usability Design

To practice UCSD Usability Design To practice UCSD from principles to process Adds essential UCSD activities and roles to any process. Easy to communicate. Easy to integrate: in organizations and projects. A subset of a development process.

More information

SOFTWARE LIFE-CYCLE MODELS 2.1

SOFTWARE LIFE-CYCLE MODELS 2.1 SOFTWARE LIFE-CYCLE MODELS 2.1 Outline Software development in theory and practice Software life-cycle models Comparison of life-cycle models 2.2 Software Development in Theory Ideally, software is developed

More information

Software Architecture

Software Architecture Software Architecture Does software architecture global design?, architect designer? Overview What is it, why bother? Architecture Design Viewpoints and view models Architectural styles Architecture asssessment

More information

INTRODUCING THE UML. Chapter 2

INTRODUCING THE UML. Chapter 2 chap02.fm Page 13 Friday, October 27, 2000 10:26 AM Chapter 2 INTRODUCING THE UML In this chapter Overview of the UML Three steps to understanding the UML Software architecture The software development

More information

The IDN Variant TLD Program: Updated Program Plan 23 August 2012

The IDN Variant TLD Program: Updated Program Plan 23 August 2012 The IDN Variant TLD Program: Updated Program Plan 23 August 2012 Table of Contents Project Background... 2 The IDN Variant TLD Program... 2 Revised Program Plan, Projects and Timeline:... 3 Communication

More information

Objectives. Connecting with Computer Science 2

Objectives. Connecting with Computer Science 2 Objectives Learn how software engineering is used to create applications Learn some of the different software engineering process models Understand what a design document is and how it should be used during

More information

Software Engineering

Software Engineering Software Engineering A systematic approach to the analysis, design, implementation and maintenance of software. Software Development Method by Jan Pettersen Nytun, page 1 Software Engineering Methods Most

More information

1. Introduction to Object Oriented Software Development

1. Introduction to Object Oriented Software Development 1. Introduction to Object Oriented Software Development a) Object: A set of data together with some operations that can be performed on that data. Eg. Bank Account. Data can be account number, name of

More information

Restricted Use Case Modeling Approach

Restricted Use Case Modeling Approach RUCM TAO YUE tao@simula.no Simula Research Laboratory Restricted Use Case Modeling Approach User Manual April 2010 Preface Use case modeling is commonly applied to document requirements. Restricted Use

More information

Dilbert Scott Adams. CSc 233 Spring 2012

Dilbert Scott Adams. CSc 233 Spring 2012 Dilbert Scott Adams CSc 233 Spring 2012 Dilbert Scott Adams CSc 233 Spring 2012 2 Dilbert Scott Adams CSc 233 Spring 2012 3 prerequisites CSc 233 Spring 2012 I thought we had agreed long ago that the Department

More information

Quality Management Plan (QMP)

Quality Management Plan (QMP) Quality Management Plan for LEMA Family Accountability System Version 3.3 Quality Management Plan (QMP) PROJECT TITLE LEMA FAMILY ACCOUNTABILITY SYSTEM TEAM NO #04 TEAM MEMBERS & ROLES NAME ROLES Teawon

More information

STEP Data Governance: At a Glance

STEP Data Governance: At a Glance STEP Data Governance: At a Glance Master data is the heart of business optimization and refers to organizational data, such as product, asset, location, supplier and customer information. Companies today

More information

Introduction to Software Engineering p. 1 The Scope of Software Engineering p. 3 Historical Aspects p. 4 Economic Aspects p. 7 Maintenance Aspects p.

Introduction to Software Engineering p. 1 The Scope of Software Engineering p. 3 Historical Aspects p. 4 Economic Aspects p. 7 Maintenance Aspects p. Preface p. xv Introduction to Software Engineering p. 1 The Scope of Software Engineering p. 3 Historical Aspects p. 4 Economic Aspects p. 7 Maintenance Aspects p. 8 Specification and Design Aspects p.

More information

Object Oriented System Development

Object Oriented System Development Object Oriented System Development Ratna Wardani Semester Genap, 2012 2/26/2012 Ratna W/PSBO2012 1 About This Course It shows how to apply OOAD technique to analyze and develop systems.. It gives you an

More information

Certified Tester Foundation Level(CTFL)

Certified Tester Foundation Level(CTFL) Certified Tester Foundation Level(CTFL) ISTQB : International Software Testing Qualifications Board Heading: The International Software Testing Qualifications Board (ISTQB) is an internationally recognized

More information

Standard Glossary of Terms used in Software Testing. Version 3.2. Foundation Extension - Usability Terms

Standard Glossary of Terms used in Software Testing. Version 3.2. Foundation Extension - Usability Terms Standard Glossary of Terms used in Software Testing Version 3.2 Foundation Extension - Usability Terms International Software Testing Qualifications Board Copyright Notice This document may be copied in

More information

Lesson 11. W.C.Udwela Department of Mathematics & Computer Science

Lesson 11. W.C.Udwela Department of Mathematics & Computer Science Lesson 11 INTRODUCING UML W.C.Udwela Department of Mathematics & Computer Science Why we model? Central part of all the activities We build model to Communicate Visualize and control Better understand

More information

Introduction to Software Engineering. ECSE-321 Unit 9 Architectural Design Approaches

Introduction to Software Engineering. ECSE-321 Unit 9 Architectural Design Approaches Introduction to Software Engineering ECSE-321 Unit 9 Architectural Design Approaches Requirement Elicitation Analysis (Software Product Design) Architectural Design Detailed Design Architectural Design

More information

Senior Project: Calendar

Senior Project: Calendar Senior Project: Calendar By Jason Chin June 2, 2017 Contents 1 Introduction 1 2 Vision and Scope 2 2.1 Business Requirements...................... 2 2.1.1 Background........................ 2 2.1.2 Business

More information

Gradational conception in Cleanroom Software Development

Gradational conception in Cleanroom Software Development Gradational conception in Cleanroom Software Development Anshu Sharma 1 and Shilpa Sharma 2 1 DAV Institute of Engineering and Technology, Kabir Nagar, Jalandhar, India 2 Lovely Professional University,

More information

An Overview of TOGAF Version 9.1

An Overview of TOGAF Version 9.1 An Overview of TOGAF Version 9.1 Robert Weisman MSc, PEng, PMP, CD CEO / Chief Enterprise Architect robert.weisman@buildthevision.ca 44 Montgomery Street 1168 Ste Therese Ottawa, Ontario Canada K1C2A6

More information

ORACLE SERVICES FOR APPLICATION MIGRATIONS TO ORACLE HARDWARE INFRASTRUCTURES

ORACLE SERVICES FOR APPLICATION MIGRATIONS TO ORACLE HARDWARE INFRASTRUCTURES ORACLE SERVICES FOR APPLICATION MIGRATIONS TO ORACLE HARDWARE INFRASTRUCTURES SERVICE, SUPPORT AND EXPERT GUIDANCE FOR THE MIGRATION AND IMPLEMENTATION OF YOUR ORACLE APPLICATIONS ON ORACLE INFRASTRUCTURE

More information

SEGUE DISCOVERY PARTICIPATION IN DISCOVERY DISCOVERY DELIVERABLES. Discovery

SEGUE DISCOVERY PARTICIPATION IN DISCOVERY DISCOVERY DELIVERABLES.   Discovery SEGUE DISCOVERY An initial engagement with Segue begins with a Phase where our experienced team works directly with our customer to define the vision, scope, and high-level requirements for the project.

More information

02291: System Integration

02291: System Integration 02291: System Integration Week 10 Hubert Baumeister huba@dtu.dk DTU Compute Technical University of Denmark Spring 2018 Last Week Principles of good design: layered architecture Software Development Processes

More information

Implementing a Modular Open Systems Approach (MOSA) to Achieve Acquisition Agility in Defense Acquisition Programs

Implementing a Modular Open Systems Approach (MOSA) to Achieve Acquisition Agility in Defense Acquisition Programs Implementing a Modular Open Systems Approach (MOSA) to Achieve Acquisition Agility in Defense Acquisition Programs Philomena Zimmerman Office of the Deputy Assistant Secretary of Defense for Systems Engineering

More information

Building a New Rational Web Site with Rational Suite

Building a New Rational Web Site with Rational Suite Building a New Rational Web Site with Rational Suite by Christina Howe Director of Internet Services Rational Software In April of last year, Rational Software determined that its Web site no longer measured

More information

for TOGAF Practitioners Hands-on training to deliver an Architecture Project using the TOGAF Architecture Development Method

for TOGAF Practitioners Hands-on training to deliver an Architecture Project using the TOGAF Architecture Development Method Course Syllabus for 3 days Expert led Enterprise Architect hands-on training "An Architect, in the subtlest application of the word, describes one able to engage and arrange all elements of an environment

More information

Practical IT Research that Drives Measurable Results OptimizeIT Strategic Planning Bundle

Practical IT Research that Drives Measurable Results OptimizeIT Strategic Planning Bundle Practical IT Research that Drives Measurable Results OptimizeIT Strategic Planning Bundle Info-Tech Research Group 1 An IT Strategy must lay out a roadmap and budget for investment to establish the systems,

More information

Software Development Methodologies

Software Development Methodologies Software Development Methodologies Lecturer: Raman Ramsin Lecture 8 Agile Methodologies: XP 1 extreme Programming (XP) Developed by Beck in 1996. The first authentic XP book appeared in 1999, with a revised

More information

USER EXPERIENCE DESIGN GA.CO/UXD

USER EXPERIENCE DESIGN GA.CO/UXD General Assembly Course Curriculum USER EXPERIENCE DESIGN User Experience Design Table of Contents 3 Overview 4 Students 5 Curriculum Projects & Units 11 Frequently Asked Questions 12 Contact Information

More information

IBM Fundamentals of Applying Tivoli Storage Solutions V2. Download Full Version :

IBM Fundamentals of Applying Tivoli Storage Solutions V2. Download Full Version : IBM 000-026 Fundamentals of Applying Tivoli Storage Solutions V2 Download Full Version : https://killexams.com/pass4sure/exam-detail/000-026 QUESTION: 92 What is required to identify valid participants

More information

Today s Agenda UML. CompSci 280 S Introduction to Software Development. 1.Introduction UML Diagrams. Topics: Reading:

Today s Agenda UML. CompSci 280 S Introduction to Software Development. 1.Introduction UML Diagrams. Topics: Reading: CompSci 280 S2 2107 Introduction to Software Development Today s Agenda Topics: Introduction Activity Diagram Object interaction Sequence Diagram Reading: Booch G.,The Unified Modeling Language User Guide,

More information

Business Modelling. PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e. Early phase of development Inputs: Activities: informal specification

Business Modelling. PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e. Early phase of development Inputs: Activities: informal specification PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 4: Restaurant System: Business Modelling Slide 1/1 Business Modelling Early phase of development Inputs: informal specification Activities: create use

More information

CS3500: Object-Oriented Design Fall 2013

CS3500: Object-Oriented Design Fall 2013 CS3500: Object-Oriented Design Fall 2013 Class 20 11.12.2013 Assignment 8 Due Friday, November 15, 2013 2 Software Process Phases of the Software Requirements Process Design Implementation Testing Maintenance

More information

State of Security Operations

State of Security Operations State of Security Operations Roberto Sandoval / September 2014 Security Intelligence & Operations Consulting Founded: 2007 The best in the world at building state of the art security operations capabilities/cyber

More information

Basic Training in Software Testing (2 Days)

Basic Training in Software Testing (2 Days) www.peaklearningllc.com Basic Training in Software Testing (2 Days) This is a practical hands-on seminar to cover the critical path of testing. Your instructor will be an experienced practitioner in the

More information

Quality Management Plan (QMP)

Quality Management Plan (QMP) Quality Management Plan (QMP) LEMA Pilot School Integrated Scheduling System. Team number 12 Name Primary Role Secondary Role David Wiggins Project Manager Developer Aakash Shah Prototyper Developer Kushalpreet

More information

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview

CHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview CHAPTER 1 Topic: UML Overview After studying this Chapter, students should be able to: Describe the goals of UML. Analyze the History of UML. Evaluate the use of UML in an area of interest. CHAPTER 1:

More information