uml development - overview program actors analysis domain objects design implementation d a t a d i...
TRANSCRIPT
![Page 1: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/1.jpg)
UML Development - Overview
PROGRAM
ACTORS
ANALYSISDomain Objects
DESIGN
IMPLEMENTATION
DATA
DICTION
ARY
TimeUSE CASES
ANALYSISCLASS DIAGRAM(S)
IMPLEMENTATIONCLASS DIAGRAM
SEQUENCEDIAGRAMS
OPERATION CONTRACTS
CLASS STATEDIAGRAMs
DEPLOYMENT DIAGRAMSUBSYSTEM/COMPONENT
DIAGRAMS
SystemDesign
ObjectDesign
SCENARIOS
REQUIREMENTSELICITATION
DESIGN CLASS DIAG.
IMPLEMENTATIONCHOICES
DESIGN COLLABORATION DIAG.
![Page 2: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/2.jpg)
Information Available at Architectural Design
• Use cases, Use case Diagram• Analysis and Arc. Design class diagrams• Analysis and Arc. Design Sequence/Collaboration
diagrams• Statecharts for multi-modal classes• Subsystems + their public interface (API)• Subsystem dependencies• Mapping subsystems’ instances to Hardware
(Deployment)• Data management, Security control
![Page 3: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/3.jpg)
MyTrip Analysis Class Diagram
Location
Segment
Crossing
Direction
Destination
TripRouteAssistant PlanningService
![Page 4: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/4.jpg)
MyTrip Subsystems
Location
Segment
Crossing
Direction
Destination
RoutingSubsystem PlanningSubsystem
TripRouteAssistant PlanningService
![Page 5: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/5.jpg)
Subsystem Interface
• The set of public operations forms the subsystem interface or Application Programming Interface (API)
• Includes operations but also their parameters, types, and return values
• Operation contracts are also defined (pre- and post-conditions) and accounted for by client subsystems – they can be considered part of the API
![Page 6: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/6.jpg)
6
Components vs Subsystems
• A Component are used to implement a package of classes defined in a subsystem
• A component defines a module in the architectural design
• Component types defined by component stereotypes include a Main program component, and Tasks
• Task components represent packages or subsystems with independent threads of control
![Page 7: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/7.jpg)
7
Components and Component stereotypes
NewMainSubprog
NewTaskSpec
NewComponent
NewTaskBody
![Page 8: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/8.jpg)
MyTrip Deployment Diagram
:RoutingSubsystem :PlanningSubsystem
:OnBoardComputer :WebServer
Components must be associated with a processor4 node in the deployment diagram
![Page 9: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/9.jpg)
New Classes and Subsystems
TripLocation
PlanningService
SegmentCrossing
RouteAssistant
Direction
Destination
TripProxy
SegmentProxy
PlanningSubsystem
Message
Connection
CommunicationSubsystem
RoutingSubsystem
![Page 10: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/10.jpg)
MyTrip Data Storage
PlanningSubsystem
MapDBStoreSubsystemTripFileStoreSubsystem
RoutingSubsystem
CommunicationSubsystem
![Page 11: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/11.jpg)
Static versus Dynamic Architecture Information
• Subsystem Interfaces and dependencies provide static information
• Interaction models provide dynamic information
• Concurrency information can be specified on objection collaboration diagrams, sequence diagrams, and component diagrams
![Page 12: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/12.jpg)
12
Concurrency Adornment
• The concurrency of a class is a statement about its semantics in the presence of multiple threads of control. You can set the concurrency of a class to type Active
• The class will has its own thread of control. The method can be executing concurrently with other methods.
• You can display the concurrency for the class in the class diagram by selecting Show Concurrency from the class shortcut menu.
![Page 13: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/13.jpg)
13
Concurrency in Sequence Diagrams
updateStatus( )
Object1:C1 Object2:C2
calcRoute( )
route
Object1:C1 Object2:C2
Implicit Returns Explicit Return
Object3:C3
generateMessage( )
Synchronous method invocation for sequential execution
![Page 14: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/14.jpg)
14
Concurrency in Sequence Diagrams
asynchronous_Call ()
callBack ()
Object1:C1{active}
Object2:C2{active}
![Page 15: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/15.jpg)
15
Concurrency in Sequence Diagrams
• Asynchronous method calls should be explicitly identified with the UML standard notation of a solid line with a half arrowhead.
• Asynchronous messages do not yield the current thread of control.
• Therefore, from the initiating object's viewpoint, there is no implied return message or waiting
![Page 16: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/16.jpg)
16
Proposed Component-based IETM Display System Architecture
Data Access
IETM Electronic Display System (EDS)
IETM Data User Interface
Business Services User ServicesData Services
IETM Object Model
MIL-PRF-87269A Alternative
COTS Components
Web Technologies
IETM ObjectModel Interfaces
![Page 17: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/17.jpg)
17
User Interface
Web Server
IETM Navigation Handler
Receive-Request
Receive-Response
User Interface Engine
Send-Request
Send-Response
Web page + Style info if not processed on server (Requires IE5)
GUI Manager
Render-Info
Might require a Media Server Media Viewer
ScriptsAppletJbeans
ActiveXForms
Plugins or Helper Applications
Browser
HTTP, IIOP, DCOM
![Page 18: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/18.jpg)
18
IETM EDS
IETM Display Engine
IETM Object Model
Search
IETM ObjectModel Interfaces
Get-Result-Objects
Start
IETM Interpreter
Get-IETM-Objects
Receive-Request
Send-Response
Web Server
Receive-Response
Optional: Use it to allow rendering on all browsers not just IE5
XML/HTML Transformer(XSL Processor)
CGIServlet
EJBCORBA Beans
VB, Java, ECMA ScriptsASP, JSP
Session State
Session Manager
Session Cache
RemoveGet AddUpdate
![Page 19: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/19.jpg)
19
Data AccessDatabase-driven System
Data Loader
IETM Content
Get-Info
Style Info
Database Object Interface
Get-Result-Objects
IETM Interpreter
Vendor Driver + ODBC or JDBC Driver
Database to DOMRelational to Object Mapping
SQLOQLSQLJXML/HTML
Transformer(XSL Processor)
Database on O/DBMS ServerXML on O/DBMS Server
O/DBMS + ORB CORBA/IIOPCORBA Server
![Page 20: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/20.jpg)
20
Architectural Forms in UML IETM Object Model
NODE-ALTS
Nodes : NODE
Eval_Alts()
<<Stereotype>>
NODE
name : CDATAtype : CDATAitemid : CDATApreconditions [0..*] : precondpostconditions [0..*] : postcondContents : InformationContent-Formsprimitives [0..*] : %primitivelinks [0..*] : %link
Display()Set_Post_Conditions()Eval_Pre_Conditions()hasContents()
<<Stereotype>>
1 1..*1 1..*
InformationContent-Forms
1
0..*
1
0..*LOOP-NODE
IndexDeclare [0..1] : assertionExitCond : expressionIndexAlter [0..1] : assertionRepeatSeq : NODE-SEQ
Start()Eval_Condition()Update_Index()Terminate()
<<Stereotype>>
Architectural-Forms
id : IDcdm : NAMEref : IDREF
IF-NODE
Condition : expressionThenSeq : NODE-SEQElseSeq [0..1] : NODE-SEQ
selectFlow()getThenSeq()
<<Stereotype>>
NODE-SEQ
SeqElements : Architectural-Forms
getNextElement()
<<Stereotype>>
1
1
1
1
1
1..*
1
1..*
stepBack()hasMoreElements()Reset()
![Page 21: UML Development - Overview PROGRAM ACTORS ANALYSIS Domain Objects DESIGN IMPLEMENTATION D A T A D I C T I O N A R Y Time USE CASES ANALYSIS CLASS DIAGRAM(S)](https://reader035.vdocuments.net/reader035/viewer/2022062518/56649e845503460f94b868ff/html5/thumbnails/21.jpg)
21
The IETM Object Model Interfaces
IETM Object Model
IETM ElementIETM Collection IETM Document
GenericLayerElements
OrganizationalLevel LayerElements
LinkContextFiltering UserInterface OtherArchitecturalForm
Primitive
Sub-primitive ProceduralInfo
DescriptionInfo
FaultInfo
PartsInfo
MainInfo