Tutorial: Exploring the Engineering Workflow Management JUnit example project

This brief guide is a companion to the IBM® Engineering Workflow Management JUnit example project, which is available in the Eclipse client. It provides you with a high-level overview so that you can begin exploring on your own.
The JUnit project is an example of a team using Engineering Workflow Management (EWM) to plan, track, collaborate, and deliver the release. When the sample JUnit project is created, you can view existing artifacts as if the team has already begun its work.

Learning objectives

This tutorial helps you to start experimenting and learning more, but it does not guide you step by step through the project.

    Creating the JUnit example project
    JUnit Project Area users and client access licenses
    JUnit project sprints and planned work
    JUnit project files
    JUnit project builds
    JUnit project reports
    Exploring the JUnit project in the web interface

Time required

20 minutes

Creating the JUnit example project

To create the JUnit example project, you must have JazzAdmin permissions and be assigned a Developer Client Access License.

Procedure

In the Eclipse client, click File > New > Example and follow prompts to install the example project

JUnit Project Area users and client access licenses

The JUnit example project includes eight users. You can log in to the JUnit project as any of these team members to get different perspectives on roles and assignments. However, to fully explore the JUnit project as one of these users, the user must be assigned a Developer Client Access License. The number of licenses you can assign for this example is limited by the number of licenses remaining on your server.

About this task

Tip: The initial password for each user is the same as their user ID. For example, the password for Bill is "bill". If you plan to do extensive exploring on a test server, you might want to change these initial passwords.
Table 1. Users in the JUnit Project Area
User user ID / password Role/Description
Bill Cassavelli bill / bill JUnit team lead. Bill is the component lead for the JUnit team. He set up the plans and is the owner of several high-level work items for the release. He also runs the builds.
Freddy Freund freddy / freddy  
Jason Mitchell jason / jason JUnit team member. A number of work items are assigned to Jason.
Jennifer Ginness jennifer / jennifer  
Markus Kent markus / markus JUnit team member. A number of work items are assigned to Markus.
Marlene Stamp marlene / marlene  
Rick Yuen rick / rick  
Client access licenses are role-based and permit access to the capabilities of an application.

For more information, see Managing licenses.

To assign licenses to users:

Procedure

  1. Log in to the JUnit project area as a user who has administrator privileges (ADMIN/ADMIN on a new server installation).
  2. In the Team Organization view (Window > Show View > Team Organization), in the upper-right corner, click the View Menu icon; then click Show Users.
  3. Right-click Markus Kent; then click Open.
  4. In the User editor under Client Access Licenses, select Engineering Workflow Management - Developer and click Save.

Results

The Team Organization view only shows the users who are part of the JUnit project. To assign client access licenses for other users, use the Jazz™ Team Server web interface: navigate to Administration > Manage Users. The Active Users interface appears; use it to manage user accounts and licenses. This interface lists all users on the server:

User Management section of Jazz Team Server web interface

Tip:

To log in as a different user, modify the properties of your repository connection and specify a different user ID:

Changing the connection properties to log in as a different user

JUnit project sprints and planned work

The JUnit project uses the scrum process. The scrum process is an approach to managing projects in an agile way. For each iteration, called a sprint, the team has created a plan document, and has defined work items for that sprint iteration.

Procedure

  1. You can see the Process sprints by opening the JUnit project in the Project Area editor:
    Note: Plans can be accessed in the Change and Configuration Management application's web interface from the Plans menu on the action bar.

    JUnit process iterations

  2. To examine the iteration plans, from the Team Artifacts view, open a plan:

    Plans node in the Team Artifacts view showing JUnit plans

    Tip: Plans open in the web client only. You can choose to open plans in an internal or external browser by setting the web browser preferences in Eclipse client. For more information, see Web Browser preferences in the Eclipse documentation.
  3. Look at the JUnit 4.4 s2 Sprint Backlog plan. On the Planned Items tab, the Plan Details section has a view that gives you an inline work item editor that shows planning attributes. The backlog plan displayed in the project's web interface.
    Tip: From the Planned Items tab, you can quickly change certain attributes of work items by clicking on one of those work item's attributes.
  4. To see the details of a work item, from the Planned Items page, click the item. It opens in the work item editor, where you can make changes, depending on your role and the process configuration.

    For example, if you are logged in as JUnit project member Markus Kent, try using the Discussion section to add a comment to the work item:

    Work item editor showing discussion

JUnit project files

The JUnit files are under source control in the EWM repository. Markus and other project members (to whom you assigned a Developer Client Access License) are able to deliver changes to the stream.

About this task

In the Team Artifacts view, you can see that the JUnit project includes a single source control stream called JUnit. The stream includes a single component, also called JUnit. In the following screen capture, the JUnit component is at the initial baseline.

JUnit streams, components, and a loaded repository workspace shown in the Team Artifacts view

In the above screen capture, the current user has loaded a repository workspace called JUnit. You can search for other user repository workspaces, then duplicate and load them; or you can create your own repository workspace.

When a repository workspace is loaded, the projects that are part of the loaded components are available for you to work on within your development environment. In the JUnit component, there are two projects:

