SEON: Networked Ontology Specification

Software Ontology (SwO)

1. Ontology Description

2. Related Ontologies

Networked ontologies used by SwO:

Ontology Relation Integration Level
SPO - Software Process Ontology

3. Ontology Models

Figure 1 presents the conceptual model of the SwO.

Figure 1. SwO conceptual model.

The Software Ontology (SwO) captures that software products have a complex artifactual nature, being constituted of software artifacts of different nature, including software systems, programs and code.

4. Concepts Definition

The following table shows the definitions for SwO concepts.

Concept Definition
Code Software Item representing a set of computer instructions and data definitions expressed in a programming language or in a form output by an assembler, compiler, or other translator (SEVOCAB).
Machine Code Computer instructions and data definitions expressed in a form output by an assembler, compiler, or other translator, which can be recognized by the processing unit of a computer machine.
Program Software Item which aims at producing a certain result through execution on a computer, in a particular way, given by the Program Specification. A Program is constituted by code, but it is not identical to code. Code can be changed without altering the identity of its program, which is anchored to the program's essential property: its intended specification (Program Specification).
Program Specification A document that describes the purpose (structure and functions) of a program in sufficient detail to permit coding and to facilitate maintenance.
Programming Language A language used to express computer programs.
Software System Software Item that aims at satisfying a specification (System Specification), concerning a desired change in a data structure inside a computer, abstracting away from the behavior.
Source Code A well-formed sequence of computer instructions and data definitions expressed in a programming language, in a form suitable for input to an assembler, compiler,
or other translator.
System Specification

Detailed Concepts


<<subkind>>
Code

SwO::Code
Specializes SPO::Software Item

Software Item representing a set of computer instructions and data definitions expressed in a programming language or in a form output by an assembler, compiler, or other translator (SEVOCAB).


Relations:
Code (0..*) implements (0..1) Program Specification
Code Documentation changes Code
Code Development creates Code
Code Review uses Code
Program (0..1) constituted of (1..*) Code




<<subkind>>
Machine Code

SwO::Machine Code
Specializes SwO::Code

Computer instructions and data definitions expressed in a form output by an assembler, compiler, or other translator, which can be recognized by the processing unit of a computer machine.


Relations:
Machine Code (0..*) generated from (1..1) Source Code




<<subkind>>
Program

SwO::Program
Specializes SPO::Software Item

Software Item which aims at producing a certain result through execution on a computer, in a particular way, given by the Program Specification. A Program is constituted by code, but it is not identical to code. Code can be changed without altering the identity of its program, which is anchored to the program's essential property: its intended specification (Program Specification).


Relations:
Program (0..1) constituted of (1..*) Code
Program (0..1) intends to implement (1..1) Program Specification
Program (0..*) implements (1..*) Software Function Universal
Program (0..*) \intends to satisfy (1..*) Requirement Artifact
Loaded Program Copy (0..*) materialization of (1..1) Program
Software System (0..*) constituted of (1..*) Program




<<subkind>>
Program Specification

SwO::Program Specification
Specializes SPO::Document

A document that describes the purpose (structure and functions) of a program in sufficient detail to permit coding and to facilitate maintenance.


Relations:
Program Specification (0..*) intends to satisfy (0..*) System Specification
Program Specification (0..*) intends to satisfy (1..*) Requirement Artifact
Program Specification (0..*) describes (1..*) Software Function Universal
Code (0..*) implements (0..1) Program Specification
Program (0..1) intends to implement (1..1) Program Specification




<<kind>>
Programming Language

SwO::Programming Language
Specializes UFO::Social Object

A language used to express computer programs.


Relations:
Source Code (0..*) written in (1..*) Programming Language




<<subkind>>
Software System

SwO::Software System
Specializes SPO::Software Item

Software Item that aims at satisfying a specification (System Specification), concerning a desired change in a data structure inside a computer, abstracting away from the behavior.


Relations:
Software System (0..*) constituted of (1..*) Program
Software System (0..1) intends to implement (1..1) System Specification
Software Product (0..1) constituted of (1..*) Software System




<<subkind>>
Source Code

SwO::Source Code
Specializes SwO::Code

A well-formed sequence of computer instructions and data definitions expressed in a programming language, in a form suitable for input to an assembler, compiler,
or other translator.


Relations:
Source Code (0..*) written in (1..*) Programming Language
Machine Code (0..*) generated from (1..1) Source Code




<<subkind>>
System Specification

SwO::System Specification
Specializes SPO::Document




Relations:
Program Specification (0..*) intends to satisfy (0..*) System Specification
Software System (0..1) intends to implement (1..1) System Specification





Software Ontology (SwO)
Mon Sep 25 21:34:14 BRT 2017