Skip to main content

Using IBM Rational Team Concert for System z and the Jazz platform: Part 1. Easier, faster collaborative development by globally distributed teams

Rosalind Radcliffe, Chief Architect for Jazz on System z and Power Systems, IBM
Author photo
Rosalind Radcliffe is a Senior Technical Staff Member in the IBM Software Group. She is responsible for driving the Jazz foundation and the products built on top of Jazz, with a focus on IBM System z and IBM i.

Summary:  This article provides an introduction to IBM® Rational® Team Concert for System z® in the context of today's development environments. It also shows a set of customer use case scenarios and the value that Rational Team Concert brings to those environments.

View more content in this series

Date:  12 May 2009
Level:  Introductory
Activity:  893 views

This first article in a series about the use of IBM® Rational® Team Concert for System z® in the enterprise focuses on the benefits of using this software. The goal of this article is to help your organization get started in collaborative development. Follow-on articles will delve into these topics:

  • How to configure Rational Team Concert for System z to control your existing software configuration management system

  • Setting up Rational Team Concert for System z for your host-based development processes

  • Using Rational Team Concert for System z and Rational Build Forge to get started with agile development for host projects

  • Using Rational Developer for System z with Rational Team Concert for System z for increased value

  • Setting up components and streams in Rational Team Concert for System z optimized for cross-system development

Software development challenges

Development organizations are facing many new dilemmas and expectations, including these difficulties:

  • Company acquisitions and outsourcing that result in geographically dispersed developers

  • Maintaining and leveraging existing code with fewer people

  • Shorter development cycles

Companies will continue to expand by acquiring other companies that are in related businesses, either with companion or competitive products, and many times both. With each new acquisition comes a new set of processes, software packages, and applications developed in-house. This leaves the companies with additional development organizations in different locations, each using their own tools and processes.

Many companies now work with outsourced development shops that are located in other parts of the world, such as India and China. This outsourcing often splits the architecture and development responsibilities between the outsourcer and the outsourced company. Both of these activities create greater distance between development teams and increase the need for collaboration and governance.

The second challenge, maintaining and leveraging existing code, is complicated by the fact that that the code has often been developed over many years, and the original authors may no longer be available for updates. This existing code can be in many different forms and programming languages. The code may also be spread across a variety of software configuration repositories that are maintained by using a variety of tools. Many of these tools do not interact with each other, so this creates development "silos."

In today's environment, your organization needs to find new, creative ways to provide new business value by combining existing assets. When enhancements are required across the variety of the existing code, with separate tools and processes, it is difficult to provide the collaboration and staff necessary to complete the project together. Not having common processes and a collaborative development environment across teams decreases the effectiveness and speed of these projects.

The last of the challenges described in this article is the need to deal with increasing pressures to provide solutions with decreased time to market, while working with fewer resources. This problem is aggravated by the previously described problems of geographically dispersed development and maintenance of existing code.

Existing development environments

Another perspective on these development challenges comes from the development processes and tooling currently in place. Each group within a company has typically developed its own development processes and standards and the tooling to support them. With acquisitions or dispersed development organizations, this leads to many different processes, which are supported by different combinations of in-house and vendor-provided software configuration, project planning, and development systems.

Multiple tool sets and processes also exist because of the different "silos" within the development organization. Silos exist, for example, when the IBM® z/OS® team uses one source code repository and tool set, while the Microsoft® .NET development teams use a totally different set. These development tool sets are rarely integrated or are even impossible to integrate. Therefore, when developing software across teams, there is not one common process nor tool set that can be used. This can mean that the pieces of the project cannot really be brought together until the final phases of testing.

These various tool sets and source control systems also lead to an increased number of servers and applications that must be supported in addition to everything else already described. This continues to exasperate the problem of too many servers and systems to maintain.

Collaborative tooling benefits

Using software designed for collaboration among geographically dispersed individuals and teams can help your team cope better with the outsourced, downsized, dispersed development in several ways.

Collaboration

Team collaboration requires these specific capabilities, among others:

  • Shared understanding of the work to be done

  • Ongoing discussion of these items among team members

  • Clear definition of the iteration plans

  • Defined structure for the team actions and processes

