Jump to: navigation, search

Difference between revisions of "OSEE/Users Guide/Concepts"

Line 1: Line 1:
 
=Artifact=
 
=Artifact=
  
The '''artifact''' is the fundamental object in OSEE. It represents any data object that is to be stored. Object data is stored in attributes. An artifact is defined by its '''artifact type'''. Artifact types can inherit from one another. All artifacts inherit from <tt>Artifact</tt>, a base class similar to the <tt>Object</tt> class in Java.
+
The '''artifact''' is the fundamental object in OSEE. All data objects stored within OSEE are artifacts. Artifacts are strongly typed and can store any data throughout the systems engineering lifecycle. Any type of data can be stored in OSEE as an artifact; not only systems engineering data (such as processes and requirements), but also anything from meeting minutes to architecture diagrams.
 
+
Examples include:
+
* a single requirement
+
* a user object
+
* a source file
+
* a document
+
  
 
=Attributes=
 
=Attributes=
  
An '''attribute''' is a key/value pair representing a single data element. Attributes define an artifact's meta-data. Attributes are defined by its attribute type. An attribute type defines classes to handle how an attribute's value will be stored, search, and tagged. In addition, the attribute type defines the attribute value's data type. 
+
An '''attribute''' is data attached to an artifact. A "User" artifact might have "Email," "Name," and "Phone Number" attributes. A "Software Requirement" artifact might have attributes such as "Qualification Method," "Safety Criticality," or "Subsystem."
 
+
An '''attribute base type''' (see below) is used to convert raw data into a native type or other object. The attribute's backing data is managed by an attribute data provider which transfers data between the client and the server, or can be extended to server data from outside the OSEE data store.
+
  
 
The default attribute <tt>Name</tt> is required for all artifacts. Other attribute types can be created and associated with any artifact type in the system.
 
The default attribute <tt>Name</tt> is required for all artifacts. Other attribute types can be created and associated with any artifact type in the system.
 
Example: Artifact representing a <tt>User</tt> of an application may have attributes such as <tt>Phone</tt>, <tt>Address</tt>, <tt>City</tt>, etc...
 
 
==Attribute Base Types==
 
 
* String
 
** Word Template Content
 
** Word Whole Document
 
* Date
 
* Boolean
 
* Integer
 
* Floating Point
 
* Enumeration
 
  
 
=Relations=
 
=Relations=
  
A '''relation''' connects two or more artifact instances. A relation is defined by its '''relation type''' which specified what artifact type is allowed on the A side, what artifact type is allowed on the B side, and how many artifact instances are allowed on either side of the relation.
+
A '''relation''' is a link between two artifacts. Like artifacts, they are strongly typed; a relation with the type "attend" might relate a "User" artifact to a "Meeting" artifact. Similarly, a "Customer Requirement" might be linked to the low-level "Software Requirement" that satisfies it.
  
 
=Branch=
 
=Branch=
  
Changes to artifacts, attributes, and relations are managed by a transaction based version control system using fine grained change identification. These changes are managed under branches. By default, OSEE has two system branches:
+
A fundamental feature provided by OSEE is the concurrent management of multiple variants or lines of a product. After a set of requirements is developed, it may become the baseline for variant sets of requirements for similar products. In other words, you may develop the same product for another customer, but have slight changes to the requirements, code, and test for features specific to that customer.  
# '''System Root Branch''' - is the parent of all other branches in the system.  
+
# '''Common Branch''' - is used to store OSEE configuration information such as users, etc.. The Common Branch is a child of the System Root Branch.
+
 
+
Product data is defined in child branches of the System Root Branch.
+
  
A branch goes through the following states during its life-cycle: Created, Modified, Committed, Re-Baselined, Deleted.
+
Historically, this would mean maintaining completely separate "copies" of all the requirements and other artifacts. This is costly to maintain when changes from the baseline artifacts must be propagated to the other product line. The expense of this undertaking increases dramatically as more customers are added, each with their own set of requirements changes.
  
=Configure a New Project in OSEE=
+
For this reason, OSEE provides full '''branch''' functionality. Using OSEE, it is possible to create these variant branches, record where they originated, and to apply changes made to a baseline branch to its variants.
# Create baseline branch
+
## From the Branch Manager's select parent branch -> open context menu -> select "branch" and enter new branch name
+
## From the Branch Manager's select new branch -> open context menu -> access control
+
### Add system administrators with Full Access
+
### Add Everyone with Read Access
+
  
[[Category:OSEE]]
+
By default, OSEE has two system branches. The <tt>System Root Branch</tt> is the parent of all other branches in the system. The <tt>Common</tt> branch is used to store OSEE configuration information, such as users. <tt>Common</tt> is a child of <tt>System Root Branch</tt>.

Revision as of 19:09, 11 September 2009

Artifact

The artifact is the fundamental object in OSEE. All data objects stored within OSEE are artifacts. Artifacts are strongly typed and can store any data throughout the systems engineering lifecycle. Any type of data can be stored in OSEE as an artifact; not only systems engineering data (such as processes and requirements), but also anything from meeting minutes to architecture diagrams.

Attributes

An attribute is data attached to an artifact. A "User" artifact might have "Email," "Name," and "Phone Number" attributes. A "Software Requirement" artifact might have attributes such as "Qualification Method," "Safety Criticality," or "Subsystem."

The default attribute Name is required for all artifacts. Other attribute types can be created and associated with any artifact type in the system.

Relations

A relation is a link between two artifacts. Like artifacts, they are strongly typed; a relation with the type "attend" might relate a "User" artifact to a "Meeting" artifact. Similarly, a "Customer Requirement" might be linked to the low-level "Software Requirement" that satisfies it.

Branch

A fundamental feature provided by OSEE is the concurrent management of multiple variants or lines of a product. After a set of requirements is developed, it may become the baseline for variant sets of requirements for similar products. In other words, you may develop the same product for another customer, but have slight changes to the requirements, code, and test for features specific to that customer.

Historically, this would mean maintaining completely separate "copies" of all the requirements and other artifacts. This is costly to maintain when changes from the baseline artifacts must be propagated to the other product line. The expense of this undertaking increases dramatically as more customers are added, each with their own set of requirements changes.

For this reason, OSEE provides full branch functionality. Using OSEE, it is possible to create these variant branches, record where they originated, and to apply changes made to a baseline branch to its variants.

By default, OSEE has two system branches. The System Root Branch is the parent of all other branches in the system. The Common branch is used to store OSEE configuration information, such as users. Common is a child of System Root Branch.