rational clearcase product sumary

32
Rational ClearCase Rational ClearCase Product Summary

Upload: api-3728519

Post on 07-Jun-2015

631 views

Category:

Documents


3 download

TRANSCRIPT

Page 1: Rational ClearCase Product Sumary

R a t i o n a l C l e a r C a s eR a t i o n a l C l e a r C a s eP r o d u c t S u m m a r y

TO706C.qxd 2/16/99 8:58 AM Page 1

Page 2: Rational ClearCase Product Sumary

P r o d u c t S u m m a r y

R a t i o n a l C l e ar Ca s e

TO706C.qxd 2/16/99 8:58 AM Page 3

Page 3: Rational ClearCase Product Sumary

Rational ClearCase Product Summary

This document reflects Rational ClearCase Release 3.2.1 software for per-sonal computers running Windows or UNIX. Information on RationalClearCase MultiSite, ClearCase Attache, ClearQuest, ClearGuide, andClearDDTS is also included.

To keep this Product Summary concise, some examples reflect Windows conventions and GUIs and others reflect UNIX conventions and GUIs. Thefew key functional differences between the Windows and UNIX versions ofRational ClearCase are noted in this document. Please contact your RationalSoftware sales representative for further platform-specific information.

Rational, the Rational logo, Rational ClearCase, ClearCase MultiSite,ClearCase Attache, ClearGuide, ClearDDTS and ClearQuest are trademarksor registered trademarks of the Rational Software Corporation in the UnitedStates and other countries. Microsoft, Windows 95, Windows NT, Windowsfor Workgroups, Developer Studio, Visual Basic, Visual C++ and Visual J++are trademarks or registered trademarks of Microsoft Corporation. SunSolaris and Sun OS are trademarks or registered trademarks of SunMicrosystems, Inc. All other names are used for identification purposes only,and are trademarks or registered trademarks of their respective companies.

This document is subject to change without notice. Rational Softwareassumes no responsibility for any errors that may appear in this document.

TO706C.qxd 2/16/99 8:58 AM Page 4

Page 4: Rational ClearCase Product Sumary

Ta b l e o f C o n t e n t s

SECTION 1:Rational ClearCase: Software Configuration Management 1

SECTION 2:Beyond Version Control 4

SECTION 3:Workspace Management 7

SECTION 4:Parallel Development 10

SECTION 5:Build Management 12

SECTION 6:Process Control 15

SECTION 7:Maximizing Developer Productivity 17

SECTION 8:Rational ClearCase MultiSite 19

SECTION 9:Rational ClearQuest 21

SECTION 10:Rational ClearCase Attache 23

SECTION 11:Rational ClearCase Architecture and Administration 24

SECTION 12:Rational ClearCase Specifications 26

TO706C.qxd 2/16/99 8:58 AM Page 5

Page 5: Rational ClearCase Product Sumary

Software development is an inherently dynamic and increasingly complex process. At the

development team level, this complexity takes many forms, including more lines of code,

geographically distributed development teams, more projects that share common software

components, a greater number of ports and product releases, and an ever-increasing pressure to

improve developer productivity and reduce time-to-market. Yet many organizations continue

to rely on manual, largely static tools to manage this fundamentally mutable process.

Rat i o n a l C l e a r C a s e : S o f t wa r e C o n f i g u rat i o n M a n a g e m e n t

1

1

• Increase team productivity

• Improve individual productivity

• Bring higher quality products to market sooner

• Simplify software maintenance

• Guarantee the build accuracy and version control of every software element

• Automate time-consuming, error-prone software development tasks

• Optimize use of hardware resources

• Improve project coordination

• Implement more consistent software development practices

• Reduce tool and administration requirements

• Improve software security and disaster recovery

• Reduce training and implementation costs

• Support heterogeneous development environments more effectively

To date, Thousands of software developers have successfully used ClearCase to:

Rational ClearCase® is the first software configura-tion management (SCM) system to provide a prac-tical, dynamic solution to the complexities of mod-ern software development. With its comprehensivecapabilities, ClearCase enables organizations tostreamline development cycles, successfully pur-sue concurrent development strategies, guaranteethe accuracy of releases, and efficiently support re-mote team members. Because ClearCase adopts a uniquely transparent, non-intrusive approach,organizations find ClearCase easy to deploy,roll out, and maintain.

The purpose of this guide is to explore how you can achieve these desired results in your own environment, by addressing the most frequently asked questions about ClearCase usage and implementation.

TO706C.qxd 2/16/99 8:58 AM Page 7

Page 6: Rational ClearCase Product Sumary

2

Process Control

ClearCase provides flexible, powerful tools for implementing projectand site-specific policies, without imposing particular procedures ormethodologies. Organizations can set up automated routines to moni-tor software changes, prevent changes by unauthorized personnel,notify team members when events occur, and create permanentrecords of development procedures.

THE RATIONAL CLEARCASE PRODUCT FAMILY

Bridging the Worlds of Windows and UNIX

Rational ClearCase spans Windows and UNIX client platforms, allow-ing developers to work in the native development platform of theirchoice. The ideal solution for heterogeneous project teams, ClearCaseoffers seamless interoperability between Windows and UNIX plat-forms. ClearCase relies on industry-standard TCP/IP for communicationbetween clients and servers and supports select third-party NFS clientand SMB server solutions for communication between Windows andUNIX systems. Developers may also choose to utilize the ClearCase filesystem (CCFS) for interoperation between specific ClearCase configu-rations. Cross-platform flexibility is further supported by floating licens-es that can be shared across platforms.

Integration with Familiar Development Environments

Rational ClearCase for Windows. ClearCase for Windows deliv-ers comprehensive ClearCase functionality in a native Windows imple-mentation. Seamless integration with the Windows Explorer, MicrosoftVisual Basic, Visual C++ and Visual J++ deliver full SCM functionalityfrom within familiar developer environments. ClearCase for Windowsincludes client support for Windows 95/98.

Rational ClearCase for UNIX. ClearCase for UNIX offers seam-less transparency with standard UNIX file system calls. Standard UNIXprograms such as grep, more, ls and cc work the same way onClearCase version-controlled data as on ordinary file system objects,while integrations with popular development environments maximizedeveloper productivity.

THE FOUR FUNCTIONS OF RATIONAL CLEARCASE

Although Rational ClearCase is an integrated system, it is useful togroup its features into four functional areas (Figure 1.1):

Version Control

ClearCase goes far beyond source code control to version every object inthe software development lifecycle. By tracking changes to every file anddirectory, ClearCase maintains complete, annotated version histories ofsource code, binaries, executables, documentation, test suites, librariesand user-defined objects. Developers can quickly identify, rebuild and rollback to any previous software version.

Workspace Management

ClearCase views provide developers with the exact versions of filesrequired to complete a particular task, while shielding them from thecomplexity of the larger development environment. Developers enjoytransparent access to the appropriate object versions without everleaving their native Windows or UNIX development environment.ClearCase views help every member of your team work more effi-ciently, striking the perfect balance between access to shared re-sources and isolation from destabilizing changes.

Build Management

ClearCase automatically produces a detailed “bill of materials”that documents software system builds, enabling developers to com-pletely and reliably recreate the environment of any build. In addition,ClearCase reduces build times through intelligent binary sharing andparallel execution of build scripts.

VersionControl

BuildManagement

ProcessControl

WorkspaceManagement

Figure 1.1: rational CLEARCASE functionS

TO706C.qxd 2/16/99 8:58 AM Page 8

Page 7: Rational ClearCase Product Sumary

3

Product Options

Rational ClearCase MultiSite.® Rational ClearCase MultiSite pro-vides comprehensive SCM support across geographically distributedproject teams, including advanced support for parallel development.By creating and automatically maintaining dynamic replicas ofClearCase data, MultiSite allows distributed project teams to access,develop, and integrate software using familiar ClearCase commands.

