Best Practices and Considerations for Creating and Managing Library Projects in Jama Connect®

Amanda Jennewein
Amanda Jennewein
  • Updated
By Patrick Garman posted 11-03-2023 

 

Planning for and creating a library project:

Creating a library project in Jama Connect® enables the reuse of high-quality requirements across projects, facilitates understanding of how different projects use these requirements, and streamlines updates and changes from a central location.

When starting a library project, the first thingsider is the type of content that the library will be used to manage. This could include regulatory requirements, industry standards, or functional requirements for a product line. Understanding what content will be stored in the library will help you identify the stakeholders and use cases, which will assist in deciding the best explorer tree structure and permission scheme for the library. you need to con

For example, if you are using a library project for Regulatory Requirements, you might consider the following stakeholders and use cases:

Compliance Managers/Officers:

Please ensure that any new regulatory requirements are added to the library. If there are any changes to the existing regulatory requirements, please update them accordingly. It is crucial to establish relationship links among related requirements to establish dependencies. Furthermore, please analyze all the projects to ensure compliance. This includes identifying whether any of the projects are using outdated regulatory requirements if they have made any alterations to a regulatory requirement, or if they have requirements that have not yet been adopted.

Project Managers:

Add relevant regulatory requirements for traceability and analyze their impact on project scope.

Based on the above, the library project explorer tree should have at least one SET of regulatory requirements where Compliance Managers have WRITE permission to ADD or UPDATE specific requirements and where Project Managers have READ permission to VIEW, REUSE, and SYNC relevant requirements to their projects.

A library project for Functional Requirements might have the following stakeholders and use cases:

Product Line Manager/Director of Product Development:

Understand which projects use a set of functional requirements and how each requirement might be updated or changed for a specific project.

Add new functional requirements for reuse in future projects/product variants/model iterations.

Project Managers:

Reuse existing, approved functional requirements rather than ‘recreate the wheel’ with each project.

Leverage lessons learned, innovations, or best practices identified from similar projects.

In this scenario, the library project explorer tree might have a hierarchy of COMPONENTS with SETS of Functional Requirements based on the product line and system components within the product line.  PLMs and/or DPs would have to WRITE permission to REUSE Functional Requirements and their variants from projects to the library and SYNC any updates to existing library requirements.  Project Managers would have READ permission to the COMPONENTS to REUSE pre-approved Functional Requirements and associated Design Specifications, Test Cases, or other related items to their projects and SYNC any updates to their projects as needed.

Steps to create the library project:

1.     Create a new project to serve as the library.

2.     Configure the item types for the library project to make all relevant content visible to library users.

3.     Create user groups for each stakeholder group and add users in the library project.

4.     Grant permissions to each user group based on your identified use cases.

5.     Establish the explorer tree container structure/hierarchy and configure default explorer tree settings in the library project.

6.     Import new requirements from a Word or Excel document, reuse requirements from existing projects, or create new requirements directly in Jama Connect to populate the library.

Using Advanced Reuse Rules to Simplify Complex Use Cases:

Aside from reusing only the selected requirements or requirements from the library to other projects, there might be more complex scenarios.  Take, for example, the Functional Requirements use cases listed above.  Along with the Functional Requirements, you might also include the related Design specifications, Test Cases, or other relevant items in the library project.  In this case, rather than having project managers manually reuse the Functional Requirements. For the other items, and then recreate any missing relationship links in their projects, you can create an Advanced Reuse Rule that will automate the process of reusing the related requirements as well.

For this use case, you could define an Advanced Reuse Rule as such:

WHEN reusing a Functional Requirement,

Also, REUSE all Design Specifications one level downstream,

AND REUSE all Test Cases one level downstream,

AND Sync item(s) and share Global ID.

A screenshot of a computer

Description automatically generated

Figure 1 Advanced Rules for reusing related items from the Library to a given project.

Taking this a step further, you can define which specific fields and widgets should be copied or updated when the rule is applied during a reuse or sync operation.

A screenshot of a computer

Description automatically generated

Figure 2 Select which fields and widgets should be reused for each item type.

When Project Managers apply the Advanced Reuse Rule as defined above to reuse Functional Requirements in their projects, the Functional Requirements will be copied to the specified location in their project, and any directly related Design Descriptions and Test Cases will be copied and related to the reused Functional Requirements.  The project manager can update these as needed to fit their project scope and purpose rather than recreate everything from scratch.

