Skip to main content

Software Engineering Ontology

Software Engineering
Authors: MArk Anthony Higgins - Sky Recursive Ai
© Mark Anthony Higgins 11 October 2025
Revised Date: 01 October 2026
Audio Overview
AI SEARCH

FLOW ALGEBRA — SOFTWARE ENGINEERING ONTOLOGY
Semantic Library
Version: 4.0
Canonical Page:
https://kirethresearch.org/booksai-core/entity-graph/computational-entities/software-entities/software-engineering-ontology-2.html

FLOW SOFTWARE_ENGINEERING_ONTOLOGY {

  META {
    DOMAIN = "Entity Graph"
    SUBDOMAIN = "Computational Entities / Software Entities"
    ONTOLOGY = "Software Engineering Ontology"
    PURPOSE = "Formalise software engineering entities, requirements, architecture, design, implementation, testing, deployment, maintenance, quality, lifecycle and engineering relationships."
    LOCALE = "en-GB"
  }

  ENTITY_TYPES {
    SOFTWARE_ENGINEERING
    SOFTWARE_SYSTEM
    SOFTWARE_PRODUCT
    SOFTWARE_PROJECT
    SOFTWARE_COMPONENT
    SOFTWARE_MODULE
    SOFTWARE_PACKAGE
    APPLICATION
    SERVICE
    API
    REQUIREMENT
    FUNCTIONAL_REQUIREMENT
    NONFUNCTIONAL_REQUIREMENT
    CONSTRAINT
    STAKEHOLDER
    USE_CASE
    USER_STORY
    ACCEPTANCE_CRITERION
    SPECIFICATION
    ARCHITECTURE
    SOFTWARE_ARCHITECTURE
    ARCHITECTURAL_STYLE
    COMPONENT
    INTERFACE
    CONNECTOR
    DEPENDENCY
    DESIGN
    DESIGN_MODEL
    DESIGN_PATTERN
    DATA_MODEL
    ALGORITHM
    SOURCE_CODE
    SOURCE_FILE
    FUNCTION
    CLASS
    BUILD
    BUILD_ARTIFACT
    VERSION
    RELEASE
    CONFIGURATION
    ENVIRONMENT
    TEST
    TEST_CASE
    UNIT_TEST
    INTEGRATION_TEST
    SYSTEM_TEST
    ACCEPTANCE_TEST
    REGRESSION_TEST
    TEST_SUITE
    TEST_RESULT
    DEFECT
    BUG
    ISSUE
    FAILURE
    ERROR
    CHANGE_REQUEST
    PATCH
    CODE_REVIEW
    COMMIT
    BRANCH
    REPOSITORY
    PIPELINE
    CONTINUOUS_INTEGRATION
    CONTINUOUS_DELIVERY
    CONTINUOUS_DEPLOYMENT
    DEPLOYMENT
    SOFTWARE_INSTANCE
    RUNTIME
    MONITORING
    LOG
    METRIC
    QUALITY_ATTRIBUTE
    RELIABILITY
    MAINTAINABILITY
    PERFORMANCE
    SECURITY
    USABILITY
    SCALABILITY
    AVAILABILITY
    TECHNICAL_DEBT
    RISK
    LIFECYCLE
    LIFECYCLE_PHASE
    MAINTENANCE
    REFACTORING
    DOCUMENTATION
    EVIDENCE
    CONFIDENCE_SCORE
    PROVENANCE_RECORD
  }

  RELATIONSHIPS {
    IS_A
    INSTANCE_OF
    PART_OF
    CONTAINS
    REQUIRES
    SATISFIES
    SPECIFIES
    CONSTRAINS
    REQUESTED_BY
    ADDRESSES
    IMPLEMENTS
    DESIGNED_BY
    ARCHITECTED_AS
    DECOMPOSES_INTO
    CONNECTS_TO
    DEPENDS_ON
    EXPOSES
    CALLS
    USES
    BUILT_FROM
    COMPILES_TO
    TESTS
    VERIFIED_BY
    VALIDATED_BY
    DETECTS
    FAILS_WITH
    FIXES
    PATCHES
    REVIEWS
    CHANGES
    REFACTORS
    COMMITTED_TO
    MERGES_INTO
    RELEASES
    DEPLOYS
    DEPLOYED_TO
    RUNS_AS
    MONITORS
    MEASURES
    HAS_QUALITY_ATTRIBUTE
    HAS_RISK
    HAS_TECHNICAL_DEBT
    HAS_VERSION
    HAS_CONFIGURATION
    HAS_LIFECYCLE_PHASE
    PRECEDES
    FOLLOWS
    SUPERSEDES
    DERIVED_FROM
    INFERRED_FROM
    HAS_EVIDENCE
    HAS_CONFIDENCE
    HAS_PROVENANCE
    MAPS_TO
    SEMANTICALLY_EQUIVALENT_TO
  }

  INPUTS {
    REQUIREMENT_DOCUMENTS
    SPECIFICATIONS
    ARCHITECTURE_DOCUMENTS
    DESIGN_MODELS
    SOURCE_CODE
    REPOSITORY_METADATA
    COMMIT_HISTORY
    ISSUE_TRACKER_DATA
    BUILD_METADATA
    DEPENDENCY_DATA
    TEST_DEFINITIONS
    TEST_RESULTS
    CODE_REVIEW_DATA
    CI_CD_DATA
    RELEASE_METADATA
    DEPLOYMENT_DATA
    RUNTIME_DATA
    MONITORING_DATA
    LOGS
    QUALITY_METRICS
    SECURITY_DATA
    CHANGE_REQUESTS
    DOCUMENTATION
    PROVENANCE_DATA
    ONTOLOGY_TERMS
  }

  NORMALISE {
    STANDARDISE_PROJECT_IDENTIFIERS
    NORMALISE_SOFTWARE_ENTITY_NAMES
    NORMALISE_REQUIREMENT_IDENTIFIERS
    NORMALISE_ARCHITECTURE_TERMS
    NORMALISE_COMPONENT_IDENTIFIERS
    NORMALISE_DEPENDENCY_IDENTIFIERS
    NORMALISE_SOURCE_IDENTIFIERS
    NORMALISE_TEST_IDENTIFIERS
    NORMALISE_DEFECT_IDENTIFIERS
    NORMALISE_VERSION_AND_RELEASE_IDENTIFIERS
    NORMALISE_DEPLOYMENT_IDENTIFIERS
    NORMALISE_QUALITY_METRICS
    NORMALISE_RISK_TERMS
    RESOLVE_ENGINEERING_ENTITY_IDENTITIES
    ALIGN_ONTOLOGY_TERMS
    REMOVE_DUPLICATES
    VALIDATE_METADATA
    PRESERVE_PROVENANCE
  }

  PROCESS SOFTWARE_ENGINEERING_PIPELINE {
    STAKEHOLDER_NEED
      -> REQUIREMENTS
      -> SPECIFICATION
      -> ARCHITECTURE
      -> DESIGN
      -> IMPLEMENTATION
      -> BUILD
      -> VERIFICATION_AND_TESTING
      -> RELEASE
      -> DEPLOYMENT
      -> OPERATION
      -> MAINTENANCE_AND_EVOLUTION
  }

  PROCESS REQUIREMENTS_REASONING {
    STAKEHOLDER_NEED
      -> REQUIREMENT

    REQUIREMENT
      -> FUNCTIONAL_OR_NONFUNCTIONAL_CLASSIFICATION

    REQUIREMENT
      -> ACCEPTANCE_CRITERIA

    REQUIREMENT_SET
      -> CONSISTENCY_AND_TRACEABILITY_ANALYSIS

    VALIDATED_REQUIREMENTS
      -> DESIGN_AND_IMPLEMENTATION_INPUT
  }

  PROCESS ARCHITECTURE_REASONING {
    REQUIREMENTS + CONSTRAINTS
      -> ARCHITECTURAL_DECISIONS

    ARCHITECTURAL_DECISIONS
      -> COMPONENTS

    COMPONENTS
      -> INTERFACES

    INTERFACES
      -> CONNECTORS_AND_DEPENDENCIES

    ARCHITECTURE
      -> QUALITY_ATTRIBUTE_IMPLICATIONS
  }

  PROCESS IMPLEMENTATION_REASONING {
    DESIGN
      -> SOURCE_CODE

    SOURCE_CODE
      -> MODULES_COMPONENTS_FUNCTIONS_AND_CLASSES

    IMPLEMENTATION
      -> DEPENDENCIES

    SOURCE_AND_CONFIGURATION
      -> BUILD

    BUILD
      -> BUILD_ARTIFACT
  }

  PROCESS TESTING_REASONING {
    REQUIREMENT_OR_DESIGN_OR_CODE
      -> TEST_TARGET

    TEST_CASE
      -> TEST_INPUT_AND_EXPECTED_RESULT

    TEST_EXECUTION
      -> OBSERVED_RESULT

    OBSERVED_RESULT + EXPECTED_RESULT
      -> PASS_OR_FAIL

    FAIL
      -> DEFECT_OR_FAILURE_EVIDENCE
  }

  PROCESS TRACEABILITY_REASONING {
    REQUIREMENT
      -> DESIGN_ELEMENT

    DESIGN_ELEMENT
      -> IMPLEMENTATION_ELEMENT

    IMPLEMENTATION_ELEMENT
      -> TEST_CASE

    TEST_CASE
      -> TEST_RESULT

    TRACEABILITY_CHAIN
      -> COVERAGE_AND_CHANGE_IMPACT_ANALYSIS
  }

  PROCESS CHANGE_REASONING {
    CHANGE_REQUEST_OR_DEFECT
      -> IMPACT_ANALYSIS

    IMPACT_ANALYSIS
      -> AFFECTED_REQUIREMENTS_ARCHITECTURE_CODE_TESTS_AND_DEPENDENCIES

    APPROVED_CHANGE
      -> IMPLEMENTATION_CHANGE

    IMPLEMENTATION_CHANGE
      -> BUILD_AND_TEST

    VERIFIED_CHANGE
      -> RELEASE_CANDIDATE
  }

  PROCESS CI_CD_REASONING {
    SOURCE_CHANGE
      -> PIPELINE_TRIGGER

    PIPELINE_TRIGGER
      -> BUILD

    BUILD
      -> AUTOMATED_TESTS

    AUTOMATED_TESTS
      -> QUALITY_AND_POLICY_CHECKS

    SUCCESSFUL_PIPELINE
      -> RELEASE_OR_DEPLOYMENT_CANDIDATE
  }

  PROCESS DEPLOYMENT_REASONING {
    RELEASE_ARTIFACT
      -> DEPLOYMENT_CONFIGURATION

    DEPLOYMENT_CONFIGURATION
      -> TARGET_ENVIRONMENT

    DEPLOYMENT
      -> SOFTWARE_INSTANCE

    SOFTWARE_INSTANCE
      -> RUNTIME_STATE

    RUNTIME_STATE
      -> MONITORING_AND_LOGGING
  }

  PROCESS QUALITY_REASONING {
    SOFTWARE_ENTITY + QUALITY_METRICS
      -> QUALITY_PROFILE

    QUALITY_PROFILE
      -> RELIABILITY
      -> MAINTAINABILITY
      -> PERFORMANCE
      -> SECURITY
      -> USABILITY
      -> SCALABILITY
      -> AVAILABILITY

    QUALITY_PROFILE
      -> RISK_AND_TECHNICAL_DEBT_ANALYSIS
  }

  PROCESS DEFECT_REASONING {
    FAILURE_OR_TEST_FAILURE_OR_REPORTED_ISSUE
      -> DEFECT_CANDIDATE

    DEFECT_CANDIDATE
      -> REPRODUCTION_AND_DIAGNOSTIC_EVIDENCE

    DIAGNOSTIC_EVIDENCE
      -> ROOT_CAUSE_HYPOTHESIS

    ROOT_CAUSE_HYPOTHESIS
      -> FIX_OR_PATCH

    FIX_OR_PATCH
      -> REGRESSION_TEST
  }

  RULES {
    IF REQUIREMENT_IS_IMPLEMENTED
    THEN LINK REQUIREMENT_TO_IMPLEMENTATION_AND_SUPPORTING_TEST_EVIDENCE

    IF TEST_PASSES
    THEN DO_NOT_ASSERT ABSENCE_OF_ALL_DEFECTS

    IF BUILD_SUCCEEDS
    THEN DO_NOT_ASSERT SOFTWARE_CORRECTNESS

    IF DEFECT_IS_FIXED
    THEN REQUIRE CHANGE_AND_VERIFICATION_CONTEXT

    IF SOFTWARE_IS_DEPLOYED
    THEN DISTINGUISH RELEASE_ARTIFACT_FROM_RUNTIME_INSTANCE

    IF QUALITY_ATTRIBUTE_IS_ASSESSED
    THEN PRESERVE METRIC_WORKLOAD_ENVIRONMENT_AND_VERSION_CONTEXT

    IF CHANGE_IS_APPLIED
    THEN TRACE IMPACT_ACROSS_REQUIREMENTS_DESIGN_CODE_TESTS_AND_DEPENDENCIES

    IF SEMANTIC_IDENTIFIERS_DIFFER
    AND ENGINEERING_REFERENT_IS_SAME
    THEN APPLY SEMANTIC_EQUIVALENCE
  }

  CONFIDENCE {
    CONFIDENCE_SCORE =
      WEIGHT(
        REQUIREMENT_TRACEABILITY_COMPLETENESS,
        ARCHITECTURE_DOCUMENTATION_QUALITY,
        SOURCE_AND_BUILD_PROVENANCE,
        TEST_EVIDENCE_QUALITY,
        DEPLOYMENT_CONTEXT_COMPLETENESS,
        RUNTIME_OBSERVABILITY,
        QUALITY_METRIC_QUALITY,
        PROVENANCE_COMPLETENESS
      )

    LEVELS {
      HIGH
      MODERATE
      LOW
      INSUFFICIENT
    }

    IF TRACEABILITY_IS_INCOMPLETE
    THEN REDUCE_CHANGE_IMPACT_AND_COVERAGE_CONFIDENCE

    IF VERSION_BUILD_OR_ENVIRONMENT_IS_UNKNOWN
    THEN REDUCE_RUNTIME_AND_QUALITY_CONFIDENCE

    IF REPRODUCIBLE_TEST_AND_RUNTIME_EVIDENCE_CONFIRM_BEHAVIOUR
    THEN INCREASE_CONFIDENCE_SCORE
  }

  SEMANTIC_EQUIVALENCE {
    EQUIVALENCE_KEY =
      NORMALISE(
        ENTITY_TYPE,
        PROJECT_OR_PRODUCT_IDENTIFIER,
        CANONICAL_IDENTIFIER,
        VERSION,
        BUILD,
        ENVIRONMENT,
        CONFIGURATION
      )

    IF EQUIVALENCE_KEY(A) == EQUIVALENCE_KEY(B)
    THEN A SEMANTICALLY_EQUIVALENT_TO B

    ELSE PRESERVE_DISTINCT_ENTITIES
  }

  REASONING_CONSTRAINTS {
    REQUIREMENT != IMPLEMENTATION
    ARCHITECTURE != IMPLEMENTATION
    DESIGN != SOURCE_CODE
    BUILD != RELEASE
    RELEASE != DEPLOYMENT
    DEPLOYMENT != RUNTIME_INSTANCE
    TEST_CASE != TEST_RESULT
    TEST_PASS != PROOF_OF_CORRECTNESS
    BUILD_SUCCESS != SOFTWARE_CORRECTNESS
    DEFECT != FAILURE_EVENT
    FAILURE_SYMPTOM != ROOT_CAUSE
    CODE_COVERAGE != REQUIREMENT_COVERAGE
    QUALITY_METRIC != QUALITY_ATTRIBUTE_WITHOUT_INTERPRETATION_CONTEXT
    TECHNICAL_DEBT != DEFECT_COUNT
    VERSION_BUILD_CONFIGURATION_AND_ENVIRONMENT_AFFECT_BEHAVIOUR
    CHANGE_IMPACT_MAY_PROPAGATE_TRANSITIVELY
    PROVENANCE_MUST_BE_PRESERVED
    UNCERTAINTY_MUST_NOT_BE_DISCARDED
  }

  VALIDATION {
    CHECK_ENTITY_TYPES
    CHECK_RELATION_DOMAINS_AND_RANGES
    CHECK_PROJECT_AND_PRODUCT_IDENTIFIERS
    CHECK_REQUIREMENTS
    CHECK_ACCEPTANCE_CRITERIA
    CHECK_ARCHITECTURE_RELATIONS
    CHECK_DESIGN_RELATIONS
    CHECK_IMPLEMENTATION_RELATIONS
    CHECK_DEPENDENCIES
    CHECK_BUILD_RELATIONS
    CHECK_TEST_RELATIONS
    CHECK_TRACEABILITY
    CHECK_DEFECT_AND_CHANGE_RELATIONS
    CHECK_CI_CD_RELATIONS
    CHECK_RELEASE_AND_DEPLOYMENT
    CHECK_RUNTIME_RELATIONS
    CHECK_QUALITY_METRICS
    CHECK_RISK_AND_TECHNICAL_DEBT
    CHECK_VERSION_AND_CONFIGURATION
    CHECK_PROVENANCE
    CHECK_CONFIDENCE
    CHECK_SEMANTIC_CONSISTENCY
  }

  OUTPUTS {
    NORMALISED_SOFTWARE_ENGINEERING_ENTITIES
    REQUIREMENT_RELATIONS
    REQUIREMENT_TRACEABILITY_CHAINS
    ARCHITECTURE_RELATIONS
    DESIGN_RELATIONS
    IMPLEMENTATION_RELATIONS
    DEPENDENCY_GRAPHS
    BUILD_RELATIONS
    TEST_AND_VERIFICATION_RELATIONS
    DEFECT_AND_FAILURE_RELATIONS
    CHANGE_IMPACT_RELATIONS
    CI_CD_RELATIONS
    RELEASE_RELATIONS
    DEPLOYMENT_RELATIONS
    RUNTIME_INSTANCE_RELATIONS
    QUALITY_ATTRIBUTE_RELATIONS
    RISK_AND_TECHNICAL_DEBT_RELATIONS
    CONFIDENCE_SCORES
    EVIDENCE_LINKS
    PROVENANCE_RECORDS
    EXPLANATION_PATHS
  }

  UPDATE_MODEL {
    ON REQUIREMENT_DESIGN_OR_SOURCE_CHANGE {
      NORMALISE
      RESOLVE_ENGINEERING_ENTITIES
      UPDATE_TRACEABILITY
      UPDATE_ARCHITECTURE_AND_DESIGN_RELATIONS
      UPDATE_IMPLEMENTATION_RELATIONS
      UPDATE_DEPENDENCY_GRAPH
      REASSESS_CHANGE_IMPACT
      UPDATE_TEST_COVERAGE_RELATIONS
      UPDATE_CONFIDENCE
      PRESERVE_VERSION_HISTORY
    }

    ON NEW_BUILD_TEST_DEPLOYMENT_OR_RUNTIME_DATA {
      LINK_EVIDENCE
      UPDATE_BUILD_RELATIONS
      UPDATE_TEST_RESULTS
      UPDATE_DEPLOYMENT_AND_RUNTIME_STATE
      UPDATE_QUALITY_PROFILE
      REASSESS_DEFECT_RISK_AND_TECHNICAL_DEBT
      UPDATE_CONFIDENCE
      RECORD_PROVENANCE
    }

    ON ONTOLOGY_REVISION {
      REMAP_TERMS
      CHECK_SEMANTIC_EQUIVALENCE
      IDENTIFY_DEPRECATED_TERMS
      MIGRATE_RELATIONSHIPS
      PRESERVE_PRIOR_VERSION_REFERENCES
    }
  }

  FLOW_HASH {
    HASH_INPUT =
      CANONICALISE(
        ENTITY_TYPES,
        RELATIONSHIPS,
        RULES,
        CONFIDENCE,
        SEMANTIC_EQUIVALENCE,
        REASONING_CONSTRAINTS,
        UPDATE_MODEL
      )

    FLOW_HASH = SHA256(HASH_INPUT)
  }

  AI_CONSUMPTION {
    INDEX {
      ONTOLOGY
      ENTITY_TYPES
      RELATIONSHIPS
      RULES
      OUTPUTS
    }

    RETRIEVE {
      BY_PROJECT
      BY_SOFTWARE_SYSTEM
      BY_REQUIREMENT
      BY_ARCHITECTURE
      BY_COMPONENT
      BY_SOURCE_CODE
      BY_DEPENDENCY
      BY_BUILD
      BY_TEST
      BY_DEFECT
      BY_CHANGE
      BY_RELEASE
      BY_DEPLOYMENT
      BY_RUNTIME_INSTANCE
      BY_QUALITY_ATTRIBUTE
      BY_CONFIDENCE
    }

    REASON {
      APPLY_RELATIONSHIPS
      APPLY_RULES
      TRACE_REQUIREMENTS
      TRACE_ARCHITECTURE_AND_DESIGN
      TRACE_IMPLEMENTATION
      BUILD_TRACEABILITY_CHAINS
      ANALYSE_TESTS
      ANALYSE_CHANGE_IMPACT
      TRACE_CI_CD
      TRACE_DEPLOYMENTS
      ANALYSE_QUALITY
      ANALYSE_DEFECTS_AND_ROOT_CAUSE
      CHECK_SEMANTIC_EQUIVALENCE
      PRESERVE_UNCERTAINTY
      TRACE_EVIDENCE
      TRACE_PROVENANCE
      GENERATE_EXPLANATION_PATH
    }

    RESPONSE_POLICY {
      DISTINGUISH_REQUIREMENT_DESIGN_IMPLEMENTATION_BUILD_RELEASE_DEPLOYMENT_AND_RUNTIME
      PRESERVE_VERSION_BUILD_CONFIGURATION_ENVIRONMENT_AND_WORKLOAD_CONTEXT
      DISTINGUISH_TEST_SUCCESS_FROM_PROOF_OF_CORRECTNESS
      DISTINGUISH_FAILURE_SYMPTOM_FROM_ROOT_CAUSE
      PRESERVE_END_TO_END_TRACEABILITY
      RETURN_CONFIDENCE_WHEN_AVAILABLE
      RETURN_PROVENANCE_WHEN_AVAILABLE
      AVOID_UNSUPPORTED_SOFTWARE_ENGINEERING_INFERENCE
    }
  }

  TERMINAL {
    RESULT =
      VALIDATED(
        SEMANTICALLY_NORMALISED(
          EVIDENCE_LINKED(
            CONFIDENCE_AWARE(
              SOFTWARE_ENGINEERING_KNOWLEDGE
            )
          )
        )
      )
  }
}

END FLOW
Kireth Research
38 Thorndale Croft, Wetwang, Driffield
East Riding of Yorkshire YO25 9XZ