Rational ClearQuest.™ Rational ClearQuest is a Windows ChangeRequest Management (CRM) product designed for the dynamic andinterdependent nature of software development. With ClearQuest,development teams can reliably track and implement change requests,streamline workflow, identify trends, and establish an effective CRMprocess. This comprehensive approach enables organizations to deliverhigher quality software, more predictably. ClearQuest supports integra-tion with ClearCase.

Rational ClearDDTS.™ Rational ClearDDTS is a UNIX ChangeRequest Management product. ClearDDTS supports integration withClearCase.

Rational ClearCase Attache.™ Rational ClearCase Attache providesmuch of the power of Rational Software’s ClearCase client softwarein an easy-to-use Windows interface and a slim memory footprint.ClearCase Attache offers development teams with the software con-figuration management support they need to do parallel development,process control, and distributed development when used with thecomprehensive facilities of ClearCase or ClearCase Attache MultiSiteon a Windows or UNIX server.

Rational ClearGuide.™ For organizations seeking to continuallyrefine, monitor, and improve the way they build software, RationalClearGuide offers a highly collaborative approach to Software ProcessManagement. Providing a flexible framework for defining tasks, priori-tizing activities, allocating resources, and tracking project progress,ClearGuide particularly suits the needs of organizations implementingISO 9000 or higher levels of the Capability Maturity Model.

TO706C.qxd 2/16/99 8:58 AM Page 9

Page 8: Rational ClearCase Product Sumary

HOW DOES RATIONAL CLEARCASE ORGANIZE ANDPRESENT VERSION INFORMATION?

A core concept of Rational ClearCase is the version tree (Figure 2.1),which organizes and presents information in a graphical, hierarchicalformat similar to a directory tree. In a typical development environ-ment, version trees initially contain just a single branch, representing

a linear evolution of the file’s versions. With ClearCase version trees,developers can quickly identify existing development paths, create newdevelopment branches and merge existing branches. Over time, userstypically introduce subbranches in order to isolate bug fixes, code reor-ganization, experimentation, and platform-specific development. Youcan create any number of versions and subbranches, and name ver-sions and branches for easy reference.

WHY IS VERSIONING DIRECTORIES IMPORTANT?

Directory versioning is essential in order to capture changes such as the creation of new files, renaming of files, creation of new subdi-rectories, and movement of files between subdirectories. RationalClearCase provides complete directory versioning and also supportsautomated comparisons and merges of directories. This versioningcapability allows users to easily identify all changes made to a specific directory (Figure 2.2).

DOES CLEARCASE MANAGE BINARIES AND PROJECTDOCUMENTATION AS WELL AS SOURCE CODE?

Yes. Rational ClearCase can be used to control multiple versions of anyobject in the software development lifecycle, including non-text files,directories, and tools. You can version-control source code, libraries,compilers, requirements documents, design notes, user documentation,binaries, test suites, databases, and more.

HOW DOES RATIONAL CLEARCASE STORE FILES?

Rational ClearCase stores all version-controlled data in permanentsecure repositories called versioned object bases (VOBs). ClearCaseVOBs combine the familiar features of Windows and UNIX file systemswith the power of a distributed database system. Project teams can

4

Today, developers work with multiple types of data, not just source code. Rational ClearCase tracks

every object in the software development lifecycle, managing the “controlled sharing” so essential

in a multi-user development environment. By tracking objects automatically

and “behind the scenes,” ClearCase reduces burdensome administrative

requirements while guaranteeing the accuracy of version-control data.

“I need release 2 of the beta for

Windows NT, plus all the changes

made to fix bugs 7, 12 and 18 that

have been approved by QA.”

Figure 2.1: Version Tree

B e y o n d v e r s i o n c o n t r o l

2

TO706C.qxd 2/16/99 8:58 AM Page 10

Page 9: Rational ClearCase Product Sumary

BAR LIB

SRC

BAR FOOLIB

SRC

BAR2

FOO

LIB

SRCDIR

Version 1

Starting Directory Structure Add a file Rename a file

Move a file

Version 2 Version 3

Renamea directory

Figure 2.2: Directory versioning

HOW DOES RATIONAL CLEARCASE STORE DATA?

Rational ClearCase uses compression techniques that reduce storagerequirements up to 50%-75% compared to their uncompressed coun-terparts. ClearCase also uses interleaved delta techniques for text andbinary files.

HOW DO DEVELOPERS CHECK FILES IN AND OUT?

Rational ClearCase uses a checkout-edit-checkin paradigm, similar to traditional version control. In addition to checkout, checkin, anduncheckout, the ClearCase command set includes delete version,create/delete branch, list version history (chronological), list versionhistory (structural), compare versions, and merge parallel versions.

When work begins on a specific file, the file is read-only—it cannot beedited or removed. The checkout command produces an editable copyof the file. There is no need to copy a file to another location to workon it. When editing is complete, the file is checked-in. This adds a newversion to the version tree and removes the editable copy of the file.To help document the changes, a comment can be specified at bothcheckout and checkin. When checked-in, the file reverts to read-onlystatus and immediately becomes shared data, available to all users.

WHAT TYPES OF CHECKOUTS ARE AVAILABLE?

Rational ClearCase supports two kinds of checkouts, reserved andunreserved. A reserved checkout guarantees the right to extend theversion history with a new version, and only one reserved checkout isallowed on each branch at a time. An unreserved checkout does notguarantee the right to create a successor version. If multiple develop-ers checkout (unreserved) a single element concurrently, and thenattempt to check in, the first check in is allowed, and other users mustperform a merge to incorporate their changes (Figure 2.4).

decide how many VOBs they need, and what directories and files eachwill maintain. A VOB is a mountable file system and therefore a net-work-wide resource. Hosts can mount any number of VOBs. ClearCaseuses the Raima Data Manager to maintain VOB databases.

WHAT DO VOBS LOOK LIKE TO DEVELOPERS AND DEVELOPMENT TOOLS?

When mounted and accessed in Rational ClearCase, a VOB looks andbehaves like a standard directory tree, containing standard file systemobjects: directories, files, symbolic links, and hard links. In addition,the VOB file system maintains extensive version-control information,tracking directory elements, versions of directory elements, file ele-ments, versions of file elements, VOB symbolic links, and VOB hardlinks. (Figure 2.3).

5

RootDirectory

VOB

VOBVOB

VOB

Figure 2.3: vobs are mounted as file systems

TO706C.qxd 2/16/99 8:58 AM Page 11

Page 10: Rational ClearCase Product Sumary

Figure 2.5: history browser

6

User-defined meta-data can serve a variety of purposes, includingnaming specific branches, labeling specific versions, and attachingannotations (attributes) to any version of an element.

HOW IS RATIONAL CLEARCASE META-DATA ACCESSED?

Rational ClearCase meta-data is easily accessible through a variety ofmenu, command line and report interfaces. The history command, avail-able by right-clicking any ClearCase file in Windows or by issuing theUNIX lshistory command, provides a complete listing of all eventrecords for a particular file. In addition, the ClearCase History Browserprovides a graphical interface to VOB event records (Figure 2.5). Theannotate command lists the contents of any text-file version with line-by-line annotations, making it easy to see when different lines wereadded or deleted. ClearCase also creates custom reports on file systemobjects. Many version-related commands allows users to format com-mand output to create a variety of reports.

2uu

Unreservedcheckouts

2

3

4

uuCheck in

1st

Merge2nd

Figure 2.4: Checkin of unreserved checkouts

WHAT TYPES OF META-DATA DOES RATIONALCLEARCASE CAPTURE, AND WHERE ARE THEY STORED?

Many Rational ClearCase operations create an event record document-ing useful information about the operation. This record captures the“who, what, when, where, and why” of the operation, such as: thelogin name of the user who entered the command, the kind of opera-tion, the date-time, the hostname, and a user-supplied comment. Sincethis information is not actually contained within the object, it istermed meta-data. ClearCase automatically captures some meta-data,and allows users to define additional meta-data.

