Structural Modelling

Size: px
Start display at page:

Download "Structural Modelling"

Transcription

1 Structural Modelling Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék 1

2 Topics of the Lecture Goals and Applications of Structural Modelling Decomposition Description of the Model Elements by Graphs Property Modelling 2

3 Goals, Applications Decomposition Graphs Properties STATIC MODELLING Examples: Architecture Building Corporate network How can the structure of complex systems be clearly modelled? 3

4 Definition: Structural Model Structural models are static. Their basis are (sub-)systems that are divided into their ingredients by the relation Part of. Die ingredients can be the followings: further divided subsystems or further not divided (elementary) components. The structural model represents the structure of the system according its ingredients, the properties of the ingredients and their relationships among each other. 4

5 Example: Architecture Models BIM (Building Information Model) Modelling the whole building in a single model Views o Gas pipe system o Isolation o Water pipe and sewerage system o Electric installation plan o etc. 5

6 Office in a Production Hall 6

7 Gas Pipe System 7

8 Isolation 8

9 Water and Sewerage System 9

10 Electric Installation Plan 10

11 Goal of Structural Modelling Dividing a system o It is simpler to design smaller units o Usage of already existing parts o Usage of commercial components Documentation of an existing system o System overview Defining data structures (COTS - Commercial off-the-shelf) o What pieces of information should be there? o Relationships of the pieces 11

12 Example: Robot Vacuum Cleaner Roller gear Control unit Vacuum cleaner 12

13 Structural and Behavioural Modelling Structural o static o whole and part, components The main components of the robot vacuum cleaner are the control unit, the roller gear and the vacuum cleaner. o connections Behavioural o dynamic o timeliness o states, processes o reactions to the environment (context) This categorization is neither full nor disjoint... For the command to right changes the roller gear its operational mode to turn. The roller gear of the robot intervenes when signals of the sensors are received. (When, how?) 13

14 Structural Model The knowledge about the structure of the system o What parts consists the system of? o How are they connected? o What kind of properties do the elements have? 14

15 Example: Corporate Network Router Internet Firewall Smartphone Switch Server Workstation Wifi Laptop Smartphone Workstation Workstation Printer 15

16 Example: Corporate Network Internet Firewall Router Is there a single point of failure (SPOF) in the system? Server Workstation Is the Internet reachable? Workstation Switch Is the WLAN overloaded, how many computers Workstation are connected? Printer Wifi Smartphone Smartphone What elements consists the network of? Laptop 16

17 Goals, Applications Decomposition Graphs Properties STRUCTURAL DECOMPOSITION What containedness relationships are there among the subsystems? Examples: Robot vacuum cleaner Registration office 17

18 Definition: Decomposition Structural models are static. Their basis are (sub-)systems that are divided into their ingredients by the relation Part of. Decomposition ( faktoring ) is the division of a complex problem or system into smaller parts that are easier to conceive, understand, design, implement/program and maintain. Hierarchical Decomposition: o Multi-level whole-part relationship Meaning of the relation Part of: o Physical Decomposition: Part of = spatial division o Logical Decomposition: Part of = functional division 18

19 Types of Decomposition Physical decomposition o What pieces does it consists of? Logical decomposition by functions o What does it do? Robot vacuum cleaner Discovery and navigation subsystem Cleaning subsystem Monitoring subsytem Moving subsystem Sensor subsystem 19

20 Definition: Correctness of Decomposition A decomposition is correct, if each element of the system resulting from the decomposition corresponds to an element of the original system, and each element of the original system corresponds to some elements of the system resulting from the decomposition. 20

21 Top-down Development Elementary step: Decomposition Registration office Computer devices PC Cabling POS-Terminal Document printer Monitor Mouse Keyboard Desktop-PC Photo cabin Building environment Background Chair Desktop Counter Light Photo device Chair Locker 21

22 Bottom-up Development Elementary step: Composition Sozial network Server infrastructure Server-side software Web server DB server Database Application Static content server Advertisements Monitoring Web interface Interface-Desing (UX) Mobile interface Graphics Dynamics (JS) 22

23 Top-down Top-down and Bottom-up Roles of the subsystems are during development already known There are no functioning parts during development Subsysteme Problems/Reqs of the subsystems are revealed late Bottom-up System Subsysteme der Subsysteme Subsystems can be tested step-by-step There are always some functioning parts during development System Exact roles of the subsystems are revealed late Not only in structural modelling Mixed approaches, iterative Development Subsysteme Subsysteme der Subsysteme 23

24 Goals, Applications Decomposition Graphs Properties STRUCTURAL MODELS What kind of relationships are there among the subsystems? Examples Transport network File system 24

25 Graph Representation Human way of thinking:,,connections of Things o Things: persons, airports, areas o Connections: dependency, acquaintance, flights, containment Mathematical Formalism: Graph o Nodes o Edges o (Properties) XMind 25

26 Definitions in Computer Engineering In the computer engineering everything has several, often contradicting definitions o System =? o Model =? The same term is often named with different names o node, vertex, object, concept o edge, link, arc, connection, relationship Always pick one! 26

27 Budapest Rail-bound Transport Network M2 M3 M4 4-6 Deák Ferenc square Square of the Franciscans Astoria Kálvin square Boráros square Blaha Lujza square Rákóczi square Corvin estate 27

28 Budapest Rail-bound Transport Network Deák Ferenc square 2 2 Astoria 1 Blaha Lujza square M2 M3 M4 4-6 Square of the Franciscans 1 Kálvin square Rákóczi square 2 Corvin estate Boráros square Shortest path? 28

29 Filtering: by edge labels (Subgraphs) E.g. show the underground network only Deák Ferenc square Astoria Blaha Lujza square M2 M3 M4 Square of the Franciscans Kálvin square Rákóczi square Corvin estate Boráros square Was is reachable by the underground only? 29

30 Budapest V. district LEOPOLD TOWN DOWNTOWN 30

31 Budapest V. district Hierarchical Model V. district Kossuth Lajos square LEOPOLD TOWN Leopold town Downtown Deák Ferenc square DOWNTOWN Square of the Franciscans Deák Ferenc square Kossuth Lajos square Square of the Franciscans 31

