Microsoft and its competitors are vying for domination of the repository market
Enterprise repositories have always been a tough sell. At their most basic level, repositories are database applications that contain meta data, or data about data. In the context of repositories, the term meta data refers to information about an organization's IS assetseverything from component definitions and COBOL copy books to information about online corporate data warehouses and data marts. Repositories typically also contain database schema information, business rules, and corporate coding and naming conventions. You might think of a repository as an exhaustive, cross-indexed list of resources, a giant card catalog for an organization's resources. Such a list is the goal of the enterprise repository, so you probably won't be surprised that repositories are sometimes called data dictionaries or encyclopedias. If this description sounds too abstract, you can think of the Registry as an everything-you-need-to-know-about-a-Windows-system repository.
If an enterprise repository sounds like something that would be great to have but probably a pain to set up and maintain, you have the right idea. Which brings me back to my initial point that repositories have always been a hard sell. However, repositories are making a comeback, and now is a good time to start investigating what they can do for you.
A Less-Than-Illustrious Past
Repositories aren't new. You might associate them with CASE tools, especially the grandiose upper CASE tools that were blueprints for enterprise development. Often mainframe-based, upper CASE tools addressed all the stages of the waterfall development model, from business modeling and enterprise architecture to code generation and maintenance. So-called lower CASE tools, in contrast, focused more narrowly on requirement analysis, program design, and code generation.
One example of an upper CASE tool that uses repositories is Texas Instruments' (TI's) Information Engineering Facility (IEF), which TI later renamed Composer by IEF, and which Sterling Software acquired in 1997 and renamed COOL:Gen. Two other examples of upper CASE products that use repositories are KnowledgeWare's Application Development Workbench (ADWwhich Sterling Software also acquired) and Digital Equipment's COHESION.
Some tool vendors designed repositories for storing information that relates to an aspect of the software development process. These repositories might contain source code, version history, business rules, and project management information.
Repository Renaissance?
The current repository market is small and not particularly dynamic. One fact that demonstrates that most administrators aren't interested in repositories is that Microsoft's repository forum (http://msnews.microsoft.com) had only a score of postings as of late January.
In Cutter Information's January 12, 1999, The Cutter Edge electronic briefing, Curt Hall, editor of Cutter's Data Management Strategies and Intelligent Software Strategies newsletters, listed reasons why the enterprise repository has met with only limited success. First, he said, enterprise repositories use proprietary formats and provide only limited synchronization capabilities. Second, they don't provide all the meta data that administrators and end users need, and the meta data they provide isn't in the formats users want. Third, repositories are expensive to build and maintain. Fourth, repositories aren't easy to scale; they require an all-or-nothing implementation. Finally, centralized repositories can't fully satisfy the needs of distributed environments.
Nevertheless, increasing numbers of administrators are taking an interest in repositories, largely because of repositories' role in the exploding fields of data warehousing and online analytical processing (OLAP) applications. Repository technology is useful in data warehousing and OLAP applications because it lets you store information about a data warehouse's or OLAP server's source data and about the extraction, cleansing, and aggregation rules associated with building and maintaining the data warehouse or OLAP database.
Historically, data-warehousing tool vendors have created proprietary repositories to store and manage their applications' data. Notably, industry leaders such as Evolutionary Technologies International (ETIhttp://www.evtech.com); Prism Solutions, which Ardent Software (http://www.ardentsoftware.com) acquired in late 1998; and Carleton (http://www.carleton.com) have developed repositories to support their data-warehousing products. Some of these data-warehousing repository products let traditional end users of information browse repository data, but others treat IS staffers as their end users and provide only the IS department access to the repository.
Other factors are also contributing to the repository renaissance. One of these factors is the momentum behind components and component-based application development. Repositories are logical structures that you can harness to keep track of distributed components and promote component reusability. If developers store their components in the repository, other developers can use those components in other projects. Another factor driving interest in repository technology is its potential for helping with Year 2000 (Y2K) remediation. And Microsoft's vocal championing of Microsoft Repository 2.1 has drawn publicity to repositories.
Microsoft Repository
The problem with repositories is that no one wants to spend the time their setup and maintenance requiresand administrators aren't eager to pay for them. Administrators would like repositories to be built into their network infrastructure. Microsoft seems to understand this; that understanding is the reason why I think Microsoft Repository will dominate the repository market in coming years.
History. The first time I heard about a Microsoft repository was at an Enterprise Days briefing about Object Linking and Embedding (OLE) strategy back in May 1995. At that briefing, TI and Microsoft shared the stage to describe a strategy for a component repository that would help developers with application development. My notes refer to the repository as an answer to component anarchy and outline Microsoft's strategy of moving toward cooperating components.
A year and a half later, I heard about a Microsoft repository again. In December 1996, Microsoft released the Microsoft Repository 1.0 software development kit (SDK). Microsoft shipped the first version of Microsoft Repository in March 1997 as a Visual Basic (VB) add-on. The repository wasn't exactly an instant hit; Microsoft admitted that it designed Microsoft Repository 1.0 mainly for independent software vendors (ISVs), not programmers.
When TI sold its software division in July 1997, Microsoft enlisted PLATINUM Technology (http://www.platinum.com) as its new enterprise partner in designing the type of high-end standalone repository that Fortune 500 companies pay six figures for. PLATINUM Technology was a good choice because that company was, and still is, one of the leading enterprise repository vendors. (Viasoft is the other leading enterprise repository vendor; it produces the Rochade repositorysee http://www.viasoft.com/rochade.)
PLATINUM sells its own mainframe Repository/MVS and UNIX-based Repository/Open Enterprise Edition (OEE). However, the company is also porting Microsoft Repository to non-Windows platforms and non-SQL Server NT databases.
Functionality. At the same time that Microsoft partnered with PLATINUM Technology, Microsoft announced its Open Information Model (OIM), an extensible COM-based object model that defines the structure of objects that OIM tools share. You can think of Microsoft Repository as two parts: the repository engine, which Microsoft built on top of a SQL database (initially either a Microsoft Access or a SQL Server database), and the OIM, a meta-meta model (i.e., the model that defines the other information modelsthe meta models.) The OIM supports a variety of information model extensions, including database and OLAP.