All meta-data is stored in the VOB database. ClearCase automaticallycaptures meta-data derived from file-system information, e.g. the cre-ation of a new version of element A at date-time B. Additional meta-data can be user defined, e. g. that a version was used to buildRelease 431 or that the benchmark score of an executable was 19.3.

TO706C.qxd 2/16/99 8:58 AM Page 12

Page 11: Rational ClearCase Product Sumary

HOW DOES RATIONAL CLEARCASE FIT IN WITH EXISTING DEVELOPMENT ENVIRONMENTS?

Transparency is a key feature enabling Rational ClearCase to workwith any system software, commercial application or in-house tool.Windows developers can work with ClearCase commands withoutever leaving their Microsoft Integrated Development Environment;UNIX programmers can use grep, more, ls, cc and other UNIX com-mands the same way they always have. Because developers work with familiar commands in native environments, organizations findClearCase easy to adopt and maintain.

WHAT TYPES OF VIEWS ARE AVAILABLE?

Two types of views are available, optimized for networked or localusage models. Dynamic views provide networked Windows NT and UNIXusers with the ability to perform build audits and the advantages of

instantaneous file updates. Snapshot views provide Windows userswith the flexibility to work at home and easily synchronize work withmainline development. Developers are free to mix and match view-types according to their personal preferences and a project’s evolvingneeds. Developers can work with an unlimited number of dynamic orsnapshot views.

HOW ARE DYNAMIC VIEWS IMPLEMENTED, AND WHAT DO THEY LOOK LIKE TO DEVELOPERS?

Dynamic views are implemented at the virtual file system level by theRational ClearCase multi-version file system (MVFS). The MVFS inter-cepts standard I/O calls to elements, analyzes the call context, andrefines the call’s destination to a selected version of the requested ele-ment. When seen through a dynamic view, ClearCase VOBs look likestandard directory trees with standard files (Figure 3.1). On Windows NTsystems, the ClearCase MVFS typically appears as the “M:” drive, withactive views appearing as subdirectories of the “M:” root. ClearCasefurther assigns a “virtual drive” for each active view. Mounted VOBsthen appear as subdirectories of the respective virtual drive.

WHAT DO SNAPSHOT VIEWS LOOK LIKE?

Snapshot views are implemented at the native Windows file systemlevel by copying selected versions of VOB elements to a target PC’shard drive or removable JAZ drive. A load rule defines the scope ofdata to be downloaded from the VOB database. Once downloaded,snapshot views are standard directories and files. Each view appearsin a separate directory. A user synchronizes a snapshot view with thecontents of the VOB by running the Snapshot View Update tool.

w o r k s pa c e m a n a g e m e n t

3To be successful, an SCM product must strike just the right balance between sharing and

isolation. Rational ClearCase views provide developers with fine-grained control over their person-

al workspaces, plus easy, transparent access to the exact file versions they

need. ClearCase views help every member of your team work more produc-

tively, whether from home, on-site, or a remote customer location.

7

Versioned ObjectBase

View-privateStorage

foo.c foo.h

bar.c

src

foo.cfoo.h

bar.c

V

I

E

W

Figure 3.1: version selection by a view

“I work from home Mondays.

By Tuesday 9:15, my code is fully

synchronized with mainline

development.”

TO706C.qxd 2/16/99 8:58 AM Page 13

Page 12: Rational ClearCase Product Sumary

WHEN SHOULD ORGANIZATIONS USE DYNAMIC VS. SNAPSHOT VIEWS?

Dynamic views provide global, transparent access to any version of any element. They also support the complete set of ClearCase buildmanagement features, including build auditing. Dynamic views alwaysrequire network access, however, and are therefore unsuitable for disconnected use.

Depending on the type of work a developer is doing and the size ofthe code base, sometimes it can be advantageous to work off yourlocal disk or disconnected from the network. This is where snapshotviews come into play. Snapshot views provide Windows users with theperformance advantage of local builds and the flexibility to work fromhome. But because snapshot views operate only on standard files, theyare unable to perform build audits. Once files have been merged in tothe mainline development, however, audited builds can be accom-plished via dynamic views for nightly builds.

In practice, organizations typically mix and match both view types,according to the complexity of the task at hand, team members’ re-mote development requirements and the current stage of the softwaredevelopment project. As shown in Figure 3.2, snapshot views are es-pecially well suited to small project teams, prototype projects, and theearly-to-middle stages of a software project. As build auditabilitybecomes more of a requirement, or as project complexity increases,dynamic views are preferred. Together, both view types provide organi-zations with a high degree of flexibility to meet their evolving needs.

HOW DO DEVELOPERS WORK WHILE DISCONNECTEDFROM THE NETWORK?

Developers can “hijack” files in snapshot views—i.e., they can simply modify the files without first checking them out. Once recon-nected to the network, developers run the Snapshot View Update toolto identify all hijacked files and convert them to normal checkouts.

HOW DO DEVELOPERS SELECT THE FILE VERSIONS THAT MAKE UP A PARTICULAR VIEW?

Both snapshot and dynamic views use a rule-based selection mech-anism. The set of versions selected in a particular view is called itsconfiguration, and is defined by a set of rules called a configurationspecification (config spec). Typically, a view’s config spec is defined in terms of wildcards and mnemonic names, not by naming specificversions. Typical configuration rules and their English equivalents areshown in Table 1 (see left). On Windows, the View Creation Wizardguides developers step by step through the view creation process.

Each developer can have multiple views. Separate views allow develop-ers to see different versions of the same element, under exactly thesame path name. For example, one view might show the most recentversion of every element; another view might show the versions usedto build a specific release; and still another view might show the ver-sions being used to fix a bug. Furthermore, any files and directoriesnot under ClearCase version control (standard files, local scripts andprograms, etc.) remain completely visible and accessible through aview. This makes ClearCase a “good citizen”—developers can use anydata file, shell script, or compiled program when working in a view(Figure 3.3).

8

table 1: Config spec rules and english equivalents

LargeTeams

SmallTeams

Snapshot ViewsDynamic Views

Dynamic Views

Early Prototype Final ReleaseDevelopment Lifecycle

Figure 3.2: Comparison of snapshot and dynamic views

element * CHECKEDOUT

For all files and directories, use the version that has been checked out to this view (if there is one)

element graphics_lib.a .../maintenance/LATEST

For file graphics_lib.a, use the most recent version on the branch named maintenance

element -eltype c_source * BETA_TEST

For all C-language sources and header files, use the version labeled BETA_TEST

The default config spec selects versions of elements as follows:

element * CHECKEDOUT

element * /main/LATEST

If the element is checked-out to this view, use the checked-out version;

otherwise use the most recent version on the element’s main branch

TO706C.qxd 2/16/99 8:58 AM Page 14

Page 13: Rational ClearCase Product Sumary

IS THERE AN EASY WAY TO SET UP EVERYONE’S VIEWS IN ADVANCE?

Yes. ClearCase View Profiles allow project managers to quickly createa set of predefined view profiles for an entire team. This powerful fea-ture provides an easy way to ensure that everyone on the team isusing the appropriate file versions. At the same time, developers, quali-ty engineers and documentation writers don’t have to worry aboutconfiguration specification details; they can simply browse a list ofavailable view profiles, then select the one(s) preconfigured to meettheir needs (only available on Windows).

WHAT IF I WANT TO WORK WITH A DIFFERENT VERSION OF A FILE THAN SPECIFIED BY A VIEW?

View transparency is a powerful feature that can be overridden as needed. You can override views by using view-extended pathnames and/or version-extended path names. View-extended pathnames access the version of an element that appears in another view. Version-extended path names are view-independent—they identify a particular version by its version-tree location or version label, regardless of whether that version appears in the current view, or any view at all.

DO VIEWS SUPPORT PUBLIC AND PRIVATE DATA STORAGE?