32 Simple Graphs Deák Ferenc square Square of the Franciscans Astoria Transport network: undirected graph Kálvin square How can it be made directed? Blaha Lujza square Rákóczi square Areas: directed graph Leopold town V. district Downtown Corvin estate Boráros square Deák Ferenc square Kossuth Lajos square Square of the Franciscans 32

33 Simple Graphs Deák Ferenc square Astoria V. district Square of the Franciscans Kálvin square Blaha Lujza square Rákóczi square Leopold town Downtown Corvin estate Boráros square Deák Ferenc square Kossuth Lajos square Square of the Franciscans 33

34 Typed Graph Deák Ferenc square Astoria V. district Square of the Franciscans Kálvin square Blaha Lujza square Rákóczi square VIII. district Budapest Corvin estate IX. district Boráros square 34

35 Graphical User Interface Representation of a tree structure o as graph o as containment relation Window Menu Main View Edit Help Display Degrad MC 35 Degrees Radians Grads

36 Representation of a Tree Structure File system C: \Documents \Pictures \logo.png \groundplot.jpg \contracts.pdf \Drivers How much storage capacity can be gained by deleting the directory Documents? 36

37 Characteristics of a File System How much storage capacity can be gained by deleting the directory Documents? Some further Parameter are required Name Type Size (kb) Last modified Documents directory Contracts.pdf file Pictures directory Logo.png file Groundplot.jpg file Knowing these pieces of information and the file hierarchy the question can be answered. 37

38 Goals, Applications Decomposition Graphs Properties MODELLING THE PROPERTIES What properties do have the individual components? Examples Tables Databases 38

39 Definition: Property Properties of the elements of a model can also be described. A property is a function that is defined over the elements of a model and partial (values may be undefined), and the value set of which is the set of the possible values of the given property. 39

40 Tabular Representation Rows of the table = Model elements Columns of the table = Properties Name Type Size (kb) Last modified Documents directory Contracts.pdf file Pictures directory Logo.png file Groundplot.jpg file NULL / NA Attributes 40

41 Definition: Filtering During filtering a filtering condition is evaluated over the elements of the model, and the submodel is kept that consists exactly of the elements satisfying the condition. o Type = file" Name Type Size (kb) Last modified Contracts.pdf file Logo.png file Groundplot.jpg file o Size > 1000 kb Name Type Size (kb) Last modified Groundplot.jpg file

42 Definition: Projection During projection some parameters of the model are chosen, others are omitted. Name Type Size (kb) Last modified Documents directory Contracts.pdf file Pictures directory Logo.png file Groundplot.jpg file Projection: {Name, Size} Name Size (kb) Documents Contracts.pdf 569 Pictures Logo.png 92 Groundplot.jpg

43 SUMMARY 43

44 Definition: Structural Model Structural models are static. Their basis are (sub-)systems that are divided into their ingredients by the relation Part of. Die ingredients can be the followings: further divided subsystems or further not divided (elementary) components. The structural model represents the structure of the system according its ingredients, the properties of the ingredients and their relationships among each other. 44

45 Example: Corporate Network Router Internet Firewall Smartphone Switch Server Workstation Wifi Laptop Smartphone Workstation Workstation Printer 45

46 Definition: Decomposition Structural models are static. Their basis are (sub-)systems that are divided into their ingredients by the relation Part of. Decomposition ( faktoring ) is the division of a complex problem or system into smaller parts that are easier to conceive, understand, design, implement/program and maintain. Hierarchical Decomposition: o Multi-level whole-part relationship Meaning of the relation Part of: o Physical Decomposition: Part of = spatial division o Logical Decomposition: Part of = functional division 46

47 Top-down Top-down and Bottom-up Roles of the subsystems are during development already known There are no functioning parts during development Subsysteme Problems/Reqs of the subsystems are revealed late Bottom-up System Subsysteme der Subsysteme Subsystems can be tested step-by-step There are always some functioning parts during development System Exact roles of the subsystems are revealed late Not only in structural modelling Mixed approaches, iterative Development Subsysteme Subsysteme der Subsysteme 47

48 Typed Graph Deák Ferenc square Astoria V. district Square of the Franciscans Kálvin square Blaha Lujza square Rákóczi square VIII. district Budapest Corvin estate IX. district Boráros square 48

49 Tabular Representation Rows of the table = Model elements Columns of the table = Properties Name Type Size (kb) Last modified Documents directory Contracts.pdf file Pictures directory Logo.png file Groundplot.jpg file NULL / NA Attributes 49

50 Summary 50

51 MODELLING TYPES 51

52 Example: The Galaxis Areas Containment- Relation 52

53 Example: The Galaxis The Galaxy Core Worlds Outer Rim Coruscant Alderaan Tatooine 53

54 Categorisation of Model Elements in Types Example: Can the Colour of Lightsaber of Yoda change? o No Yoda an entity with green lightsaber Important/relevant attribute? o Yes Colour of Lightsaber no characteristic attribute Type: Entirety of elements that are distinguished by similar attributes 54

55 Type and Attributes Type is a part of the knowledge, implicitly expressed in the label o Type is a special property o Other properties: attributes Widely used Convention: o Attributes may sometimes change (but they do not have to) o Type is permanent (forever) 55

56 Type Graph A type node for each node type A type edge for each edge type Metamodell Depot Place Place Remise Stop Stop Depot Garage Remise Garage 56

57 Type Graph A type node for each node type A type edge for each edge type Metamodell Person Warrior Jedi Sith Person is a Warrior is a is a Jedi Sith Hierarchic Decomposition 57

58 Representation of Type-Instance Relations instanceof Person Darth Vader Mace Windu Yoda is a Warrior Luke Skywalker is a is a Leia Organa Jedi Sith Jabba 58

59 Representation of Type-Instance Relations instanceof Person Darth Vader Mace Windu Yoda is a Warrior Luke Skywalker is a is a Leia Organa Jedi Sith Jabba (Instance) Model Metamodel 59

