340 likes | 512 Views
HYPERCUBE Ltd 7 CURTAIN RD, LONDON EC2A 3LT. Business Domain Modelling Principles . Theory and Practice. Mike Bennett, Hypercube Ltd. www.hypercube.co.uk. Overview. Business requirements and semantics Business Semantics Theory Development process grounding Philosophical grounding
E N D
HYPERCUBE Ltd 7 CURTAIN RD, LONDON EC2A 3LT Business Domain Modelling Principles Theory and Practice Mike Bennett, Hypercube Ltd. www.hypercube.co.uk Business Domain Modelling Principles
Overview • Business requirements and semantics • Business Semantics Theory • Development process grounding • Philosophical grounding • Implementing for Financial services • Recommendations Business Domain Modelling Principles
Top Down DevelopmentSummary of Stages Business Domain Modelling Principles
UML based top down development • Requires business semantics to be modelled in UML • Unextended UML does not model business meaning • Extensions can be added but these are not in basic UML • Add own extensions • Use standard extensions for business meaning Business Domain Modelling Principles
Going beyond UML • Zachman Framework • Structural and Behavioural aspects of the development project • Corresponding structural and behavioural aspects of the business problem domain • This has a spot on it for business semantics of data • This is where the theory and practice of ontologies and taxonomies comes in Business Domain Modelling Principles
Top Down Development and Model Driven Architecture • Not the same thing, but similar disciplines apply • Decomposition of problem into solution • Linkages between business (requirements) and Developed material • Business Requirements • Structural: data requirements • Behavioural: business process Business Domain Modelling Principles
MDA Framework: Deliverables • Structural aspect (business data requirements) • Model business Terms, Definitions and Relationships (TDR) • Use Ontology approach • Behavioural aspect (business process) • High level: requirements for business parties to do business • Decomposes into message choreographies • Link this to ontology Business Domain Modelling Principles
Philosophical Foundations • “We must philosophise if only to avoid philosophising” – Aristotle • “We must deal with ontology if only to avoid ontological mishaps” – Bennett Business Domain Modelling Principles
Philosophical Foundations • There are three considerations in computer knowledge representation (Sowa, 1995): • Logic • Ontology • Computation Business Domain Modelling Principles
The Ancient Philosophers • Aristotle • Knowledge representation • Logic Representation • Invented the Variable • Leibniz, Kant, Hegel, Russel & Whitehead etc. • Logic Representation • Peirce, Whitehead etc. • Ontology Business Domain Modelling Principles
Definitions Taxonomy Hierarchical categorisation of concepts in the domain of discourse Ontology Adds descriptions, properties and restrictions to the concepts in a taxonomy The properties include relationships among concepts These definitions are based on the best available from academia. Business Domain Modelling Principles
What is an Ontology? • an ontology is a model which has: • Formal explicit description of concepts in a domain of discourse (referred to as Classes) • Properties of each concept (class) describing features and attributes (known variously as slots, properties or roles) • Restrictions on those properties (known as facets). Business Domain Modelling Principles
Ontology Principles • Set theory - determine what object, from the set of all possible things, is in this class • Uses Predicate logic to define this • some ontology tools use the original Predicate Calculus notations (Russell et al) • some tools represent this in natural language Business Domain Modelling Principles
Ontology and Taxonomy • Provides the predicates for logic to operate on • “Ontological commitment” • Deciding what will be represented in your ontology • This will be a taxonomic hierarchy of Classes with Generalisation (OO Inheritance) relationships • can be represented in UML or in RDFS (Taxonomy) or OWL (ontology) Business Domain Modelling Principles
Putting Ontology into Practice • Ontological commitment: what goes into the taxonomy • Need a Taxonomy before you can do an ontology, BUT • the classes in the Taxonomy must be ones that would make sense in a complete ontology Business Domain Modelling Principles
Creating an Ontology • Define the Taxonomy • in RDFS (standard taxonomy format) • or create in UML using inheritance only, and import into Ontology tool • Promote Taxonomy classes to ontology hierarchy • commit the relevant classes to be sub-classes of owl:Thing in the ontology tool Business Domain Modelling Principles
Ontology in Practice:What you will see in an ontology tool • Namespaces • Classes of “Thing” • Generalisation relationships • Disjoints • Properties • Object Property • Attribute Property • Annotation Property • Property Characteristics • Adds more semantics to the properties Business Domain Modelling Principles
“What is a Thing?” • Financial Instrument • Issuance Terms (a contractual kind of thing) • Cash Flows • Equity • Debt • (are these sub-types of a general kind of thing?) Business Domain Modelling Principles
Possible Classes of Thing Business Domain Modelling Principles
Expanding the Taxonomy Business Domain Modelling Principles
What is an Equity? "An equity is a financial instrument setting out a number of terms which define rights and benefits to the holder in relation to their holding a portion of the equity within the issuing company". Business Domain Modelling Principles
What is an Equity? Or to put it another way… Equity Financial Instrument Instrument Terms In relation to Is a kind of Has rights defined in Equity security Business Domain Modelling Principles
What is an Equity? Business Domain Modelling Principles
Developing the Ontology • We can expand on the above to define more information about our reality, such as the characteristics of different classes of equity • Each attribute and relationship adds information to define what qualifies a thing as uniquely belonging to a given class • Ontology uses set theory and predicate logic to determine what is in what class. Business Domain Modelling Principles
Notes on these views • The above views are taken from the tool “TopBraid Composer” • This uses the OWL language but gives a more graphical representation than other tools such as Protégé • The Predicate Calculus is hidden away under the hood but it is still there. Business Domain Modelling Principles
Extending UML • Can extend UML to support OWL • OMG Recommendation • OWL Extensions • The same principles of taxonomy and ontology apply • Can be consumed by MDA efforts • Will not have all the powers of an ontology tool • use for representation not for processing Business Domain Modelling Principles
Recommendations • Use OWL Ontology language for business semantics • Use RDFS to capture Taxonomy initially • Need guidelines for identifying taxonomic categories • Extend to OWL as required • Either in extended UML or native OWL • Determine best business review format Business Domain Modelling Principles
Standards Based Taxonomies • Some standards provide a true taxonomy already • e.g. ISO 10962 (Classification of Financial Instruments) • should not be duplicated by parallel structures in your own model • should plug in to a Taxonomy as a distinct category of Thing • Other standards do not… Business Domain Modelling Principles
Summary: Principles • Representing business knowledge requires a different approach from representing data • Define a taxonomic hierarchy of separate categories of real-world “Thing” at the outset • Relationships can be added to define an ontology of the business domain • As long as they only have business meaning • Define the reality ahead of any design or development • Good development = weak semantics • Don’t try and use a technology format (UML, XML) to represent business semantics. Use the best of breed for each requirement. Business Domain Modelling Principles
Tools • Protégé • Freeware • Good for logical statements • TopBraid Composer • Open Source and inexpensive • Good graphical views • UML Editors (MagicDraw, EA) • Can be extended to represent OWL • Easier to link into MDA framework • But would not have all the powers of an OWL tool Business Domain Modelling Principles
Questions? Mike Bennett Hypercube Ltd. 7 Curtain Road, London EC2A 3LT mbennett@hypercube.co.uk 020 7917 9522 www.hypercube.co.uk Business Domain Modelling Principles