Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the...

Post on 20-Dec-2015

215 views 0 download

Tags:

Transcript of Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the...

Chapter 7Analysis

Introduction

• Objectives:– To produce the first approximation of the shape of the solution and to

lay the groundwork for design

• Primary Artifacts– Design model

• contains:– the key elements of the software solution and their organizations– Use-case realizations

– User-Experience Model• Provides an abstraction of the user interface elements and the user’s interaction

with the system • Contains:

– Screens– Use-Case Storyboards– Navigation Map

Analysis and Design Iterative Development

Analysis Overview

• Two workflow details:1. Define an Initial Architecture

– Focusing on sketching out the software architecture

2. Analyze behavior– Focus on:

– Identifying Screens and use-Case Storyboards

– Identifying the Analysis Classes, their responsibilities and their interactions

Analysis and Design Overview Diagram

Workflow detail: Define an Initial Architecture

• Objectives:– To create an initial “sketch” of the system

architecture that leverages any existing Reference Architectures or architectural framework

– The “sketch” includes:• Overall structure of the system• Its key abstractions, and• Its mechanism

Define an Initial Architecture Workflow Detail Overview Diagram

Activity: Architectural Analysis

• Overview:– To propose an initial architecture for the system, based on

experience gained from similar systems or similar problem domain

• Input Artifacts:– Design guidelines– Glossary– Reference Architecture– Supplementary specification– Use-case Model– Vision

Activity: Architectural Analysis (2)

• Resulting Artifacts:– Deployment Model– Design Guidelines– Design Model– Software Architecture Document

• Steps:– Develop Architecture Overview– Survey Available Assets– Define the Initial Deployment Model– Structure the Design Model– Identify key Abstraction– Identify Analysis Mechanism

Architecture Overview

The Design Model Layers

Key Abstractions

Activity: Review the Initial Architecture

• Overview:– To review the initial architecture and supporting guidelines

• Input Artifacts:– Design guidelines– Glossary– Risk List– Software Architecture Document– Supplementary specification– Use-case Model

• Resulting Artifacts:– Change Request– Review Record

• Steps:– Conduct the Review

Workflow detail: Analyze Behavior

• Objectives:– Adding analysis-level system elements that

realize the Use Cases to this initial structure – Two “streams” of activities

• Model the User Experience– Considers how each use Case is realized in terms of

Screens

• Use Case Analysis– Considers how each Use Case is realized in terms of

Analysis Classes

Analyze Behavior Workflow Detail Overview Diagram

Activity: Model The User Experience

• Overview:– To define how the behavior of each Use Case is

provided by the user-experience elements of the system

• Input Artifacts:– Use-case Model – Supplementary specification– User-Experience Model– User-Experience Guidelines

• Resulting Artifacts:– User-Experience Model

Activity: Model The User Experience (2)

• Steps:– For each use Case:

• Identify the participating Screens

• Model the screen flows

• Define the screen Navigation paths

– Per iteration:• Reconcile the Use Case Storyboards

• Document Usability Requirements

User-Experience Model Structure

Traceability between a Use Case Storyboard and a Use Case

A Screen with Dynamic Content

A Screen with an Input Form

A Screen with User Actions

“Place Bid” Use Case Storyboard Participating Scenes

“Place Bid” Use Case Storyboard Scene Flow

“Place Bid” Use Case Storyboard Participating Scenes (Detailed)

Auction Management

Navigation Map

Activity: Review the User Experience

• Overview:– To review the user-experience artifacts and obtain acceptance of the system’s

user experience from the system’s key stakeholders, especially the end users

• Input Artifacts:– Supplementary specification– Use-case Model – User-Experience Guidelines – User-Experience Model

• Resulting Artifacts:– Change Request– Review Record

• Steps:– Conduct the Review

Activity: Use-Case Analysis

• Overview:– To define how the behavior of each Use Case is provided by

the analysis elements of the system

• Input Artifacts:– Design Guidelines– Design Model – Glossary – Use-case Model – User-Experience Model

• Resulting Artifacts:– Design Model

Activity: Use-Case Analysis(2)

• Steps:– For each use Case:

• Identify the participating Analysis Classes

• Model the use-Case flows

• Describe the Analysis Classes

– Per iteration:• Reconcile the Use Case Realizations

• Ensure consistency with the User-Experience Model

Analysis Elements Model

Structure

Traceability between a Use Case Realization and a Use Case

Analysis Class Type

Typical Interactions among Analysis Classes

“Place Bid” Use Case Realization Participating Analysis Classes

“Place Bid” Use Case Realization Use Case

“Place Bid” Use Case Realization Participating Analysis Classes (Detailed)

Relationship between Requirement Elements and Analysis Elements

Traceability between Boundary Classes and Screens

Activity: Review the Analysis

• Overview:– To review the results of analysis to verify that they accurately represent the system

requirements, are consistent with one another, and can serve as a good basis for design.

• Input Artifacts:– Design Guidelines– Design Model – Supplementary specification– Use-case Model – User-Experience Model

• Resulting Artifacts:– Change Request– Review Record

• Steps:– Conduct the Review