60 Representation of Types as Attributes name: Darth Vader type: Sith name: Mace Windu type: Jedi name: Yoda type: Jedi name: Leia Organa type: person (Instance) Model name: Luke Skywalker type: Jedi name: Jabba type: Person 60

61 Edges with Different Edge Types Darth Vader instanceof instanceof Mace Windu Yoda Person knows born lives is a Warrior Planet Luke Skywalker is a is a Leia Organa instanceof Jedi Sith Jabba lives born Tatooine instanceof 61

62 REPRESENTING STRUCTURAL MODELS IN PROGRAMS 62

63 Programming Paradigms Programming paradigm: theoretical model of a programming language Structured programming (C, Pascal, Modula) o Organising variables into structures: struct/record 63

64 Programming Paradigms Objekt-oriented programming, OOP (C++, Java) o type: Class o instance: Object o attribute: Attribute field o operation: Methode o Visibility of attributes/methodes, data encapsulation, etc.: see Basics of Programming 2 o Pointer fields vs. nesting Terms: reference, composition, aggregation 64

65 OOP: Inheritance Design decision: Han Solo can never become a Warrior (has no lightsaber) Person gender: string Warrior saber_color : string Object name : string Planet orbital_period: int number_of_moons: int Jedi Sith 65

66 Textual representation o XML, JSON, Representing Models Graphical representation o UML, AADL, SysML, EMF, 66

67 Textual Representation XML (Extensible Markup Language) o standardised, universal technique for the definition of description languages o (human?) readable JSON (JavaScript Object Notation) o standardised notation for readable data exchange 67

68 XML-Example: Weather Web Service 68

69 JSON-Example: Google Maps API 69

70 Graphical Representation UML (Unified Modeling Language) o a universal modelling language o in SW development widely used AADL (Architecture Analysis & Design Language) o for describing of architectures SysML (Systems Modeling Language) o UML based general modellings language for system planing and modelling EMF (Eclipse Modeling Framework, Ecore) o for describing modelling languages 70

71 FURTHER ILLUSTRATIVE EXAMPLES 71

72 Illustration Structural Models Nested representation 72

73 Illustration Structural Models Frame structure Version IHL Type of Service Total Length Identification Flags Fragment Offset Time to Live Protocol Header Checksum Source Address Destination Address Options Padding

Component Design. Systems Engineering BSc Course. Budapest University of Technology and Economics Department of Measurement and Information Systems

Component Design. Systems Engineering BSc Course. Budapest University of Technology and Economics Department of Measurement and Information Systems Component Design Systems Engineering BSc Course Budapest University of Technology and Economics Department of Measurement and Information Systems Traceability Platform-based systems design Verification

More information

The New Generation of the Eclipse Platform. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

The New Generation of the Eclipse Platform. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék The New Generation of the Eclipse Platform Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Eclipse RCP For developing client applications o Based on the Eclipse

More information

Dominique Blouin Etienne Borde

Dominique Blouin Etienne Borde Dominique Blouin Etienne Borde dominique.blouin@telecom-paristech.fr etienne.borde@telecom-paristech.fr Institut Mines-Télécom Content Domain specific Languages in a Nutshell Overview of Eclipse Modeling

More information

Horváth Ákos Bergmann Gábor Dániel Varró István Ráth

Horváth Ákos Bergmann Gábor Dániel Varró István Ráth Metamodeling and Domain Specific Modeling Horváth Ákos Bergmann Gábor Dániel Varró István Ráth Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Agenda Metamodeling

More information

Introduction to Unified Modelling Language (UML)

Introduction to Unified Modelling Language (UML) IMPORTANT NOTICE TO STUDENTS These slides are NOT to be used as a replacement for student notes. These slides are sometimes vague and incomplete on purpose to spark a class discussion Introduction to Unified

More information

Elementary Concepts of Object Class

Elementary Concepts of Object Class Elementary Concepts of Object Class Modeling entities and their behaviour by objects. A class as a specification of objects and as an object factory, computation as message passing/function call between

More information

Complex Event Processing A brief overview

Complex Event Processing A brief overview Complex Event Processing A brief overview Dávid István davidi@inf.mit.bme.hu Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék Event Key concepts o An immutable

More information

https://asd-pa.perfplusk12.com/admin/admin_curric_maps_display.aspx?m=5507&c=618&mo=18917&t=191&sy=2012&bl...

https://asd-pa.perfplusk12.com/admin/admin_curric_maps_display.aspx?m=5507&c=618&mo=18917&t=191&sy=2012&bl... Page 1 of 13 Units: - All - Teacher: ProgIIIJavaI, CORE Course: ProgIIIJavaI Year: 2012-13 Intro to Java How is data stored by a computer system? What does a compiler do? What are the advantages of using

More information

OSI Network Layer. Chapter 5

OSI Network Layer. Chapter 5 OSI Network Layer Network Fundamentals Chapter 5 Objectives Identify the role of the Network Layer, as it describes communication from one end device to another end device. Examine the most common Network

More information

Topic : Object Oriented Design Principles

Topic : Object Oriented Design Principles Topic : Object Oriented Design Principles Software Engineering Faculty of Computing Universiti Teknologi Malaysia Objectives Describe the differences between requirements activities and design activities

More information

Week. Lecture Topic day (including assignment/test) 1 st 1 st Introduction to Module 1 st. Practical

Week. Lecture Topic day (including assignment/test) 1 st 1 st Introduction to Module 1 st. Practical Name of faculty: Gaurav Gambhir Discipline: Computer Science Semester: 6 th Subject: CSE 304 N - Essentials of Information Technology Lesson Plan Duration: 15 Weeks (from January, 2018 to April, 2018)

More information

ADVANCED SOFTWARE DESIGN LECTURE 4 SOFTWARE ARCHITECTURE

ADVANCED SOFTWARE DESIGN LECTURE 4 SOFTWARE ARCHITECTURE ADVANCED SOFTWARE DESIGN LECTURE 4 SOFTWARE ARCHITECTURE Dave Clarke 1 THIS LECTURE At the end of this lecture you will know notations for expressing software architecture the design principles of cohesion

