340 likes | 525 Views
Managing Reusable Assets Using Rational Suite Shimon Nir. Managing Reusable Assets with Rational Suite. Agenda: Introducing e-Development Accelerators What is a Reusable Asset? How can we manage Reusable Assets today using Rational Suite Summary. Managing Reusable Assets with Rational Suite.
E N D
Managing Reusable Assets with Rational Suite Agenda: • Introducing e-Development Accelerators • What is a Reusable Asset? • How can we manage Reusable Assets today using Rational Suite • Summary
Managing Reusable Assets with Rational Suite Agenda: • Introducing e-Development Accelerators • What is a Reusable Asset? • How can we manage Reusable Assets today using Rational Suite • Summary
Faster Time to Market Higher Quality e-development Accelerators: The Problem • Internet requires shorter development cycles • At the same time, software • Has a broader audience • Must be higher quality • This is the “Software Development Paradox”
e-development Accelerators: Objectives • Ensure customer success • Objective: Application Assembly • Jumpstart application development • Reduce reliance on hand-crafted artifacts • Achieve financially significant re-use • Promote asset-driven development • Automation for harvesting, managing, and assembling reusable assets • Advanced code and test generation from patterns or templates • Public and private marketplaces of standardized reusable assets
Why now? Why Rational? • Maturing software engineering practices • Unified Modeling Language • Rational Unified Process • Capability Maturity Model (CMM) • Industry Standardization • Platforms (e.g. J2EE, .NET) • Protocols (TCP/IP, HTML, XML) • Application Frameworks (e.g. Weblogic Commerce Server, SAP, WebSphere) • Critical shortage of application developers • Why Rational?
Managing Reusable Assets with Rational Suite Agenda: • Introducing e-Development Accelerators • What is a Reusable Asset? • How can we manage Reusable Assets today using Rational Suite • Summary
Reusable Software Asset - Definition What is a software asset? In general terms: a reusable software asset is a software artifact or a set of related artifacts that has been created or harvested with an explicit purpose of applying it repeatedly in subsequent, separate development efforts. Examples: EJB or COM Component with artifacts describing them e.g. Model, Test Scripts Architectural Mechanism – Using JDBC for Persistency Requirements Framework – Net Edition
Reusable Software Asset - Structure Overview describes the problem that the asset solves as well as the intent and motivation. The Usage part contains key information about how to apply the asset Classification part describes the assets using meta-tags. They are used to group, store, search and retrieve assets. The Solution part contains the artifacts that comprise the solution An Asset is a set of artifacts. These artifacts have to be described and packaged for reuse into an Asset Package.
Managing Reusable Assets with Rational Suite Agenda: • Introducing e-Development Accelerators • What is a Reusable Asset? • How can we manage Reusable Assets today using Rational Suite • Summary
Requirements for a Supporting Tool set • Support for a catalog or library of Assets • Browsing Capabilities – to find appropriate assets • Textual & Visual Descriptions of Assets • Multi-user support • Support for distributed teams • Configuration Management capabilities • Asset Traceability • Support for Impact Analysis when changes required • Provide Metrics on usefulness of assets • Facilities to register developer interest in components • Supporting environment to Utilize Assets • Needs to support a variety of assets
Rational Suite Product Family Requirements& Analysis Software Development ContentManagement System Testing Requirements& Use Case Development Business Modeling Data Modeling IDE Visual Modeling Web Component Modeling Unit Testing Authoring Templating Approval Deployment Site Integrity Functionality Reliability Performance Collaborative Project Management Common Process Reporting Progress Metrics Developer Portal Team Infrastructure Requirements Management Test Management Defect Tracking Configuration Management
Rational ClearQuest Requirements Documents Code Models CQ Reusable Asset Classification Database ClearCase How can we Support Reusable Assets Today? Client Rational ClearCase - Configuration Management of Actual Assets Visual Representation of Asset – represented using Rational Rose Web Publisher References Published View References Physical Asset Capture Classification of Reusable Assets using Rational Clearquest
Rational ClearQuest: Asset Catalog Deploys Anywhere, for Any Size Team Captures and Tracks Assets Easily Adapts, to Work the Way You Work
RAS Schema Rational ClearQuest: Customization Overview • Fields • Forms • User Admin Master DB RAS Schema Process Model Schema A • States • Actions • Hooks Schema B • Customize Schema to store & track assets • Create New Record Type of Asset • Create New Fields for Asset • Create New Forms for Asset RAS Schema Instantiated RAS DB 1 Reusable Assets User DB
Rational ClearQuest: Add Custom Fields • Create new fields defining the Asset
Rational ClearQuest: Modify Forms • Create Forms to Capture the Asset Description
Rational ClearQuest: Customized as an Asset Catalog Reference to Web Published Visual Model
Rational ClearQuest: Customized as an Asset Catalog Reference to Rational Clearcase – Asset Contents
Requirements Models Code Tests Documents ClearCase Rational ClearCase: Manage Reusable Assets • Stores and versions all assets • Requirements and models • Binaries and source code • HTML files and templates • Documents • Test Scripts Rational ClearCase is the underlying Repository for all Assets
Rational ClearCase: Capturing Asset Content & Usage • Rational ClearCase • captures • Overview • Usage • Solution Rational Clearquest Captures Classification of Asset
Customization to Fit Your Environment • The Reusable Asset Specification can be customized in the following areas: • Artifacts • Asset Categories • Asset Structure • Meta Tags • States and Values • The required elements of an asset as declared in the specification cannot be removed
Rational ClearQuest: Extend Asset Support With Hooks • Hooks provide the capability to automate and enforce your process • Written in VBScript or Perl using Built-in Editor • Examples: • Add “Browse” button to web publisher reference – add a hook to launch referenced web published model • Similar hook to open up Rational ClearCase view and browse the assets • Upon creation of Asset could add a hook to generate the directory structure required
Creating the Asset Reference • Needs to be a lightweight process • Simple and quick forms • Use context menu of ClearCase for data collection • Use ClearQuest API to add record • Use ClearQuest API to show record form when required
The Original Requirements List • Support for a catalog or library of Assets • Browsing Capabilities – to find appropriate assets • Textual & Visual Descriptions of Assets • Multi-user support • Support for distributed teams • Configuration Management capabilities • Asset Traceability • Support for Impact Analysis when changes required • Provide Metrics on usefulness of assets • Facilities to register developer interest in components • Supporting environment to Utilize Assets • Needs to support a variety of assets
Providing Support for Traceability • We need to provide traceability to the projects/systems that use these assets • Create record types for project/systems • Trace the assets to the systems that use them • Provides support for Impact Analysis • Give us the capability to provide metrics on usefulness of Assets • Facilities to register developer interest in components • Create Enhancement Request Record type • Use this to register enhancements requests for new or existing assets
Why use Rational Suite? • Provides the capability to manage a variety of assets • Components • Frameworks • Architectural Mechanisms • Guidelines, white papers, requirement frameworks • Provides the capability to manage supporting artifacts • Requirements • Designs • Tests • Implementation • Provides the supporting environment to Utilize Assets on a Project
Managing Reusable Assets with Rational Suite Agenda: • Introducing e-Development Accelerators • What is a Reusable Asset? • An approach Managing Reusable Assets • How can we manage Reusable Assets today using Rational Suite • Summary
Summary • Rational is driving the e-Development Accelerators initiative focusing on 3 areas: • Reusable Asset Frameworks • Automation • Reuse Standards – RAS • Today with Rational Suite we can capture: • Asset Catalog using Rational ClearQuest for textual descriptions and Rational Rose for visual descriptions • Asset artifacts using Rational ClearCase • Rational Suite also provides the environment to utilize these Assets
Thank You Shimon Nir Rational Software, IBM Software Group nirshimo@il.ibm.com