Yes. Rational ClearCase supports a well-regulated development envi-ronment by maintaining both public and private data storage. Sharedor public data storage in VOBs contains information intended for regu-lar access by all ClearCase users. Private data storage in views typicallycontains files that belong to an individual developer, such as checked-out versions of file elements and derived objects created by ClearCasebuilds in that view. A view combines both kinds of data storage into a“virtual workspace,” in which developers perform day-to-day taskssuch as checking files in and out, editing source files, building soft-ware, and debugging systems.

ARE RATIONAL CLEARCASE VIEWS AVAILABLE TO NON-CLEARCASE HOSTS ON A LAN?

Yes. Rational ClearCase data is completely accessible to non-ClearCase machines in the local area network (LAN). For example, aClearCase UNIX host can export a VOB as seen through a particularview, and any host in the network can NFS-mount it. This gives devel-opers on the non-ClearCase host read-write access to the view,enabling them to compile and build applications with local tools.Non-ClearCase hosts must rlogin or use an X-window into theClearCase UNIX host to checkout/checkin. With snapshot views onWindows, non-ClearCase hosts can access views by simply sharing theFAT or NTFS-based share that contains the view.

Versioned ObjectBase

Anyrocessan useview:

View-privateStorage

foo.c foo.h

bar.c

V

I

E

W

Anyprogram

orcommandcan access

a view

Figure 3.3: transparency of vob data

9

TO706C.qxd 2/16/99 8:58 AM Page 15

Page 14: Rational ClearCase Product Sumary

In today’s fiercely competitive marketplace, success is increasingly determined by an

organization’s ability to harness development resources. Rational ClearCase provides outstand-

ing support for parallel development, enabling multiple developers to efficiently design, code,

test and enhance software from a common code base. Powerful, graphical

merge tools automatically identify common code ancestors, resolve incon-

sistencies, and highlight code conflicts.

WHAT ARE THE PRACTICAL BENEFITS OF A PARALLEL DEVELOPMENT MODEL?

In addition to the primary benefit of accelerating product devel-opment cycles and reducing time-to-market, support for parallel development allows organizations to:

• Allow multiple projects to use the same source tree(s) at the same time

• Isolate the work of developers whose changes should not yet be shared

• Isolate changes which should never be shared (i.e., a bugfix in a retired release)

• Continue development throughout software integration, build and test periods

WHAT’S THE DIFFERENCE BETWEEN CLEARCASE’SMERGE FACILITIES AND OTHER MERGE FACILITIES?

Rational ClearCase applies an unprecedented level of intelligenceand automation to the merge process. First, ClearCase’s MergeManager (Figure 4.1) automatically and efficiently locates every ele-ment of a project that requires merging. Then, by analyzing both thebranching structure of each element’s version tree and all mergesthat have previously been done in the element, ClearCase determinesthe base contributor, or “common ancestor” version of the versions

that are being merged. Having this common ancestor informationallows ClearCase to perform the merge intelligently and automatically.In cases where a conflict between the versions being merged pre-vents ClearCase from constructing a merge result automatically, thegraphical merge tool displays the areas of code conflict side-by-side inorder to compare them and decide on what action to take. Manualand automatic merge decisions can easily be reviewed and changedwith the Diff Merge tool (Figure 4.2).

10

pa ra l l e l d e v e l o p m e n t

4

“Parallel development can’t be an

occasional occurrence any longer.

To succeed, it must be an ongoing,

competitive requirement.”

Figure 4.1: merge manager find wizard

TO706C.qxd 2/16/99 8:58 AM Page 16

Page 15: Rational ClearCase Product Sumary

CAN DEVELOPMENT CONTINUE AFTER THE MERGE IS PERFORMED?

Absolutely. Unlike other version-control products, Rational ClearCaseallows development on one or more branches to continue during andafter the merge is performed. Moreover, there are no restrictions onfuture merges involving these branches, in either direction.

Figure 4.2: diff merge tool

11

WHAT TYPES OF ADVANCED MERGES ARE AVAILABLE?

Two types of merge operations are available: additive and subtractive.An additive merge combines changes from two or more branches. Asubtractive merge removes changes from one or more versions, effec-tively rolling back to a prevous version.

TO706C.qxd 2/16/99 8:58 AM Page 17

Page 16: Rational ClearCase Product Sumary

WE’VE INVESTED SIGNIFICANT TIME IN OUR CURRENT MAKEFILES. DOES RATIONAL CLEARCASEMEAN WE HAVE TO CHANGE RIGHT AWAY?

No. Because Rational ClearCase is fully compatible with all home-grown build scripts, Windows and UNIX make programs, existingsource can be placed under ClearCase management without making asingle change to build procedures. On new development projects, rec-ommends that teams adopt the ClearCase build programs, clearmakeand omake, in order to realize important benefits such as configura-tion lookup, binary sharing and build auditing. Omake supports userswho require compatibility with Windows-based build programs, includ-ing Borland Make, Microsoft NMAKE, Intersolv Configuration Builder(Polymake), and OpusMake. Clearmake offers support for UNIX-stylemakefiles, including gnumake.

WHAT IS A RATIONAL CLEARCASE DERIVED OBJECT?

Derived objects play a critical role in a Rational ClearCase develop-ment environment. A derived object is a file or directory produced by a clearmake or omake build. Typical derived objects include object modules, executable programs, library archives, formatted docu-ments, and tables of contents generated by document processing systems. The components of a derived object include:

• The file name under which it was created as a target (its”handle”from the file system’s point of view)

B u i l d m a n a g e m e n t

5Effective build management focuses on two issues: streamlining the edit-build-debug cycle

and ensuring the accurate reproduction of software versions. Rational ClearCase is completely com-

patible with traditional build scripts and native Windows and UNIX make programs. Its own

upward-compatible build utilities, however, provide important value-added benefits. By auto-

matically detecting dependencies, using derived objects wherever pos-

sible, and producing detailed build documentation, ClearCase optimizes build

times while guaranteeing the reproducibility of software versions.

• A unique derived object ID (its “handle” in the VOB database)

• A pointer to the data container (the file that stores the data produced by the build script)

• A pointer to a configuration record (its “bill-of-materials”)

• A reference count (indicating the number of views in which the derived object currently appears)

HOW DOES RATIONAL CLEARCASE AVOID UNNECESSARY BUILDS?

Unlike standard make utilities, which treat builds as an all-or-nothingproposition, clearmake and omake use a more sophisticated build-avoidance scheme specifically designed for parallel development situa-tions. clearmake and omake use configuration records to determinewhen derived objects can be safely shared among views. This facility,termed wink-in, saves both disk storage and build time.

In determining when builds are necessary, clearmake and omake gofar beyond simple comparisons of time-modified stamps. The proce-dure involves comparison of source versions, build scripts and buildoptions, and culminates in one of three build decisions:

• Reuse the existing target in a view—when there are noidentified dependencies or changes

• Execute the corresponding build script—when changes, depen-dencies, or a lack of auditing capability requires a new build

12

“Singapore just reported a

problem with its customer release.

What, exactly, did we send them?”

TO706C.qxd 2/16/99 8:58 AM Page 18

Page 17: Rational ClearCase Product Sumary

• Wink-in a derived object from another view—when the verifica-tion procedure determines that the source versions, build options,and build script of another instance can be safely shared. A single derived object is now shared by both views.

HOW DO CLEARMAKE AND OMAKE AUTOMATICALLYIDENTIFY SOURCE AND HEADER DEPENDENCIES?

clearmake and omake build part or all of a software system within the context of a view, using the current configuration of source files(typically, some checked-in, some checked-out). Derived object infor-mation provides these programs with the appropriate level of detailrequired to make intelligent build decisions without explicit declara-tion of header-file dependencies. clearmake and omake do not re-quire the declaration of header-file dependencies or any other source-file dependencies in makefiles.

HOW DOES RATIONAL CLEARCASE PERFORM BUILD AUDITS?

During execution of a build script, clearmake and omake work withRational ClearCase MVFS code in the operating system kernel to per-form a build audit. The MVFS records the version of every file openedfor reading or execution whose pathname is under a VOB mountpoint; it also notes which files are created (or overwritten). After exe-cuting the build script, clearmake and omake store the audit data in a configuration record (config rec). A VOB database pointer attaches the config rec to each derived object from the build (Figure 5.1).