More information

Today s Topic. Lecture 5. What is UML? Why Use UML. UML Diagrams. Introduction to UML. What is UML Why use UML? UML Diagrams

Today s Topic. Lecture 5. What is UML? Why Use UML. UML Diagrams. Introduction to UML. What is UML Why use UML? UML Diagrams Today s Topic Lecture 5 Introduction to UML What is UML Why use UML? UML Static Use case, Class, Object Deployment, Component (Physical ) Dynamic Sequence, Collaboration (Interaction ) Activity, State

More information

CONTENTS. PART 1 Structured Programming 1. 1 Getting started 3. 2 Basic programming elements 17

CONTENTS. PART 1 Structured Programming 1. 1 Getting started 3. 2 Basic programming elements 17 List of Programs xxv List of Figures xxix List of Tables xxxiii Preface to second version xxxv PART 1 Structured Programming 1 1 Getting started 3 1.1 Programming 3 1.2 Editing source code 5 Source code

More information

MSO Analysis & UML. Hans Philippi (based on the course slides of Wouter Swierstra) August 24, Analysis & UML 1 / 56

MSO Analysis & UML. Hans Philippi (based on the course slides of Wouter Swierstra) August 24, Analysis & UML 1 / 56 MSO Analysis & UML Hans Philippi (based on the course slides of Wouter Swierstra) August 24, 2018 Analysis & UML 1 / 56 Recap: Last lectures How can I manage the process of constructing complex software?

More information

Language engineering and Domain Specific Languages

Language engineering and Domain Specific Languages Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh Plan 1. Defining languages 2. General purpose languages vs domain specific languages 3.

More information

CSCU9T4: Managing Information

CSCU9T4: Managing Information CSCU9T4: Managing Information CSCU9T4 Spring 2016 1 The Module Module co-ordinator: Dr Gabriela Ochoa Lectures by: Prof Leslie Smith (l.s.smith@cs.stir.ac.uk) and Dr Nadarajen Veerapen (nve@cs.stir.ac.uk)

More information

Dominique Blouin Etienne Borde

Dominique Blouin Etienne Borde Dominique Blouin Etienne Borde SE206: Code Generation Techniques dominique.blouin@telecom-paristech.fr etienne.borde@telecom-paristech.fr Institut Mines-Télécom Content Introduction Domain specific Languages

More information

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language

Plan. Language engineering and Domain Specific Languages. Language designer defines syntax. How to define language Plan Language engineering and Domain Specific Languages Perdita Stevens School of Informatics University of Edinburgh 1. Defining languages 2. General purpose languages vs domain specific languages 3.

More information

Introduction to Object Oriented Analysis and Design

Introduction to Object Oriented Analysis and Design A class note on Introduction to Object Oriented Analysis and Design Definition In general, analysis emphasizes an investigation of the problem and requirements of the domain, rather than a solution. Whereas,

More information

Process Modelling. Fault Tolerant Systems Research Group. Budapest University of Technology and Economics

Process Modelling. Fault Tolerant Systems Research Group. Budapest University of Technology and Economics Process Modelling Budapest University of Technology and Economics Fault Tolerant Systems Research Group Budapest University of Technology and Economics Department of Measurement and Information Systems

More information

II. Principles of Computer Communications Network and Transport Layer

II. Principles of Computer Communications Network and Transport Layer II. Principles of Computer Communications Network and Transport Layer A. Internet Protocol (IP) IPv4 Header An IP datagram consists of a header part and a text part. The header has a 20-byte fixed part

More information

COMPLEX EMBEDDED SYSTEMS

COMPLEX EMBEDDED SYSTEMS COMPLEX EMBEDDED SYSTEMS Embedded System Design and Architectures Summer Semester 2012 System and Software Engineering Prof. Dr.-Ing. Armin Zimmermann Contents System Design Phases Architecture of Embedded

More information

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh

SOFTWARE DESIGN COSC 4353 / Dr. Raj Singh SOFTWARE DESIGN COSC 4353 / 6353 Dr. Raj Singh UML - History 2 The Unified Modeling Language (UML) is a general purpose modeling language designed to provide a standard way to visualize the design of a

More information

Process Modelling. Fault Tolerant Systems Research Group. Budapest University of Technology and Economics

Process Modelling. Fault Tolerant Systems Research Group. Budapest University of Technology and Economics Process Modelling Budapest University of Technology and Economics Fault Tolerant Systems Research Group Budapest University of Technology and Economics Department of Measurement and Information Systems

More information

Compositional Model Based Software Development

Compositional Model Based Software Development Compositional Model Based Software Development Prof. Dr. Bernhard Rumpe http://www.se-rwth.de/ Seite 2 Our Working Groups and Topics Automotive / Robotics Autonomous driving Functional architecture Variability

More information

Object Oriented Programming

Object Oriented Programming Binnur Kurt kurt@ce.itu.edu.tr Istanbul Technical University Computer Engineering Department 1 Version 0.1.2 About the Lecturer BSc İTÜ, Computer Engineering Department, 1995 MSc İTÜ, Computer Engineering

More information

CHAPTER 18 INTERNET PROTOCOLS ANSWERS TO QUESTIONS

CHAPTER 18 INTERNET PROTOCOLS ANSWERS TO QUESTIONS CHAPTER 18 INTERNET PROTOCOLS ANSWERS TO QUESTIONS 18.1 (1) The communications network may only accept blocks of data up to a certain size. (2) Error control may be more efficient with a smaller PDU size.

More information

A conceptual framework for building good DSLs. Markus Voelter independent/itemis

A conceptual framework for building good DSLs. Markus Voelter independent/itemis DSL Design A conceptual framework for building good DSLs Markus Voelter independent/itemis voelter@acm.org www.voelter.de voelterblog.blogspot.de @markusvoelter +Markus Voelter based on material from a

More information

«Computer Science» Requirements for applicants by Innopolis University

