Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative.

Slides:



Advertisements
Similar presentations
Systems Analysis and Design in a Changing World
Advertisements

Chapter 8: Evaluating Alternatives for Requirements, Environment, and Implementation.
Chapter 05: Evolutionary Requirements Definition : Requirements  “Requirements are capabilities and conditions to which the system, and more broadly.
Chapter 4: Inception is Not the Requirements Phase
Chapter 7 Other Requirements Good Fast Cheap Pick any two. 1CS John Cole.
Object-Oriented Analysis and Design
Using UML, Patterns, and Java Object-Oriented Software Engineering Royce’s Methodology Chapter 16, Royce’ Methodology.
COMP 350: Object Oriented Analysis and Design Lecture 3 Case Studies, Inception & Use Cases References: Craig Larman Chapters 3-6.
NJIT From Inception to Elaboration Chapter 8 Applying UML and Patterns Craig Larman.
Understanding Requirements
Dr. Kivanc DincerCS319 Week 1 - Sept.12,20051 Chapter 4 INCEPTION IS NOT THE REQUIREMENTS PHASE Objectives Define the inception step. Motivate the following.
NJIT Evolutionary Requirements Chapter 5 Applying UML and Patterns Craig Larman.
Inception What needs to be done? Describe the vision and business case for this project. Determine if the project is feasible. Determine if the enterprise.
From Inception to Elaboration Chapter 8 Applying UML and Patterns -Craig Larman.
8 Systems Analysis and Design in a Changing World, Fifth Edition.
NJIT Inception is not the Requirements Phase Chapter 4 Applying UML and Patterns Craig Larman.
Mastering OOA/OOD with UML. Contents Introduction Requirements Overview OOAOOD.
1 CMPT 275 Software Engineering Requirements Analysis Process Janice Regan,
Slide 1 Requirements Workflow. Slide 2 The Phases/Workflows of the Unified Process Figure 3.1 l Phase is Business context of a step Workflow is Technical.
® IBM Software Group © 2006 IBM Corporation PRJ480 Mastering the Management of Iterative Development v2 Module 3: Phase Management - Inception.
Copyright © Craig Larman All Rights Reserved Requirements.
RUP Requirements RUP Artifacts and Deliverables
UML - Development Process 1 Software Development Process Using UML (2)
Introduction to RUP Spring Sharif Univ. of Tech.2 Outlines What is RUP? RUP Phases –Inception –Elaboration –Construction –Transition.
1 Phases in Software Development Lecture Software Development Lifecycle Let us review the main steps –Problem Definition –Feasibility Study –Analysis.
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
Software Requirements Engineering CSE 305 Lecture-2.
Software Engineering Management Lecture 1 The Software Process.
1 CS 426 Senior Projects Chapter 3: The Requirements Workflow [Arlow & Neustadt, 2005] January 31, 2012.
INFO 637Lecture #51 Software Engineering Process II Defining Requirements INFO 637 Glenn Booker.
Chapter 7 Applying UML and Patterns -Craig Larman
Approaching a Problem Where do we start? How do we proceed?
Chapter 7 Applying UML and Patterns Craig Larman
Jan 7, A UP project organizes the work and iterations across four major phases: – Inception -- approximate vision, business case, scope, vague estimates.
 Development is organized in a series of short, fixed-length mini-projects called iterations  Iterations are also incremental  Successive enlargement.
Chapter 2 Iterative, Evolutionary, and Agile You should use iterative development only on projects that you want to succeed. - Martin Fowler 1CS
Object-Oriented Analysis and Design Jan 21, 2009.
Chapter 1 Applying UML and Patterns. The Need for Software Blueprints Knowing an object-oriented language and having access to a library is necessary.
Inception Chapter 4 Applying UML and Patterns -Craig Larman.
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.
Chapter 5 Evolutionary Requirements. Introduction 5.1 Definition: Requirements 5.2 Evolutionary vs. Waterfall Requirements 5.3 What are Skillful Means.
Chapter 4. Inception is NOT Requirements: Inception is a short, initial stage. Its purpose is a common vision and scope measurement. needed to do: –analyze.
Requirements CS121 Spring Administrivia new student: Guillermo artist: Jackie Wijaya.
CSC480 Software Engineering Lecture 8-9 September 20, 2002.
Software Engineering 1 Object-oriented Analysis and Design Chap 24 Iteration 2 More Patterns.
Understanding Requirements Chapter 5 Applying UML and Patterns -Craig Larman.
Ivar Jacobson, Grady Booch, and James Rumbaugh The Unified Software Development Process Addison Wesley, : James Rumbaugh's OOMD 1992: Ivar Jacobson's.
Inception is not Requirement phasee Chapter 3 and 4 Applying UML and Patterns -Craig Larman.
Rational Unified Process (RUP)
Requirement engineering & Requirement tasks/Management. 1Prepared By:Jay A.Dave.
Chapter 8: Iteration 1 - Basics.  We review here the requirements for first iteration of our case studies. They are a subset of the requirements as described.
Chapter 3: The Requirements Workflow [Arlow and Neustadt, 2005] CS 426 Senior Projects in Computer Science University of Nevada, Reno Department of Computer.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
Requirement Discipline Spring 2006/1385 Semester 1.
Chapter 8. Iteration 1, Elaboration: book view differs from reality for pedagogical reasons not doing “risk-driven” up front uses many OOA/D skills should.
Larman chapter 41 Inception Larman chapter 4 and 7.
5. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Describe the activities of the requirements discipline  Describe the difference.
PART II INCEPTION Chapter 4 Inception is Not The Requirements Phase.
Ondřej Přibyl L3: System Development Life Cycle page 1 Lecture 3: System Development Life Cycle Doc.Ing. Ondřej Přibyl, Ph.D. Department of applied mathematics.
Review of Definitions Software life cycle: –Set of activities and their relationships to each other to support the development of a software system Software.
Software Engineering Management
Applying UML and Patterns
Evolutionary requirements
Unified Process(UP) popo.
Unified Process (UP).
Evolutionary Requirements
Chapter 4 Inception CS John Cole.
Other System Requirements
Presentation transcript:

