Presentation

Enterprise Software Asset Management
Avi Yaeli
Joint work with:
Alex Akilov, Sara Porat, Iftach Ragoler, Shlomit Shachor-Ifergan, Gabi Zodik
The Israeli Workshop on Programming Languages
and Development Environments
July 2002
Outline
Introduction
H
The ESAM paradigm
R
What
is Asset Locator?
L Architecture
Using Asset Locator for reuse and impact analysis
Summary
copyright (C) 2002, IBM Haifa Research Lab
Software Assets in the Enterprise
H
R
Source code
Process and
Workflow
documents
Compiled and
Generated code
L
Deployed
applications
Test suites
Enterprise
Software Assets
Design documents
Traces
Profiles
Components
Documentation
copyright (C) 2002, IBM Haifa Research Lab
Objectives
Management of software assets to provide developers, architects
H analysts with:
and
R Search and reuse
Impact analysis
L Sharing and collaboration
Component management
Knowledge management
Introduce a comprehensive automated solution
Easily integrated with existing development processes and systems
Scalable
Low-cost, low-maintenance
copyright (C) 2002, IBM Haifa Research Lab
ESAM
Enterprise Software Asset Management
H
Enterprise
Repositories
CM
Systems
File
Systems
Runtime
Servers
Discovery
Dependency
Analysis
Information Source Analysis
L
Information Source Discovery
R
User
Input
Statistics
Sharing &
Collaboration
Categorization
Discovery
...
Repository Analysis
Portals
Metrics & Statistics
Navigation
Impact Analysis
Central
Repository
Analysis
Search & Reuse
IDEs
KM & Skill Location
...
Service
Implementation
copyright (C) 2002, IBM Haifa Research Lab
KM
Systems
Reuse
Systems
Service
Integration
What is Asset Locator
A low cost, low maintenance, extensible, scaleable solution for
H
management
of software assets in the enterprise
Automatically
discovers and analyzes software assets
R
Provides
developers with tools/services in the following areas
L
Reuse, collaboration, impact analysis
Facilitates reuse via the following services
Semantic search engine
Navigation taxonomies (e.g. project topology, category, dependency)
Designed as an open framework
Customers and third party vendors can plugin additional functionality using
Asset Locator SDK
copyright (C) 2002, IBM Haifa Research Lab
Asset Locator Architecture
User Input
Enterprise
Repositories
H
R
Analyzers
scheduler
C++
COBOL
HTML
XML
JSP
Text
ClearCase
L
Crawlers
11
12
1
10
2
3
9
8
4
7
6
5
WebDAV
Team
Connection
Dependency
Analysis
JAVA
ClearCase
WebDAV
File System
PVCS
PVCS
WAS
Repository Analysis
EAR
WAR
EJB
JSP Tag Lib
WAS Topology
Java Methods
Discovery
WAS
Analysis
off-line
...
Search
Team
Connection
Taxonomies
Dependencies
Navigation
WEB
Browser
Statistics
JAVA ClassFile
TC
File
System
Categorization
Semantic &
Free-text
Impact Analysis
Eclipse
IDE
DB2
database
&
Index Server
XML
HTML
SVG
Portlet
WebSphere
Portal
Server
Result Formatters
Central Repository
Services
run-time
copyright (C) 2002, IBM Haifa Research Lab
Integration
A Java Source Code Example
H
R
L
package com.ibm.assetlocator.analyzer.java;
import com.ibm.assetlocator.*;
import java.io.*;
/**
* Analyzes a Java resource
*/
public class JavaAnalyzer extends Analyzer {
Semantic information
Textual information
analyze
java
resource
Package name
Imported packages
Class name
Super class
Defined/used methods
...
copyright (C) 2002, IBM Haifa Research Lab
Extensible Framework
Provides extension points that enable customers and third party
H
vendors
to extend and configure its functionality
R Extension points are implemented via configuration setting and published
APIs
L Analyzers, crawlers, repository analysis, search service, result formatting,
client integration
The framework design proved effective and enabled Asset Locator
to be successfully integrated in several IBM products/offering
Shipped with VA TeamConnection v3.0.3, GA Sep 99
Used by IBM DeveloperWorks site to crawl/search for IBM RedBook
content
http://www.ibm.com/developerworks/code/search2.html
Integrated with WebSphere Studio Asset Analyzer V2.1, GA June 02
http://www-3.ibm.com/software/ad/wsaa/
copyright (C) 2002, IBM Haifa Research Lab
Using Asset Locator for Reuse
Repository exploration
HFinding potential reuse candidates
R
L
Semantic search service
Repository navigation views
Reference and hierarchy graphs
Categorization
Resource inspection
Much complex than inspecting documents in search engines
Examining reuse candidates via a set of inspection views
Resource integration / adaptation
Incorporate the assets for new purposes
Download, import and edit within the IDE
copyright (C) 2002, IBM Haifa Research Lab
Semantic Search Service
Free text search engine style queries (keywords, phrases,
linguistic
processing, ...)
H
Across the entire repository
R
Search
using language semantic constraints
L Increases precision when knowing what to search for
Combine free text and semantic based queries with boolean logic
(AND, OR, NOT)
Search for Java resources that "connects to a database" and extends
"HttpServlet"
Rank results according to relevance to search term
DB2 Text Extender is used to provide information retrieval functions
Inspect results using specialized details and navigational views
copyright (C) 2002, IBM Haifa Research Lab
Repository Exploration Views
H
R
L
Semantic Search View
Inventory Distribution View
Category Navigation View
copyright (C) 2002, IBM Haifa Research Lab
Impact Analysis Via Dependency
Navigation
H
R
L
Java Hierarchy Navigation
Navigating J2EE/Web assets
copyright (C) 2002, IBM Haifa Research Lab
Summary
Asset Locator is a first attempt towards achieving ESAM
HComplements/extends existing processes and conventional reuse
R
Win-Win
solution
L Low investment/maintenance cost
Doesn't require change to organizational processes
No overhead for users
Global point of view
Lays the technology foundations for building customized tools
Via framework extension points
Contact us at: [email protected]
Visit our Web Page:
http://www.haifa.il.ibm.com/projects/systems/ple/assetlocator/index.html
copyright (C) 2002, IBM Haifa Research Lab
H
R
L
backup
copyright (C) 2002, IBM Haifa Research Lab
DeveloperWorks "Code
Finder"
H
R
L
http://www-106.ibm.com/developerworks/code/search2.html
copyright (C) 2002, IBM Haifa Research Lab
Message Flow Locator -- Eclipse Client
Using Asset Locator for Impact Analysis
Dependency View
H
R
L
copyright (C) 2002, IBM Haifa Research Lab