Suppose a defect is identified in testing for a different project that results in required updates to requirements, design specifications, or test case steps in a different project when those updates are synced back to the library. In that case, other Project Managers can apply the above rule when synching the updates to their functional requirements and have updates flow to the related design descriptions and test cases in their projects in one batch job rather than individually making updates to each.

Some resources for creating, editing, and using Advanced Reuse Rules in Jama Connect:

Risk Controls for Managing Library Content:

When documenting the stakeholders and use cases for your library project, it is essential to identify who owns the content for the library.  While all reuse sync operations in Jama Connect must be triggered manually by a user, you will likely still want to control which users can add or update requirements in the library.  Permissions are the most straightforward method for this.

A few notes on Permissions as they relate to Reuse and Synchronization:

  • To reuse an item or synchronize fields from one item to another with a shared Global ID, a user must have at minimum READ permission to the source item(s) and have WRITE permission in the desired reuse location or project.
  • Takeaway:  Limit users to read-only permission to the library to avoid unintentional syncs from projects back to the library.
  • While permissions can be granted directly to users, it is a better practice to grant permissions to project user groups and then add or remove users in that group to grant the permissions.
  • If a user is included in multiple groups with overlapping permissions granted (e.g., for a given set of items, one user group has write permission and a second user group has read-only permission), the user will inherit the higher permission level.
  • Permissions can be granted at the project level or the component or set levels within a project explorer tree.  The higher levels inherit permissions at each level within a project – all containers within the project tree inherit permissions granted at the project level, and permissions granted at a component or set level are inherited by all container contents.  Inherited permissions can be overridden in the project settings.
    • Permissions cannot be granted at the folder, individual item, or item field levels.

A diagram of a project

Description automatically generated

Figure 3 Project User with Read permission to library.

A diagram of a library system

Description automatically generated

Figure 4 Library Owners can manage library requirements and compare them to project usage.

 

Leveraging Baselines for Version Control in Library Projects:

Baselines in Jama Connect create a snapshot of the current version of a project or set of items within a project and can be used to ‘roll back’ changes to included items in the batch.  This makes baselines a powerful tool for version control in Library projects.

You can automate the creation of baselines using the Jama Connect REST API, or library project users with WRITE permission can manually create baselines.

Recommended triggers for creating baselines in a library project:

  • AFTER new items are added to the library project or existing items are updated within the library.
  • BEFORE performing any batch reuse or synchronization operations TO the library project.

Reusing Baselines from Library Projects

As of Jama Connect 9.94, you can also reuse a baseline for a new project.  As you create baselines of items in a library project, a snapshot is created of the current version of each item at the time of baseline creation.  When you view a baseline, you can click Reuse in the top right of the baseline items view to reuse the baselined versions of these items in a new project.

A screenshot of a computer

Description automatically generated

Figure 5 Reuse previous versions of library items from baselines.

Comparing versions of synced items:

Jama Connect makes it easy to compare the current versions of synced items so your stakeholders can quickly identify where a library item has been reused and where a reused item has been updated from the source item.

From within Jama Connect, you can open the Synced Items window in the library project to view a list of where a given set of items has been reused.  From this window, you can click the Compare button for any sync destination to view redlined differences for the fields you select and see where a reused item differs from its source in the library.

A screenshot of a computer

Description automatically generated

Figure 6 Sync Items Comparison View

This is helpful for all library project stakeholders.  Library content owners can identify where library items are being reused and quickly identify projects that are out of compliance/alignment, and project managers can view which library items have been updated and determine if those updates are relevant to their projects before synching changes.

There are also predefined reports available that create Excel files to show where items have been reused from the library and if they are in sync or not.  The Sync Status report produces an Excel file to show where a given set of items has been reused and if the item versions are in sync.  The Sync Comparison report allows you to indicate a source set of items and a location where these items have been reused and produces an Excel file that outlines where specific fields for the items are out of sync and what those differences are.  Either of these reports are customizable if you have additional analysis needs.

Note that for a field to be included for comparison or to synchronize changes, the field must be enabled for synchronization on the item type configuration.

 

A screenshot of a computer

Description automatically generated

Figure 7 Edit a field for an Item Type to enable synchronization.

Related to

Was this article helpful?

0 out of 0 found this helpful

Have more questions? Submit a request

Comments

0 comments

Article is closed for comments.