«Computer Science» Requirements for applicants by Innopolis University «Computer Science» Requirements for applicants by Innopolis University Contents Architecture and Organization... 2 Digital Logic and Digital Systems... 2 Machine Level Representation of Data... 2 Assembly

More information

Internet Networking recitation #2 IP Checksum, Fragmentation

Internet Networking recitation #2 IP Checksum, Fragmentation Internet Networking recitation #2 IP Checksum, Fragmentation Winter Semester 2012, Dept. of Computer Science, Technion 1 IP Header Diagram Ver. IHL TOS Total Length Identification Flags Fragment Offset

More information

Orthographic Software Modeling A Practical Approach to View Based Development

Orthographic Software Modeling A Practical Approach to View Based Development Orthographic Software Modeling A Practical Approach to View Based Development Colin Atkinson University of Mannheim Germany MSI 2009 7 th October 2009 Oldenburg Outline Modern software engineering paradigms

More information

SOFTWARE ENGINEERING UML FUNDAMENTALS. Saulius Ragaišis.

SOFTWARE ENGINEERING UML FUNDAMENTALS. Saulius Ragaišis. SOFTWARE ENGINEERING UML FUNDAMENTALS Saulius Ragaišis saulius.ragaisis@mif.vu.lt Information source Slides are prepared on the basis of Bernd Oestereich, Developing Software with UML: Object- Oriented

More information

Object Oriented Software Development CIS Today: Object Oriented Analysis

Object Oriented Software Development CIS Today: Object Oriented Analysis Object Oriented Software Development CIS 50-3 Marc Conrad D104 (Park Square Building) Marc.Conrad@luton.ac.uk Today: Object Oriented Analysis The most single important ability in object oriented analysis

More information

EITF25 Internet Techniques and Applications L7: Internet. Stefan Höst

EITF25 Internet Techniques and Applications L7: Internet. Stefan Höst EITF25 Internet Techniques and Applications L7: Internet Stefan Höst What is Internet? Internet consists of a number of networks that exchange data according to traffic agreements. All networks in Internet

More information

CHAPTER-2 IP CONCEPTS

CHAPTER-2 IP CONCEPTS CHAPTER-2 IP CONCEPTS Page: 1 IP Concepts IP is a very important protocol in modern internetworking; you can't really comprehend modern networking without a good understanding of IP. Unfortunately, IP

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java

Object-Oriented Software Engineering Practical Software Development using UML and Java Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 5: Modelling with Classes Lecture 5 5.1 What is UML? The Unified Modelling Language is a standard graphical

More information

SUMMARY: MODEL DRIVEN SECURITY

SUMMARY: MODEL DRIVEN SECURITY SUMMARY: MODEL DRIVEN SECURITY JAN-FILIP ZAGALAK, JZAGALAK@STUDENT.ETHZ.CH Model Driven Security: From UML Models to Access Control Infrastructres David Basin, Juergen Doser, ETH Zuerich Torsten lodderstedt,

More information

Chapter 5. Names, Bindings, and Scopes

Chapter 5. Names, Bindings, and Scopes Chapter 5 Names, Bindings, and Scopes Chapter 5 Topics Introduction Names Variables The Concept of Binding Scope Scope and Lifetime Referencing Environments Named Constants 1-2 Introduction Imperative

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecture 14: Design Workflow Department of Computer Engineering Sharif University of Technology 1 UP iterations and workflow Workflows Requirements Analysis Phases Inception Elaboration

More information

Funasset Limited Foundry House Foundry Road Taunton Somerset TA1 1JJ. Tel: +44 (0) Fax: +44 (0) mailmarkup.com funasset.

Funasset Limited Foundry House Foundry Road Taunton Somerset TA1 1JJ. Tel: +44 (0) Fax: +44 (0) mailmarkup.com funasset. Funasset Limited Foundry House Foundry Road Taunton Somerset TA1 1JJ Tel: +44 (0)1823 365864 Fax: +44 (0)1823 277266 mailmarkup.com funasset.com Copyright 2012 Funasset Limited. All rights reserved. Products

More information

Enterprise Architect Training Courses

Enterprise Architect Training Courses On-site training from as little as 135 per delegate per day! Enterprise Architect Training Courses Tassc trainers are expert practitioners in Enterprise Architect with over 10 years experience in object

More information

Contents. Slide Set 1. About these slides. Outline of Slide Set 1. Typographical conventions: Italics. Typographical conventions. About these slides

Contents. Slide Set 1. About these slides. Outline of Slide Set 1. Typographical conventions: Italics. Typographical conventions. About these slides Slide Set 1 for ENCM 369 Winter 2014 Lecture Section 01 Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary Winter Term, 2014 ENCM 369 W14 Section

More information

OOPs: The Harsh Realities of Programming

OOPs: The Harsh Realities of Programming Division of Mathematics and Computer Science Maryville College Outline Course Overview 1 Course Overview 2 3 4 Preliminaries Course Overview Required Materials Big C++ 2nd Edition by Cay Horstmann An Account

More information

Protocol Layers & Wireshark TDTS11:COMPUTER NETWORKS AND INTERNET PROTOCOLS

Protocol Layers & Wireshark TDTS11:COMPUTER NETWORKS AND INTERNET PROTOCOLS Protocol Layers & Wireshark TDTS11:COMPUTER NETWORKS AND INTERNET PROTOCOLS Mail seban649@student.liu.se Protocol Hi Hi Got the time? 2:00 time TCP connection request TCP connection response Whats

More information

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN

NOTES ON OBJECT-ORIENTED MODELING AND DESIGN NOTES ON OBJECT-ORIENTED MODELING AND DESIGN Stephen W. Clyde Brigham Young University Provo, UT 86402 Abstract: A review of the Object Modeling Technique (OMT) is presented. OMT is an object-oriented

More information

CMPT Data and Program Organization

CMPT Data and Program Organization CMPT-201 - Data and Program Organization Professor: Bill Havens Office: APSC-10828 Lectures: MWF 2:30pm - 3:20pm Venue: C-9002 WWW: http://www.cs.sfu.ca/coursecentral/201 Office Hours: Monday @3:30pm January

More information