ClearCase config recs allow derived objects to be compared meaning-fully—not by their data, but by their build configurations. The diffcr(compare config rec) command reports the differences between twoconfig recs, including:

• Differences in versions of ClearCase elements used as sources, andin time-modified stamps of non-elements used as sources

• Differences in the build script executed, including differences in the makefile macro values used

• Non-critical differences that do not affect clearmake’s and omake’s build avoidance decisions, including date and time of build, hostname, and view name

WHAT IS INCLUDED IN A SOFTWARE BUILD “BILL OF MATERIALS”?

As shown in Figure 5.1, a “Bill of Materials” (Configuration Record) includes:

• The version of each file element in any VOB used in the targetrebuild—including both source files and tools (for example, a compiler) under Rational ClearCase version control

• Each view-private file used in the build

• Non-ClearCase files declared in the makefile

• The text of the build script, with all makefile macros expanded

figure 5.1: Sample configuration record

13

% cleartool catcr helloTarget hello built by akp.userHost “neptune” running SunOS 4.1.1 (sun4)Reference Time 27-Jan-99.08:03:19, this audit started 27-Jan-99.08:03:46View was neptune:/home/akp/tut/tut.vwsInitial working directory was /tut_vobs/akp_hw/src

MFS objects:

/tut_vobs/akp_hw/src/hello@@27-Jan.08:03.376/tut_vobs/akp_hw/src/hello.o@@27-Jan.08:03.367/tut_vobs/akp_hw/src/msg.o@@27-Jan.08:03.373/tut_vobs/akp_hw/src/util.o@@27-Jan.08:03.370

Build Script:

cc -o hello hello.o util.o msg.o

TO706C.qxd 2/16/99 8:58 AM Page 19

Page 18: Rational ClearCase Product Sumary

• Operating system version and CPU type

• The user who performed the build

• The host(s) that executed the build script

• The view to which clearmake or omake was set

• The start date and time of the build

CAN RATIONAL CLEARCASE BUILD IN PARALLELACROSS MULTIPLE UNIX HOSTS?

Yes. clearmake supports both parallel building (concurrent execution of a set of build scripts) and distributed builds (use of multiple hoststo execute build scripts) in UNIX environments. For example, clearmakecan perform a three-way build, in which all processes execute on asingle multi-processor computer server. Or it can distribute a build

Buildscan be

distributedamonghosts

LargeVOBs

can bedistributed

amongservers

VOBServer host

VOBServer host

Developer'sWorkstation

Developer'sWorkstation

Developer'sWorkstation

Developer'sWorkstation

Developer'sWorkstation

WindowsNT

Sun

Sun

HP

SGI WindowsNT

Windows98

Figure 5.2: example of distributed building

across all the workstations in a local area network (Figure 5.2). clear-make also supports software building across heterogeneous, multi-platform development environments.

WHAT ABOUT LOAD BALANCING IN DISTRIBUTED ENVIRONMENTS?

clearmake features a sophisticated load-balancing facility that opti-mizes the performance of distributed builds. Users specify hosts thatcan function as distributed build servers, and set parameters includ-ing time of day, machine load, and user ids to govern building on each host. clearmake then automatically load-balances distributedbuilds across these hosts.

14

TO706C.qxd 2/16/99 8:58 AM Page 20

Page 19: Rational ClearCase Product Sumary

HOW DO ORGANIZATIONS TYPICALLY USE RATIONALCLEARCASE PROCESS CONTROL TOOLS?

Organizations typically use these tools to:

• Monitor and control the development process

• Organize and cross-reference all the data involved in development:source code, memos, design proposals, and technical manuals

• Automate communications among individuals and groups

• Automate tedious and error-prone steps

WHAT PROCESS CONTROL TOOLS ARE AVAILABLE?

Rational ClearCase process control tools operate at the meta-datalevel, meaning that the data structures and procedures involved inprocess management are independent of the contents of elements.Three feature sets are available: meta-data for capture of state infor-mation, policy enforcement tools, and notification features.

WHAT TYPES OF META-DATA DOES RATIONAL CLEARCASE CAPTURE?

Three categories of Rational ClearCase meta-data come into play:

• Attributes. Developers can attach attributes (i.e., name=value pairs) to most kinds of objects. Attributes can take many kinds of values, including integers, strings, dates, and more, and can be optionally constrained to specified ranges or enumerated sets. For

p r o c e s s c o n t r o l

6While development procedures differ widely across organization and teams, all share

a common goal of improving software quality and reducing time-to-market. Rational ClearCase

includes flexible, powerful tools for implementing site-specific processes, without dictating

any particular policies, procedures or methodologies. Routines can be

set up to monitor software changes, prevent access by unauthorized

personnel, create permanent project records, or automate the flow

of project communications.

example, a Code Quality attribute can be defined as having the value A, B, C, D, or F. Enforcement mechanisms can then auto-matically assign attributes according to specified rules.

• Hyperlinks. A hyperlink is a logical arrow connecting two objects.For example, a hyperlink can connect a design document to asource code module. Hyperlinks can relate whole elements, specificversions (as needed for requirements tracing), or subsections withinobjects. Hyperlinks can cross VOBs and can handle the renaming ormoving of an object or its VOB. With the hyperlink browser, userscan display, create, traverse, and maintain networks of ClearCasehyperlinks.

• Event history. ClearCase automatically records some of the mostimportant state information, gathering “who, when, and why”information, user-supplied comments, and other important datawhenever objects are changed. The system records similar informa-tion on built or released objects.

15

“With delivery only 3 weeks away,

we have no choice but to develop

and test concurrently. How can we

automatically notify QA when a

file has changed?”

TO706C.qxd 2/16/99 8:58 AM Page 21

Page 20: Rational ClearCase Product Sumary

WHAT POLICY ENFORCEMENT TOOLS ARE AVAILABLE?

Rational ClearCase provides four flexible tools that can be mixed andmatched to implement a wide variety of behaviors (Figure 6.1):

• Pre-event triggers. A pre-event trigger monitors the use of aspecified ClearCase operation (for example, checkin), or class of oper-ations (for example, any command that modifies a VOB). Before theoperation runs, the trigger fires, executing either a program, batchfile, shell script, or built-in action. Triggers can require that certain criteria be met or checks applied before running a command.

• Locks. Applied to an object, a lock stops the modification of thatobject. Locks can be fine-grained (for example, locking a particularelement) or general (for example, locking an entire VOB). A typicalapplication is locking just the main branch of all elements during asoftware integration period. Locks can also have an exceptions list,allowing only specified users to modify the object.

• Access controls. All ClearCase elements have associated protec-tion modes. This protection mode controls reading, writing,and execution of objects at different levels of granularity: user(owner), group, and world. It also protects the physical storage ofthe underlying file system, effectively thwarting attempts to circum-vent ClearCase and tamper with the raw operating system storage.

• Automatic branch creation. Maintenance work proceeds bestwhen all modifications to elements are performed on branches ofthe same type. ClearCase enforces this by automatically creating abranch with a specified name upon element check-out.

WHAT NOTIFICATION AND REPORTING FEATURES ARE AVAILABLE?

Rational ClearCase notification features help automate the flow ofproject communications and reporting. They include:

• Post-event triggers. A post-event trigger is a monitor that runsafter a specified operation completes. Typically, such a trigger noti-fies one or more users that a command executed, or attaches anattribute to an object. For example, a post-event trigger on thecheckin operation might send mail to the QA department explain-ing that a particular user modified a specific file. The mail messagemight include the comment supplied by the user during checkin.

• Find queries. ClearCase’s find command enables developers toefficiently determine the current state of a project. Typically, a findcommand performs a query on one or more VOB databases—forexample, “find all versions that are part of Release 2.0 but don’thave a PASSED=QA attribute.”

