Getting Started With Oracle Team Productivity Center
Purpose
The Team Productivity Center is a downloadable JDeveloper
extension that provides access to a set of application lifecycle management
(ALM) tools and technologies. This tutorial guides you through setting up a
Team Productivity Center and shows how you can use some of its features to maximize
your organization's investment in skills, processes and technologies.
Move your mouse over this icon to show
all screenshots. You can also move your mouse over each individual icon to see
only the screenshot associated with it.
Overview
Oracle Team Productivity Center is an Application Lifecycle
Management tool that enables software development teams to collaborate and work
productively together when developing applications using JDeveloper.
It provides you with tools for communicating with team
members, tracking data in team repositories and accessing team data such as
bug tools and feature databases, all from within JDeveloper. This tutorial introduces
you to the main features of TPC from both the administrator perspective, and
the team member perspective.
The first three topics in this tutorial assume a situation
where you have been provided with administrator permissions in order to set
up a Team Productivity Center.
The fourth topic assumes that you have been given a team member role in TPC
and you need to discover how TPC can help with your project work.
Important Note: In order to demonstrate
the features of the Team Productivity Center, this OBE uses a team server that
has been pre-populated with data, and many of the steps of the OBE use this
sample data. If you are just starting out with TPC, or if you are using a database
populated with your own data, the screenshots shown here will not reflect what
you see as you work through the steps on your own machine.
The Oracle Team Productivity Center provides a connector
framework to enable third party ALM tools to be integrated with JDeveloper.
There are a number of connectors available, including those to integrate Team
Productivity Center with Atlassian JIRA, Microsoft Project and Rally Software.
You can also create your own connectors. To download TPC client files and the
default connectors, perform these steps:
You use the Check for Updates option in JDeveloper to
access and download files for TPC. You can download files from a location on
your machine, or from an internet site. This example assumes that the TPC client
files have been downloaded to your machine. They are then installed from a local
file.
Choose Help-->Check
for Updates from the JDeveloper menubar.
The Check for Updates wizard is invoked.
2.
In the Welcome to the Check for Updates Wizard
page click Next, and in the Source page select the Install
From Local File radio button.
3.
Click the Browse button to
locate the tcp_bundle.zip
file on your file system. Click Open.
4.
Click Next to install the
file.
Restart JDeveloper after the install.
Download the TPC Connectors
In this section you download the tpc-connector-jira_bundle
from a local file. You then download Microsoft Project from the Official Oracle
Extensions and Updates center.
Choose Help-->Check
for Updates from the JDeveloper menubar.
2.
In the Welcome to the Check for Updates Wizard page click
Next, and in the Source page select the Install From
Local File radio button.
3.
Click the Browse button to locate the
tpc-connector-jira_bundle.zip
file on your file system. Click Open, then Next
to install the file.
Restart JDeveloper after the install.
4.
Choose Help-->Check
for Updates from the JDeveloper menubar, and click Next
in the Welcome to the Check for Updates Wizard page.
5.
In the Source page ensure that the Search Update
Centers radio button is selected, and check the Oracle
Fusion Middleware Products and Official Oracle Extensions
and Updates checkboxes. Click Next.
6.
Scroll through the list to find the Oracle Team
Productivity Center - MS Project Server Connector. Check thecheckbox. Click Next.
7.
At the login, enter your Oracle Web account user name
and password
8.
The download begins.
Restart JDeveloper after the install.
Making Repositories
Available to the Team Productivity Center
The Team Productivity Center provides team members
with access to repositories so that they can integrate with, and interface to,
internal and external data that is of value to their work. A Team Productivity
Center repository might be a database for tracking bugs and feature requests,
a library of customer feedback from a usability study or beta program, or some
other structured organized information set used by the team.
A key job of the administrator is to provide and maintain references to the
various repositories available to TPC users. To experience what is involved
in setting up a connection to a repository, perform the following steps:
1.
In JDeveloper choose
View-->Team Navigator.
2.
In the Team Navigator, click Connect to Team Server.
Then in the Connect window input your credentials and click Connect.
Note the following points about credentials:
- To follow the steps in the Administrator part of this OBE, you need
to have been set up as an administrator. If this hasn't already been done,
you need to ask your TPC administrator to set this up for you.
- If this is a completely new installation and there are, as yet, no users
in TPC, then you need to input the default administrator that was created
at the server install stage.
- If the administrator has set you up as a TPC administrator, then you
should use the credentials you have been given.
Note: Check the Use SSL Connection box if your team server is using SSL.
3.
From the Team Navigator menu choose Team Administration.
Note that this option is only available to users with administrator permissions.
The Team Administration console displays. As an administrator, you should
be able to see all four tabs in the Team Administration console - Users,
Teams, Repositories, Roles. If you don't see them all, then you haven't
been granted full administrator privileges. You need to get a login that
has full privileges in order to follow the steps in this part of the OBE.
4.
Click the Repositories tab. The TPC used
in this OBE is already populated with sample data. If you expand the Work
Item node you see examples of repositories associated with work
items used by teams. If yours is a completely new installation there will
not yet be any data visible in the Work Item node.
5.
In this example a connection to the JIRA - ALM repository
has been defined. Selecting JIRA - ALM displays details
of the connection to the JIRA - ALM repository. The JIRA connector is
one of the connectors that was downloaded in the previous topic.
Notice also the reference to Microsoft Project. A connector for this
repository type was also downloaded in the previous topic.
6.
When adding a new repository reference, you first need
to determine whether you wish to add a Work Item or a Document (Documents
contain references to the file-store repositories used by teams.) Document
functionality has not been implemented in this first release of TPC, so
for this example, select Work Item and click the green
+ .
7.
Create a connection to the JIRA Public repository.
In the Connector field, select Jira from the dropdown
list. In the Name field type JIRA Public, and for the
Description, Jira test server. Click the green + to add
a new repository server. Provide a server name, in this case JIRA
Public and for the Server URL, http://jira.atlassian.com
Note that in order to be able to connect to the JIRA
test server, you need to first go to the JIRA site and set up an account.
8.
Notice the Versioning node in the Repositories
page. This feature allows you to specify a connection to a source control
repository for team members to use to version their work. Expand the Versioning
node.
9.
Selecting the TeamDevTest connection
in the example data, reveals that TeamDevTest is using the Subversion
connector to connect to a Subversion source code repository.
10.
To add a new connection to a versioning repository, select
Versioning and click the green +. Use
the down arrow to the right of the Connector field to
select the type of versioning system you want to connect to. Provide a
name for the connection and (optionally) a description.
Note that there is no option to add a server name or location at this
point; this is done at the team level, as you will see in a later section
of this OBE.
11.
To delete the connection, click the red X
and confirm. However note that a repository connection that is being used
by a team cannot be deleted.
Managing Users
and Teams in the Team Productivity Center
A major part of the administrator's job involves managing
users and teams. The following subtopics take you through creating users and
teams and configuring teams.
In the Team Administration
console, click the Users tab.
2.
You have already seen
that the TPC used in this OBE is populated with sample data. If you are
starting from scratch with setting up your Team Productivity Center, the
Users tab will only contain details of the administrator created in the
server install.
In this example you see a list of users on the left. You can click on
a user to see some information about him/her, including the permissions
he/she has, and the team(s) he/she is a member of. Click Administrator
TPC. This is the name the Admin user created in the server install.
3.
If you have multiple users in your
Users tab, select another user and see the teams and permissions he/she
has. In this example Neena Kochar is a member of more
than one team and has different roles in each one.
4.
Click the green plus (+)
to add a new user.
5.
Provide name and login information
for the new user. Here is an example: Kevin Mourgos (login)
kmourgos (email) kevin.mourgos@example.com
(password) kev. Notice that the new user's name is added
to the Users roster on the left.
6.
You need to define any special
permissions that the user may have.
Note the different levels of permissions that exist: full administrator
permissions allow a user access to all the tabs in the Team Administration
console. Alternatively, a user that has permission to create new users
only has access to the Users tab, and someone that has permission to create
new teams only has access to the Teams tab.
Grant administrator permissions to this new user so that he is able to
set up users and teams and create connections to repositories, and therefore
share the workload at the initial setup stage.
7.
Add three more new
users:
Trenna Rajs (login) trajs
(email) trenna.rajs@example.com (password) tren
The Teams page displays the teams and sub-teams that exist
in the Team Productivity Center, along with the members of each team,
and their roles in the teams. Clicking the DEV_ORG team
in this example shows the members of that team.
3.
Notice too the subteams and sub-subteams in the DEV_ORG
team hierarchy. Teams and subteams can have any number of subteams.
4.
Click the green plus (+)
to add a new team.
5.
In this example the new team appears by default, as a
subteam of DEV_ORG since DEV_ORG was selected when the new team was created.
However, since this is not what is required here, you can change it by
modifying the value in the Parent Team field.
6.
Name the new team, SERVER. Scroll through
the dropdown list in the Parent Team field and select DEVELOPMENT.
The new team is created as a subteam of the DEVELOPMENT team.
7.
Create a subteam of SERVER, called CORE. Select SERVER
and click the green +; name the subteam CORE.
The Parent Team field is automatically populated with the value SERVER.
8.
Expanding the QUALITY ASSURANCE node
under DEV_ORG in the sample data, reveals that there is a subteam that
is also called CORE. There is no conflict here since the two COREs are
in different branches of the tree hierarchy.
Configuring the Team
Configuring the team involves adding users to it, and
defining their roles in it. It also involves providing the team with access
to the repositories that it needs. To configure the SERVER and CORE teams, perform
the following steps:
Select SERVER
(or the team you created in Step 6 above if you used a different name)in the Teams pane, and click the green + in
the Team Members area.
2.
The Select Team Members dialog offers a list of all users
that have been created in the TPC.
In the Available Users pane select Kevin Mourgos
(or the user you created in Step 5 of Creating a New User above, if you
used a different name) and shuttle him across to the Selected
Users pane. Then click OK.
3.
Back in the Teams tab, you see that the user has been
added to the SERVER team.
Select the new team member (Kevin Mourgos in this example),
and from the drop down list in the Role column, choose
Group Administrator.
4.
Add Trenna Rajs, Curtis Davies
and Peter Vargas to the CORE team (or
the users you created in the Creating a New User topic above, if you used
different names).
Make Trenna RajsTeam Administrator for
the CORE team.
5.
Add Kevin Mourgos to
the CORE team. Although he is a Group Administrator for
the SERVER team and will therefore have admin rights for the CORE team
in terms of adding users etc, if he is to participate fully in the work
of the team, he needs to be added to it as a member.
6.
The three roles you have seen in the Roles column - Team
Member, Team Administrator and Group Administrator - are the default roles
that ship with TPC. It is important that you, as an administrator check
that these roles 'fit' with your organization, and then create additional
roles as necessary.
To add a new role, click the Roles tab.
7.
The three default roles display in the Roles pane. Click
each role in turn to see the privileges that each role has: the Team Member
role has no privileges at all; the Team Administrator role has all privileges
except that of being able to gain privilege over child teams. The Group
Administrator has the full set of privileges.To create a new role, click
the green +.
8.
Supply a name and (optional) description
for the role, and select privileges by checking the appropriate check
box(es) in the Role Privileges pane.
Note that these roles are team-based i.e they define the role a user
has in a team. None have privileges that allow a user to access either
the Repositories or Roles tabs. Only a user with administrator privileges
(set in the Users tab - see Step 6 in the Creating a New User topic above)
- or the default TPC admin users can access all four tabs.
9.
Check that the new role has been created by returning
to the Teams tab, and clicking the drop down list in
the Role column in the Team Members
pane. The new role should be available for selection.
10.
To define the repositories that a team needs to be able
to access, click the Team Repositories tab.
11.
The Team Repositories tab displays a list of the repositories
that were set up in the Repositories tab.
In this example the CORE team needs to have access to the BugDB, DEV_ORG
JIRA, TeamDevTest and Project Server repositories. To specify this, you
check the appropriate check boxes in the Select Team Repositories
pane.
12.
In an earlier topic, Making Repositories Available
to the Team Productivity Center, when examining the Repositories
tab, you saw that TeamDevTest is a connector to a versioning repository.
It was noted at that point, that although you can create connectors to
versioning repositories in the Repositories tab, you can't add a server
name or any parameters there.
You enter the path for versioning repositories here, in the Team Repositories
tab. Clicking the TeamDevTest entry in the Team Repositories
list allows you to specify the server name and location.
Using the Facilities
of the Team Productivity Center
This topic pre-supposes that you have been input in
TPC as a user of the system. As a member of a team in the Team Productivity
Center, you can use TPC facilities to communicate with your fellow team members,
to track data in team repositories and access team data such as bug tools and
feature databases. To explore some of the team member facilities in TPC, perform
the following steps:
In the Team Navigator, click Connect
to Team Server. Then in the Connect window input the credentials
you have been given by the administrator, and click Connect.
3.
Once connected to the TPC server, you see
the name of a team to which your administrator has added you and below
it, a Team Members accordion that provides data about
the other members of the team, and Work Items, Team Documents
and Versioning accordions, each of which will provide
access to information repositories needed by your team.
Notice that the name
of a team of which you are a member is displayed at the top of the Team
Navigator. If you have been assigned to more than one team, click in the
team name box to see the other teams that you belong to. In this example
James Marlow has been assigned to the ADF Rich Faces and the ADF Swing
teams.
2.
Selecting a team (in this example, the ADF Swing
team) displays the accordions containing information relevant to that
team. Clicking the Team Members accordion opens it to
display team member information.
3.
A list of all your fellow team members for the currently
selected team is displayed. If you 'mouse over' the name of a team member,
you can see his/her email address, role in the team and whether he/she
is currently logged in to Chat.
4.
To chat with a fellow team member, double-click the name
in the list. If the team member icon to the left of the name is 'lit',
the team member is currently logged in.
The first time you log into the Team Member chat panel you may be asked
for some configuration information needed by TPC. Such information typically
includes the host chat server URL and port number, as well as your user
name and password.
5.
The Chat window opens, ready for you to begin a conversation.
6.
Notice the tabs at the bottom of the Chat
window. You can chat with buddies from any currently available XMPP/Jabber
protocol, and in addition you can start a chat with a team member directly
from the team members accordion.
Before being able to
access data in any of the team repositories, a team member must add his
login for the repositories that he/she needs to access.
To do this, click Manage Accounts in the Team Navigator
menu.
2.
In this OBE example, the ADF Swing team is working on
the DemoStore project, and needs to have access to the DEV_ORG_JIRA repository
and the Project Server repository.
Using this data you would need to select DEV_ORG_JIRA
in the Accounts pane of the Manage Accounts dialog and add James Marlow's
login (jmarlow/jam). Click Test Connection.
The login is successful.
Note: If the Test Connection is not successful, then it might be because
you are trying to access a server that is outside your firewall - for
instance, if you are connecting to the Public JIRA repository. In this
case, check that you have your proxy set: Tools--> Preferences-->
Web Browser and Proxy.
3.
You would follow the same steps to set up an account for
jmarlow for the Project Server repository.
4.
Open the Work Items accordion. Expanding
the DEV_ORG_JIRA node and the Project Server
node in the sample data, reveals that the team uses the DEV_ORG_JIRA repository
for storing requirements and bugs for the DemoStore project and the Project
Server repository for Backoffice tasks.
Working With Queries
As you have seen in previous topics, TPC provides a
great resource for team members in terms of the team data stored in the various
repositories. Team members can create user queries and team queries
to run against this data.
User queries are queries you can create to solve a specific problem that
you are facing—for example, to find bugs in a specific date range, or
filed by an individual team member if you are taking over another member's tasks.
A team query represents a more general query that may need to be used
by multiple team members. For example, the entire team might want to view bugs
filed as a result of a usability session or beta program.
As you have seen, the ADF Swing team in the
sample data, is working on the DemoStore project. The screenshot below
shows that four team queries have been created in the DEV_ORG_JIRA repository.
To run a team query, you double-click it.
2.
The result of the DemoStore_Issues query is returned.
You can customize query results in a number of ways, for example all columns
are sortable in ascending or descending order.
Using the sample data, clicking the arrow next to the Type
heading displays the issues ordered by Bug or Requirement.
3.
You can reorder columns, using drag and drop.
In the sample data, clicking in the Priority column
and dragging it to the left allows you to move it in that direction.
4.
Clicking the Customize Columns button
at the top right of the report allows you to select the columns you want
to display.
5.
The Customize Columnsdialog allows you
to add or remove columns from the display. For example, in the sample
data, all issues relate to the DemoStore project, so there is no need
to display the project name. Selecting the Project column
and shuttling it from the Selected Columns list into the Available Columns
list, and clicking OK, removes it from the report.
6.
You can also use the Search Criteria dropdown lists at
the top of the report to formulate more specific queries.
The example shows the first line of a two-line search query: Assignee
is selected from the first dropdown list, Equals
from the second dropdown list and the name, jmarlow
is input in the third box. Clicking the green + allows
you to add another set of search criteria.
7.
The second line of the query adds the additional filter
to only search on Type = Bug. Clicking Search
runs the query.
A list of only the bugs assigned to James Marlow is returned.
8.
Our sample user, James needs to save the query so that
he can monitor his bug queue. As a Team Administrator, James is able to
create both Team Queries and User Queries. This query is of personal interest
only and so should be saved as a user query.
To save a user query, click the More Actions button,
and choose Save As from the dropdown list. Provide an
appropriate name for the query in the Save Query dialog, ensure that the
User Query radio button is selected and click OK.
9.
Notice the DS_Bugs query saved under the My Queries
node in the DEV_ORG_JIRA repository.
10.
Returning to the team query used in this example, DemoStore_Issues,
and double-clicking in the row pertaining to James Marlow's Dashboard
requirement, allows you to display details of the work item.
11.
Update the work item.
In the screenshot below you see that the priority field is changed from
Minor to Major. To do this you use the Detail finger
tab, and click the arrow on the right of the Priority
field. From the dropdown list select Major.
Clicking the Save icon in the JDeveloper toolbar saves
the update back to the DEV_ORG_JIRA repository.
12.
Clicking the Relationships finger tab
reveals that a relationship to a Project Server task has been defined
13.
You can open the work item at the other end of the relationship
- in this example, in the Project Server repository - and update it.
For example you could update the Work Complete field
to 5% complete in the Detail finger
tab. Save the change.
14.
Clicking the Relationships finger tab
in this repository now displays the reference to the other end of the
relationship, in this example, the DEV_ORG_JIRA repository. Our sample
user, James, uses the Project Server repository for task planning and
management and the DEV_ORG_JIRA repository for tracking project requirements
and bugs, but TPC makes a direct relationship between the two, so that
a work item can be accessed from either repository.
15.
You can also add new work item relationships to those
that already exist. To do this you use the green + on the top right of
the Relationships finger tab.
Creating and Applying
Tags
You can attach tags to work items. The tags that you
create may be to suit the general needs of the team or the personal needs of
the team member. For example, bugs in a product under development may be tagged
by a project manager as Hot, Warm, EOD (end-of-day), or Deferable. To see how
you might use tags to enhance query results, perform the following steps:
In the Dashboard task in the Project Server
repository, you use the Tags finger tab to see any existing
tags or to create new ones.
2.
There is currently one tag defined for this work item
- the Dashboard task - in this example.
3.
Create a new tag. Click the green + in
the top right of the Tags finger tab, and in the Apply Tags dialog, click
Manage Tags.
4.
In the Manage Tags dialog click the green +
to create a new tag, and in the Add New Tag dialog define the new tag
using this sample data:
Name: Use Case Needed
Description: tasks, bugs or reqs that need a use case defined
Visibility: Team
Click OK and OK again.
Note that only Team or Group Administrators can create
a tag with team visibility in the sample data. Your team environment may
have been set up differently.
5.
The new tag appears in the Apply Tags dialog. Checking
the check box to the left of the tag and clicking OK
allows you to apply the new tag to a task, in this example the Dashboard
task.
6.
To apply the new tag to the related SSTORE-16 work item
in the sample data, you need to click the SSTORE-16 tab
to display it, and then click the Tags finger tab.
7.
In the Tags tab click the green + to
add a tag and in the Apply Tags dialog select the tag you just created
by checking the check box next to the Use Case Needed
tag. Click OK.
8.
Close all the open tabs by right-clicking one of them
and choosing Close All from the context menu.
9.
Run a query to find the work items that are tagged with
the tag you just created.
In the Work Items accordion, click the Tags icon and
from the dropdown list, select Query By Team Tag-->Use Case
Needed.
10.
A list of work items with the Use Case Needed tag is returned.
Notice that the list is cross-repository i.e using the sample data, it
displays both the JIRA and MSProject work items.
11.
You can also run the same query for a specific repository.
This example uses the DEV_ORG_JIRA repository. Right-click therepository node and from the context menu, choose Query
By Team Tag-->Use Case Needed.
12.
This time only the work item tagged with the Use Case
Needed tag in the DEV_ORG_JIRA repository is returned.
13.
The screenshot below shows the results of the two queries
one below the other: the top one is repository-specific, showing TPC has
returned the full data from the DEV-ORG_JIRA repos for each work item
from that repos tagged with the specified tag, whereas the bottom one
shows all the information held in TPC about work items tagged with the
specified tag, and so the work item in DEV_ORG_JIRA and the related work
item in the Project Server repository are both displayed.
14.
Right-click the repository node (DEV_ORG_JIRA
in the OBE example) in the Work Items accordion again to explore the other
available options on the context menu.
The New Query option allows you to create a new query
on the selected repository.
The New Issue option allows you to create a new issue
and save it back to the repository. (Note that if you
don't see New Issue, it's because this functionality was not available
to the connector writer i.e the API used to communicate with the repository
doesn't support the creation of issues.)
The Query By ID option allows you to search for a work
item by its ID. In the Query By ID dialog, type a valid ID (SSTORE_16
in this example) in the Key field and click OK.
15.
The requested work item (SSTORE-16 in this example) reopens.
Position your mouse over each of the three right-most icons on the top
left of the work item tab. They are, from left to right, Restore
Context, Save Context and Delete Context.
16.
Context allows you to save (or restore or delete) details
of what the JDeveloper IDE is currently showing i.e the current set of
open windows.
To demonstrate this, open a project and some files in JDeveloper's Application
Navigator. In this example, OrderEntryProjectLes13 files
OrderEntry.java
and Customer.java,
as well as the Use Case Needed JIRA query provide the
context for the SSTORE-16 work item. Click the Save Context
icon.
17.
Close the context files, leaving just the SSTORE-16 work
item open. Click the Restore Context icon.
18.
The files Customer.java,
OrderEntry.java and the
Use Case Needed query are all opened automatically, thus restoring the
context for the work item.
Summary
This tutorial introduced you to the Oracle Team Productivity
Center from the perspective of an administrator setting up TPC and from the
perspective of a team member needing to understand how the features of the product
might help with day to day project work. You've seen how to:
Get Started With Team Productivity Center
(Administrator Role)
Make Repositories Available to the Team Productivity
Center (Administrator Role)
Manage Users and Teams in the Team Productivity
Center (Administrator Role)
Use the Facilities of the Team Productivity Center
(User Role)