pd sybase oo
TRANSCRIPT
-
7/30/2019 PD Sybase OO
1/19
PowerDesigner
-
7/30/2019 PD Sybase OO
2/19
2
Why Using UML?
Visually define and communicate the structure and
behavior of an application
Represent systems using Object-Oriented concepts
Link OO concepts to executable code
-
7/30/2019 PD Sybase OO
3/19
3
Brief Overview of UML UML is defined by OMG.
UML consists of 9 diagrams:
Static
Class diagram
Object diagram Dynamic
Use Case diagram
Sequence diagram
Statechart diagram Collaboration diagram
Activity diagram Implementation
Component diagram
Deployment diagram
-
7/30/2019 PD Sybase OO
4/19
4
UML Support in PowerDesigner
PowerDesigner supports all nine UML diagrams
PowerDesigner supports UML 1.4
Future version of PowerDesigner will support UML 2.0
-
7/30/2019 PD Sybase OO
5/19
5
Use Case Diagram
A Use Case Diagram describes the Actors, the Use Cases and
the interaction between the Actors and the Use Cases.
Logon
Logoff
CustomerShip To Address
Purchase
Display Catalog
List Orders
List Cart
News
Shipping
-
7/30/2019 PD Sybase OO
6/19
6
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
2.2: OK
1: Login
Customer
Main page
Validate Login
Display Catalog
4: Purchase
2.2: OK
3: Product List
2.1: Error
1: Login
Customer
Main page
Validate Login
Display Error
Display Catalog
Add in Shopping Cart
-
7/30/2019 PD Sybase OO
7/197
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
open
4: Purchase
2.2: OK
3: Product List
2.1: Error
1: Login
Main page
Validate LoginDisplay Error
Display CatalogAdd in Shopping Cart
Customer
-
7/30/2019 PD Sybase OO
8/198
Activity Diagram
An Activity Diagram describes the
logic and the control flow of a Use
Case, an Operation or another Activity.
[No]
[Yes]
Main Page
Login
Display Catalog
Purchase
Select Product
OK?Login Error
Purchase Products
Action Steps
Check Out
-
7/30/2019 PD Sybase OO
9/199
Statechart Diagram
A Statechart Diagram is used to model the States and
Transitions of a Class
Intial
Play
Pause
-
7/30/2019 PD Sybase OO
10/1910
Object Diagram
An Object Diagram shows the relationships between
Object Instances
:Customer
id
name
= 101
= "XiaoYun Wang"
:Order
id
date
= 1
= 3/25/2004
-
7/30/2019 PD Sybase OO
11/1911
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.
0..*
peripheral
0..1
personalcomputers
parallelPeripheral
+
+
+
periphId
periphCodeName
vendorName
: String
: String
: String
++
++
registerPeriph ()testPort ()
testPwSupply ()testMotherBd ()
: void: void
: void: void
printer
+
+
laser
printSpeed
: boolean
: int
+ printPage () : void
scanner
++
flatBedresolution
: boolean: int
++
++
+
preview ()registerPeriph ()
testPort ()testPwSupply ()
testMotherBd ()
: void: void
: void: void
: void
Peripheral
++
+
+
registerPeriph ()testPort ()
testPwSupply ()
testMotherBd ()
: void: void
: void
: void
peripheral tester
+
+
+
test #
testName
testDate
: int
: String
: java.util.Date
+ printReport () : void
Computer
+
+
serial #
ownerName
: String
: String
-
7/30/2019 PD Sybase OO
12/1912
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
GetProductList
Servlet
GetProductPageJSP
-
7/30/2019 PD Sybase OO
13/1913
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 Linksbetween Nodes
Jaguar
easerver.sybase.com
CustomerBean
OrderBean
ProductBean
Web Service
158.126.19.3
CRM
-
7/30/2019 PD Sybase OO
14/1914
Object/Relational (O/R) Mapping
Generate a Class Diagram from a Physical Data Model
with O/R mapping
Generate a Physical Data Model from a Class Diagram
with O/R mapping Manually define complex O/R mapping
Generate select, insert, update, delete SQL statements
Use O/R mapping to generate EJB CMP (WebLogic,WebSphere, EAServer), JDO, Cocobase, .NET (future)
-
7/30/2019 PD Sybase OO
15/1915
O/R Mapping Example
Generate O/R mapping when
generating a PDM from an OOM
Use O/R mapping to generate SQL
-
7/30/2019 PD Sybase OO
16/1916
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
-
7/30/2019 PD Sybase OO
17/19
17
CustomerBean
{abstract}
-
-
-
-
-
id
name
email
phone
ejbContext
: java.lang.Integer
: java.lang.String
: java.lang.String
: java.lang.String
: EntityContext
+
+
+
++
+
+
+
CustomerBean ()
ejbActivate ()
ejbLoad ()
ejbPassivate ()ejbRemove ()
ejbStore ()
setEntityContext (..)
unsetEntityContext ()
: void
: void
: void: void
: void
: void
: void
CustomerPK
- id : java.lang.Integer
+
+
+
CustomerPK ()
equals (..)
hashCode ()
: boolean
: int
Customer
CustomerLocal
CustomerHome
+ findByPrimaryKey (..) : Customer
CustomerLocalHome
+ findByPrimaryKey (..) : CustomerLocal
Example of EJB
EJB wizard
EJB Classes and Interfaces
Customer
EntityBean_CMP
EJB Component
-
7/30/2019 PD Sybase OO
18/19
18
.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)
-
7/30/2019 PD Sybase OO
19/19
19
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