OpenRose - Logican Data Structure
Logical Data Structure
OpenRose - Requirements Management
An Open Source and FREE Requirements Management Application / Tool
Direct Link to YouTube Video : https://www.youtube.com/watch?v=7jXGIb3E4OU
Video Transcript :
Today we are going to talk about the logical data structure within OpenRose.
OpenRose is a free and open-source requirements management application. OpenRose is published on GitHub, so you can go to its GitHub location https://github.com/OpenRose to see the documentation published for this application. The documentation comprises several things: concepts, which are requirements for the application itself, user guides on how to create different types of data, and information about design decisions made during development. We will keep publishing more information at this location.
Now, let's talk about the data structure. OpenRose starts with a repository, the main container in which users can create several projects. When a project is created, we by default create one system item type called "Parking Lot". This is always present in every project, meaning you can rely on storing certain types of data in the Parking Lot, which will be available for your projects. The idea of the Parking Lot is to put aside unfinished or undocumented ideas or concepts or certain types of requirements that you are not yet ready to incorporate into your projects. These requirements could come from stakeholders, users, testers, the marketplace, or industry regulators.
Under the repository, you have one or many projects. Inside a project, by default, you have the Parking Lot item type, but users can define their own custom item types. This means users have to come up with a structure for how they want to store their data. For example, you might have business requirements, functional requirements, and delivery requirements. These are just concepts and ideas for structuring your data within a project.
Consider item types as collections of requirements classified by type. They act as classification containers, allowing you to structure your project with classifications of type, similar to how folders and subfolders work in a file system.
Let's jump over to the concept of item types. Here, we are again showing different examples of item types:
- stakeholder requirements
- business requirements
- user requirements
- constraint requirements
- material requirements
- logistics requirements
- and more.
This diagram explains how data is primarily structured within the OpenRose requirements management application:
- Level 0: Repository (the main container).
- Level 1: Project (the next logical layer inside the main container).
- Level 2: Item types.
- Level 3 onwards: Requirements.
There is another layer we can discuss: baselines. When storing data inside OpenRose, you generally expect all your requirements to be associated with a type and a project. However, we support orphan items (requirements sitting at the repository level). Projects and item types cannot exist outside the repository and project, respectively, but requirements can sit at the repository level or be associated with a project via a type container.
OpenRose automatically places all project requirements as orphan items when a project is deleted. This decision means that when a project is deleted, those items are moved to orphan items, losing their structure. These orphan items can be completely removed or reintegrated into other projects if required.
Creating items within a project is straightforward, but when a project is deleted, those items become orphan items by default. Currently, the product does not allow single items associated with a project to be moved to orphan items without deleting the project. A workaround is to move such items to a temporary project, which can then be deleted, making those items orphan items.
Baselining or snapshots is another capability within OpenRose. Baselines can be created against a project or an item type within a project. This means you create a snapshot of the entire project or a particular item type within the project. The new baseline will be stored inside the project, adding an additional data structure between the project and item type.
In conclusion, this video covers the main concepts of the logical data structure within OpenRose. We appreciate you sharing this information with others who may benefit from using the open-source, free OpenRose requirements management application.
Thanks once again, and have a great day!
Comments
Post a Comment