Title: Title: Arial 28pt.
1PDR608 Best Practices for Integrated Modeling
with PowerDesigner
Xiao-Yun WANG PowerDesigner Chief
Architect xwang_at_sybase.com August 15-19, 2004
2The Enterprise. Unwired.
3The Enterprise. Unwired.
Industry and Cross Platform Solutions
Unwire People
Unwire Information
Manage Information
- Adaptive Server Enterprise
- Adaptive Server Anywhere
- Sybase IQ
- Dynamic Archive
- Dynamic ODS
- Replication Server
- OpenSwitch
- Mirror Activator
- PowerDesigner
- Connectivity Options
- EAServer
- Industry Warehouse Studio
- Unwired Accelerator
- Unwired Orchestrator
- Unwired Toolkit
- Enterprise Portal
- Real Time Data Services
- SQL Anywhere Studio
- M-Business Anywhere
- Pylon Family (Mobile Email)
- Mobile Sales
- XcelleNet Frontline Solutions
- PocketBuilder
- PowerBuilder Family
- AvantGo
Sybase Workspace
Products supported by PowerDesigner
4Sybase WorkspaceIntegrated Development to build
the Unwired Enterprise
Web App, Mobile, Portal, Data Management,
Integration/Web Services, Enterprise Modeling
Common Frameworks
Eclipse
Sybase Infrastructure Products
5Summary
- Integrated Modeling Overview
- PowerDesigner Overview
- Best Practices of Integrated Modeling with
PowerDesigner - PowerDesigner Roadmap
6Integrated Modeling Overview
- Why using Modeling?
- Modeling in Application Development Lifecycle
- Modeling Techniques
7Why Modeling - Would You Build a House Without a
Blueprint?
- The Architect will do the first high level
drawings to validate the concept with its client
He will then make a detailed plan for the
Builders - The Builders will take this blueprint and
optimize it based on technical constraints
8Problem Statements
- How to optimize ROI?
- How to improve application quality, reduce
development time and ease maintenance? - How to design applications in such way that they
are easy to adapt for business requirements
changes? - Different techniques (E/R, UML, BP Modeling) have
forced corporations to buy different tools,
raising communication and co-ordination issues - Lack of central place to store and manage models
9Modeling Tool for the Rescue
- To improve application quality, reduce
development time and ease maintenance - Use Modeling tool to analyze and design the
applications - Use code generators to generate the database, the
application code (MDA) - To design applications in such way that they are
easy to adapt for business requirements changes - Adopt Service-Oriented Architecture (SOA)
- Use Business Process Modeling, UML Modeling and
Data Modeling together - To improve collaboration and team work
- Use an Integrated Modeling tool that supports
requirements management, impact analysis, change
management - Use a repository to store models and manage
versions
10Typical Application Development Cycle
- Waterfall
- Spiral
- Iterative
Business Requirements
Analysis
Design
Develop- ment
Testing
Deployment
Maintenance
11Sybase PowerDesigner Our Vision
12Modeling in Application Development Lifecycle
Business Requirements
Analysis
Design
Test
Deployment
Maintenance
Develop- ment
Roles
IT users, analysts, designers
Business users
Developers, DBAs, Administrators, etc
Team work, Change management, Methodology,Documen
tation, Reuse
Modeling Tool Can Help in Each Phase
Control points
13Modeling in Application Development Lifecycle
- Business requirements
- Requirements management change management
traceability - Analysis
- Define high-level abstraction models
- Design
- Define detailed models
- Development
- Synchronize code with models
- Test
- Generate test design documents and test cases
- Deployment
- Specify deploy topology and contents
- Maintenance
- Use models to understand how the application was
designed and developed - Team Work
- Repository version control
14Major Modeling Techniques
Three modeling markets converging
Business Process Modeling (emerging standards)
Business usersCIOs
Data Modeling(E/R)
Object Modeling (UML)
IT users Analysts, DesignersDBAs
IT users Analysts, Designers Developers
Integrated Modeling PowerDesigner
15Methodological Approaches
- Data Oriented (E/R, DFD)
- Object-Oriented (UML)
- Business Process Oriented (BPA)
Source Gartner
16Gartner says The Modeling Techniques are
Converging
- Gartner research note December 2003
- Strategic Planning, SPA-21-5951 - M. Blechar
- Predicts 2004 BPA, UML and Data Modeling
Converge Techniques such as business process
analysis are converging to provide technical
architects, business modelers, developers and
database designers consistency, productivity and
quality via reuse and code automation. - Vendors such as Sybase (PowerDesigner) and
offer single products that span all three
markets. Most UML modeling tool vendors already
have some BPA and database design support in
their tools, and vice versa.
Source Gartner
17Integrated Modeling Techniques (1/2)
- Business Process Modeling
- Allow business users to describe the business
requirements - Business process simulation and optimization
- Service assembling
- Object Modeling (UML)
- Allow IT users, analysts, designers and
developers to analyze and design applications - Define user interface, business logic,
persistence and O/R mapping - Generate database structure and application code
- Data Modeling
- Conceptual, logical and physical data models
- Optimize database structure
- Create and reverse engineer the database
- Information Liquidity Modeling
- Support replication (Replication Server, ),
synchronization (MobiLink, ), data movement,
ETL, XML/Relational mapping, virtual data source,
- XML Modeling
- Design XML Schema, DTD, XDR, used for Web
Services, databases, Java, .NET
18Integrated Modeling Techniques (2/2)
- Methodology
- Methodological approach for analysis, design and
development - Model-Driven Architecture (MDA)
- Separate Platform Independent Models (PIM) with
Platform Specific Models (PSM) - Model transformation, template or Design Pattern
based code generation - Design Patterns
- Apply a generic solution for similar problems
- Model transformation or code generation
- Service-Oriented Architecture (SOA)
- Create or expose reusable services as Web
Services - Assemble Web Services using Business Process
- Collaboration and Team Work
- Central repository for storing models and
specifications - Manage model versions and security
- Requirements management
- Impact analysis, change management
19PowerDesigner Overview
- PowerDesigner History
- Modeling Tools Market
- PowerDesigner Structure
20PowerDesigner History
Old Releases, focus on E/R modeling and extensions
Powersoft Sybase
1996
1989
1990
1991
1992
1994
v5ModulesProcessAnalyst
v4Enterpriseedition
v6Maturity releaseDataWarehouse
(v1)
French, CDM only
V3 EnglishCDM PDM
New generation, UML and new techniques
1999
2000
2001
2002
2004
2003
v7first UMLdiagram (Class)
v7.5added newrepository
v8.0More UML(Use Case, Sequence)
v9.0More UML(Activity,Component) Data
Warehouse EJB Business Process modeling
v9.5All UML diagramsUML profilesBP
Modelingextensions
v11.0 Requirements Impact analysis Liquidity
v10.0 SOA .NET MDA
21PowerDesigner is the No. 1 Data Modeling Tool
PowerDesignerMarket share in 2002 was
39(Document Gartner August 2003)
Data Modeling Magic Quadrant
Note Quest Software resells an OEM version of
PowerDesigner under the name QDesigner.
22OOAD BPA Market Overview
Business Process Analysis MQat version 9.5
Object Modeling MQat version 9.5
Visionary
Challenger
23PowerDesigner V11 Structure
Repository
- Requirements
- Free Model- XML Model
- Information Liquidity Model
Business Process Model
Business Process (Targets ebXML, BPEL4WS,
Sybase UO)
Data Model (E/R)
Object Model (UML)
O/R Mapping
- Metadata - Profiles- Model-to-Model Generation
- MDA - Report - XMI
Code Generation
IDE
Persistence Management
Application Servers
Integration Servers
Databases
24PowerDesigner V11 Modules
Java, J2EE, C, VB.Net, Web Services,
PowerBuilder, XML, WSDL
Requirements Model
Information Liquidity Model
Object Model (UML)
Business Process Model
Corba, C, etc...
BPEL4WS IO, ebXML
O/R Mapping
Conceptual Data Model
XML Model
Physical Data Model
Forward Engineering
Reverse Engineering
ODBC
Round-trip Engineering
Database SQL Script (DDL)
Import/Export
25PowerDesigner for Integrated Modeling
26Best Practices of Integrated Modeling with
PowerDesigner
- Types of application development
- Software engineering process
- Application development phases
- Best practices with PowerDesigner
27Types of Application Development
- There are many types of application development
- Create a new web application
- Create a new client/server application
- Improve an existing application to fit business
requirements - Modify existing application and create new
application to support SOA -
- Each type of application development may use
different development process
28Software Engineering Processes
- A software engineering process defines
- The software development workflow
- The models and documents to produce in each step
- Models and documents templates and how to define
the models and documents - PowerDesigner does not provide a process like
Rational Unified Process (RUP) - Each customer could adopt a particular process or
best practice for his own needs
29Typical Application Development Phases
- Requirements Requirement Model
- Architecture Business Process Model or Free Model
- High-level Business Process Model and UML Model
- Simulation Business Process Model
- Business logic detailed BPM and OOM
- Persistence Data Model, O/R mapping
- Database generation PDM
- Code generation OOM, BPM
- Integration with IDE Eclipse or PowerBuilder
plugin
- Generate test plan and test design document from
Requirement Model
- Analysis and design models
30High-Level Design and Development Best Practices
- Define user and software requirements
- Use high-level Business Process Model to define
business requirements - Use UML to analyze and design the application
- Generate Data Model from UML Model
- Use Data Model to design and optimize the
database - Use Object/Relational mapping to generate
persistence management code - Develop components, services and user-interfaces
31Object-Oriented Design and Development Best
Practices
- Define requirements
- Define Use Cases
- Define Sequence Diagrams
- Identify classes and operations
- Create detailed Class Diagram (business logic and
persistence) - Generate PDM to optimize and create database and
define O/R mapping - Generate code
- Use an IDE to develop the business logic
- Reverse engineer the code to update the models
32Service-Oriented Architecture (SOA)
33Service-Oriented Development Best Practices
- Define requirements using Requirement Model
- Use BPM to simulate and optimize new or existing
operations - Analyze and design new systems using UML
- Expose existing systems as Web Services
- Create databases using PDM
- Define replication and synchronization using
Information Liquidity Model - Define XML Schemas using XML Model
- Define Web Services using UML Model
- Generate the code from models
- Assemble Web Services using Business Process
Model - Generate Web Services assembling languages
(BPEL4WS, Sybase Integration Orchestrator, )
34Requirements Management
- Define business and user requirements
- Define software requirements
- Link software requirements to business and user
requirements - Define use cases
- Link use cases to software requirements
- Impact analysis
- Generate documents from requirements
35Requirements Management in PowerDesigner (new)
36Requirements Traceability Matrix View
37Editing Requirements in WORD
38Impact Analysis
- Deleting Customer class impact
39Business Process Modeling
- Define high-level Business Process Model to
capture business requirements - Define detailed Business Process Model
- Simulate Business Process Model to optimize cost
and delay - Implement application artifacts (components,Web
Services) - Assemble Web Services using Business Process
Model (BPEL4WS, Sybase Unwired Orchestrator, ) - Use Business Process Model to generate other
languages (ebXML, Workflow, )
40Example of High-Level Business Process Model
- Business users explain how a new or existing
Business Process should work
41Example of More Detailed Business Process Model
- Once the business requirements are well defined,
analysts and designers create details Business
Process Model that fits the business needs
42Process Hierarchy Diagram (new)
- Special diagram that allows users to view, create
and modify processes hierarchy
43Example of an Order Processing Business Process
Model for Simulation
44Example of a Business Process Model Simulation
45Example of an Executable Business Process Model
for Sybase Unwired Orchestrator
46Object Modeling (UML)
- Support 9 UML diagrams
- Round-trip engineering for Java, C, VB .NET,
PowerBuilder and Web Services - Generate and reverse engineer PDM
- O/R mapping for EJB JDO
- Integration with PowerBuilder 10 and Eclipse IDEs
47Integration with PowerBuilder 10
48Integration with Eclipse 3.0
49Data Modeling
- PowerDesigner has complete data modeling support
- Conceptual Data Model and Physical Data Model
- Support all major databases
- New features in V11.0
- XML in database (SQLX queries, annotated schema,
) - Web Service in database
- ASE real-time functions
- Oracle dimension
- Auto-rebuild triggers
50Information Liquidity Modeling
- Support replication (Sybase Replication Server
12.5 12.6) - Support ASE real-time messaging (RepConnector)
- Support synchronization (iAnywhere MobiLink 9)
- Could support data movement, ETL, virtual data
source, in the future
51XML Modeling
- Design, generate and reverse engineer XML Schema,
DTD, XDR - Validate XML document (new)
- Generate XML document template (new)
- Generate XML Model from PDM
- Generate SQLX queries (new)
52Example of XML Model Diagram
53Model-Driven Architecture (MDA)
- Whats MDA?
- Platform Independent Models (PIM) and Platform
Specific Models (PSM) - Transform PIM to PIM or PSM
- Generate default application code
- PowerDesigner has complete MDA support
- User-defined transformation functions
- User-defined template based code generator
- Use UML profile to extend metamodel (stereotype,
code template, custom command, transformation, )
54Design Patterns
- Whats Design Pattern?
- Generic solution for solving similar problems
- Design Patterns could be implemented in
PowerDesigner today using - Use VBScript
- Use custom command defined in a Profile (Extended
Model Definition) - Use transformation defined in a Profile
- Use OLE automation
- Use Add-In
- Better support will be offered in future release
55Service-Oriented Architecture (SOA)
- PowerDesigner has complete support for SOA
- High-level Business Process Model for analysis
and design - Create implementation artifacts for Java, .NET or
PowerBuilder - Create Web Services for Java, .NET and databases
- Assemble Web Services using Business Process
Model for BPEL4WS and Sybase Unwired Orchestrator
56Collaboration and Team Work
- Design business and software requirements
- Link requirements to design objects (Use Cases,
) - Impact analysis
- Generate documents from requirements
(specification document, test design document,
documentation plan, project file, ) - Enterprise repository for models sharing and
versioning - Security
57PowerDesigner Roadmap
- PowerDesigner 11.0 (Minerva)
- Beta Mid-July 2004
- GA End of November 2004
- Beyond Minerva
58PowerDesigner 11.0 Key Features
- Requirements management
- Impact Analysis
- Process hierarchy diagram
- Information Liquidity Model (Replication Server,
RepConnector, MobiLink) - XML in database
- Web Service in database
- Auto-rebuild triggers
- Oracle dimensions
- Eclipse 3.0 plugin
- Unicode support
- Plugin manager
- Floating license management
59Beyond Minerva
- Advanced team work capabilities
- Enhanced requirements management
- Change management
- Support for methodology frameworks
- Support UML 2.0
- Support Design Patterns
- Improved mapping management (replication, DW,
O/R, XML/R) - Visual Studio .NET plugin
60More Information
- PowerDesigner Web Site
- http//www.sybase.com/powerdesigner
- CodeXChange
- http//powerdesigner.codexchange.sybase.com
- PowerDesigner Newsgroup
- news//forums.sybase.com/sybase.public.powerdesign
er.general - PowerDesigner Advanced Documentation
- Accessible from PowerDesigner help menu
- PowerDesigner VBScript online help
- Accessible from PowerDesigner help menu
- Microsoft Windows Script online help
- Can be downloaded from http//msdn.microsoft.com
- OLE Automation samples
- OLE Automation\.
- PowerDesigner Metamodel
- Examples\MetaModel.oom
61PowerDesignerThe Leader in Enterprise Modeling
Xiao-Yun WANG PowerDesigner Chief
Architect xwang_at_sybase.com August 15-19, 2004