Charles Stack interviewed by Jon Mountjoy
Charles Stackhas been managing software development for over 20 years, with more than a decade of experience managing the development of online systems. He is credited with founding the first Internet retail store, Books.com, and is the inventor of two patented ecommerce applications. Stack is recognized throughout the industry as a true visionary. His awards include InfoWorld's "Top 10 Innovators in eBusiness," and the Small Business News "Visionary Award." Stack founded Flashline, Inc. in 1998. Under his leadership, the company became a market leader for metadata repositories. Flashline was acquired by BEA Systems in August 2006, where Stack is now a vice president, overseeing BEA's Great Lakes Engineering division and the development of BEA AquaLogic(tm) Enterprise Repository.
Dev2Dev interviewed Charles to better understand what Flashline and the AquaLogic Enterprise Repository (ALER) are all about, what ALER's role is in SOA, and what ALER means to architects and developers.
Jon: The media is full of stories about how BEA purchased a "metadata repository vendor." Can you please give us your definition of just what a metadata repository is?
Charles Stack: In this context, a metadata repository is a central place in which to store and manage software assets and their metadata, anything from complex services to applications to simple components. The repository organizes asset metadata into a comprehensive and highly dynamic portfolio that maps and manages the relationships and interdependencies that connect the various assets.
The resulting visibility and traceability of the entire enterprise software asset portfolio is critical in reducing infrastructure complexity and realizing the benefits of increased business agility.
Jon: Can you provide a few concrete examples of what is stored in a metadata repository?
Charles Stack: Metadata can include descriptions, categorizations, process mappings, UML diagrams, business rules, architectural guidelines, governance rules, and user feedback and reviews.
It's important to remember that a metadata repository has more than one audience, so the idea is to provide groupings of metadata that will make life easier for everyone, from the developer to the enterprise architect to the CIO.
Jon: What is asset management and how does it relate to metadata repositories?
Charles Stack: Software asset management is the process by which an organization regains control over IT investment by taking charge of software assets across the enterprise and throughout the asset lifecycle. It's about knowing what you have and how it's being used—or how it will be used.
Ultimately, asset management is about knowing that your software assets are delivering measurable value to the organization. An effective metadata repository provides the means to ensure that those assets are accessible, reusable, and in compliance with architectural standards and business objectives, and it measures the value of those assets.
Jon: What has this got to do with service discovery and UDDI? I know some vendors seem to have a combined registry and repository. What are the disadvantages in having a decoupled approach?
Charles Stack: As aspects of a registry, service discovery and UDDI focus on runtime. The focus of the repository is on design-time governance, on aligning architecture with business strategy, on reuse, and on measuring ROI. A successful SOA requires the properly coordinated management of the service lifecycle, from design time to runtime to retirement. As service reuse gains momentum, the sharp distinction between runtime and design time blurs and metadata needs to flow easily between a runtime registry and a design-time repository.
Disjointed management of design time and runtime will only result in a services architecture that is as chaotic as the system it was supposed to replace.
Jon: What are the major components of AquaLogic Enterprise Repository?
Charles Stack: AquaLogic Enterprise Repository manages metadata and governs the lifecycle of an infinite variety of software assets, including services. Features include: graphical navigation of asset relationships; design-time governance through policy management and compliance tracking; support for both prescriptive and discretionary reuse; dependency tracking, impact analysis, and ROI reporting; automated usage tracking; and more.
Jon: We have a pretty good understanding of SOA here on Dev2Dev. Can you tell us how a metadata repository plays a role in SOA?
Charles Stack: While a service has a loosely coupled relationship to other services at runtime, it can be tightly coupled to its underlying assets—schemas, policy, wrapped applications, and code components. The repository manages those underlying relationships and interdependencies.
Jon: Governance is an important aspect of SOA. At what point in the cycle of a business adopting SOA should it consider governance?
Charles Stack: Every business has software assets that must be effectively managed and governed in order to reduce complexity and increase business agility. It's never too early to have a metadata repository, but it is especially critical in the transition to SOA. Without easy visibility into and governance of your SOA assets you will not realize the benefits of your SOA investment.
Jon: What roles would the typical user of ALER be in—some type of IT management role?
Charles Stack: ALER has features for everybody, from developers, architects, and IT managers all the way to senior executives.
Jon: How would architects interact with ALER?
Charles Stack: Architects use ALER to prescribe services and standards for use in development. They use ALER to communicate existing and targeted architectures, and to manage the IT roadmap and ensure standards compliance.
Jon: You say that architects "use ALER to communicate existing and target architectures." How do they communicate future architectures?
Charles Stack: At a static level, architecture diagrams and similar documents can be disseminated through the repository. That's a step in the right direction, but people have to read those documents. That's why dynamic communication is far more important and effective. BEA AquaLogic Enterprise Repository's compliance templates and prescriptive reuse capabilities allow architects to prescribe specific assets for use in specific projects, assets that are known to be in compliance with standards and requirements established for the target architecture. BEA AquaLogic Enterprise Repository can then track and report on the consumption of the prescribed assets.
Jon: How would IT managers interact with ALER?
Charles Stack: IT managers use AquaLogic Enterprise Repository to gain visibility into the service alignment with architecture, to understand the relationships between assets to aid in impact analysis, and to see the value demonstrated through software asset management.
Jon: How would developers interact with ALER?
Charles Stack: AquaLogic Enterprise Repository and its IDE plug-ins remove common barriers to reuse, making it easy for developers to locate, evaluate, and use a variety of software assets.
Jon: And senior executives? Does the system generate reports indicating how well the existing asset portfolio is being used?
Charles Stack: BEA AquaLogic Enterprise Repository provides senior executives with real visibility into the IT infrastructure, and it generates a variety of standard and custom reports on everything from individual asset value to the value of the entire asset portfolio. There are management reports that track compliance to architectural directives and also reports that measure progress towards IT goals. Want a report on asset use by project or department? It's there.
Jon: At what point in the lifecycle of a system is ALER used? I guess at design time?
Charles Stack: Correct. AquaLogic Enterprise Repository is intended for use during the planning, business process modeling, service orchestration and assembly, and service creation stages of the lifecycle.
Jon: Can you provide us with some examples of using Flashline? You indicate that there is a visual aspect to manipulating and using the repositories.
Charles Stack: Using AquaLogic Enterprise Repository is a highly visual experience. One customer described it as similar to shopping at an online book store.
Figure 1. Here's an example screen shot showing AquaLogic Enterprise Repository's Navigator, which graphically maps relationships and dependencies among projects and assets (click the image for a full-size screen shot).
Jon: Continuing with the discussion of how developers would interact with ALER, are there interfaces, Web service end points, and so on?
Charles Stack: A Web service API is available.
Jon: What do I need to install and run ALER?
Charles Stack: ALER runs on a number of platforms including Windows, Linux, and Unix. An application server (BEA WebLogic Server, Apache Tomcat, or IBM WebSphere) and a database (UDB, MS SQL or Oracle) are required.
Jon: Can you give our architects and developers a one-paragraph summary of why ALER is important to them?
Charles Stack: The intense interest in SOA is based on its ability to increase the value and ROI of IT through increased reuse, the consolidation of assets, and the transformation of legacy applications into loosely coupled services. AquaLogic Enterprise Repository provides IT with the tools to ensure that services are created in compliance with architectural standards and business objectives, while making software reuse and compliance a seamless part of the development process.
Jon Mountjoy worked as the editor-in-chief of Dev2Dev and Arch2Arch until April 2008.
Charles Stackis vice president of Engineering at BEA Systems. He has been managing software development for more than 20 years, with more than a decade of experience managing the development of online systems.