PowerDesigner provides a unique set of enterprise modeling tools that bring together the standard techniques and notations of business process modeling, data modeling and UML application modeling with other powerful features to assist you in analyzing, designing, building, and maintaining your applications, using software engineering best practices.
The PowerDesigner enterprise modeling solution enables you to closely integrate the design and maintenance of your application's core data layers with your project requirements, business processes, OO code, XML vocabularies, and database replication information. By providing you with a comprehensive set of models at all levels of abstraction, PowerDesigner helps you broaden the reach of your iterative design process to all aspects of your system architecture, from conception to deployment, and beyond.
PowerDesigner does not impose any particular software engineering methodology or process. Each company can implement its own workflow, defining responsibilities and roles, describing what tools to use, what validations are required, and what documents to produce at each step in the process.
A development team will comprise multiple user roles, including business analysts, analysts and designers, database administrators, developers, and testers, each of whom will use a different combination of PowerDesigner components:
Business Analysts – define the architecture of the organization, the business requirements and high-level business flows.
They may use an Enterprise Architecture Model (EAM) for providing a big picture of the organization, for defining its structure, and analyzing high-level functions, processes, and flows. These architectural objects can be attached to implementation objects in any of the other models.
They may use a Requirements Model (RQM) for defining business requirements to be refined into technical requirements by Analysts and Designers. An RQM describes a project by listing and explaining precisely what features must be implemented during a development process, and who is responsible for them. These requirements can then be attached to any object in any of the other models in order to trace where, and how, they are met.
They may also use a Business Process Model (BPM) to define the high-level business process flows that describe existing and new systems, and to simulate business processes to reduce time and resource and increase revenue. A BPM represents your organization's processes in real business terms, and can be used as a design tool to identify your business needs, organize them in a hierarchy, display your processes graphically, and then generate components in process languages such as BPEL4WS.
Data Analysts and Designers - will map technical requirements to business requirements. Going deeper into the analysis, you can define Use Cases (using an OOM, see below), and map them to requirements. You can write functional specifications and define more precisely the nature and details of each process, the application and its data structure. You will use a BPM, and additionally a Conceptual Data Model (CDM), which is a platform-independent representation of a system, giving an abstract view of its static data structures. A PowerDesigner CDM permits real normalized data structures with many-to-many and super/sub-type relationships, and provides a clear view of business data across all systems, making system information accessible to business users, system architects, and business analysts.
Database Administrators use the well-defined data structure to optimize, denormalize, and create the database. You will use a Physical Data Model (PDM), which is a representation of a real database and associated objects running on a server with complete information on the structure of the physical objects, such as tables, columns, references, triggers, stored procedures, views, and indexes.
A PowerDesigner PDM can be used to generate all of the database code for any of the 50 supported RDBMSs. The PDM can be created by reverse engineering from a script or from a live server through a standard ODBC connection. By maintaining a PDM and a CDM, you can ensure that your final implementation exactly matches your system requirements, and that your analysis and design efforts are reflected exactly in your actual systems.
You may also use a Logical Data Model (LDM), which can act as a bridge between a CDM and a PDM. More technically precise than a CDM, an LDM allows you to resolve many-to-many and super/sub-type relationships, de-normalize your data structures, and define indexes, without specifying a particular RDBMS.
If you are responsible for database replication, you will also use a Data Movement Model (DMM), which provides a global representation of the replication of information from a source database to one or several remote databases.
Developers will write technical specifications in an RQM, and will model the application, defining object structures and behaviors, and Object/Relational mappings.
You will use an Object-Oriented Model (OOM), which uses standard UML diagrams and notation to represent your objects and their interactions. It can be reverse-engineered from, and used to generate code for Java, .NET and many other languages. Close integration with your BPM, CDM, and PDM can greatly simplify the maintenance and development of your system.
You may also use an XML Model (XSM) to graphically model the complex structure of an XML file. Its diagram and tree views give you a global and schematic view of all the document elements, and this type of model can be used to generate DTDs, and XSDs directly from a PDM or OOM.
Team Leaders will have an interest in all the models, and will want to ensure that all the requirements, design objects and documents are linked together via traceability links to allow for impact analysis and change management.
You will establish a PowerDesigner Enterprise Repository as a central point of storage. The repository supports metadata sharing, versioning, impact analysis, and reporting for models and other system documents, has a robust security model, and supports true enterprise scalability from a single repository instance.
You can ensure that up-to-date and accurate documentation is produced and widely available. The full-featured Report Editor allows you to automate the production of detailed reports (in RTF and HTML formats) on any or all of the components of your system for sharing design information within the project team and across the whole company.
A Free Model (FEM) can be used to create diagrams to explain the architecture of your system and applications, the use-case scenarios of applications, flowcharts, and other graphics.
Testers will use the RQM, CDM, and other models, together with the design documents to understand how the application should work and how it is developed.