lecture 1 introduction
play

Lecture 1: Introduction 2015-10-20 Prof. Dr. Andreas Podelski, Dr. - PowerPoint PPT Presentation

Software Design, Modelling and Analysis in UML Motivation and Context Lecture 1: Introduction 2015-10-20 Prof. Dr. Andreas Podelski, Dr. Bernd Westphal 1 2015-10-20 main 1 2015-10-20 main


  1. Software Design, Modelling and Analysis in UML Motivation and Context Lecture 1: Introduction 2015-10-20 Prof. Dr. Andreas Podelski, Dr. Bernd Westphal – 1 – 2015-10-20 – main – – 1 – 2015-10-20 – main – Albert-Ludwigs-Universit¨ at Freiburg, Germany 2 /36 Recall: Model Definition. [Folk] A model is an abstract, formal, mathematical representation or description of structure or behaviour of a (software) system. Definition. (Glinz, 2008, 425) A model is a concrete or mental image (Abbild) of something or a concrete or mental archetype (Vorbild) for something. Three properties are constituent: (i) the image attribute (Abbildungsmerkmal), i.e. there is an entity (called original) whose image or archetype the model is, – 1 – 2015-10-20 – Smotivation – (ii) the reduction attribute (Verk¨ urzungsmerkmal), i.e. only those attributes of the original that are relevant in the modelling context are represented, (iii) the pragmatic attribute, i.e. the model is built in a specific context for a specific purpose. 5 /36

  2. One Software Modelling Language: UML (OMG, 2011b, 694) OCL Diagram Structure Behavior Diagram Diagram Component Object Activity State Machine Class Diagram Use Case Diagram Diagram Diagram Diagram Diagram Composite Deployment Package Interaction Structure Diagram Diagram Diagram Diagram Profile Diagram Interaction Sequence Overview – 1 – 2015-10-20 – Smotivation – Diagram Diagram Communication Timing Diagram Diagram Dobing and Parsons (2006) 8 /36 (Our) Premises for Using a Software Modelling Language (Our) Premises for Using a Software Modelling Language (Our) Premises for Using a Software Modelling Language E/ ✘ ✘ (i) We want to know D (i) We want to know D (i) We want to know D : C : C : C x : Int x : Int x : Int how the words of the language look like : Syntax . E/ how the words of the language look like : Syntax . how the words of the language look like : Syntax . E/ s 3 s 3 s 3 (In UML: when is a diagram a proper state machine?) (In UML: when is a diagram a proper state machine?) (In UML: when is a diagram a proper state machine?) (ii) We want to know • s 1 • what a word of the language means : Semantics . E/ • s 5 s 2 (In UML: can sending event E and then G kill the object?) • E/ s 3 F/ s 6 s 8 G/ → then we can formally analyse the model, e.g., F/ s 4 prove that the design satisfies the requirements, simulate the model, automatically generate test cases, [ true ] / generate code, etc. F/ s 7 – 1 – 2015-10-20 – Smotivation – – 1 – 2015-10-20 – Smotivation – – 1 – 2015-10-20 – Smotivation – • UML is sometimes (neutrally, or as offence) called “semi-formal” : the UML standard OMG (2011a,b) is strong on (i), but weak(er) on (ii). (“the diagram is self-explanatory”, “everybody understands the diagram” — No.) • In the lecture : study the (!) syntax , define one (!) semantics . 9 /36 9 /36 9 /36

Recommend


More recommend