Preface...3 Acknowledgments...4. Contents...5. List of Figures...17

Preface...3 Acknowledgments...4. Contents...5. List of Figures...17 Contents - 5 Contents Preface...3 Acknowledgments...4 Contents...5 List of Figures...17 Introduction...23 History of Delphi...24 Delphi for mobile platforms...27 About this book...27 About the author...29

More information

Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions

Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions Enterprise Integration Patterns: Designing, Building, and Deploying Messaging Solutions Chapter 1: Solving Integration Problems Using Patterns 2 Introduction The Need for Integration Integration Challenges

More information

ASSIGNMENT- I Topic: Functional Modeling, System Design, Object Design. Submitted by, Roll Numbers:-49-70

ASSIGNMENT- I Topic: Functional Modeling, System Design, Object Design. Submitted by, Roll Numbers:-49-70 ASSIGNMENT- I Topic: Functional Modeling, System Design, Object Design Submitted by, Roll Numbers:-49-70 Functional Models The functional model specifies the results of a computation without specifying

More information

Web Engineering (CC 552)

Web Engineering (CC 552) Web Engineering (CC 552) Introduction Dr. Mohamed Magdy mohamedmagdy@gmail.com Room 405 (CCIT) Course Goals n A general understanding of the fundamentals of the Internet programming n Knowledge and experience

More information

CS4450. Computer Networks: Architecture and Protocols. Lecture 13 THE Internet Protocol. Spring 2018 Rachit Agarwal

CS4450. Computer Networks: Architecture and Protocols. Lecture 13 THE Internet Protocol. Spring 2018 Rachit Agarwal CS4450 Computer Networks: Architecture and Protocols Lecture 13 THE Internet Protocol Spring 2018 Rachit Agarwal 2 Reflection The events in last few days have left me sad! Such events must be condemned

More information

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University

Metamodeling. Janos Sztipanovits ISIS, Vanderbilt University Metamodeling Janos ISIS, Vanderbilt University janos.sztipanovits@vanderbilt.edusztipanovits@vanderbilt edu Content Overview of Metamodeling Abstract Syntax Metamodeling Concepts Metamodeling languages

More information

Single Network: applications, client and server hosts, switches, access links, trunk links, frames, path. Review of TCP/IP Internetworking

Single Network: applications, client and server hosts, switches, access links, trunk links, frames, path. Review of TCP/IP Internetworking 1 Review of TCP/IP working Single Network: applications, client and server hosts, switches, access links, trunk links, frames, path Frame Path Chapter 3 Client Host Trunk Link Server Host Panko, Corporate

More information

Object-Oriented Design

Object-Oriented Design Object-Oriented Design Lecturer: Raman Ramsin Lecture 10: Analysis Packages 1 Analysis Workflow: Packages The analysis workflow consists of the following activities: Architectural analysis Analyze a use

More information

Data Modeling and Database Design

Data Modeling and Database Design INF1343, Winter 2012 Data Modeling and Database Design Yuri Takhteyev Faculty of Information University of Toronto This presentation is licensed under Creative Commons Attribution License, v. 3.0. To view

More information

Chapter 2: The Object-Oriented Design Process

Chapter 2: The Object-Oriented Design Process Chapter 2: The Object-Oriented Design Process In this chapter, we will learn the development of software based on object-oriented design methodology. Chapter Topics From Problem to Code The Object and

More information

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization OBJECT ORIENTED DESIGN with the Unified Process Use Case Realization 2016 Software Engineering 2 (Zoom-Into Design) Requirement Requirement Specification (Functional & Non- Functional) analysis Requirement

More information

PBW 654 Applied Statistics - I Urban Operations Research. Unit 3. Network Modelling

PBW 654 Applied Statistics - I Urban Operations Research. Unit 3. Network Modelling PBW 54 Applied Statistics - I Urban Operations Research Unit 3 Network Modelling Background So far, we treated urban space as a continuum, where an entity could travel from any point to any other point

More information

Module 2: NETWORKS AND DECISION MATHEMATICS

Module 2: NETWORKS AND DECISION MATHEMATICS Further Mathematics 2017 Module 2: NETWORKS AND DECISION MATHEMATICS Chapter 9 Undirected Graphs and Networks Key knowledge the conventions, terminology, properties and types of graphs; edge, face, loop,

More information

Introducing the UML Eng. Mohammed T. Abo Alroos

Introducing the UML Eng. Mohammed T. Abo Alroos Introducing the UML Eng. Mohammed T. Abo Alroos Islamic University of Gaza Introduction to the UML: The UML stands for Unified Modeling Language. It was released in 1997 as a method to diagram software

More information

Chapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design

Chapter 6 Architectural Design. Lecture 1. Chapter 6 Architectural design Chapter 6 Architectural Design Lecture 1 1 Topics covered ² Architectural design decisions ² Architectural views ² Architectural patterns ² Application architectures 2 Software architecture ² The design

More information

Lecture 14: Chapter 18!

Lecture 14: Chapter 18! Lecture 14: Chapter 18! Testing Conventional Applications! Slide Set to accompany Software Engineering: A Practitioner s Approach, 7/e " by Roger S. Pressman Slides copyright 1996, 2001, 2005, 2009 by

More information

Appendix A - Glossary(of OO software term s)

Appendix A - Glossary(of OO software term s) Appendix A - Glossary(of OO software term s) Abstract Class A class that does not supply an implementation for its entire interface, and so consequently, cannot be instantiated. ActiveX Microsoft s component

More information

AADL Graphical Editor Design

AADL Graphical Editor Design AADL Graphical Editor Design Peter Feiler Software Engineering Institute phf@sei.cmu.edu Introduction An AADL specification is a set of component type and implementation declarations. They are organized

More information

SOFTWARE MODELING AND DESIGN. UML, Use Cases, Patterns, and. Software Architectures. Ki Cambridge UNIVERSITY PRESS. Hassan Gomaa

