Service Modeling How to work in multidisciplinary teams? © Leonard Walletzký, 2018 Universal modelling •ad hoc, •non-formal •descriptions exists •experience from the past •base for process monitoring •comparing of projects •metrics for process and products quality measurement •capability of continual process improvement CMM How long does it take for regular ISs to adjust in order to support newly optimized processes? Current Modelling Tools 1.Current CASE tools, BPMT, PMT, … allow to record only such objects and relationships, which had their creators in minds in the time when they were developing the tool. 2.Objects and relationships, we focus on when modeling various aspects of business, are continually changing. 3.Problem of effective communication within any IT project lies nearly always on boundaries of capability of a given modeling tool (… thus the model doesn’t represent the reality appropriately) 4.Except of some isolated cases, there are only few ways to extend used MT by constructs which are needed for current specific requirements. 5.A problem arises in integration of some partial views into one common view. Meta-modelling Ability to develop and adjust domain-specific modelling tools Helps to construct the domain in terms comprehensible to domain experts Hierarchy of modelling tools How do we model reality in our heads? We identify... Object -s •...we find interesting Then, we find... Object •...between our... Relationship -s -s Each relationship can connect multiple objects... Object Relationship •...and each object can be present in multiple connections. Object Object Relationship Relationship Object Relationship •...and each object can be present in multiple connections. •Each relationship can connect multiple objects... Which objects do we find interesting for modelling? Category Rule Relationship Operation Category Rule Relationship Operation Object P R R R R MENTION – USE duality Category Rule Relationship Operation Object P R R R R Diamond of Attention Focussing Diamond of Attention Focussing Objects and relationships between them Mention-use duality Modelling a modelling tool Referring to itself Category Rule Relationship Operation Object P R R R R Classification example Paris • Juliet Romeo In love with In love with killing killing killing We can see that some connections are somehow similar – they belong to the same category: Paris • Juliet Romeo In love with In love with killing killing killing It‘s possible to classify everything we see in the diagram. But how to classify our objects? Paris • Juliet Romeo In love with In love with killing killing killing We could certainly divide the objects to men and women: Paris • Juliet Romeo In love with In love with killing killing killing But won‘t it be more useful to show, which chatacter belongs to the house of Montague and which one to the house of Capulet? Paris • Juliet Romeo In love with In love with killing killing killing It probably depends on a context – a mental model we want to build. Sometimes, both categorizations may be useful: Paris • Juliet Romeo In love with In love with killing killing killing Classifications are blurred Good or bad? CI-connection Category Item Certainty ´Items (= objects as such, not their constructs) belongs to a category with a given certainty CI-connection Category Item Attention The fact is manifested with a certain attention in a given context Context Manifestation Romeo killing Romeo Romeo belonging to Monteques Juliet killing Juliet Juliet belonging to Capulets Romeo in love with Juliet and and Resulting in Fact1 Fact2 Fact3 Story plot Belonging to ´In some cases, it might be also useful to mention non-trivial concepts – contexts, categories, classifications or manifestations R-edges CI-connection Category Item R-edges Context R R R R Manifestation CI-connection Category Item Context base Context serves as a model. The base edge defines the set of categories to classify its items to Context R R R R Manifestation Entity Attribute Cardinality Participants Associative entity Entity attributes Name Relationship Example modelling tool: ERD Forms category base for: Entity Attribute Cardinality Participants Associative entity Entity attributes Person Name Date of birth Phone no. Name Relationship Here is a little more complex example of a model created in modelling tool above. Entity Attribute Cardinality Participants Associative entity Entity attributes Person Name Date of birth Phone no. Name Relationship Working in Company Name Id * * Customer -name: string -address: string -invoices: Invoice[] Invoice -cust: Customer -good: string -amount: int -singlePrice: float -getTotal (): float -print(): void 0..* 1 Customer Invoice Invoice: Item Entity: Category Class: Category Invoice as Class: CI-connection Invoice as Entity: CI-connection Class diagram 1: Context ERD 1: Context Class diagram 1 ERD 1 Inv. As Class in CD1: Manifestation Inv. As Entity in ERD 1: Manifestation Interconnected models ´The same object classified to different categories, manifested in different context Diamond-Path Framework Overview Attention Focussing Cognitive Elements CI-connection Category Item Context R R R R Manifestation Category Rule Relationship Operation Object P R R R R