SofTware ARchitecture (STAR) Ontology

IRI:
http://data.ifs.tuwien.ac.at/star/ontology
Version IRI:
http://data.ifs.tuwien.ac.at/star/ontology/1.1.0
Authors:
Marta Sabou
Fajar J. Ekaputra
Contributors (Alphabetical):
Kevin Haller
Tudor Ionescu
Juergen Musil
Daniel Schall
Other visualisation:
Ontology source
WebVOWL visualization

Abstract

This ontology contains a set of concepts and relations on Software Architecture Knowledge as parts of the STAR Enterprise Knowledge Graph prototype. We built this ontology based on (1) ISO/IEC/IEEE 42010 standard on documenting software architectures, (2) relevant existing architecture knowledge ontologies, and (3) the datamodel of a legacy database in a large organization for storing architectural knowledge.

Table of Content

  1. Introduction
  2. Classes
  3. Object Properties
  4. Data Properties
  5. Named Individuals
  6. Annotation Properties
  7. General Axioms
  8. Namespace Declarations

Introduction

The STAR ontology contains 20 concepts and 30 data and object properties. The core parts of the ontology is explained in the following (cf. Figure 1): Design decisions play a key role in the work of software architects, and therefore these are modeled as a core concept in the STAR ontology (DesignDecision). They have effects on architectural qualities (ArchitecturalQuality), which refer to desired characteristics of the designed system such as accuracy, accessibility, availability, autonomy or usability. Design decisions rely for their realization on (i.e., use) architectural elements (ArchitectureElement). These three concepts and their relations emerge as a core modeling pattern in the software architecture domain. Types of architectural elements interesting for the context of our research are design patterns (DesignPattern), design tactics (DesignTactic) and SE methods (SoftwareEngineeringMethod). The design process and its elements are affected by and address a set of context elements (ContextElement). In addition, we includes relevant context elements such as domain (Domain), use cases (UseCase) and requirements (Requirement).
The core elements of STAR ontology
Figure 1. The core elements of the STAR ontology

Classes

Application Domainc back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#Domain

The environment in which the system-of-interest will used.
has super-classes
Context Elementc
is in range of
addressop, originop

Architectural Elementc back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#ArchitecturalElement

An architectural element is an abstract element that describes a unit of architectural knowledge. It can be a design pattern, tactic or software engineering method.
has super-classes
Software Architecture Descriptionc
has sub-classes
Design Patternc, Design Tacticc, Software Engineering Methodc
is in domain of
addressop, contextop, related projectop, related project phaseop
is in range of
endorsementop, negative endorsementop, positive endorsementop, useop

Architectural Qualityc back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#ArchitecturalQuality

A non-functional requirement used to evaluate the performance of a system.
has super-classes
Software Architecture Descriptionc
is in domain of
architectural quality clusterdp

Authorc back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#Author

A person or organization that inserts new ArchitecturalElement instance to the knowledge base.
has super-classes
agentc
is in domain of
createsop

Context Elementc back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#ContextElement

A context element is an abstract element that describes an aspect of an application domain. It can be a domain, domain requirement, use case, project or project phase.
has sub-classes
Application Domainc, Domain Requirementc, Projectc, Project Phasec, Use Casec
is in range of
contextop

Design Decisionc back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#DesignDecision

A description of the set of architectural additions, subtractions and modifications to the software architecture, the rationale, and the design rules, design constraints and additional requirements that (partially) realize one or more requirements on a given architecture.
has super-classes
Software Architecture Descriptionc
is in domain of
decision architectural viewdp

Design Patternc back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#DesignPattern

A general, reusable solution to a commonly occurring problem within a given context in software design.
has super-classes
Architectural Elementc
is in range of
modifiesop
is disjoint with
Design Tacticc, Software Engineering Methodc

Design Tacticc back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#DesignTactic

A design tactic is a design decision that aims to improve one specific design concern of a architectural quality.
has super-classes
Architectural Elementc
is in domain of
modifiesop
is disjoint with
Design Patternc, Software Engineering Methodc

Domain Requirementc back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#Requirement

A software requirement that is specific to an application domain where the system-of-interest will be used.
has super-classes
Context Elementc
is in domain of
contained inop, originop, requirement group/categorydp, requirement purposedp

Employeec back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#Employee

An employee of an organization.
has super-classes
agentc
is in domain of
employee IDdp, endorsementop, has employee roleop, has engineering roleop, has management roleop, involved inop, negative endorsementop, positive endorsementop

Employee Rolec back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#EmployeeRole

