UML 2'0, The RUP and CBD96 - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

UML 2'0, The RUP and CBD96

Description:

The RUP J2EE Development Roadmap is a customisation for CBD using the Java technologies ... J2EE Roadmap and CBD'96 both describe CBD end-to-end' (from ... – PowerPoint PPT presentation

Number of Views:37
Avg rating:3.0/5.0
Slides: 23
Provided by: alanoca
Category:
Tags: rup | uml | cbd96 | j2ee

less

Transcript and Presenter's Notes

Title: UML 2'0, The RUP and CBD96


1
UML 2.0, The RUP and CBD96
2
Topics
  • UML 2.0 for CBD
  • The J2EE Development Roadmap of the Rational
    Unified Process (RUP)
  • Summary

3
UML 2.0 and CBD
  • UML 2.0 is a significant upgrade to UML
  • Adds new diagrams
  • New syntax within existing diagrams
  • More detailed and rigorous specification
    (meta-model)
  • Here we focus only on specific enhancements
    relative to CBD

4
Offered and Required Interfaces
  • UML 1.x offered little beyond a visual equivalent
    of the programmatic interface (API)
  • Uses the stereotyped class icon for offered
    interfaces (with the lollipop as shorthand)
  • No support for required interfaces
  • UML 2.0 includes
  • ltltprovided interfacegtgt
  • the offered interface and traditional icon
  • ltltrequired interfacegtgt
  • New socket icon

5
Visualizing Interfaces (1)
6
Visualizing Interfaces (2)
ltltrequiredgtgt interfaces are used
ltltprovidedgtgt interfaces are realized
7
Internal Context
  • CBD96 uses user-defined stereotypes in UML 1.x
    because of the lack of support for components
  • The UML 1.x Component Diagram regards any
    physical software element as a component
  • UML 2.0 allows the modelling of the inside of a
    component
  • An internal context diagram
  • Also provides the notion of a port as a point of
    interaction between the inside and outside of a
    diagram

8
Internal Context
Port
Shows that PersistentStore delegates the handling
of a request on DBQuery to the internal class
Query
9
The RUP
  • The Rational Unified Process (RUP) is a software
    development process framework
  • Claims to provide a disciplined approach to
    assigning tasks and responsibilities within a
    development organization
  • Its goal is the production of high quality
    software that meets user needs within a
    predictable time schedule and budget

10
RUP and Best Practices
  • The RUP was designed to support six best
    practices in software development
  • Develop iteratively
  • Manage requirements
  • Use component architectures
  • Model visually using UML
  • Continuously verify quality
  • Manage change

11
RUP and Process Customization
  • The RUP comprehensively describes software
    development projects in terms of
  • Who?
  • Roles in the project played by human beings
  • What?
  • Artefacts produced
  • How?
  • Activities performed
  • When
  • Phases, iterations, disciplines and workflow
    details
  • But it does not describe a one-size fits all
    approach
  • It provides detailed guidelines on how to
    customize the RUP itself to fit a particular
    development context
  • The RUP J2EE Development Roadmap is a
    customisation for CBD using the Java technologies

12
The J2EE Development Roadmap
  • An RUP roadmap provides a tour of the RUP itself
    with a particular viewpoint in mind
  • For a specific role, perhaps (e.g., software
    developer)
  • Or a specific development context (e.g., J2EE)

13
Types of Models in OO/CBD Processes
14
J2EE Roadmap System Models
defined in
refined into
realized by
Implementation Model
Deployment Model
Use Case Model
Design Model
refined into
realized by
refined into
refined into
The Use Case, Design, User-Experience and Data
Models are PIMs (logical) The Implementation and
Deployment Models are PSMs (physical)
Data Model
User-Experience Model
15
Requirements
  • Requirements Discipline
  • Define the System
  • Find Actors
  • Find Use Cases
  • Collect Supplementary Requirements
  • Find How Actors and Use Cases Interact
  • Package Use Cases and Actors
  • Prioritize the Use Cases
  • Update the Software Architecture Document
  • Conduct the Review
  • Refine the System Definition
  • Detail Flow of Events in Use Cases
  • Describe Special Requirements of the Use Case
  • Describe Preconditions of the Use Case
  • Describe Postconditions of the Use Case
  • Structure the Use Cases
  • Structure the Actors

16
The J2EE Requirements Discipline Overview
Glossary
Supplementary Specification
Find actors and Use Cases
Capture common vocabulary
Systems Analyst
Use Case Model
Risk List
Vision
Software Architecture Document
Prioritize Use Cases
Software Architect
Use Case Priority List
17
Analysis
  • Analysis Discipline
  • Define an Initial Architecture
  • Develop Architecture Overview
  • Survey Available Assets (e.g., existing
    components)
  • Define the Initial Deployment Model (CEE)
  • Structure the Design Model
  • Identify Key Abstractions (Business Concept
    Model)
  • Identify Analysis Mechanisms
  • Analyze Behaviour
  • Identify Participating Screens
  • Model the Screen Flows
  • Define the Screen Navigation Paths
  • Reconcile the Use Case Storyboards
  • Document Usability requirements

18
Define an Initial Architecture
Vision
Glossary
Reference Architecture
Supplementary Specification
Use Case Model
Architecture Reviewer
Software Architect
Software Architecture Document
Architectural Analysis
Review the Initial Architecture
Deployment Model
Review Record
Design Model
19
Design
  • Design Discipline
  • Refine the Architecture
  • Inventory Design and Implementation Mechanisms
  • Select Design and Implementation Mechanisms
  • Document Design and Implementation Mechanisms
  • Detail the Design
  • Use-Case Design (Design Model- Use Case
    Realization)
  • Subsystem Design
  • Component Design
  • Class Design

20
Implementation
  • Implementation Discipline
  • Structure the Implementation Model
  • Establish the Implementation Model Structure
  • Update the Software Architecture Document
  • Review the Implementation
  • Conduct the Review

21
Comparison with CBD96
  • Scope
  • J2EE Roadmap and CBD96 both describe CBD
    end-to-end (from requirements to deployment)
  • CBD96 is general Roadmap is specific to J2EE
  • Intent
  • CBD96 is a dedicated CBD process standard
  • J2EE Roadmap is a flavour of the more general RUP
  • Mechanisms
  • Both are Use-Case driven
  • Both use UML class diagrams to establish
    vocabulary
  • Business Concept Model vs Key Abstractions
  • Roadmap relies on Use Case realizations in design
  • Whereas CBD96 separates out System Components in
    order to create more generic Business Components
  • Seems likely that CBD96s Business Components
    will be more reusable, architectures less brittle
  • Conclusions
  • CBD96 is more clearly aimed at developing CBD
    systems in general
  • Roadmaps concern is how to utilize a specific
    component technology to build a particular system

22
Summary
  • As CBD has matured the need has been recognised
    for
  • Better modelling techniques
  • More detailed development processes
  • UML 2.0 supports CBD by
  • Including ltltrequiredgtgt interfaces
  • Permitting the modelling of internal structure
  • UML can now be said to be properly supporting CBD
  • The J2EE Roadmap enhances the RUPs ability to
    support component modelling
  • But it is an open question how reusable its
    components are
Write a Comment
User Comments (0)
About PowerShow.com