Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Dynamic
Use Case diagram Sequence diagram Statechart diagram Collaboration diagram Activity diagram
Implementation
Component diagram Deployment diagram
3
Logon Purchase
<<includes>>
List Cart
News
Collaboration Diagram
A Collaboration Diagram describes the interaction between objects (instance of classes) by exchanging messages. Collaboration Diagram can be used to identify classes and operations
<<Servlet>>
Display Catalog
2.2: OK 3: Product List
<<JSP>>
<<Servlet>> 1: Login
Main page
Customer
Validate Login
2.1: Error
Customer
<<JSP>>
4: Purchase
Main page
Display Error
1: Login 2.2: OK
<<Servlet>>
Validate Login
<<Servlet>>
Display Catalog
Sequence Diagram
A Sequence Diagram describes the interaction between objects and how the messages are exchanged over time. Sequence Diagram is used to identify classes and operations
<<JSP>> <<Servlet>>
Validate Login
Display Error
<<Servlet>>
Display Catalog
1: Login
2.1: Error
2.2: OK
3: Product List
4: Purchase
Activity Diagram
An Activity Diagram describes the logic and the control flow of a Use Case, an Operation or another Activity.
Main Page
Login
Login Error
[No]
Select Product
Purchase
Check Out
Statechart Diagram
A Statechart Diagram is used to model the States and Transitions of a Class
Intial
Play
Pause
Object Diagram
An Object Diagram shows the relationships between Object Instances
10
Class Diagram
A Class Diagram defines the Classes, Interfaces, Attributes, Operations, Relationships, Inheritances, A Class Diagram can be used to define persistent objects, control objects and user-interface objects. A Class Diagram can be used to generate the Physical Data Model and the application implementation code.
Computer + serial # : String + ownerName : String + + + +
0..* peripheral
Peripheral registerPeriph () testPort () testPwSupply () testMotherBd () : void : void : void : void <<Persistent>> parallelPeripheral + + + + + + + periphId : String periphCodeName : String vendorName : String registerPeriph () : void testPort () : void testPwSupply () : void testMotherBd () : void
0..1 personalcomputers
peripheral tester + + + + test # : int testName : String testDate : java.util.Date printReport () : void
scanner flatBed : boolean resolution : int preview () : void registerPeriph () : void testPort () : void testPwSupply () : void testMotherBd () : void
11
Component Diagram
A Component Diagram can be used to define the components you need to create for an application A Component can use Classes, Interfaces PowerDesigner uses Components to represent EJBs, Servlets, JSPs, ASPs and Web Services
Product EntityBean_CMP
GetProductPageJSP
GetProductList Servlet
12
Deployment Diagram
A Deployment Diagram is used to define the deployment architecture Deployment Diagram shows the Nodes (machines, servers), the Component Instances deployed in a Node and the Links between Nodes
<<J2EE Server>> Jaguar easerver.sybase.com CustomerBean OrderBean ProductBean <<Web Service>> Web Service 158.126.19.3
<<Database>> CRM
13
14
15
Java Support
Provide wizards to automatically create EJBs, Servlets, JSPs, Web Services Generate and reverse engineer Java code Generate collection management accessor functions Generate deployment descriptors Generate O/R mapping descriptor for WebLogic, WebSphere, EAServer, JDO, JBoss (future) Generate project files for JBuilder and Eclipse Generate Ant script to compile, package and deploy J2EE application
16
Example of EJB
<<EJBRemoteHome>> CustomerHome
<<EJBEntity>> CustomerBean {abstract} id name email phone ejbContext : : : : : java.lang.Integer java.lang.String java.lang.String java.lang.String EntityContext : : : : : : : void void void void void void void
<<EJBRemote>> Customer
EJB wizard
+ <<Constructor>> CustomerBean () + ejbActivate () + ejbLoad () + ejbPassivate () + ejbRemove () + ejbStore () + setEntityContext (..) + unsetEntityContext ()
Customer EntityBean_CMP
<<EJBLocalHome>> CustomerLocalHome
<<EJBPrimaryKey>> CustomerPK - id : java.lang.Integer + <<Constructor>> CustomerPK () + equals (..) : boolean + hashCode () : int
EJB Component
17
.NET Support
Reverse engineer C# and Visual Basic .NET code Reverse engineer .NET binary code in C# or VB .NET Generate C# and VB .NET code Generate collection management accessor functions Generate Visual Studio .NET project files Create Web Services for C# or VB .NET (.asmx files)
18
Code Generation
Templates and macros based code generator Generate Java, C#, VB .NET, VB, C++, PowerBuilder, User could add their own code generation templates
C# code preview
19