elaboration lecture oo18 gymnastics system example cont’d

Post on 04-Jan-2016

213 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Elaboration

Lecture Oo18

Gymnastics System Example Cont’d

References

The Booch Method Guide, for Rose 2.0

Teaching Points

Validation Architectural Design

Review

What are the products of architectural design?

How would you validate you domain analysis?

Validation

Are we building the right product? Use the requirement

Gymnastics System Example

The “scoring” use case

: Competition

: Event

: Trial

: EventJudge

Compute a gymnast's score in a competition:

1. For each event in the competion get the gymnast's score

2. Get the gymnast's score for the trial that the gymnast performed in that event.

3. For each judge in the judging panel, get the score the judge gave the trial

1: score(Gymnast)

2: overallScore( )3: score( )

When to Stop Domain Analysis

You have identified all domain entities that play a role and defined their classes

You have specified the relationships between each of these classes

When to Stop Domain Analysis

You have associated with each class all operations performed on it (from uses cases)

You have analyzed each operation to the point where you understand what it needs to do and what other classes are involved

Layered Architecture Packages are organized in a hierarchy of layers

where each layer has a well-defined interface e.g. The OSI model for network services is a

layered architecture Classic three-tier architecture

– Presentation (windows, reports, etc.)– Application Logic (tasks and rules that govern the

process)– Storage (persistent storage mechanism)

Three-tier Architecture

Presentation

Application Logic

Storage

Three-tier Architecture (cont’d)

Identified by the separation of the application logic into a distinct middle layer

Presentation layer is free of application logic and just forwards requests to middle tier

Middle tier communicates with a back end storage layer

Three-tier Architecture (cont’d)

Advantages– the opportunity for reuse– the possibility of distributing application

logic on a network– allocation of developers to construct

specific tier (based on interface specs, that is good OO decomposition)

Multi-tiered Architectures

The logical extension of three-tier architecture

You can decompose a three-tier into multiple services

Multi-tiered ArchitecturesInterfaces Gui Controls

University Artifacts

People

Database

Error Handling

global

Foundations

global

The Gymnastics System

Contests People

Data Structures

global

Persistant Data

Gymnastics GUI

User Interface

OWLMFCetc.

OracleDB2etc.

Teaching Points

Validation Architectural Design

top related