The Design Intent Ontology - A content ontology design pattern
type: Ontology
creator: Monika Solanki (monika.solanki@cs.ox.ac.uk)
date: 04-01-2016
description: The Design Intent Ontology (DIO) is a generic ontology that provides the conceptualisation needed to capture the knowledge generated during various phases of the overall design lifecycle. It provides definitions for design artifacts such as requirements, designs, design issues, solutions, justifications and evidence and relationships between them to represent the design process and how these things lead to design outcomes. It draws upon the paradigms of IBIS(Interactive Intent-Based Illustration), argumentation and design rationale. It is linked to W3C PROV by defining the actors in the design process as PROV agents and the design artifacts themselves are PROV entities. However DIO uses a modualrised version of PROV-O, based on Syntactic locality. DIO makes few assumptions about the design process used as the definitions of these activities properly belongs in the software lifecycle and data lifecycle models. The Figure below illustrates the conceptual entities in DIO and their relationships.
version info: 1.1.000

addressedBy
type: ObjectProperty
comment: A relationship stating the design intent addressing a requirement.

captureMethodology
type: ObjectProperty
comment: A relationship identifying the capture methodology for a design issue

contradicts
type: ObjectProperty
domain: Solution
range: Solution
comment: A relationship indicating contradictory issues.

fullfillsRequirements
type: ObjectProperty
inverse of: requirementFulfilledBy
domain: Design
domain: Design Intent Artifact
range: Design Requirements
comment: A relationship between the design and its requirement.

generatedByIntent
type: ObjectProperty
inverse of: generatesIssue
comment: A relationship between the design issue and intent.

generatesIssue
type: ObjectProperty
comment: A relationship between the design intent and issue.

governsDesign
type: ObjectProperty
domain: Design Decision
range: Design
comment: The design decision governing the design.

hasAlternativeSolution
type: ObjectProperty
sub property of: topObjectProperty
inverse of: providesAlternativeSolution
range: Alternative Solution
comment: The realtionship between the issue and an alternative solution for it.

hasArgument
type: ObjectProperty
range: Argument
comment: The relationship between a solution and an argument made against it.

hasComment
type: ObjectProperty
comment: The relationship between a comment and a design intent artifact for which the comment is made.

hasConstraint
type: ObjectProperty
domain: Solution
range: Constraint
comment: A relationship between a solution and a constarint on it.

hasEvidence
type: ObjectProperty
domain: Argument
domain: Justification
range: Evidence
comment: A relationship between a solution and an evidence for it.

hasJustification
type: ObjectProperty
range: Justification
comment: A relationship between a solution and the justification for it.

hasMandatedSolution
type: ObjectProperty
sub property of: topObjectProperty
inverse of: providesMandatedSolution
range: Mandated Solution
comment: A relationship between the issue and its mandated solution.

hasStatus
type: ObjectProperty
domain: Design Issue
range: Status
comment: The relationship between an issue and its status.

identifiedByRequirement
type: ObjectProperty
inverse of: identifies
comment: The relationship between an issue and the requirement that identifies it.

identifies
type: ObjectProperty
comment: A relationship between the requirement and the issue it identifies.

leadsTo
type: ObjectProperty
sub property of: topObjectProperty
domain: Mandated Solution
range: Design Decision
comment: A relationship between a mandated solution and design decision made based on it.

providesAlternativeSolution
type: ObjectProperty
comment: A relationship between an alternative solution and the issue.

providesMandatedSolution
type: ObjectProperty
comment: A relationship between a mandated solution and the issue.

rationaleCapturedUsing
type: ObjectProperty
comment: A relationship between the design rationale and its capture methodology.

refines
type: ObjectProperty
domain: Solution
range: Solution
comment: A relationship between two requirememts when one refines the other.

requirementFulfilledBy
type: ObjectProperty
comment: A relationship between the design and its originating requirements

supports
type: ObjectProperty
range: Argument
range: Justification
comment: A relationship between an agent and a design solution argument or justification.

