Situational Method Engineering

December 24, 2009

Slides of my presentation on Situational Method Engineering at 19th meeting of INCOSE Russian chapter:

This is roundup of my research-2009 in situational method engineering and related standards, ISO 15926 and ontology engineering, systems engineering and ISO 15288, meta-modeling, and method fashions and fads.

Video and slides (in Russian): http://community.livejournal.com/incose_ru/10830.html).

Advertisement

This is sequel to OMG SBVR and ISO 15926 post. I wonder but OMG ontology community and ISO 15926 community not knowing one another.

OMG is more than important in world of IT (this is organization that developed UML 2 standard, CORBA standard etc.). They provide a lot of ontology creation work (“metamodels” in their words, there are 4 level of “metamodels”: MOF is at level 0, UML is defined in MOF metamodel at level 1, “domain metamodels” defined in UML  at level 2 and actual model of a system is defined in this “domain metamodel” terms is at level 3. They call it MDA — model-driven architecture.

Recently OMG produced such “domain metamodel” for vocabularies and business rules domain as SBVR and discover a small piece of “true ontology” in it as conceptual scheme (while not much elaborated — UoM, time model etc. in this “ontology” is almost not defined). MOF/UML (and related XMI file format) is regarded by OMG as ontology definition language the same way as RDF/OWL (with triple store format). Therefore they start to think about ontology work, not only to metamodeling ad hoc, as it was earlier when all this metamodels at level 2 was independent of one another, but for general purposes. They start to discuss some sort of OMG ontology repository (like WIP RDL for ISO 15926) for OMGr ontology efforts.

OMG understand that besides MOF/UML there exist multiple ontology languages (from FOL to Topic Maps) and they develop “ontology conversion vehicle”:  Ontology Definition Metamodel (see presentation with pictures and goals and full text of version 1 on ODM standard. It seems that ISO 15926 can use somehow decision from this Ontology Definition standard (I know that not all questions about  ISO 15926 in RDF/OWL is resolved. May be this standard permit express ISO 15926 ontology and RDL in MOF/UML and Topic Maps — there are many software tools that can be used for work with ISO 15926 ontology and RDL after such ODM-enabled redefinition).

Also OMG have Production Rules Representation standard (there are 2 different presentations standard for rules: SBVR-defined “for general people” and PRR-defined “for IT-specialist”. This is similar to ISO 15926 that have different standards for ISO 15926 representation: “for general people” and “for IT-specialists”. As I understand people in ISO 15926 community want to use Gellish-like table representation as “for general people”. May be SBVR “controlled language” can be another example for same purpose: both of them is fact-oriented. Andries van Renssen many times writes about controlled language in Gellish but not elaborate this idea. SBVR people not elaborated table language idea but provide controlled language definition of fact-oriented formalism.

There is many way of uses in ISO 15926 of ideas from OMG ontology work. There are many similarities (e.g. “levels” of ontology representation languages like RDF, OWL then templates in ISO 15926 and MOF, UML then UML Profiles in OMG). Conceptualists from ISO 15926 community better than me know what to do with it.

My goal and suggestion is more simple: ISO 15926 should have separate part (e.g. ISO 15926-13) where will be defined rules along with fragment of ontology for vocabularies maintaining in ISO 15926 RDL. It will be used when we start using national and industrial dialects of the same terms. ISO 15926 software tools should support preferable vocabularies at browsing and editing level (e.g. if there is English term “method” to concept “method” and Russian term “метод” to concept “method”, there should be a way to show right term (picked up from right vocabulary) for naming a concept. The same is true for terms “metamodel”, “data model”, “ontology”, “schema” that in different industries often refer the same concept — it also should be defined in vocabulary level. Gellish support this with synonyms/homonyms mechanism and pointing to Language of this synonym. We are badly need ontology localization features. Like in computer program that ask what language of interface you prefer we need this feature in every RDL browser/editor, and (may be) it should be supported in OIM template level (to have localized templates: different words, same ontology). E.g. I want to name Valve as Клапан in Russian — still knowing that it is the same concept as your Valve. It is not clear how to provide this feature not in RDF/OWL representation of ISO 15926 only (like in new example for using 2 languages that was appear in recent edition of ISO 15926-8) but in an ontology level for all representations.

I think that I am not right person to develop “Vocabularies for ISO 15926 concepts” part by myself. May be I will be “advanced user” of it (“can use but can’t produce” 😉 ).I do not study SBVR vocabulary ontology, I only have a guess that SBVR text can be helpful for producing “Vocabularies for ISO 15926 concepts” part of standard.

What about mapping “business ontology” of SBVR and 4D aspects of it, there will be discussion when we start work with business activity modeling (we have such a plans).

There is requirements for at least four different activity views (customer, engineer, manager, organizer — https://levenchuk.com/2009/12/04/situational-method-engineering-and-life-cycle-modeling-roadmap/).

It should be defined schema (ontology, meta-model) for activity modeling that can express data needed for each of this 4 mandatory view. Many of requirements to activity description meta-model (support of multiple views, scalability, possibility for several levels of  specialization/instantiation, possibility of enactment etc.) already discussed in field of situational method engineering. We add several other requirements:

  • it should be adjusted with upper ontology to provide integration with other models
    • artifact/product/plant models
    • actor/agents models: every activity performed by somebody
    • services (as in SOA) model: every activity should be supported with services
  • it should be rich enough to permit mapping of activity descriptions in engineering CAD systems (in two levels: workflow/routing in this CAD and describing engineering process in a level of project model)
  • it should support right model of time (Conrad Bock have extensive writings about it: http://www.conradbock.org/).
  • it should use systems approach, therefore define life cycle as ontological entity that have all this different views

Activity metamodel is mentioned in ISO 15926-4 but there is no theory in current activity division of ISO 15926-2,4 and RDL. Activity OIM should be added to RDL in 3 levels:

  • activity metamodel (concepts)
  • activity vocabularies (for different industry and national languages)
  • activity notations (to express data for this metamodel in “native’ neutral notation, not only in “mapped” environments) [currently there no way to have notations in RDL. Before we should have populate RDL with concepts from notational engineering domain, i.e. define notation ontology/metamodel.]

Where we can get core of such a activity model?

  • situational method engineering metamodel (at least this metamodel already combine engineering and management views). E.g. we can start with ISO 24744 metamodel. This way require simply encode it in one of ISO 15926 representations (e.g. prototemplate level). Also we can use proposed ISO 24774 notation for life cycle activities descriptions
  • contemporary CAD “schema”s (metamodels, ontology) — this is very interesting because in CADs already implemented linkage between activity and product models.
  • academic reviews of activity-based metamodels (e.g. works of Tyson Browning about product processes architectures — http://sbufaculty.tcu.edu/tbrowning/Publications/Browning%20(2009)–SE%20Towards%20a%20PAF.pdf).
  • activity subontology from other ontologies like Process Specification Language, or CYC.
  • organizational ontology from DEMO (http://www.demo.nl)
  • lean manufacturing/construction (Goldratt, LastPlanner, factory physics etc.)
  • agent programming paradigm (for activity goals, purposes etc. modeling)
  • populate and elaborate classes of activities and work products and roles with content of http://www.opfro.org

It seems to me that we should not to count agility and collaboration too much. Today we have no knowledge about interactive modeling (i.e. changing of activity metamodel with retaining already developed activity model during reflexive discussion of “what we should to do” in course of life cycle). All proposed in this post is about cooperation (activities chain of many actors), not collaboration (many actors simultaneously planning and doing one activity like in Jazz music performances).