Rational Team Concert for System z supports this team collaboration with integrated work items and planning. By using the customizable dashboard views and reports, your team members can easily check the project status, gather information on who's working on which components, and see what changes are planned and in progress. By using the work items, each member can easily collaborate on assignments, see what is being done, and comment directly on work items. Rational Team Concert for System z automatically notifies stakeholders and others interested in particular work items when they are updated or someone adds comments.

Transparent development

To be productive, teams need automated tracking of the progress of work, based on defined processes and project rules. Rational Team Concert for System z provides this capability with the iteration plans and work item status tracking. This simplifies assignment of work to those with available time and aids coordination across teams because everyone understands when particular parts of the project should be finished. Throughout the workflow, appropriate reviews and approvals will be automatically enforced by the process definition. As the work is completed, comments are captured along with who, what, when, and why information to provide historical tracking and auditing.

By keeping their work items and progress up to date, they no longer have to provide periodic status reports for the project you can easily see the status in the customizable dashboards, based on a customizable set of reports in Rational Team Concert for System z. The dashboards show the current status, without the delays caused by asking for and creating status reports and then collecting and consolidating the information.

This ability to continually monitor project status also makes it easier to identify problems earlier in the development process and take the appropriate corrective actions before the problems become significant. With an understanding of the progress at everyone's fingertips, not only can the project managers ensure that the project is on track, but the management team, up to senior-level managers, can easily check the status of the projects.

Built-in processes

There are certain principles and characteristics that show up over and over again in high- performance software teams, such as shorter iteration cycles and frequent stakeholder involvement during the entire development lifecycle. Process models based on these principles and characteristics can help your team operate more effectively.

Rational Team Concert for System z includes a set of these process models that you can use or customize to fit your existing processes. Adopting or adapting these processes and the process guidance provided automate the implementation of any software development process. You can use them regardless of your team's preferred process, whether you have adopted agile development or not, and you can choose to enforce just enough of the process to shorten your development cycle yet not let process constraints get in the way of getting the job done.

Source management and efficient software builds

Rational Team Concert for System z also provides built-in source and workspace management, version control, parallel development support for individuals and teams, and automated build tools. These capabilities give you several advantages:

  • Source management provides an extra level of flexibility, because it enables developers to make changes locally, on their machines, and then check them into their personal workspace repositories for review, backup, and so forth before actually delivering them to the rest of the team.

  • Automated build processes help reduce costs by reducing build breaks and by helping you find problems that cause build breaks faster. The integrated environment instantly notifies the team when a build is finished and gives them quick access to the build artifacts. When a build break occurs, the changes included in the build (through change sets) are identified. With this information, you can easily review all related work items to resolve the issues quickly. By using the automated build capabilities, you can set up the environment to provide continuous or timed builds for agile development processes.

  • This integrated working environment also enables developers to easily connect work items and tasks to source artifacts, build activities, and discussions, which enables true collaboration in the context of a particular project.

Platform support

Rational Team Concert for System z is based on a team server component that provides all of these advantages:

  • Collaboration and process capabilities

  • A repository to store the data, including any related assets

  • A rich Eclipse-based client for developers

  • A Web-based client for project status-checking and occasional users

The team server and repository components provide support for running on IBM® z/OS, as well as Linux® for System z. By supporting these platforms, Rational Team Concert for System z supports the server consolidation initiatives that result in systems moving to Linux for System z. Because it runs on z/OS, the repository is hosted on IBM® DB2 for z/OS, which means that the repository can participate in all of the backup and recovery processes already in place for z/OS systems.

Bringing it all together: customer use cases

The following sections describe customer use cases.

Collaborative development

JK Enterprises is a company that has several existing customer processing applications. Today, much of the customer data is stored and processed on z/OS; however, some of the information resides on distributed systems. JK Enterprises acquired a new company that provides some companion capabilities, but their customer information is processed using a set of different systems. They analyze the environment, and JK enterprises realizes that they now have developers located in time zones across the world, using three different source code repositories with build procedures, and at least three different development processes. JK Enterprises needs to consolidate their customer information across the new acquisition to be able to properly cross-sell their products and services.

This customer example clearly demonstrates the development challenges described previously. It is apparent that there is a need to bring diverse teams that use different tool sets together to collaborate on development projects. The first step in getting these teams together is through common processes and planning. By providing a single governance process over the development of the disparate people and teams, your organization can gain information that will help you understand how your teams can collaborate together to work as a unit.

