WHITE PAPER

Sybase® PowerDesigner® and the Software Development Lifecycle WHAT IS POWERDESIGNER?

PowerDesigner is an enterprise modeling and design tool that aids in the production of agile IT solutions that directly empower the business. PowerDesigner is a unique set of modeling tools combining several standard modeling techniques: requirements management, market-leading traditional , business process modeling and application modeling through UML. PowerDesigner’s integrated meta-data management solution leverages the most from your models with unique Link and Synchronize technology providing complete traceability and impact analysis reporting. PowerDesigner provides rich open support for all modern RDBMS and development environments including Java™, .NET, and Web Services. When combined with leading development environments such as , Microsoft® .NET, Sybase PowerBuilder®, Sybase Workspace and more, PowerDesigner offers powerful meta-data management to your application development life cycle, effectively implementing . Sybase PowerDesigner is a model-driven approach to align business and IT.

ROLES IN THE SOFTWARE DEVELOPMENT LIFECYCLE

Different roles are responsible for different phases of the application development lifecycle. Please reference the figure below.

End User Business Analysts are responsible for defining the business rules, requirements and workflow, in business terms that IT will use as reference when determining how systems can be leveraged to provide value. These users are focused on easy to use tools to document their environment. Often, we find these users using Microsoft Word, Excel and Visio as their primary documentation tools.

Data Analysts, Data Designers and DBAs are responsible for managing the data or information architecture for the business. They are primarily focused on ensuring data quality, integrity, accessibility and performance of the back-end systems. Some organizations separate the roles of data analyst or architect for conceptual/logical (ie: business level) data modeling from formal DBAs focused on physical (ie: linked directly to the RDBMS platform and 1:1 match to RDBMS objects) data modeling.

Application Designers and Developers are responsible for the application architecture for the business. They are primarily focused on the design, develop, test and deploy aspects of the software development lifecycle as it applies to the creation, development and automation of code. These folks will be aligned to a deployment platform and are typically interested in low-level technical details. They will be programming in Java, VB.NET, C#, or some other language (some will be multi-skilled), and are seeking tools to assist in their efforts.

1 IT Management and Enterprise Architects are responsible for interpreting the business abstractions defined by the Business Analysts and translating that into technology-oriented functional requirements and high-level architectural models. These folks are less concerned with implementation details, and are more concerned with ensuring project success. That success is supported by ensuring that IT has correctly interpreted the business models and continuously adapts to changes in the business or changes in understanding of the business throughout the software development lifecycle.

What is the Software Development Lifecycle? The Software Development Lifecycle is the underlying process upon which a development methodology is based. Whether using traditional waterfall, modern iterative approaches, RUP, Catalysis, Agile, eXtreme Programming (XP) or any other method, there are several steps that must be accomplished to produce viable software products. The level of detail and time spent on each of these phases depends on the methodology used, but all basically include the following elements: Business Analysis, Systems Analysis, Systems Design/Architecture and Development. Development is further broken down into Coding, Testing, Debugging and Deployment.

Different roles are responsible for each of these development tasks. Depending on the size of the IT shop and the methodology selected, many roles may be assigned to the same individual, but the responsibilities of the individual roles assigned will remain relatively unchanged. In an ordinary process, the Business Analysts will perform the Business Analysis – usually early in the lifecycle. Systems Analysts, IT Managers and Architects will transform the business models produced by the Business Analyst into technically meaningful functional requirements for business information systems that aligns with available technologies and the company’s technology strategy (SOA, J2EE, .NET, etc). Systems Architects will refine the architecture models into detailed technical diagrams (blueprints) that are mapped to a specific technology platform and deployment environment. These models can automatically produce code. Developers work with these detailed technical models, or blueprints, to create and manage code, to validate test cases, to measure the impact of code changes while debugging and correcting for logic errors, and deploying the code to the environment.

Where does PowerDesigner come in? Sybase PowerDesigner provides the techniques needed to capture business requirements and produce the business models needed by the business analyst role. PowerDesigner carries forward these models into Business, Information and Application Architecture models following the principals of Model-Driven Development (MDD). PowerDesigner can then be used to automatically create detailed models based on the architectural views, and provide developers the basis for detailed code development.

When developing to Microsoft .NET or Java/J2EE based environments, PowerDesigner can integrate with Eclipse and the Eclipse JDT, or can interoperate with .NET for C# and VB.NET development. Seamless round-trip engineering ensures the blueprint models are in synch with the actual code being developed, and as patterns and templates are applied by PowerDesigner or the IDE, these are directly reflected in these models.

2 Where does development come in? When developing on .NET or J2EE environments such as IBM and Oracle, or when developing with any infrastructure technologies, development tools take the business and architecture models as appropriate, and all the detailed design models and integrate this into any rich IDE to create the code that supports the business. Sybase PowerDesigner integrates into Eclipse, and interacts with Visual Studio and many other IDEs and ensures seamless transition from design to development, and loss-less round-trip synchronization to ensure the blueprint is always an accurate representation of the actual code being developed. Models and MDA can also be leveraged to accelerate code creation by automating many aspects of SOA and J2EE development. Customizable and extensible patterns ensure complete adherence to company standards and practices.

PUTTING IT ALL TOGETHER

PowerDesigner augments any development environment by providing the bridge between business-centric and analysis-centric models and detailed technical models. PowerDesigner also enhances the development experience through a model-driven approach to generate more code and more detailed design artifacts directly into the development toolset, and keep any changes made in either toolset 100% synchronized. Complete impact analysis, requirements management, and synchronization between all layers ensure that systems being developed with PowerDesigner are more in line with business needs.

SYBASE, INC. WORLDWIDE HEADQUARTERS, ONE SYBASE DRIVE, DUBLIN, CA 94568 USA 1 800 8 SYBASE Copyright © 2006 Sybase, Inc. All rights reserved. Unpublished rights reserved under U.S. copyright laws. Sybase, the Sybase logo, PowerBuilder and PowerDesigner are trademarks of Sybase, Inc. or its subsidiaries. All other trademarks are the property of their respective owners. ® indicates registration in the United States. www.sybase.com Specifications are subject to change without notice. 03-06