• Dynamic config specs. A config spec rule selects versions in terms of labels, attributes, hyperlinks, and event history. These rules use the same queries as the find command. For example, a config spec can select “the latest version with the Passed=QA attribute,otherwise the most recent version created by user drp.”

ALERT

Meta-Data

LabelsAttributesHyperlinksEvent history

NotificationFeaturesPost-event triggers"Find" queriesDynamic config specs

EnforcementToolsPre-event triggersLocksAccess controlsAuto-make-branch"Include" config rules

ALERTSomeonechangedyour file

REPORTDoc must

be updated

MGMTDEVELOPER

Software Development Process

SYSADMIN

TECHWRITER

16

Figure 6.1: process management mechanisms and policies

TO706C.qxd 2/16/99 8:58 AM Page 22

Page 21: Rational ClearCase Product Sumary

At a practical level, Rational ClearCase automates and accelerates the many tedious tasks

required to write, release and maintain good software. Developers benefit from easy

access to files, selection of versions, isolation of workspaces and automatic notification

of events. Across all platforms, ClearCase features seamless integration

with popular integrated development environments for maximum

developer productivity.

HOW DO WINDOWS NT USERS ACCESS RATIONAL CLEARCASE COMMANDS THROUGH THE WINDOWS EXPLORER?

Integration with the Windows Explorer puts all common RationalClearCase operations within easy reach. The integration allows users tostart views, mount VOBs, check out/in elements, launch the Version Treebrowser, examine element histories and properties, find checked-out ele-ments, compare versions with predecessors, and launch the ClearCaseDetails applet directly from the Windows Explorer (Figure 7.1).

The ClearCase Details tool displays all ClearCase related informationabout files or directories, such as the checked-out state, the version ofthe element that the user’s view selects, and the rule in the user’s con-figuration specification that selected the version. ClearCase Detailsallows the user to change the appearance of the display, navigate toother directories, and perform common ClearCase tasks.

WHAT RATIONAL CLEARCASE COMMANDS ARE AVAILABLE FROM WITHIN VISUAL C++, VISUAL BASIC AND VISUAL J++ ENVIRONMENTS?

On Windows, Rational ClearCase supports the Microsoft CommonSource Code Control (SCC) Interface Specification, an API for commu-nication between developer tools and source code control utilities. Thisinterface allows developers to access ClearCase commands directlyfrom within an IDE using standard Microsoft SCC dialog boxes.

Within Visual C++ and J++, users can add new files to source con-trol; check out/in files and launch ClearCase history and properties dis-plays (Figure 7.2). Similarly, from within the Visual Basic IDE users canstart views; mount VOBs; add Visual Basic projects to ClearCase; addnew files; check in/out; and launch ClearCase history and propertiesdisplays. An add-in toolbar allows developers to access the full rangeof ClearCase functionality including version tree browsers, merge manager and build management features.

Figure 7.1: clearcase for windows explorer integration

17

m a x i m i z i n g d e v e l o p e r p r o d u c t i v i t y

7

“As a manager, it all comes down

to this: how can I help my developers

work more productively, both individu-

ally and as a team, every day?”

TO706C.qxd 2/16/99 8:59 AM Page 23

Page 22: Rational ClearCase Product Sumary

WHAT IDES ARE SUPPORTED IN THE NT AND UNIX ENVIRONMENTS?

• Microsoft® Developer Studio™†

Visual Basic®

Visual C++®

Visual J++™

• Oracle Developer/2000†

• PowerBuilder†

• HP Softbench*

The ClearCase file system transparency enables other IDE’s to integrate easily,

without requiring a special integration.

Figure 7.2: Rational clearcase for Windows visual c++ integration

WHAT IS THE TYPICAL EDIT/COMPILE/DEBUG CYCLE,

USING RATIONAL CLEARCASE FOR UNIX?

• To start work in UNIX, a developer creates a shell process and selects a view, then uses the standard cd command to visit any source directory in any VOB. There is no need to copy data to a parallel source tree. All child processes of the shell—including those of third-party applications—will also be set to the view.

• All of the developer’s shell-oriented tools (such as aliases, file name completion, command-output substitution, and scripts)remain available as the developer works on Rational ClearCasecontrolled data.

• The developer cannot modify a source file element until it is checked out. An element appears as a read-only file until the developer issues a checkout command to make it writable. Only the developer (and other users using the same view) can access the writable, checked-out version. The developer edits the file in- place—there is no need to copy the file to an area under his or her home directory.

• To build the software system, the developer chooses among standard make utilities, ClearCase’s enhanced clearmake build utilities or shell scripts. As with editing, building occurs in-place—developers working in different views can build the same softwarewithout interfering with each other.

• The developer has a choice of debuggers (for example, dbx or a third-party tool) to analyze and fix bugs in built software. The cor- rect source file versions are all accessible through the view.

• The developer uses the checkin command to create a new version of an element. The new version instantly becomes available to all views and visible to those views configured to see the latest ver- sion of that element.

• Throughout development, developers can access special ClearCase commands that make it easy to monitor and compare work with other developers, including list check-out, list history, list derived objects, list/compare config recs, and compare source versions.

18

* UNIX Only † Windows Only

TO706C.qxd 2/16/99 8:59 AM Page 24

Page 23: Rational ClearCase Product Sumary

HOW DOES CLEARCASE MULTISITE WORK?

The MultiSite option implements an extended version of RationalClearCase’s branch-and-merge model of parallel development.MultiSite creates a family of VOBs by cloning the contents of an exist-ing VOB and replicating it at multiple locations. The mkreplica com-mand creates a new instance of a VOB for a specific site, and can cre-ate an unlimited number of replicas. Replicated VOBs are local to eachsite, and are used for daily development work.

MultiSite enforces the concept of “mastership”, or ownership of asite-specific branch within a replicated VOB. Just as a maintenanceteam might own the “bug_fix” branch in a non-replicated VOB, a sitemay “master” a branch within a replicated VOB. A site can readchanges made to all branches at all sites, but can only change (write)branches that it masters. In addition, any site can serve as an integra-tion site, merging changes from other locations using RationalClearCase’s automated merge tools. Enforced object mastership guar-antees orderly parallel development, eases project integration, andprevents conflicting changes of replicas.

HOW IS INFORMATION SYNCHRONIZED ACROSS SITES?

Because one site “masters” each branch, MultiSite can automaticallyupdate source files and meta-data (event histories, hyperlinks, attribut-es, and access controls) in replicated VOBs with guaranteed accuracy.MultiSite transmits only the changes to each replica, eliminating theinefficiency and expense of “whole-copy” replication models.

For organizations facing the challenge of geographically distributed development teams,

Rational ClearCase MultiSite offers a highly practical solution. The MultiSite option extends

ClearCase’s reach to team members down the street or across the world, delivering automated,

error-free replication of project databases and transparent access to all

software elements. A scalable, flexible, peer-to-peer architecture accommo-

dates teams of any size and scope.

19

HOW ARE UPDATES TRANSMITTED BETWEEN SITES?

Project leaders and administrators can schedule MultiSite VOB up-dates as needed, choosing from multiple update mechanisms, includ-ing MultiSite’s built-in store-and-forward system, standard file transferfacilities, or magnetic tape. Development work within a VOB continuesnormally during the update—there is no need to “lock” or take theVOB “offline” during the update.

Rat i o n a l c l e a r c a s e m u lt i s i t e

8

“Whether they’re across the hall

or halfway around the world, all of

our developers have to pull together

as one team.”

Figure 8.1: Parallel development across distributed teams

TO706C.qxd 2/16/99 8:59 AM Page 25

Page 24: Rational ClearCase Product Sumary

20

DOES MULTISITE ALSO SUPPORT SERIAL DEVELOPMENT?

Yes. For project teams who prefer a serial development model acrosssites, per-branch mastership offers a practical approach. Per-branchmastership allows one site to hand off mastership of a particulardevelopment branch to another site, providing fine-grained control of changes to shared software.