The role of employees in an organization
has sub-classes
Engineering Rolec, Management Rolec
is in range of
has employee roleop

Engineering Rolec back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#EngineeringRole

The engineering role of an employee in an organization (e.g. software engineer, test engineer, software architect).
has super-classes
Employee Rolec
is in range of
has engineering roleop
has members
Requirements Engineerni, Software Architectni, Software Engineerni, Software Testerni

Management Rolec back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#ManagementRole

The management role of an employee in an organization (e.g. project manager, product manager).
has super-classes
Employee Rolec
is in range of
has management roleop
has members
Project Leaderni, Project Managerni

Projectc back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#Project

A software project.
has super-classes
Context Elementc
is in range of
involved inop, related projectop

Project Phasec back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#ProjectPhase

A specific timely limited span during the project (e.g. requirement elicitation phase, software design phase, testing phase).
has super-classes
Context Elementc
is in range of
related project phaseop
has members
Deployment Phaseni, Design Phaseni, Implementation Phaseni, Requirements Phaseni, Testing Phaseni

Reference Documentc back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#ReferenceDocument

A document (e.g., website, file) that contains information or documentation about SoftwareArchitectureConcept.
is in domain of
document URLdp, document titledp
is in range of
has reference documentop

Software Architecture Descriptionc back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#SoftwareArchitectureDescription

Software Architecture Description based on ISO 42010.
has sub-classes
Architectural Elementc, Architectural Qualityc, Design Decisionc
is in domain of
has reference documentop
is in range of
createsop, has effect onop, has negative effect onop, has positive effect onop

Software Engineering Methodc back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#SoftwareEngineeringMethod

A systematic approach or process that supports phases of the software design and construction process.
has super-classes
Architectural Elementc
is in domain of
method inputdp, method outputdp, method purposedp, useop
is disjoint with
Design Patternc, Design Tacticc

Use Casec back to ToC or Class ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#UseCase

A list of actions or event steps defining the interactions between a role and a system to achieve a goal.
has super-classes
Context Elementc
is in range of
contained inop

Object Properties

addressop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#address

Relate ArchitectureElement to Domain
has super-properties
contextop
has domain
Architectural Elementc
has range
Application Domainc

contained inop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#containedIn

Relate Requirement to UseCase
has domain
Domain Requirementc
has range
Use Casec

contextop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#context

Relate ArchitectureElement with ContextElement
has sub-properties
addressop, related projectop, related project phaseop
has domain
Architectural Elementc
has range
Context Elementc

createsop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#creates

Relate Author to ArchitectureDescription that they add into the knowledge base.
has domain
Authorc
has range
Software Architecture Descriptionc

endorsementop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#endorsement

An endorsement from Employee to ArchitectureElement; can be negative or positive
has sub-properties
negative endorsementop, positive endorsementop
has domain
Employeec
has range
Architectural Elementc

has effect onop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#hasEffectOn

Causal relation between two ArchitectureDescription elements; can be positive or negative.

has employee roleop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#hasEmployeeRole

Relate Employee to EmployeeRole
has sub-properties
has engineering roleop, has management roleop
has domain
Employeec
has range
Employee Rolec

has engineering roleop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#hasEngineeringRole

Relate Employee to EngineeringRole
has super-properties
has employee roleop
has domain
Employeec
has range
Engineering Rolec

has management roleop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#hasManagementRole

Relate Employee to ManagementRole
has super-properties
has employee roleop
has domain
Employeec
has range
Management Rolec

has negative effect onop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#hasNegativeEffectOn

Negative causal relations between two ArchitectureDescription elements
has super-properties
has effect onop
has range
Software Architecture Descriptionc

has positive effect onop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#hasPositiveEffectOn

Positive causal relations between two ArchitectureDescription elements
has super-properties
has effect onop
has range
Software Architecture Descriptionc

has reference documentop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#hasReferenceDocument

Relate SoftwareArchitectureConcept to ReferenceDocument

involved inop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#involvedIn

Relate Employee to Project
has domain
Employeec
has range
Projectc

modifiesop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#modifies

represent relations between DesignTactic and DesignPattern, whereby the DesignTactic modifies the DesignPattern in order better address an architectural qualities.
has domain
Design Tacticc
has range
Design Patternc

negative endorsementop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#negativeEndorsement

An negative endorsement from Employee to an ArchitectureElement
has super-properties
endorsementop
has domain
Employeec
has range
Architectural Elementc

originop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#origin

Relate Requirement to Domain
has domain
Domain Requirementc
has range
Application Domainc

positive endorsementop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#positiveEndorsement