The JUnit projects loaded and visible in the Package Explorer
After you have explored a bit, you might want to learn more about some of the Jazz source control concepts and tasks.

Read the Overview of Engineering Workflow Management source control section to learn more about streams, components, repository workspaces, and other concepts.

Procedure

Experiment by making a change to a file (note that there is no source code in this example project) and delivering that change in the Pending Changes view. You can associate your change with a related work item.
Delivering a change set in the Pending Changes view

JUnit project builds

The JUnit project includes one build definition and one build engine. To explore and experiment with the JUnit builds, you must set up and start a build engine using the separately installed build toolkit.

Before you begin

  • To run a build engine, you must have the EWM installed. The toolkit can be installed from the installation launchpad or can be downloaded from jazz.net. If it is installed, you have an installdir/buildsystem folder.
  • In this example, the user ID bill must be assigned a Developer Client Access License to run the build.

About this task

To start a build engine for the JUnit project:

Procedure

  1. From a command line, navigate to installdir/buildsystem/buildengine/eclipse, where installdir is the installation directory.
  2. Enter the following command:
    jbe -repository https://hostname.example.com:9443/ccm -userId bill -pass bill -engineId junit -sleeptime 5

    where hostname.example.com is the path to your repository URL.

    When you successfully start the engine with the build toolkit, it waits for build requests. Only build definitions that are defined to run on this particular build engine are supported.

    Command window showing a build engine running and waiting for a request

  3. Request a junit build:

    Requesting a build

  4. When the build has completed, from the Builds view, open the build results. View the Overview, Compilation, and JUnit tabs of the build result to learn about the types of information that you can view from a build result.
  5. Optional: To schedule the junit build to automatically run every 30 minutes:
    1. In the Team Artifacts view, right-click the junit build; then click Open Build Definition.
    2. In the Build Definition editor, click the Schedule tab.
    3. Select the Enabled check box.
    4. In the Continuous interval in minutes field, type 30.
    5. Click the Jazz Source Control tab.
    6. At the bottom of the Jazz Source Control page, to ensure that a build runs even if there are no changes since the previous build, clear the Build only if there are changes accepted check box.
    7. Click Save.
    Build definition Schedule tab

What to do next

Read the Working with builds in Engineering Workflow Management Build section in the Help to learn more about how to manage and administer builds. You can also start learning about the build Ant tasks that you can use when writing your own build scripts.

JUnit project reports

If you plan to explore the JUnit project in depth, you can use reports to track the progress and monitor the JUnit project areas and teams. However, because reports require historical, aggregated data, the JUnit project does not have any initial data points to start building reports.

About this task

Reports use a data warehouse that typically takes daily snapshots of the repository data. These snapshots provide the historical data points that are required for reports. If you want to see reports for JUnit, you must initiate one or more snapshots over time. For example, you can take a snapshot now, then deliver some changes, run some builds, or open some work items, then take another snapshot.

To manually initiate a snapshot of the data:

Procedure

  1. Ensure that Markus Kent has JazzAdmin permissions, then log in to the EWM Application Administration web interface as Markus.
    Note: If you gave Markus Kent the JazzAdmin permission, he can assign himself the JazzAdmin permission. Otherwise, you must log in with your own user ID to assign JazzAdmin permission to Markus.
  2. On the action bar, click Reports.
  3. In the Data Warehouse Collection Jobs section, click Run all data warehouse collection jobs.

Results

After you have several snapshots that represent points in time, you will start seeing more value in the reports that you view for the JUnit project.

What to do next

You can run reports from two places:
  • The Reports page of the web interface:

    Reports page of the web interface

  • In the Team Artifacts view, under the JUnit project, under the Reports node:

    Reports opened from the Team Artifacts view

Read the Reporting section in the Help to learn more about the reporting features.

Exploring the JUnit project in the web interface

Most of this guide has taken you through the Eclipse client. The EWM web interface also provides a rich environment where you can meet many of the same goals of collaborating with your team.

About this task

JUnit project in the web interface

To explore the JUnit project area in the web interface:

Procedure

  1. Open a browser to the web interface. If you are running locally, the default URL is the following:

    https://localhost:9443/ccm/web/projects/JUnit Project

  2. Navigate through the web interface. For example:
    • On the Work Items page, find, edit, and create work items.
    • On the Source Control page, browse the files in the repository.
    • On the Plans page, create and review project plans.
    • On the Dashboards page, work with team and personal dashboards.
    • On the Builds page, view build definitions and results, and request builds.
    • On the Reports page, create and view project status and progress.

Summary

In this tutorial you learned about the basics of the JUnit example project. The JUnit project is a great way to explore and start learning how to use EWM to collaborate with your team on a development project.
Remember: When you are finished working with the JUnit example project, remove the client access licenses from the example users. This frees up the licenses to be assigned to real users.

video icon Video

Jazz.net channel
Software Education channel

learn icon Courses

IoT Academy
Skills Gateway

ask icon Community

Jazz.net
Jazz.net forums
Jazz.net library

support icon Support

IBM Support Community
Deployment wiki