Title: E186 Enterprise Modeling for IT Managers
1E186Enterprise Modeling for IT Managers
- David Dichmann
- PowerDesigner Product Manager
- eBusiness Division
- Dichman_at_sybase.com
2Developing for the Business
- Automating the Business Processes
- Meeting the Business Requirements
- Controlling the IT Architecture
- Understanding Existing Systems
- Integration of Systems
- Maintenance of Systems
- Coordinating the Team
- Multi-discipline teams to manage n-tier
architecture - Multiple developers and DBAs working the same
system - Sensitive property must be secure
3Business Analysis before technology
- eBusiness is about automating the way we conduct
our business - Intranet and Web enabled
- Business to business automating transaction
processing - If you cant document it you cant automate it
- If you cant automate it, you cant go to B2B
- Enterprise Application Integration (EAI)
connecting systems that follow a process - eCommerce automating order processing its a
business process!
4Business Process Modeling
- Describes the business logic and business rules
from a business users point of view - Independent of implementation details
- Describes the Flow of Control between tasks in a
system - A conceptual, hi-level view of processes, not
limited by UML definition and notations - Ensure system accurately automates the business
practices
5From Business to Systems Analysis
- Knowing the process is just the start
- We need to know the requirements and other
details - UML use case and sequence diagram to describe
system scope and behavior - Refines business processes UML activity diagram
- Non-graphical Business Rules throughout all
elements - Domain elements in Conceptual Data Models
- Defines what will create a successful system
6UML use case diagrams
- Capture business and system requirements
- Implementation independent view of a Systems
context - Oriented towards analysis, drives design
- Actors are a System and map to one or more
classes and interfaces - Use Cases also map to multiple implementation
classes and interfaces - Actors, Use Cases, Business Rules,
Generalizations, Dependencies
7UML sequence diagrams
- Document interactions between high level and/or
low level objects - Actors or Class Instances
- Describe system behavior over time
- Takes Use Case analysis and leads to Design
details - Describe operations for classes and interfaces
- Actors, Object Instances, Lifelines, Messages,
Business Rules
8UML collaboration diagrams
- Document interactions between elements of a
system or between the users and the system - Timing element, but focus is more on structure
- Express same information as a Sequence, but is
readable in a different way exposes how objects
depend on each other vs. how they communicate
9UML activity diagrams
- Describes the activities and the flow of control
- Technical view of the business processes
- Workflow Modeling
- Parallel Processing
- Dynamic analysis of a use case
- Behavior for an object
- Collaboration between objects
- Detailed dynamic view of the elements within a
system (EJB, Class, etc.)
10UML statechart diagrams
- Aka state diagram, state machine,
state-transition diagram - Defines possible behaviors depending on an
objects state - Defines how states change over the objects life
- Better understanding of complex objects
- May be decomposed into sub-statecharts (like a
functional decomposition)
11Data Modeling Conceptual Data Model
- Standard E/R modeling
- Business rules, Domains, Data Items, Entities,
Relationships, Associations, Identifiers,
Inheritance - Supports one-to-many many-to-many relationships
- Automatic Physical Data Model generation
12From Systems Analysis to Design
- We know WHAT to build, but now we need to express
HOW to build it - Business Logic needs to be part of
- A component like an EJB in an application server
- Some business logic class or component in a
client application, using a language like VB or
PowerBuilder - eBusiness uses persistent data RDBMS
- Database elements are defined on a traditional
RDBMS - Business logic in triggers and procedures
13From Systems Analysis to Design
- UML Techniques for Business Logic
- Refined use case, activity and sequence diagrams
develop technical details from requirements - UML class diagram and component diagram define
static structures - Class diagrams define 100 code structure
- Relational Database Design
- Physical Data Models define 100 database
structures
14UML class diagram
- Design your Class Structure
- Targets include Java, XML, C, VB.NET, WSDL,
PowerBuilder, and more, for code generation - Business Rules, Domains, Classes, Interfaces,
Attributes, Identifiers, Operations,
Associations, Realizations, Generalizations,
Dependencies - Integration with data modeling
- Round-trip engineering
- Integration with Code Editors and IDEs
15UML object diagrams
- Object Diagrams give specific examples of classes
(classifiers)
- More detailed analysis of the Classes
- More detailed explanation more meaning than a
class diagram - Instances of classes vs. Classes themselves
16UML component diagrams
- Describes high level Black Box objects
- Abstract representation for Component Design
- Web Services (MS or Sun)
- J2EE/EJB
- nTier PowerBuilder
- Code Sharing and Reuse
- Documents interfaces to components you can
easily see what you can use them for without
reading code
17UML deployment diagrams
- Documents where and how elements of code will be
packaged and deployed - Defines the nodes (server, workstation, database)
and components (EJB, Web Service, etc) that are
deployed to them - Physical Implementation
18Data Modeling Physical Data Model
- Graphical representation of the database
structures - All major relational databases supported
- Business Rules, Domains, Users, Tables, Columns,
Physical Options, References, Index, Keys, Views,
Abstract data types, Triggers, Stored Procedures - Generate SQL DDL
- Reverse-engineering of existing databases
19Object/Relational Impedance Mismatch or Two
Worlds Collide
- UML and OO is focused on Language
- Constructs organized best for use in Memory
- Data Modeling is Relational Databases
- Normalization for most efficient data expression
- Denormalized for RDBMS optimize performance
- These models cannot express the same system the
same way!
20Cant we just use UML for everything?
- UML is
- A technical modeling language for Object-Oriented
systems - A model for the business requirements and systems
analysis - The model for detailed design and can even map
11 with deployed code (for code generation or
reverse engineering) - UML is NOT
- A Business Modeling technique in the true sense
too technical for business analysis - A Data Modeling technique it is Object-Oriented
which is, in philosophy, incompatible with
Relational structures
21How do we manage multiple views?
- The Problem Domain is the Link
- Object Models (UML)
- Domain model Core Elements
- Complete defines all system behavior and logic
- Conceptual Data Models
- Defining core data elements and entities
- Normalized, implementation independent view
- Physical Data Model
- Completes database implementation specification
22This Requires Teamwork
- Multiple disciplines must coordinate their
efforts - Business Analysts
- Systems designers and architects
- Database Professionals
- Same requirements, Same business, Different view
of the solution - Business Process Models
- Unified Modeling Language (UML) Models
- Entity/Relationship (E/R) Models
23Link and Synch all models
Business Process Modelling
(Object Data Process)
TraditionalData Modelling (James Martin)
New Object Oriented(UML Techniques)
24As the Effort Grows More Teamwork
- Multiple teams working on the same model
- Teams of data analysts and DBAs
- Teams of developers
- Multiple projects may be related or mutually
exclusive - Global view of all application elements
- Reuse of existing elements
- Understanding of existing databases
25Teamwork and Model Management
- We need a good Metadata Repository
- Team development
- Security to protect elements, core, library, etc.
- Single source for all elements Find and Reuse
- Model Management
- Versioning
- Branching
- Compare/Merge
- Reporting
26The RepositoryArchitecture
27Reporting Report Generator
- Powerful Report generator
- Multi-model
- Customisable
- Template based
- Easy to use drag-and-drop interface
- Generates RTF or HTML
28Conclusion
- Enterprise Modeling for modern business systems
- Object oriented analysis and design with UML for
Java, J2EE, WebServices, and much more - Formal Data Analysis and Design with
Entity/Relationship modeling - Getting results
- An integrated toolset that drives design from
analysis - Round-trip engineering to keep Design,
Development and Run Time in synch - Control of the Architecture
- Model management and enterprise class repository
29Sybase Developer Network (SDN)
- Additional Resources for Developers/DBAs
- Single point of access to developer software,
services, and up-to-date technical information - White papers and documentation
- Collaboration with other developers and Sybase
engineers - Code samples and beta programs
- Technical recordings
- Free software
- Join today www.sybase.com/developer or visit
SDN at TechWaves Technology Boardwalk
30Session No. E186Enterprise Modeling for IT
Managers
- David Dichmann
- PowerDesigner Product Manager
- eBusiness Division
- Dichman_at_sybase.com