An positive endorsement from Employee to an ArchitectureElement
has super-properties
endorsementop
has domain
Employeec
has range
Architectural Elementc

related projectop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#relatedProject

Relate ArchitectureElement with Project
has super-properties
contextop
has domain
Architectural Elementc
has range
Projectc

related project phaseop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#relatedProjectPhase

Relate ArchitectureElement with ProjectPhase
has super-properties
contextop
has domain
Architectural Elementc
has range
Project Phasec

useop back to ToC or Object Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#uses

Relate SoftwareEngineeringMethod to DesignTactic or DesignPattern that it used

Data Properties

architectural quality clusterdp back to ToC or Data Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#qualityCluster

Tags/clusters/classifications of an ArchitecturalQuality
has domain
Architectural Qualityc
has range
string

decision architectural viewdp back to ToC or Data Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#decisionArchitecturalView

notes about the architectural view in which a certain design decision takes place
has domain
Design Decisionc
has range
string

document titledp back to ToC or Data Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#documentTitle

ReferenceDocument title
has domain
Reference Documentc
has range
string

document URLdp back to ToC or Data Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#documentURL

ReferenceDocument URL
has domain
Reference Documentc
has range
string

employee IDdp back to ToC or Data Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#employeeID

ID of an employee in an organization
has domain
Employeec
has range
string

method inputdp back to ToC or Data Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#methodInput

Information about the input of a SoftwareEngineeringMethod
has domain
Software Engineering Methodc
has range
string

method outputdp back to ToC or Data Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#methodOutput

Information about the output of a SoftwareEngineeringMethod
has domain
Software Engineering Methodc
has range
string

method purposedp back to ToC or Data Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#methodPurpose

Information about the method used in a SoftwareEngineeringMethod
has domain
Software Engineering Methodc
has range
string

requirement group/categorydp back to ToC or Data Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#requirementGroup

Tags/groups/clusters/classifications of a Requirement
has domain
Domain Requirementc
has range
string

requirement purposedp back to ToC or Data Property ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#requirementPurpose

Information on the purpose of certain Requirement
has domain
Domain Requirementc
has range
string

Named Individuals

Deployment Phaseni back to ToC or Named Individual ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#Deployment

belongs to
Project Phasec

Design Phaseni back to ToC or Named Individual ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#Design

belongs to
Project Phasec

Implementation Phaseni back to ToC or Named Individual ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#Implementation

belongs to
Project Phasec

Project Leaderni back to ToC or Named Individual ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#ProjectLeader

belongs to
Management Rolec

Project Managerni back to ToC or Named Individual ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#ProjectManager

belongs to
Management Rolec

Requirements Engineerni back to ToC or Named Individual ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#RequirementsEngineer

belongs to
Engineering Rolec

Requirements Phaseni back to ToC or Named Individual ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#Requirements

belongs to
Project Phasec

Software Architectni back to ToC or Named Individual ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#SoftwareArchitect

belongs to
Engineering Rolec

Software Engineerni back to ToC or Named Individual ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#SoftwareEngineer

belongs to
Engineering Rolec

Software Testerni back to ToC or Named Individual ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#SoftwareTester

belongs to
Engineering Rolec

Testing Phaseni back to ToC or Named Individual ToC

IRI: http://data.ifs.tuwien.ac.at/star/ontology#Testing

belongs to
Project Phasec

Annotation Properties

contributorap back to ToC or Annotation Property ToC

IRI: http://purl.org/dc/elements/1.1/contributor

creatorap back to ToC or Annotation Property ToC

IRI: http://purl.org/dc/elements/1.1/creator

descriptionap back to ToC or Annotation Property ToC

IRI: http://purl.org/dc/elements/1.1/description

titleap back to ToC or Annotation Property ToC

IRI: http://purl.org/dc/elements/1.1/title

General Axioms

All Disjoint Classes back to ToC

Design Patternc, Design Tacticc, Software Engineering Methodc

Namespace Declarations back to ToC

default namespace
http://data.ifs.tuwien.ac.at/star/ontology#
foaf
http://xmlns.com/foaf/0.1/
dc
http://purl.org/dc/elements/1.1/
ontology
http://data.ifs.tuwien.ac.at/star/ontology/
owl
http://www.w3.org/2002/07/owl#
rdf
http://www.w3.org/1999/02/22-rdf-syntax-ns#
rdfs
http://www.w3.org/2000/01/rdf-schema#
xsd
http://www.w3.org/2001/XMLSchema#

This HTML document was obtained by processing the OWL ontology source code through LODE, Live OWL Documentation Environment, developed by Silvio Peroni.