HOW DOES WORKING WITH MULTISITE DIFFER ON A DAY-TO-DAY BASIS?

For project team members, working within a replicated VOB is just like working within a non-replicated VOB—existing tools and policieswork without modification. Replicated VOBs require minimal ongoing

maintenance, and provide detailed reports of synchronizations for ad-ministrators. The multitool character-based interface provides access toMultiSite commands that create, update, and manage replicated VOBs,using the familiar syntax of Rational ClearCase.

WHAT ARE SYSTEM REQUIREMENTS FOR MULTISITE?

Rational ClearCase MultiSite installs as a layered product option on aClearCase host, and requires 6-11MB of disk space (varies by hard-ware platform). A ClearCase MultiSite user license and a ClearCaseuser license are required to access a replicated VOB.

TO706C.qxd 2/16/99 8:59 AM Page 26

Page 25: Rational ClearCase Product Sumary

Rat i o n a l c l e a r q u e st

9While any individual change request may be trivial, the aggregation of hundreds or

thousands of requests, each with potential impact across multiple products, versions and

platforms, strains even the most capable development teams. To be

successful, organizations must apply order and intelligence to an

intrinsically complex and ever-moving target.

WHAT IS RATIONAL CLEARQUEST?

Rational ClearQuest is a Windows Change Request Managementproduct designed for the dynamic and interdependent nature of soft-ware development. With ClearQuest, development teams can reliablytrack and implement change requests, streamline workflow, identifytrends, and establish an effective CRM process. This compre-hensive approach enables organizations to deliver higher quality software, more predictably.

WHAT EXACTLY CAN RATIONAL CLEARQUEST HELP ME BETTER UNDERSTAND ABOUT MY SOFTWARE AS IT CHANGES?

Rational ClearQuest excels in providing clear answers to criticalchange management questions. With ClearQuest, organizations cananswer with confidence such questions as:

• Does this software project meet our quality standards?

• Which key customer enhancements were implemented in this release?

• Is anyone on the project overloaded with high-priority requests?

• How fast are existing change requests being resolved and new ones reported?

• What is the find vs. fix ratio for last month?

• Can release x defects be attributed to specific modules or programmers?

• When will we be able to ship the next version?

WHO IS AN APPROPRIATE USER FOR RATIONAL CLEARQUEST?

With Rational ClearQuest, the entire team benefits. Project leaders andmanagers improve their ability to dynamically track and analyzechange requests (Figure 9.1). Development engineers will spend moretime coding and less time identifying action items. Test engineers canidentify with certainty the origin, status and outcome of every changeitem. Administrators will find ClearQuest easy to deploy, customizeand integrate with the tools they already use. To meet the needs ofremote team members, ClearQuest includes a Web-based interfacewith robust functionality.

21

“We need a tool that tracks all our

changes while allowing us to keep

our existing processes in place.”

Figure 9.1: Rational clearQUEST graphical reporting

TO706C.qxd 2/16/99 8:59 AM Page 27

Page 26: Rational ClearCase Product Sumary

WHAT ARE THE BENEFITS OF INTEGRATING RATIONALCLEARQUEST AND RATIONAL CLEARCASE?

With both Rational ClearQuest and ClearCase software, organizationscan relate change requests directly to changes in their evolving codebase. Now you can answer such questions as:

• What change requests have been implemented in one release but not in another?

• What source code changes were implemented for a particular enhancement request?

• Which releases include enhancement requests submitted by accounting?

Figure 9.2: Rational clearQUEST designer

22

Tight SCM integration allows organizations to:

• Control, track and back out of changes in dynamic environments

• Query across projects to determine which requests were imple-mented where

WHAT ARE SOME OF THE MORE UNIQUE FEATURES OF RATIONAL CLEARQUEST?

Designed for fast, easy, out-of-the-box deployment, RationalClearQuest is also highly customizable. Powerful administrative toolsallow you to tailor nearly every aspect of the system, including therequest process lifecycle, database field, user interface layout, reports,charts and queries. ClearQuest’s email integration features enable youto integrate call center, software testing and other third-party tools.And, to support the needs of your growing organization, ClearQuestsupports Microsoft Access, Microsoft SQL Server, and Oracle databases.

TO706C.qxd 2/16/99 8:59 AM Page 28

Page 27: Rational ClearCase Product Sumary

23

WHAT DOES ATTACHE PROVIDE WINDOWS CLIENTS?

Rational ClearCase Attache provides direct access to ClearCase servercommands with a combined graphical/character interface. The Attacheinterface includes a toolbar, pull-down menus, and scrolling commandwindow. The combination of local workspaces and extensive ClearCasecommands let developers perform all development on their Windowsclient systems, while taking advantage of ClearCase’s advanced supportfor team-based development.

HOW IS RATIONAL CLEARCASE DATA ORGANIZED AND PRESENTED TO ATTACHE CLIENTS?

Rational ClearCase Attache allows developers to define and managemultiple local workspaces of version-controlled data. Each local work-space corresponds to a Rational ClearCase view resident on aClearCase Windows NT or UNIX host. To Windows users, the work-space looks like a private directory tree located on a local hard drive oraccessible file server. In addition to toolbar buttons and pull-downmenus for common operations, ClearCase Attache provides a character-based interface to nearly every ClearCase command (in a form consis-tent with the clear-tool command set). These commands provideWindows users with comprehensive support for parallel development,version histories, and reports.

Although Rational ClearCase client software may be installed on Microsoft Windows, there are

occasions when a subset of features may be all that is required by a development or documen-

tation group. ClearCase Attache provides an easy-to-use Windows interface to much of the power

of Rational ClearCase. It offers users sophisticated software configuration management of all

development objects, including files and directories. It is integrated with

Microsoft Visual C++, Visual Basic, and offers robust modem support for

remote access.

Rat i o n a l c l e a r c a s e at ta c h e

10

HOW DO ATTACHE USERS CHECKIN AND CHECKOUT VERSIONS FOR EDITING?

Developers define the files which appear in their workspaces with aconfig spec—a set of user-specified rules that select versions appropri-ate for a particular task. Developers checkout versions for editing,building or viewing by copying the versions to the workspace as ordi-nary files. When modifications are complete, the files are checked inthrough the view into the VOB.

HOW DOES ATTACHE INTEGRATE WITH POPULARINTEGRATED DEVELOPMENT ENVIRONMENTS (IDE’S)?

Rational ClearCase Attache provides direct access to version controlfunctions from within Microsoft Visual C++ and Visual Basic develop-ment environments. The integration fully supports the MicrosoftCommon Source Control Code (SCC) Interface Specification, an API forcommunication between IDE tools and source code control utilities.This enables Attache to provide direct access to ClearCase commandsfrom standard Microsoft SCC dialog boxes.

Within Visual C++, users can access such common SCM operations as adding new files to source control, checking out/in files, andlaunching ClearCase Attache history and properties displays. Similarly,from within the Visual Basic IDE, users can add Visual Basic projects toClearCase Attache, add new files, check in/out, and launch history andproperties displays.

“Do my writers need to install

all of ClearCase to use config-

uration control?”

TO706C.qxd 2/16/99 8:59 AM Page 29

Page 28: Rational ClearCase Product Sumary

24

As a fundamental infrastructure capability, the choice of an SCM system has far ranging

implications for your organization. Rational ClearCase’s fully distributed, client/server architec-

ture is fully scalable and network-transparent, imposing no architectural barriers to growth in

the number of users, amount of code, or type of processors. Compatible

with all standards—compliant development environments, code analysis

tools, defect tracking systems, and CASE frameworks, ClearCase preserves

both your current investments and future flexibility.

Rat i o n a l c l e a r c a s e a r c h i t e c t u r e a n d a d m i n i st rat i o n

11

WHAT ARE SOME OF THE ARCHITECTURAL DETAILSASSOCIATED WITH RATIONAL CLEARCASE?