SOFTWARE MODELING AND DESIGN. UML, Use Cases, Patterns, and. Software Architectures. Ki Cambridge UNIVERSITY PRESS. Hassan Gomaa SOFTWARE MODELING AND DESIGN UML, Use Cases, Patterns, and Software Architectures Hassan Gomaa George Mason University, Fairfax, Virginia Ki Cambridge UNIVERSITY PRESS Contents Preface P"U

More information

IPv6 is Internet protocol version 6. Following are its distinctive features as compared to IPv4. Header format simplification Expanded routing and

IPv6 is Internet protocol version 6. Following are its distinctive features as compared to IPv4. Header format simplification Expanded routing and INTERNET PROTOCOL VERSION 6 (IPv6) Introduction IPv6 is Internet protocol version 6. Following are its distinctive features as compared to IPv4. Header format simplification Expanded routing and addressing

More information

Lesson 6 Introduction to Object-Oriented Programming

Lesson 6 Introduction to Object-Oriented Programming Lesson 6 Introduction to Object-Oriented Programming Programming Grade in Computer Engineering Outline 1. Motivation 2. Classes, objects and attributes 3. Constructors 4. Methods 5. Composition 6. Object

More information

CIS-331 Fall 2013 Exam 1 Name: Total of 120 Points Version 1

CIS-331 Fall 2013 Exam 1 Name: Total of 120 Points Version 1 Version 1 1. (24 Points) Show the routing tables for routers A, B, C, and D. Make sure you account for traffic to the Internet. NOTE: Router E should only be used for Internet traffic. Router A Router

More information

Business Process Modelling

Business Process Modelling CS565 - Business Process & Workflow Management Systems Business Process Modelling CS 565 - Lecture 2 20/2/17 1 Business Process Lifecycle Enactment: Operation Monitoring Maintenance Evaluation: Process

More information

Software Service Engineering

Software Service Engineering Software Service Engineering Lecture 4: Unified Modeling Language Doctor Guangyu Gao Some contents and notes selected from Fowler, M. UML Distilled, 3rd edition. Addison-Wesley Unified Modeling Language

More information

Spemmet - A Tool for Modeling Software Processes with SPEM

Spemmet - A Tool for Modeling Software Processes with SPEM Spemmet - A Tool for Modeling Software Processes with SPEM Tuomas Mäkilä tuomas.makila@it.utu.fi Antero Järvi antero.jarvi@it.utu.fi Abstract: The software development process has many unique attributes

More information

SE 1: Software Requirements Specification and Analysis

SE 1: Software Requirements Specification and Analysis SE 1: Software Requirements Specification and Analysis Lecture 4: Basic Notations Nancy Day, Davor Svetinović http://www.student.cs.uwaterloo.ca/ cs445/winter2006 uw.cs.cs445 U Waterloo SE1 (Winter 2006)

More information

Exploratory/Visual Data Analysis

Exploratory/Visual Data Analysis Exploratory/Visual Data Analysis Intelligent Data Analysis http://www.mit.bme.hu/node/8036 9/14/2018 Budapest University of Technology and Economics Fault Tolerant Systems Research Group Budapesti Műszaki

More information

Static analysis and testing of executable DSL specification

Static analysis and testing of executable DSL specification Static analysis and testing of executable DSL specification Qinan Lai 1, Andy Carpenter 1 1 School of Computer Science, the University of Manchester, Manchester, UK {laiq,afc}@cs.man.ac.uk Keywords: Abstract:

More information

Further Mathematics 2016 Module 2: NETWORKS AND DECISION MATHEMATICS Chapter 9 Undirected Graphs and Networks

Further Mathematics 2016 Module 2: NETWORKS AND DECISION MATHEMATICS Chapter 9 Undirected Graphs and Networks Further Mathematics 2016 Module 2: NETWORKS AND DECISION MATHEMATICS Chapter 9 Undirected Graphs and Networks Key knowledge the conventions, terminology, properties and types of graphs; edge, face, loop,

More information

LOGICAL ADDRESSING. Faisal Karim Shaikh.

LOGICAL ADDRESSING. Faisal Karim Shaikh. LOGICAL ADDRESSING Faisal Karim Shaikh faisal.shaikh@faculty.muet.edu.pk DEWSNet Group Dependable Embedded Wired/Wireless Networks www.fkshaikh.com/dewsnet IPv4 ADDRESSES An IPv4 address is a 32-bit address

More information

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 2: Review of Object Orientation

Object-Oriented Software Engineering Practical Software Development using UML and Java. Chapter 2: Review of Object Orientation Object-Oriented Software Engineering Practical Software Development using UML and Java Chapter 2: Review of Object Orientation 2.1 What is Object Orientation? Procedural paradigm: Software is organized

More information

Chapter 5, Analysis: Object Modeling

Chapter 5, Analysis: Object Modeling Chapter 5, Analysis: Object Modeling Résumé Maintenant: Modélisation des objets du domaine La partie statique (diagramme de classe) Les activités durant la modélisation des objets L identification des

More information

OO is considered to be supported in three points which are usually symbolized as the three vertexes of a triangle: Encapsulació i ocultació

OO is considered to be supported in three points which are usually symbolized as the three vertexes of a triangle: Encapsulació i ocultació Object Orientation Its origin is placed at the beginning of the 70 s in a friendly environment project that Xerox Company developed in Palo lto with a team made up of lan Kay, dele Goldberg and Dan Ingalls.

More information

Object-oriented development. Object-oriented Design. Objectives. Characteristics of OOD. Interacting objects. Topics covered

Object-oriented development. Object-oriented Design. Objectives. Characteristics of OOD. Interacting objects. Topics covered Object-oriented development Object-oriented Design Object-oriented analysis, design and programming are related but distinct. OOA is concerned with developing an object model of the application domain.

More information

Ref: A. Leon Garcia and I. Widjaja, Communication Networks, 2 nd Ed. McGraw Hill, 2006 Latest update of this lecture was on

Ref: A. Leon Garcia and I. Widjaja, Communication Networks, 2 nd Ed. McGraw Hill, 2006 Latest update of this lecture was on IP Version 4 (IPv4) Header (Continued) Identification (16 bits): One of the parameters of any network is the maximum transmission unit (MTU) parameter. This parameter specifies the maximum size of the