usesAssumption
type: ObjectProperty
domain: Solution
range: Assumption
comment: A relationship between a solution and the Assumption it makes.

usesHeuristic
type: ObjectProperty
domain: Solution
range: Heuristic
comment: A relationship between a solution and the heuristic iy uses.

Alternative Solution
type: Class
subclass of: Solution
comment: An entity representing the proposed solution.

Argument
type: Class
subclass of: Design Intent Artifact
comment: A reason presented against a proposed solution.

Assumption
type: Class
subclass of: Design Intent Artifact
comment: The assumption on which a proposed solution is based.

Comment
type: Class
subclass of: Design Intent Artifact
comment: A comment made by an agent in response to an argument, a justification or another comment

Constraint
type: Class
subclass of: Design Intent Artifact
comment: A constraint that underlies the proposed solution.

Design
type: Class
comment: A design is a specification of an object, manifested by an agent, intended to accomplish goals, in a particular environment, using a set of components, satisfying a set of requirements, subject to constraints.

Design Artifact
type: Class
comment: The concrete artifact that is implemented or developed following the design that emerges from the design decisions.

Design Decision
type: Class
comment: The final design decision made based on the various alternative solutions proposed. A design decision is driven by a mandated solution.

Design Goal
type: Class
equivalent class: Design Issue
subclass of: Class
  intersection of: Design Intent Artifact
  intersection of: Restriction
    on property: hasAlternativeSolution
    all values from: Alternative Solution
  intersection of: Restriction
    on property: hasMandatedSolution
    all values from: Mandated Solution
  intersection of: Restriction
    on property: hasMandatedSolution
    max qualified cardinality: 1
    on class: Mandated Solution
comment: An entity representing the problem, goal, question or issue the design intent aims to address.

Design Intent
type: Class
subclass of: Design Intent Artifact
comment: A entity defining the notion of a design intent, i.e., the rationale underpinning the choices that are made from the alternatives available during various phases of the overall design lifecycle.

Design Intent Artifact
type: Class
subclass of: Class
  intersection of: Restriction
    on property: wasAttributedTo
    qualified cardinality: 1
    on class: Agent
  intersection of: Restriction
    on property: generatedAtTime
    qualified cardinality: 1
    on data range: dateTime
  intersection of: Restriction
    on property: version
    qualified cardinality: 1
    on data range: string
comment: An entity representing any artifact that plays a part in capturing the design intent. The minimum ontological commitment required for this entity is a brief description of the artifact, the version info and the date.

Design Issue
type: Class
subclass of: Design Intent Artifact
comment: An entity representing the problem, goal, question or issue the design intent aims to address.

Design Requirements
type: Class
subclass of: Design Intent Artifact
comment: An entity capturing the requirements that result in the design intent

Evaluation
type: Class
subclass of: Design Intent Artifact
comment: An entity representing the evaluation that supports the solution.

Evidence
type: Class
subclass of: Design Intent Artifact
comment: An entity representing an evidence that supports a proposed solution.

Heuristic
type: Class
subclass of: Design Intent Artifact
comment: An entity representing the requirements to be fulfilled for realising the solution

Justification
type: Class
subclass of: Design Intent Artifact
comment: A reason supporting the proposed solution.

Mandated Solution
type: Class
subclass of: Solution
comment: An entity representing the solution accepted as a result of the design deliberation process.

Rationale Capture Methodology
type: Class
comment: An entity representing the methodology used to capture the design intent artifact

Solution
type: Class
subclass of: Design Intent Artifact

Status
type: Class
comment: An entity representing the status of a design issue.

Active
type: NamedIndividual
type: Status
comment: The status of an issue when it is active.

onHold
type: NamedIndividual
type: Status
comment: The status of an issue when it is onHold

Resolved
type: NamedIndividual
type: Status
comment: The status of an issue when it is resolved.

Terminated
type: NamedIndividual
type: Status
comment: The status of an issue when it is terminated.