Rational Team Concert for System z provides numerous capabilities for collaborative development. For current z/OS projects that have existing SCM and build functions, Rational Team Concert for System z provides the collaboration and planning capabilities that are lacking from those existing tools. By combining these capabilities with existing tooling, your developers can quickly take advantage of the coordination and better project understanding, while continuing to use their existing development tools.

This also allows teams that cross the traditional silos of development, for example z/OS teams and Web developers, to work together in a single project and work item tool set so that projects spanning these silos can properly coordinate.

You can take this integration a step further, with the development of exits within the existing SCM to call Rational Team Concert for System z through a simple interface to gather the status of work items in progress. This allows Rational Team Concert for System z and the defined workflow to control the check-in process for development.

Consider an example for clarity: JK enterprises has decided that the workflow requires a work item to be in Approved status before a developer can check in their changes. After the developer has completed the code, if she tries to check it in, the check-in process would fail (due to the verification of the work item's status). The developer would have to ensure approval of the work item first, and then they would be allowed to check in the changes. You could use a similar technique to control check out if desired.

As a second example, JK Enterprises has a set of existing build processes and tooling that they want better control over. They modify the Rational Team Concert for System z processes to add additional processing and approvals to the work items. When a work item reaches a specific state, then an automated action calls the host SCM to create the package based on the work item. Also, when a work item reaches a different status, the host SCM is called to automate the promotion of the code to the test or quality assurance level.

Moving to agile software development

JK Enterprises is also undertaking a new Web frontend for a variety of existing functions. They have been using agile for some of their distributed development projects. The z/OS teams have considered using agile, but they have a set of existing processes that ensure the quality of service expected for z/OS projects. They want to move to agile after they are comfortable that they have a set of processes and tooling that can interlock into their existing SCM and build processes.

Rational Team Concert for System z provides this ability to have the process and tooling support for agile, helping the teams to make this transition. By using the predefined agile process workflows, z/OS teams can begin using an agile process, doing the collaborative development and supporting the control of the process as described above.

Project planning and process are just part of the move to agile. Using Rational Team Concert for System z along with IBM® Rational® Build Forge® helps facilitate the automation of the builds for regular build processes. This will be discussed more in a later article in this series.


Resources

Learn

Get products and technologies

Discuss

About the author

Author photo

Rosalind Radcliffe is a Senior Technical Staff Member in the IBM Software Group. She is responsible for driving the Jazz foundation and the products built on top of Jazz, with a focus on IBM System z and IBM i.

Comments (Undergoing maintenance)



Trademarks  |  My developerWorks terms and conditions

Help: Update or add to My dW interests

What's this?

This little timesaver lets you update your My developerWorks profile with just one click! The general subject of this content (AIX and UNIX, Information Management, Lotus, Rational, Tivoli, WebSphere, Java, Linux, Open source, SOA and Web services, Web development, or XML) will be added to the interests section of your profile, if it's not there already. You only need to be logged in to My developerWorks.

And what's the point of adding your interests to your profile? That's how you find other users with the same interests as yours, and see what they're reading and contributing to the community. Your interests also help us recommend relevant developerWorks content to you.

View your My developerWorks profile

Return from help

Help: Remove from My dW interests

What's this?

Removing this interest does not alter your profile, but rather removes this piece of content from a list of all content for which you've indicated interest. In a future enhancement to My developerWorks, you'll be able to see a record of that content.

View your My developerWorks profile

Return from help

static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=1
Zone=Rational
ArticleID=388173
ArticleTitle=Using IBM Rational Team Concert for System z and the Jazz platform: Part 1. Easier, faster collaborative development by globally distributed teams
publish-date=05122009
author1-email=rradclif@us.ibm.com
author1-email-cc=

My developerWorks community

Tags

Help
Use the search field to find all types of content in My developerWorks with that tag.

Use the slider bar to see more or fewer tags.

Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere).

My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Use the search field to find all types of content in My developerWorks with that tag. Popular tags shows the top tags for this particular content zone (for example, Java technology, Linux, WebSphere). My tags shows your tags for this particular content zone (for example, Java technology, Linux, WebSphere).

Rate a product. Write a review.

Special offers