More information

5. Application Layer. Introduction

5. Application Layer. Introduction Book Preview This is a sample chapter of Professional PHP - Building maintainable and secure applications. The book starts with a few theory chapters and after that it is structured as a tutorial. The

More information

This talk will cover the basics of IP addressing and subnetting. Topics covered will include:

This talk will cover the basics of IP addressing and subnetting. Topics covered will include: This talk will cover the basics of IP addressing and subnetting. Topics covered will include: What is an IP Address? What are Classes? What is a Network Address? What are Subnet Masks and Subnet Addresses?

More information

Planning for Information Network

Planning for Information Network Planning for Information Network Lecture 7: Introduction to IPv6 Assistant Teacher Samraa Adnan Al-Asadi 1 IPv6 Features The ability to scale networks for future demands requires a limitless supply of

More information

CIS-331 Spring 2016 Exam 1 Name: Total of 109 Points Version 1

CIS-331 Spring 2016 Exam 1 Name: Total of 109 Points Version 1 Version 1 Instructions Write your name on the exam paper. Write your name and version number on the top of the yellow paper. Answer Question 1 on the exam paper. Answer Questions 2-4 on the yellow paper.

More information

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization

OBJECT ORIENTED DESIGN with the Unified Process. Use Case Realization OBJECT ORIENTED DESIGN with the Unified Process Use Case Realization Objectives Explain the purpose and objectives of objectoriented design Develop design class diagrams Develop detailed sequence diagrams

More information

IP Addressing. Introductory material. An entire module devoted to IP addresses. Pedro Brandão (PhD) University of Évora

IP Addressing. Introductory material. An entire module devoted to IP addresses. Pedro Brandão (PhD) University of Évora IP Addressing Introductory material. An entire module devoted to IP addresses. Pedro Brandão (PhD) University of Évora IP Addresses Structure of an IP address Subnetting CIDR IP Version 6 addresses IP

More information

Functional Design of Web Applications. (partially, Chapter 7)

Functional Design of Web Applications. (partially, Chapter 7) Functional Design of Web Applications (partially, Chapter 7) Functional Design: An Overview Users of modern WebApps expect that robust content will be coupled with sophisticated functionality The advanced

More information

ITTC Science of Communication Networks The University of Kansas EECS 784 Identifiers, Names, and Addressing

ITTC Science of Communication Networks The University of Kansas EECS 784 Identifiers, Names, and Addressing Science of Communication Networks The University of Kansas EECS 784 Identifiers, Names, and Addressing James P.G. Sterbenz Department of Electrical Engineering & Computer Science Information Technology

More information

Lecture 13: Object orientation. Object oriented programming. Introduction. Object oriented programming. OO and ADT:s. Introduction

Lecture 13: Object orientation. Object oriented programming. Introduction. Object oriented programming. OO and ADT:s. Introduction Lecture 13: Object orientation Object oriented programming Introduction, types of OO languages Key concepts: Encapsulation, Inheritance, Dynamic binding & polymorphism Other design issues Smalltalk OO

More information

Notation Part 1. Object Orientated Analysis and Design. Benjamin Kenwright

Notation Part 1. Object Orientated Analysis and Design. Benjamin Kenwright Notation Part 1 Object Orientated Analysis and Design Benjamin Kenwright Version Control Example Team Princess 3 Members 3 Github Users e.g., Elva1997, michelle0924hhx, KimJaeHwang Each user can join and

More information

Introduction to Software Engineering

Introduction to Software Engineering Introduction to Software Engineering (CS350) Lecture 17 Jongmoon Baik Testing Conventional Applications 2 Testability Operability it operates cleanly Observability the results of each test case are readily

More information

CPS 506 Comparative Programming Languages. Programming Language

CPS 506 Comparative Programming Languages. Programming Language CPS 506 Comparative Programming Languages Object-Oriented Oriented Programming Language Paradigm Introduction Topics Object-Oriented Programming Design Issues for Object-Oriented Oriented Languages Support

More information

OMG Systems Modeling Language Tutorial May, 2012

OMG Systems Modeling Language Tutorial May, 2012 OMG Systems Modeling Language Tutorial May, 2012 Giuseppe Scanniello Giuseppina Casalaro System Engineering Overview System Engineering (SE) is a discipline to deal with complex system realised through

More information

ESET Remote Administrator 6. Version 6.0 Product Details

ESET Remote Administrator 6. Version 6.0 Product Details ESET Remote Administrator 6 Version 6.0 Product Details ESET Remote Administrator 6.0 is a successor to ESET Remote Administrator V5.x, however represents a major step forward, completely new generation

More information

PC204. Lecture 5 Programming Methodologies. Copyright 2000 by Conrad Huang and the Regents of the University of California. All rights reserved.

PC204. Lecture 5 Programming Methodologies. Copyright 2000 by Conrad Huang and the Regents of the University of California. All rights reserved. PC204 Lecture 5 Programming Methodologies Copyright 2000 by Conrad Huang and the Regents of the University of California. All rights reserved. Programming Paradigms Software Engineering Exploratory Programming

More information

3. A microprocessor is the brain of the computer and is also called a(n)... A. microchip B. macrochip C. macroprocessor D.

3. A microprocessor is the brain of the computer and is also called a(n)... A. microchip B. macrochip C. macroprocessor D. 1. The arithmatic/logic unit performs the following actions A. checks data for accuracy B. does calculations using addition, substraction, multiplication, and division C. does logical comparisons, such

More information

Towards a formal model of object-oriented hyperslices

Towards a formal model of object-oriented hyperslices Towards a formal model of object-oriented hyperslices Torsten Nelson, Donald Cowan, Paulo Alencar Computer Systems Group, University of Waterloo {torsten,dcowan,alencar}@csg.uwaterloo.ca Abstract This

More information

Verification and Validation. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1

Verification and Validation. Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1 Verification and Validation Ian Sommerville 2004 Software Engineering, 7th edition. Chapter 22 Slide 1 Verification vs validation Verification: "Are we building the product right?. The software should

More information