21
©2019 Semiodesk GmbH, Germany. All rights reserved. modom.io in the Field Improving Software Engineering with Ontologies by Moritz Eberl

Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

modom.io in the Field

Improving Software Engineering with Ontologies

by Moritz Eberl

Page 2: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Our Client

•  CAD Solutions for Engineers •  Tools for Planning & Documenting •  Online Parts Platform •  35.000 Customers

Page 3: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Available Technologies Electrical Engineering Cabinet Engineering Electrical Installation

Piping & Instrumentation

Fluid Engineering

Building Automation Electrical Engineering

Cabinet Engineering

Electrical Installation

Page 4: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

That‘s a lot of Domains

•  Many different Standards

•  Numerous Vendors with different Solutions

•  Knowledge spread through the Company

Page 5: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Challenges •  Developers are specializing on certain domains

Decreased Agility Knowledge Loss

Risks:

Page 6: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Challenges •  Developers are specializing on certain domains •  Coordination Overhead

Risks:

Uneccessary Meetings Slower Development

Page 7: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Challenges •  Developers are specializing on certain domains •  Coordination Overhead •  Existing Application

Risks:

Implicit Knowledge

Feature Duplication

Page 8: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Goals: How to meet these challenges?

Consolidated Data Modeling

Internationalization

Defined Modeling Processes

Documentation

Page 9: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Current Process

Requirements Engineers

Domain Knowledge Technical Knowledge

Software Engineers User Story

Product Manager Feature Concept

Domain Knowledge

Feature

Suggestions Sales & Consultants

Agile Data Modeling?

Page 10: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Possible Solutions

•  UML Modeling •  Wiki Documentation •  Manual adaptation to code

Problems: •  No single source of truth •  High Maintenence •  Internationalization problematic •  Provenance Data

Conventional

Page 11: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Possible Solutions

•  Create Model in an Ontology •  Protégé as Tool •  Versioning through Git •  Manual adaptation to code

Problems: •  Limited modeling experience •  Adaptation into Code still requires manual effort

Semantic

Page 12: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Our Solution Modom.io Web-Based Ontology Modeling Platform

Page 13: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Features

Simplified Modeling •  Describe Concepts semantically •  Reduced Complexity and similar to Object-Orientation

Page 14: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Features

Simplified Modeling

Time Saving •  Load descriptions and images from DBPedia •  Translation service included

Page 15: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Features

Simplified Modeling

Time Saving

Generation of Artifacts •  Documentation •  Source Code

Page 16: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Features

History/Provenance through Version Control •  Github •  Azure DevOps

Simplified Modeling

Time Saving

Generation of Artifacts

Page 17: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Resulting Process

Requirements Engineers

Domain Knowledge

Technical Knowledge

Software Engineers

Product Manager Feature Concept

Domain Knowledge

Feature

Suggestions Sales & Consultants

User Story

Domain Model

Page 18: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Resulting Process

Model Repository Application Repository

IDE Modom.io

Artifact (e.g. NuGet Package)

Application Dependency Build

Build

Change Change

Documentation (e.g. Markdown Files)

Page 19: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Conclusion

•  Generated Artifacts were key for fast implementation •  Code delivered a foundation •  Documenation the right understanding

•  Solid Data Migration Strategy still necessary •  At least now changes are transparent

•  Fewer Regressions •  Testing can be directed •  Conflicts are identified earlier

Page 20: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Outlook

•  Loading & Linking of existing Concepts •  AutomationML •  ifcOWL •  …

•  Generate all the boring code •  Validations

•  Improve usability •  Visual Editor

Page 21: Improving Software Engineering with Ontologies · ElectricalCabinetElectrical Engineering Installation Engineering Piping & Instrumentation ... Software Engineers User Story Product

©2019 Semiodesk GmbH, Germany. All rights reserved.

Thank you! Visit us at our booth!

Icons made by Eucalyp from www.flaticon.com