/ 14 []

From Inception to Elaboration - Chapter 8Applying UML and Patterns-Craig La...

Objectives. Elaboration is the initial series of iterations during which the team does the followingSerious investigationDiscover

Download Presentation

From Inception to Elaboration

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use only and may not be sold or licensed nor shared on other sites. SlideServe reserves the right to change this policy at anytime.While downloading, If for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript

From inception to elaboration l.jpg

From Inception to Elaboration

Chapter 8

Applying UML and Patterns

-Craig Larman

Objectives l.jpg


  • Elaboration is the initial series of iterations during which the team does the following

    • Serious investigation

    • Discover & stabilize major requirements

    • Mitigate/retire risks ( business value )

    • Build core architecture elements

    • Estimate overall schedule and resources

    • Establish a supporting environment

Inception artifacts and activities 1 l.jpg

Inception - Artifacts and Activities (1)

  • Short Requirements workshop

  • Naming most actors, goals, use cases

  • Keep use cases brief (10-20% are in fully dressed)

  • Identify most risky & influential quality requirements

  • First version of Supplementary Specification and vision are written

Inception artifacts and activities 2 l.jpg

Inception - Artifacts and Activities ( 2 )

  • Risk list (including deadlines on demo)

  • Technical feasibility investigation (does the requirements supported by our used technology? )

  • UI oriented prototypes to clarify vision

  • Buy/build/reuse components (ex: recommendations to buy a tax calculator)

  • High-level candidate architecture (a rough estimate of various accessories; a java front end? )

  • Plan for the first iteration

  • Candidate tools list

Elaboration key ideas l.jpg

Elaboration - Key Ideas

  • Not a waterfall model !

  • Two to six weeks for each iteration

  • Timeboxed iterations (deadlines should be strictly maintained)

  • Each iteration products ends in a stable and tested release

Architecture prototype baseline l.jpg

Architecture Prototype/Baseline

  • Not a partial system

  • Evolutionary prototype of final product

  • Don’t create throw-away prototypes

  • Production subset of final system

  • Also called Executable Architecture

Best practices l.jpg

Best Practices

  • Start programming early

  • Adapt based on feedback from tests, users, developers

  • Design, implement and test adaptively

  • Test early and realistically

  • Requirements and use case details through series of workshops (once per iteration)

Requirements and iterations ranking depends on l.jpg

Requirements and Iterations ranking depends on….

  • Risk

    -includes technical complexity and other factors.

  • Coverage

    -whether all major parts are covered or not.

  • Criticality

    -functions of high business value.

Ranking l.jpg


  • Rank work across iterations

  • High ranking scenarios in early iterations (ex: process sales, logging, etc.)

  • Rank adaptively

Up artifacts planning l.jpg

UP Artifacts planning

  • Iteration Plan:- only the next iteration is planned

  • Change Request:- plan written in greater detailed whenever necessary

  • Software Development Plan:- overall requirement ranking is recorded.

Artifacts starting in elaboration this will not be completed rather refined over iterations l.jpg

Artifacts starting in Elaboration (this will not be completed rather refined over iterations)

  • Domain Model (conceptual class diagram)

  • Design Model

    (logical design: class diagram, object oriented diagram, etc.)

  • Software Architecture Document

    (summary of ideas and motivations)

  • Data Model (database schemas..)

  • Test Model

  • Implementation Model (source code, databases and so on. )

  • Use-Case Storyboards and UI Prototypes (description of user interfaces, navigations etc.

Inception and elaboration l.jpg

Inception and Elaboration

  • Main output is a stable software architecture, that enables quality planning of Construction and Deployment

  • 15 to 25 percent of total project cost

You didn t understand elaboration when l.jpg

You didn’t Understand Elaboration When …

  • No Timeboxed schedule

  • Single Iteration

  • Most requirements already defined

  • No Risk mitigation/resolution

  • No Executable Architecture

  • Requirements Phase

  • Attempt full and careful design

You didn t understand elaboration when 2 l.jpg

You didn’t Understand Elaboration When (2)...

  • Minimal feedback and adaptation

  • No early and realistic testing

  • Frozen Architecture

  • No Proof-of-concept programming

  • No multiple requirements workshops