Introduction to Rational Asset Manager 2007 IBM Corporation
Introduction to Rational Asset Manager © 2007 IBM Corporation
Asset Management Challenges That RAM Addresses Software Reuse ü How are my software assets being used? What cost savings are there? ü How can I make sure that my developers have the right, high quality asset easily available? Open Source Management ü What open source is in use across my company? ü Are the legal approvals in place for all use of it? Is my exposure managed? IT Governance ü How do I prescribe and enforce the use of certain architectural standards? ü How do I link my project portfolio to my software assets and architecture? Web Services / SOA transformation ü How do I control what projects can create new or access existing service assets? ü What assets in my environment use this service? ü How do I ensure alignment with architecture, standards and business goals? 2
Rational Asset Manager (RAM) Overview RAM is a development time asset management repository üUses the Reusable Asset Specification to describe / classify assets Handles any kind of asset • source code, DLLs, documentation, presentations, patterns, process flows, etc… üAn Asset is a collection of artifacts which provide a solution to a problem for a given context High Level Goals: üReduce software development costs and improve quality by facilitating the reuse of all types of software development related assets üIntegrate with other Rational and SWG tools where appropriate 3
Rational Asset Manager Features Asset upload, download, update, packaging ü Asset Types, categorization, attributes and relationships between assets are all supported Security and access control ü Fine-grained permissions based on groups, roles, users, asset types Metrics and reporting ü Record usage, feedback ü Export delimited file Collaboration ü Discussions, Email and RSS ü Search using categories/facets/keywords User interface ü Eclipse client ü Web UI ü File contents search, text, word, & power point, ear, war, zip files Process guidance ü Asset-based development Search Workflow & Review Boards ü Basic review/approval flow built in with configuration guidance in Rational Method Composer Create and update asset versions ü Clear. Case, Clear. Quest & Web. Sphere Service Registry • Enterprise-level Development-time Asset Repository integrated with next generation team platform (a. k. a. The Jazz Project https: //jazz. net/pub/index. jsp ) • Team-level Developmenttime Asset Repository 2008 • RUP Asset-based Development plugin • developer. Works Asset Repository with SOA Assets 2007 RAM is not a released product. e. GA is planned for June 29 th Today 4
What is a Software Asset? ü a collection of Artifacts ü which provides a solution to a requirement or business/mission need for one or more contexts with instructions for usage and variability points What are Artifacts? ü Workproducts from the software process • Requirements, Designs & Models (including enterprise and systems architecture), Source code, Data, Tests, User Interfaces, Documentation, Service Interfaces, Estimates and so on… Kinds of assets ü Applications, components, patterns, software that runs systems or products, services, frameworks, templates, … 5 variability point • • • Rational Asset Manager Asset Definition Requireme nt Solution Asset Artifact with instructions for usage for one or more contexts A Software Asset is
Asset Types can be created to handle any asset Example Asset Types representing a Service Type: Service Interface An Asset type specify: ü Type name, description ü Required artifacts ü Required relationships ü Attributes (optional or required) ü Which categories are allowed Validation of asset type constraints will be run on asset submission 7 Type: Service Design Who: Architect designing svc Artifacts: Service design model Type: Service Test Suite Who: Dev submitting the service Who: Dev reusing service Who: Service reviewer Artifacts: Service Test Script Service Test Case Who: Architect defining service Who: Dev building app Artifacts: Service definition file. WSDL Message definition. XSD Interface definition. XSD Service interface model. emx Service document. doc Type: Service Impl Who: Dev submitting service Who: Asset Admin for deploy Artifacts: Deployment descriptor Service component. EAR Import services Export services
What is Asset Management? Software Asset Management is all of the infrastructure and processes necessary for the effective management, control and protection of the software assets within an organization, throughout all stages of their software and systems lifecycle Asset Name Desc State Ver Profile Classification Descriptors: Name/Value pairs Search/ Retrieve Create/ Modify Measure Govern Solution Artifacts Development Assets Asset Overview Requirements Models, Code, Tests Documents … Usage Instructions & Activities Filling Variability Points Related Assets Association, Aggregation, Dependency, Parent 8 Asset meta-data Define Context Domain, Development, Test, Deployment, and so on… Reusable Asset Specification (RAS) Rational Asset Manager
Reduce development costs, accelerate time to market and improve quality by reusing existing trusted assets with IBM Rational Asset Manager SOA Program Lead Software Architect Compliance Manager CIO/CTO Improve software quality while reducing development cost and time ü Manage and facilitate reuse of software assets Securely promote cross project communication of reusable assets ü Avoid duplication by facilitate reusable asset sharing across multi-platform projects with role based asset access and a workflow to manage the update and delivery of assets Manage compliance and govern architectural integrity and development assets ü Enforce and monitor integrity of development assets with a definable, enforceable and auditable process Accelerate service delivery with easy discovery and federation and improve overall SOA lifecycle management ü Manage service dependencies and easily locate existing assets to prevent duplicate service efforts Reduce development costs and accelerate time to market by facilitating reuse with IBM Rational Asset Manager 9
Introducing Rational Asset Manager Asset Administrator Analyst Developer Architect Tester Project Manager Reviewer Approver Project Manager CTO/CIO Define Search/ Retrieve Assets Create/ Modify Assets Measure Govern Rational Asset Manager is a collaborative software and systems development asset management solution that gives organizations the ability to identify, manage and govern the design, and development of Service-Oriented Architecture initiatives or other development assets. 10
Rational Asset Manager (RAM) Overview RAM is a development asset management repository üUses the Reusable Asset Specification to define, create and modify assets üProvides asset type specific search & governance üMeasures asset reuse in development Handles any kind of asset üApplications, components, patterns, software that runs systems and products, services, frameworks, templates, … Benefits: üReduce software development, systems development and operational costs üImprove quality by facilitating the reuse of approved & proven assets üIntegrated with other IBM Rational and SWG tools 11
Accelerating Systems Engineering and Development Lifecycle Assets • • Systems Requirements Enterprise Architecture (with Do. DAF) Systems Architecture (Sys. ML), Software Models (UML) Source code (e. g. device code) Tests Assets (test cases, test scripts, manual scripts) Build Assets Documentation Model-driven systems development (RUP-SE) Govern Systems Development Lifecycle Design Develop Build Test Deploy Analyze and model Implement and iterate Build and stage Validate and test Deploy Systems Engineering and Development Assets Eclipse framework: open and extensible 12
Rational Asset Manager (RAM) Architecture Software Development Platform Developer Web. Sphere Studio Asset Analyzer Project Manager Create, modify & use assets Analyst Architect Developer RAD RSM RSA WID WBM RSD RSM Deployment Manager Tivoli • Create. modify, use & review assets • RAM administration All Roles Identify & harvest candidate assets Business Manager RPM, RMC Measurement and Control Platform Clear. Case SCM Plug-in Eclipse RAM Plug-in Gen process export Measure perf Business Manager publish, search, browse, retrieve RAM Server asset metrics e. WAS Metadata Asset Management Platform Project Manager RAM Web Client RAM Services Rational Unified Process for Asset Based Development 13 Tester RFT RPT Storage DB 2 Filesystem Oracle CVS SQL Server Clear. Case Submit and query change requests Developer Web. Sphere Service Registry & Repository Clear. Quest
The underlying service metadata management Service discovery, reuse, and governance throughout the SOA lifecycle Manager Developer/ Architect/ Analyst Impact Analysis Measurement, Audit Search, Consume, And Submit Services Federated Search And Publish Review, Govern Rational Asset Manager (RAM) Development-time Assets/Services Review Board 14 Web. Sphere Service Registry And Repository (WSRR) Solution Architect Administer Taxonomy, Users, Access control, and Reviews Deployed/Runtime Services Administrators
RAM integrations with Rational team products RAM works seamlessly with Rational’s class leading team products! Develop and Share Code Track and fix problems Package and Consume Assets Store or reference Assets Rational Asset Manager (RAM) Develop code in a team environment Create and package assets Search for and reuse assets Track and fix problems Seamlessly! All in the same IDE! Clear. Case Clear. Quest Integrated Asset Level Defects and Review Process 15 § §
Example: RAM Define, Create, Modify and Review Asset Interactions Service Development Govern (4) Manager reviews and approves asset using a customizable development workflow Clear. Quest. RAM enforces asset types and relationships. (3) Developer creates, modifies or learns about assets in Eclipse workspace using RAM with Create/ Clear. Case & Clear. Quest Modify (5) Technical manager publishes service asset interface from RAM to WSRR Service Deployment Service Registry & Repository Model Construct Assemble (2) Developer searches RAM for assets to reuse Search/ Retrieve (1) Architect defines asset types, categorizations and review boards in Define RAM for asset reuse (this include enterprise and systems architecture) 16 Discover (6) RAM links WSRR services to versioned asset details & artifacts (7) RAM discovers WSRR services and classifications for asset reuse
RAM and WSRR Functionality Deployed / Run-time Ø Service Lifecycle Governance Development-time Web. Sphere Service Registry and Repository Ø Design / Architecture Governance Publish Rational Asset Manager Find Enrich Manage Govern Manages information that is useful for the runtime operation, management and development use of services Manages information that is useful for developing, reusing and managing all types of reusable assets üSelect service endpoints dynamically in a SOA runtime üGovern runtime changes to service metadata üSet and get runtime policies for service execution üDefine asset types üGet deployed service details like endpoints, relationships and service definitions üCreates and manage all types of assets üProvide asset traceability and details üCollaborate on asset development Artifact. doc, . uml. xml Asse t Classifier 17 Port Federated Search And Publish . ppt, . doc Reusable Asset Specification (RAS) Type Policy . wsdl. xsd Service Classification Classifier Relationship Maps Lifecycle Metadata
Screenshots for Scenarios Scenario 1: Configuring the repository Scenario 2: Search or evaluate an asset Scenario 3: Retrieve and use an asset Scenario 4: Create and package asset Scenario 5: Submit asset Scenario 6: Review and approve asset Scenario 7: Measure asset activity Scenario 8: Modify and create new asset version Note: the screenshots in these charts are for the RAM Web UI; the RAM Eclipse UI experience will be slightly different 18
Scenario 1: Configuring the repository for projects Before getting started with the green thread, the Teamspace Administrator configures the repository ü Create Teamspaces, Roles and Access Control ü Create Categories ü Create Asset Types ü Create Review Processes ü Define Your Asset Mgmt Processes ü Connect Asset Mgmt Processes To Assets 19 Teamspace Admin
Create Teamspaces, Roles & Access Control Analyst Teamspace Business Analyst Claims Processing Teamspace Access Control: search, read, browse, download, update all assets in Analyst Teamspace Admin Asset Owner Reviewer Service Dev Teamspace Access Control: search, read, browse, download, update all assets in Service Dev Teamspace A Teamspace is a collection of users, their roles and entitlements, and their assets and review processes 20 Access Control: full entitlement across all assets in all Teamspaces IT Operations Access Control: search, read, browse, download, update all assets in Service Dev Teamspace Architect/ Developer Access Control: search, read, browse, download, update all assets in Claims Processing and Analyst Teamspace Review Board Access Control: search, read, browse, review all assets across all Teamspaces
Create Categories § Categories for Asset classification are configured via the RAM Web UI or an XML file § Assets can belong to any number of categories § Categories can be used for faceted search, browsing, and access control Create a taxonomy for Insurance ü Financial Reporting • Stockholders Equity • Financial Position • Income Statement ü Health Insurance • Public – Claims Processing – Tax – Social Security • Private – Mandatory – Employment Group – Community Rated – Risk Rated 21
Scenario 2 : Search or evaluate an asset Description üAnalyst/Architect/Developer … do the following: RAM Eclipse or Web client Analyst • enters keywords to search for assets • navigate the classification schema/facets evaluating the result list Customer pain points üeffort to find asset • where to look, context and narrow it down to relevant candidates, inconsistent meta data üeffort to evaluate asset • which assets that apply to the problem they are trying to solve • assets that are applicable to their team, role, project or architecture component • inconsistent packaging ücontrol access to asset Entitled access RAM Eclipse or Web client Architect Entitled access RAM Eclipse or Web client Developer Entitled access 22
Scenario 2 : Search or evaluate an asset – RAM Web UI Search by keywords Search on specific meta data elements Search using custom tags you associate with assets 23 Search using customizable facets such as asset types, state, teamspaces, categorization
Scenario 2 : Search or evaluate an asset – RAM Web UI Search criteria can be combined and are (de)selectable 24
Scenario 3 : Retrieve and use an asset Description ü [Precondition] Analyst/Architect/Developer… have evaluated an RAM Eclipse or Web client Analyst asset in the repository and determined to retrieve the asset ü Analyst/Architect/Developer… do the following: • indicate the intended use of the asset (further evaluation, or actual use) • add the asset to their product/project • import the asset into their IDE workspace Pain points üdon’t know how to get started to use the asset ühow and where asset is putting artifacts in my workspace üdifficult to determine who is using the asset and where it is being used üInability to plan or implement fix or feature - lack of notification when a new asset is available or has changed üdifficult to get support - who is responsible for maintaining the asset or where to get help üdetermine which projects, products and assets are impacted by changes to software and non-software related artifacts 25 Entitled access RAM Eclipse or Web client Architect Entitled access RAM Eclipse or Web client Developer Entitled access
Scenario 3 : Retrieve and use an asset – RAM Web UI Select the location for the asset contents to be stored 26
Scenario 4 : Create and package asset Description ü [Precondition] Analyst/Architect/Developer… recurring problem & solution ü Analyst/Architect/Developer… do the following: • create artifacts for the asset in RAM • select the artifacts to be included in the asset • enter meta data & classification information Pain points ü Create • Identifying candidate assets • Harvesting asset artifacts • Without understanding context for reuse RAM Eclipse or Web client Analyst Entitled access RAM Eclipse or Web client Architect Entitled access üPackage • inconsistent organization for assets, the information captured, their classification, and entitlements so that they can be used by others. • Time consuming to package • Don’t know how to package assets • Different packaging needs differ depending on product. RAM Eclipse or Web client Developer Entitled access 27
Scenario 4 : Create and package asset – RAM Web UI Fill out asset meta data, select artifacts and “Save as draft” 28
Scenario 5 : Submit asset Description ü [Precondition] Analyst/Architect/Developer… have developed artifacts ü Analyst/Architect/Developer… do the following: • create an entry for the asset in RAM • refine meta-data & define asset entitlement Pain points ü inconsistent organization for assets, the information captured, their classification, and entitlements so that they can be used by others. üManually storing and manages assets üInconsistent registering of assets üDifferent packaging needs differ depending on product. üTeam members don’t know when there are new assets or updates üDifficult to understand asset technical context, inter-relationships and dependencies because it isn’t defined or communicated 29 RAM Eclipse or Web client Analyst Entitled access RAM Eclipse or Web client Architect Entitled access RAM Eclipse or Web client Developer Entitled access
Scenario 5 : Submit asset – RAM Web UI Select “Submit for approval” to submit the asset 30
Scenario 6: Review & approve asset Description ü [Precondition] Analyst/Architect/Developer… have submitted an asset RAM Eclipse or Web client Reviewer ü Review • • Asset Manager or review board does the following: – determines and notifies asset reviewers Asset Reviewer does the following: – reviews the asset – submit asset review Asset Manager or review board approve – evaluates the submitted reviews – approves or rejects the asset for publishing System notifies the submitter/author/producer/owner/reviewers Entitled access RAM Eclipse or Web client Asset Manager Pain points ü Needs assets which have been validated and verified for a specified context and scope of reuse ü Needs assets which have met enterprise rules, policies and governance ü Lack of awareness of where the asset is in the workflow This offering will provide the ability to … Entitled access RAM Eclipse or Web client Asset Review Board ü Out of the box default workflow ü Capture review process information ü Send workflow email notification Entitled access 31
Scenario 6: Review & approve asset – RAM Web UI The reviewer selects the asset to review from the My Assets page The reviewer selects “Review it” from the asset details screen 32
Scenario 6: Review & approve asset – RAM Web UI The reviewer claims the review, reducing the number of reviews that need to be completed on the asset 33 The reviewer conducts the review and Accepts or Rejects the asset
Scenario 7: Measure asset activity Description ü [Precondition] Asset submitted & may have activity ü Administrator does the following: RAM Eclipse or Web client Teamspace Administrator • Generate metrics reports Pain points ü Management needs to quantify activity level, benefits realized, return on investment & quality Entitled access This offering will provide the ability to … üCapture asset production effort üCapture expected reuse & actual consumption effort) üCapture downloads, submissions, approvals, üGenerate derived metrics ( ROI, productivity, cost savings…) üReporting and charting metrics üTo report on asset defects stored in Clear. Quest RAM Web client Business Manager Entitled access 34
Scenario 7: Measure Asset Activity Metrics and reporting are supported in RAM ü Asset Level Reports • Downloads, browses, feedback and ratings ü Repository Level Reports • Assets by teamspace, type, and state • Search History • Downloads Investigating a custom reporting solution using BIRT 35
Scenario 8 : Modify and create new asset version Description ü [Precondition] Analyst/Architect/Developer… existing asset. ü Analyst/Architect/Developer… do the following: RAM Eclipse or Web client Analyst • selects existing asset in RAM • modifies asset properties and saves changes • indicates if a new version is required Customer pain points üLack of notification when a new version of an asset is available üDifficulty tracking multiple versions of an asset üDifficulty tracking usage of different asset versions üDifficult to understand when and how assets changed and what artifacts were changed üTime wasted to setup a workspace to fix or enhance asset This offering will provide the ability to … üGet email notification RSS feed of when there are new asset versions. üUpdate asset contents, descriptions, metadata and other properties üVersion assets in Clear. Case or CC Multisite üCreate a CQ change request from RAM asset details üReport on asset usage by asset version üHave assets refer to artifacts by reference in Clear. Case or CVS üInvoke an asset meta data diff between 2 versions of an asset üRecreate and populate a workspace with asset contents from Clear. Case by reference or RAM. Key technology or integration components üOptionally Clear. Case, Clear. Quest, CVS 36 provided access RAM Eclipse or Web client Architect provided access RAM Eclipse or Web client Developer provided access
Scenario 8 : Modify and create new asset version – RAM Web UI Select the “Update it” option Enter the new asset version #, update the asset content and other meta data and submit 37
Notifications Email and RSS Notification are supported Notifications can optionally occur when: ü An asset is submitted / updated ü Review state of an asset is changed Search subscriptions are also supported ü Notified periodically of search results 38
CP Market Scenario 9 : Asset Development Process Description ü [Precondition] Software type assets requires established software architecture & process, versioning & configuration management skills Customer pain points üWasted effort in reuse imitative • lack of process • don’t know how to get started • Unable to find assets for specific process step • To much time spent on review This offering will provide the ability to … ü ABD & management process guidance üRational Method Composer – Rational Unified Process • RMC RUP website • RMC project • Sample process templates & tutorial movies üProvide URI to applicable assets from the process step üSubmit assets “as-is” for specified users Key technology or integration components üRequires Web browser üTo customize requires RMC 39
CP Market Scenario 10: Product Administration Description ü Product Administrator sets up and maintains Repository Server RAM Web client Teamspace Administrator Customer pain points ü Total cost of ownership because of administration ü Auditing for security and regulatory purposes ü Complexity in setting up product integrations provided access This offering will provide the ability for … üProduct administrators to: • Reduce user admin cost by authenticating users using application server LDAP security context and defining access controls using groups üRepository administrators to: • Import and export RAM configuration information • Configure a single instance of RAM for entire enterprise • Enable activity auditing • Define which Clear. Quest instance and Clear. Case Multisite replicas to use for asset production and consumption scenarios • Configure which WSRR instances being used 40 RAM Web client Repository Administrator provided access
CP Market Scenario 11: Service Lifecycle Governance with Web. Sphere Service Registry & Repository Description ü [Precondition] Service deployed in WSRR RAM Eclipse or Web client Architect ü Developer or Architect creates a new service asset or includes a deployed service in a new asset ü Administrator defines common and unique development and runtime categorizations and ACLs Customer pain points üDifficult to determine what service artifacts were used to create or consume a service üConsistently administrate & enforce ACLs & categorizations for entire service asset lifecycle üUnderstand which assets that use deployed services from WSRR üEnsure traceability between service assets created with RAM and deployed in WSRR This offering will provide the ability to … üMake WSRR deployed services available as searchable assets in RAM üPopulate RAM categorizations with retrieved WSRR service classifications üPublish RAM Service Assets to WSRR using a wizard üSee RAM Service Asset that are traceable to WSRR deployed services. 41 provided access RAM Eclipse or Web client Developer provided access
Targeted Platforms Operating Systems Browsers ü Windows XP Profession SP 2 ü Microsoft Internet Explorer 6 SP 1, 7 ü Vista Business Edition ü Fire. Fox 1. 5. x, 2 ü Windows Server 2003 Standard Edition ü Windows Server 2003 Enterprise Edition ü Su. SE Linux 10 (Intel 32 bit) ü 3. 2. 1 ü Red Hat Linux Enterprise AS 4 ü IBM Rational Software Development Platform products (RAD, RSA etc) v 7 Database ü DB 2 Enterprise Server Edition 8. 2, 9. 1 ü Oracle 9. 2. 0 (9 i), 10 g ü SQL Server 2005 LDAP ü Microsoft Active Directory Server 2003 Integrations ü ü 42 IDE Clear. Case v 7. 0. 0. 1 Clear. Quest v 7. 0. 0. 1 WSRR v 6. 0. 0. 1 CVS 1. 11. 22 or later Application Server ü Web. Sphere Application Server V 6. 0. 2 and Fix Pack 11 ü Web. Sphere Application Server v 6. 1 ü Tomcat v 5. 5 ü Includes Web. Sphere Application Server embeddable v 6. 1
Upcoming Events § IMPACT – May 20 -25 ü Introduction to IBM Rational Asset Manager § RSDUC – June 2007 ü ALM 12 Managing Service-Oriented Architecture-based Runtime Assets with IBM(R) Rational(R) Asset Manager – Daniel Berg ü CRM 11 General Introduction to IBM Rational Asset Manager – Carlos Ferreria, Grant Larsen ü CRM 14 Intermediate IBM Rational Asset Manager: Governing the Assets of Your Enterprise Wednesday – Grant Larsen, Carlos Ferreira, 43
- Slides: 42