Software Engineering 1 Object-oriented Analysis and Design Applying UML and Patterns An Introduction to Object-oriented Analysis and Design and Iterative Development Part II Inception

Software Engineering 2 Object-oriented Analysis and Design Chapters 4. Inception is not the requirement phase 5. Evolutionary requirement 6. Use cases 7. Other requirements

Software Engineering 3 Object-oriented Analysis and Design Chap 4 Inception is Not the Requirements Phase

Software Engineering 4 Object-oriented Analysis and Design Inception Phase 1  Inception phase: envision the product scope, vision, and business case. m Buy and/or build this system? m Rough unreliable range of cost ? Is it $10K, $100K, millions? m Should we proceed or stop? m Do the stakeholders have basic agreement on the vision of the project, and is it worth investing in serious investigation?  Most requirements analysis during the elaboration phase, in parallel with early production-quality programming and testing ★

Software Engineering 5 Object-oriented Analysis and Design Inception Phase 2  Some activities and artifacts in inception m A short requirements workshop m Most actors, goals, and use case named m Most use cases written in brief format; 10~20% of the use cases are written in fully dressed detail to improve understanding of the scope and complexity m Most influential risk and quality requirements identified m Version one of the Vision and Supplementary Specification written m Risk list m Technical proof-of-concept prototypes and other investigations to explore the technical feasibility of special requirements (e.g. Does Java Swing work properly on touch-screen displays?)

Software Engineering 6 Object-oriented Analysis and Design Inception Phase 3  Some activities and artifacts in inception m User interface-oriented prototype to clarify the vision of functional requirements m Recommendations on what components to buy/build/reuse, to be refined in elaboration (a tax calculation package) m High-level candidate architecture and components proposed m Plan for the first iteration m Candidate tools list

Software Engineering 7 Object-oriented Analysis and Design Inception Phase 4  Inception phase should be relatively short for most projects m one or a few weeks long. m On many projects, if it is more than a week long, then the point of inception has been missed: It is to decide if the project is worth a serious investigation

Software Engineering 8 Object-oriented Analysis and Design Sample Inception Artifacts A description of the customized UP steps and artifacts for this project. In the UP, one always customizes it for the project. Development Case Low-precision guess for elaboration phase duration and effort. Tools, people, education, and other resources. Phase Plan & Software Development Plan Describes what to do in the first elaboration iteration.Iteration Plan To clarify the vision, and validate technical ideas.Prototypes and proof-of-concepts Describes the risks (business, technical, resource, schedule) and ideas for their mitigation or response. Risk List & Risk Management Plan Key domain terminology, and data dictionary.Glossary Describes other requirements, mostly non-functional. During inception, it is useful to have some idea of the key non-functional requirements that have will have a major impact on the architecture. Supplementary Specification Describes the functional requirements. During inception, the names of most use cases will be identified, and perhaps 10% of the use cases will be analyzed in detail. Use-Case Model Describes the high-level goals and constraints, the business case, and provides an executive summary. Vision and Business Case CommentArtifact ★ ★★ ★

Software Engineering 9 Object-oriented Analysis and Design Chap 5 Evolutionary Requirements

Software Engineering 10 Object-oriented Analysis and Design Requirements Analysis 1 As Marketing requested it.

Software Engineering 11 Object-oriented Analysis and Design Requirements Analysis 2 As Sales ordered it.

Software Engineering 12 Object-oriented Analysis and Design Requirements Analysis 3 As Engineering designed it.

Software Engineering 13 Object-oriented Analysis and Design Requirements Analysis 4 As Production manufactured it.

Software Engineering 14 Object-oriented Analysis and Design Requirements Analysis 5 As Maintenance installed it.

Software Engineering 15 Object-oriented Analysis and Design Requirements Analysis 6 What the customer wanted.

Software Engineering 16 Object-oriented Analysis and Design Evolutionary Requirement 1  Requirement are a description of need or desired for a product. m Goal - to identify and document what is really needed, in a form that clearly communicates to the client and to development team members. m Challenge - to define the requirement unambiguously.

Software Engineering 17 Object-oriented Analysis and Design Evolutionary Requirement 2  In UP, requirements are categorized according to the FURPS+ model. m Functional: features, capability, security m Usability: human factors, help, documentation m Reliability: frequency of failure, recoverability, predictability m Performance: response times, throughput, accuracy, availability, resource usage. m Supportability: adaptability, maintainability, internationalization, configurability ★

Software Engineering 18 Object-oriented Analysis and Design Evolutionary Requirement 3  The “+” in FURPS+ indicates sub-factors m Implementation: resource limitation, languages and tools, hardware,.. m Interface: constraint imposed by interfacing with external systems m Operations: system management in its operational setting m Packaging: a physical box m Legal ★

Software Engineering 19 Object-oriented Analysis and Design Evolutionary Requirement 4  The UP offers several requirements artifacts m Use case Model m Supplementary Specification (Non-functional requirements) m Glossary (Data dictionary) m Vision: a short executive overview document for quickly learning the project’s big picture (summary). m Business rules (e.g. government tax laws)