Rational ClearCase is a “groupware” product, with a distributedclient/server architecture. Both the programs that implement ClearCasefunctions and the development group’s data can be distributed through-out a local area network. As workstations are added to the network toaccommodate additional developers, ClearCase’s data-storage and data-processing resources can be expanded as well.

Data storage is organized as follows:

The permanent, shared data repository is a collection of VOBs. SeveralVOBs can be on the same host; the practical limit is a function of diskspace and processing resources.

Developers use individual (or shared) work areas known as views—each of which has a small private storage area. A view’s storage area istypically located on an individual workstation or PC. Central server hostscan also be used—for example, for a shared view or a view in which anentire application will be rebuilt for release. For increased flexibility, thedata storage for an individual VOB or view can be distributed acrosstwo or more hosts. Developers access data using ClearCase clientprograms (for example, the clearmake build utility), along with standardoperating system tools and third-party applications.

Figure 11.1: log browser

“In software development, the only

constant is change itself. How can

I ensure that our SCM investments

today will continue to be compatible

with the tools of tomorrow?”

TO706C.qxd 2/16/99 8:59 AM Page 30

Page 29: Rational ClearCase Product Sumary

25

HOW IS RATIONAL CLEARCASE ADMINISTERED?

Rational ClearCase includes a set of tools, commands, and GUI appletsto create, deploy, and administer VOBs, views, and policies across a site.System administrators can manage physical disk storage, tune systemperformance across networks, assure VOB security, administer userlicenses, and restrict access to software elements. Status and error loginformation is presented in the Log Browser (Figure 11.1). Essential sys-tem administration information and commands are provided in the VOBProperties Sheet (Figure 11.2) and other context-sensitive menus(Windows), and in the ClearVob Admin tool (Windows and UNIX).Administrators backup ClearCase VOBs using their existing backup tools.

HOW DO RATIONAL CLEARCASE ADMINISTRATORSMANAGE PHYSICAL AND LOGICAL NAMES?

In their everyday work, Rational ClearCase users typically refer to spe-cific VOBs and views using names (“tags”). For example, a projectteam might use a shared “bug_fix” view to access items in the VOBmounted as “/vobs/gui” (UNIX) or “\vobs\gui” (Windows).” Systemadministrators manage these global names and the physical locations(path names) of the corresponding view and VOB storage areasthrough ClearCase storage registries. Storage registries are network-wide resources, located on a designated registry server host, that mapthe commonly-used view and VOB names to the appropriate storageareas (Figure 11.3). System administrators can define multiple networkregions, in which clients use different “global” path names to accessthe same storage directories. This enables the registry mechanism tosupport multiple subnetworks with different hostname spaces.

Figure 11.2: VOB Properties sheet

clienthost

clienthost

clienthost

clienthost

VOBServerhost

ViewServerhost

ClearCaseRelease

host

RegistryServerhost

LicenseServerhost

non-ClearCase

host

ClearCase server programs mediate access to the data in VOBs andviews. Client and server processes communicate with each other usingremote procedure call (RPC) facilities. This makes ClearCase network-transparent—developers need not be concerned with the physicallocation of data storage, because ClearCase servers make the dataavailable globally.

Figure 11.3: any host may play different rolls at different times, or several rolls at once

TO706C.qxd 2/16/99 8:59 AM Page 31

Page 30: Rational ClearCase Product Sumary

26

GENERAL

• Platform interoperability

• Graphical user interface

• Command line interface

• Client/Server architecture

• Fully distributed database

• Floating license system

• Application programming interface

• On-line documentation and help

• File access from non-Rational ClearCase hosts via share drive (Windows) or NFS (UNIX)

• Rational ClearCase MultiSite option for geographically distributed project teams

PRODUCT INTEGRATIONS

• Rational ProductsRational ClearCase MultiSiteRational ClearQuestRational ClearGuideRational ClearDDTSRational Purify®

Rational Rose®†

• Adobe Framemaker*

• HP Softbench*

• Microsoft® Developer Studio™†

Visual Basic

Visual C++

Visual J++

• Oracle Developer/2000†

• PowerBuilder†

CLIENT REQUIREMENTS

32 MB RAM

SERVER REQUIREMENTS

64 or more MB RAM (depending on code base size)

SUPPORTED ENVIRONMENTS

• Digital UNIX

• Hewlett-Packard HP-UX

• IBM AIX

• Microsoft Windows NT/95/98 (client only)

• NCR MP-RAS

• Pyramid DC/Osx

• Silicon Graphics IRIX

• Siemens SINIX

• Sun Solaris, SunOS

• SCO UnixWare

Window clients access UNIX servers via supported NFS client and SMBserver solutions. For specific ClearCase configurations, developers mayalso choose to utilize the ClearCase file system (CCFS) option for inter-operation. For currently supported operating system versions and inter-operation solutions, please visit our Web page at www.rational.com orcontact your Rational Software sales executive.

Rat i o n a l c l e a r c a s e S p e c i f i c at i o n s

12

* UNIX Only † Windows Only

TO706C.qxd 2/16/99 8:59 AM Page 32

Page 31: Rational ClearCase Product Sumary

27

ACCESS FROM OTHER PLATFORMS:

ClearCase provides easy access to version-controlled data from non-ClearCase hosts. This can be accomplished in two ways: viashared drives for Windows users, and via exported views in NFS-supported environments.

TRAINING

Rational Software offers ClearCase training courses at Software’sLexington, MA, McLean, VA, Dallas, TX and Santa Clara, CA trainingcenters on a regularly-scheduled basis and at Rational Software fieldoffices or customer sites when requested. Courses are available onboth Windows and UNIX platforms. For more information see theRational web site.

• The ClearCase Fundamentals course is a comprehensive, two-daycourse that covers ClearCase and its commands. Lecture-styleinstruction is reinforced with multiple examples and lab exercises.Course topics include the ClearCase environment, version control,build management, parallel development, process control, andworkspace management.

• ClearCase Planning, Implementation, and Administration is a two-day course that builds on the Fundamentals course and providescomprehensive coverage on installation, licensing, view creation,VOB creation, migration, and performance tuning.

• Using ClearCase Meta-Data for Policy and Process Management is aone-day course that builds on the Fundamentals course, and covers

use of ClearCase tools—labels, attributes, hyperlinks, triggers, andqueries—to implement custom processes.

• ClearCase MultiSite is a two-day course that covers the creation,updating, and administration of MultiSite-replicated VOBs for dis-tributed project teams.

• Training courses on ClearCase Attache are also available.

CUSTOMER SUPPORT

Rational Software’s comprehensive customer support services includemaintenance and enhancement releases, telephone and email hotlinesupport (staffed 8:00 AM to 9:00 PM, EST), technical bulletins, and anannual User Group conference.

ABOUT RATIONAL SOFTWARE CORPORATION

Rational Software Corporation offers the benefits of nearly twenty years of experience in proven best practices for software development.This experience is drawn from hundreds of our own Rational SoftwareConsultants working directly with our customers. Our ProfessionalServices accelerate customer adoption of tools and best practices,maximizing the probability of project success and ensuring value fromyour investment.

Rational Software and its partners offer a wide range of ProfessionalServices. These include tool and technology training, ImplementationPlanning, and Software Engineering Mentoring. For more information,contact your Rational Software representative or an authorized RationalSolutions Partner. For more information on Rational’s products and ser-vices, visit Rational’s Web site at http://www.rational.com.

TO706C.qxd 2/16/99 8:59 AM Page 33

Page 32: Rational ClearCase Product Sumary

Corporate Headquarters

18880 Homestead Road

Cupertino, CA 95014

Toll-free: 800-728-1212

Tel: 408-863-9900

Fax: 408-863-4120

E-mail: [email protected]

Web: www.rational.com

International Locations:

http://www.rational.com/corpinfo/worldwide/locations.jtmpl

All rights reserved. Made in the U.S.A. © Copyright 1999 by Rational Software Corporation.

TO-706C; rev. 1/99. Subject to change without notice.

TO706C.qxd 2/16/99 8:59 AM Page 36