Executable UML The Models are the Code - Executable UML Lecture 5 - Attributes and Relations Paul Krause.

Slides:



Advertisements
Similar presentations
Configuration management
Advertisements

Section 6.2. Record data by magnetizing the binary code on the surface of a disk. Data area is reusable Allows for both sequential and direct access file.
Lecture plan Outline of DB design process Entity-relationship model
Entity-Relationship (ER) Modeling
Program Management Portal: Overview for the Client
Basic notation for supertype/subtype relationships
Chapter 3  Define terms  Understand use of supertype/subtype relationships  Understand use of specialization and generalization techniques  Specify.
Chapter 7 Understanding More Complex Requirements Models Using Generalization / Specialization and Whole-Part Hierarchies.
Computer Science & Engineering 2111 Introduction to Database Systems 1CSE 2111-Introduction to Database Systems.
Introduction To System Analysis and Design
CIS101 Introduction to Computing Week 07. Agenda Your questions JavaScript text Resume project HTML Project Three This week online Next class.
1 SWE Introduction to Software Engineering Lecture 15 – System Modeling Using UML.
Introduction to Databases CIS 5.2. Where would you find info about yourself stored in a computer? College Physician’s office Library Grocery Store Dentist’s.
Database Design Concepts INFO1408 Term 2 week 1 Data validation and Referential integrity.
Employee Central Presentation
The Enhanced E-R (EER) Model
Database Design Concepts Info 1408 Lecture 2 An Introduction to Data Storage.
3-2 Solving Inequalities Using Addition or Subtraction
3.2 Solving Inequalities Using Addition or Subtraction I can use addition or subtraction to solve inequalities.
Chapter 16: Identification Numbers Lesson Plan
XP New Perspectives on XML Tutorial 3 1 DTD Tutorial – Carey ISBN
Data Modeling Using the Entity-Relationship Model
Executable UML The Models are the Code - Executable UML Lecture 4 - How to Build Class Models Paul Krause.
Federal Acquisition Service U.S. General Services Administration REPORTING PROPERTY.
Computer Maintenance Unit Subtitle: Basic Input/Output System (BIOS) Excerpted from 1 Copyright © Texas Education Agency, All.
Lecture 8 Inheritance Richard Gesick. 2 OBJECTIVES How inheritance promotes software reusability. The concepts of base classes and derived classes. To.
CSCI-383 Object-Oriented Programming & Design Lecture 9.
Memory organization - storing variables efficiently in the RAM memory.
Training: INSPIRE Basics EC JRC 1/15 UML class diagram: example INSPIRE UML class diagram for administrative units.
Configuration Management (CM)
1 Tutorial 13 Validating Documents with DTDs Working with Document Type Definitions.
Copyright Ó Oracle Corporation, All rights reserved. Normalization Use the student note section below for further explanation of the slide content.Use.
7.2 V battery pack and charger Put the battery in the charger station at the end of the lab. period. Red light indicates charging. Ken Youssefi Introduction.
CS370 Spring 2007 CS 370 Database Systems Lecture 4 Introduction to Database Design.
Surname:Brown Forename:James Form:7B Date of Birth: Telephone:
Computer Science & Engineering 2111 Lecture 10 Introduction to Database Management Systems 1.
SOCSAMS e-learning Dept. of Computer Applications, MES College Marampally VIRTUALMEMORY.
Executable UML The Models are the Code - Executable UML Lecture 6 - Associations Paul Krause.
CE Operating Systems Lecture 10 Processes and process management in Linux.
3 & 4 1 Database Systems: Design, Implementation, & Management, 7 th Edition, Rob & Coronel Keys Consists of one or more attributes that determine other.
Domain Model—Part 2: Attributes.  A logical data value of an object  (Text, p. 158)  In a domain model, attributes and their data types should be simple,
1 Chapter Four Creating and Using Classes. 2 Objectives Learn about class concepts How to create a class from which objects can be instantiated Learn.
1 Understanding Hardware Profiles A hardware profile stores configuration settings for a set of devices and services. Microsoft Windows 2000 can store.
CSCI-383 Object-Oriented Programming & Design Lecture 10.
Finding a PersonBOS Finding a Person! Building an algorithm to search for existing people in a system Rahn Lieberman Manager Emdeon Corp (Emdeon.com)
IP attendant Application Introduction B.H.Choi ES LIK Team Oct
Lecture 02 File and File system. Topics Describe the layout of a Linux file system Display and set paths Describe the most important files, including.
Computer Maintenance I
DOMAIN MODEL—PART 2: ATTRIBUTES BTS430 Systems Analysis and Design using UML.
1. Check your order….  Please check your order confirmation documents carefully and ensure that the style, colour and quantity of the items stated match.
PCs ENVIRONMENT and PERIPHERALS Lecture 3. operating system and other system software that control the usage of the computer equipment application programs.
1 Database Design Sections 6 & 7 First Normal Form (1NF), Second Normal Form (2NF), Unique Identifiers (UID), Third Normal Form (3NF), Arcs, Hierarchies.
/Reimage-Repair-Tool/ /u/6/b/ /channel/UCo47kkB-idAA-IMJSp0p7tQ /alexwaston14/reimage-system-repair/
Chapter 5: Structural Modeling
Introduction to Database Systems
Entity- Relationship (ER) Model
Databases Chapter 16.
Analysis and Design with UML: Discovering Classes and Relationships
Chapter 16: Identification Numbers Lesson Plan
Introduction to Database Systems
Analysis and Design with UML: Discovering Classes and Relationships
Analysis and Design with UML: Discovering Classes and Relationships
Lecture 22 Inheritance Richard Gesick.
TransCAD Vehicle Routing 2018/11/29.
Facilities Planning and Design Course code:
Database Systems Instructor Name: Lecture-3.
Introduction to the Medical Laboratory
Analysis and Design with UML: Classes and Relationships
Class Diagram.
Chapter 16: Identification Numbers Lesson Plan
Presentation transcript:

Executable UML The Models are the Code - Executable UML Lecture 5 - Attributes and Relations Paul Krause

Executable UML Lecture 5 - Attributes and Relations v Continue with properties of attributes v Introduction to xUML relationship types

Executable UML Properties of Attributes v Purpose v Identification role v Dependency on other attributes v Value assignment v Universal meaning

Executable UML Dependence on other attributes Rule 1: v The values of all non-identifying attributes depend only on the identifier Spot Light Colour temperature Intensity x Location y Location z Location Change SpotLight ID (Implicit) and the values of any of the other attributes may change. But the value of any other attribute may be changed independently of the others.

Executable UML Dependence on other attributes Contact Name Home address Birthdate Company name Work address Change the Company name and the address must (normally) change

Executable UML Dependency on other attributes Contact Name Home address Birth date Company Name {I} Address Phone Cafeteria quality R1 0..* employs 0..1 works at

Executable UML Dependence on other attributes Rule 2: v Each non-identifying attribute must depend on the whole ID Automated Vehicle on Route Vehicle ID {I} Route ID {I} Accumulated delay Estimated completion time Battery charge { These two attributes depend on the whole ID This attribute depends only on Vehicle ID

Executable UML Dependence on other attributes Automated Vehicle on Route Vehicle ID {I, R1} Route ID {I} Accumulated delay Estimated completion time Vehicle ID {I} Weight Battery charge Time since last service R is in service as 1 uses

Executable UML Value Assignment Automated Vehicle on Route Vehicle ID {I, R1} Route ID {I} Accumulated delay Estimated completion time

Executable UML Value Assignment Automated Vehicle on Route Vehicle ID {I, R1} Route ID {I} Accumulated delay Estimated completion time } The values assigned to these non-identifier attributes can be changed to any other legal value

Executable UML Value Assignment Automated Vehicle on Route Vehicle ID {I, R1} Route ID {I} Accumulated delay Estimated completion time But we can’t, for example, change the value of the Route ID (an identifier attribute) without checking that a duplicate instance is not being created

Executable UML Value Assignment - Computational dependence Shaft Encoder Mark spacing Pulse rate Motor Shaft \Rotational speed R1 1 rotational speed is detected by 1 detects rotational speed of The “\” indicates this attribute is computationally dependent on other attributes in the model self.Rotational_speed = my_Shaft_Encoder.Mark_spacing * my_Shaft_Encoder.Pulse_rate

Executable UML Universal meaning? v Does an attribute always have meaning in a specific class? v If it does not, then again you may need to modify the class model:  Never applicable for some instances  then use a generalisation hierarchy and specialise these instances  Not applicable at some moment  Then specialise the class into distinct roles

Executable UML Universal meaning? Landing Gear Manufacturer Weight Uninstalled Landing Gear Installed Landing Gear retracted status R1

Executable UML Executable UML Relationship Types Binary Non-reflexive Binary reflexive Association Class Generalisation {disjoint, complete}

Executable UML Lecture 5 - Associations v Naming associations  Binary non-reflexive associations v Binary reflexive associations v Association Classes v Loops and constraints

Executable UML Naming Associations cardio_7b cardio_1bdef_87c currently loaded default Library of presets on local hard drive preset files

Executable UML Application Note v A medical ultra-sound scanner station operates with hundreds of parameter settings. v A complete collection of parameters with initial value settings can be stored in a preset file. v The capabilities of the ultrasound scanner depend entirely on what preset file has been loaded. v Upon power up, the scanner automatically loads values from whichever preset file has been designated as the station default. Leon Starr - How to Build Class Models

Executable UML Text Book Solution Preset File Name Station Serial number {I} uses * Which preset is currently controlling the station? How do we ensure only one preset is controlling the station at a time? Which preset file is loaded at power up?

Executable UML Application rules v At any time, a Station is using the parameter values from one Preset File v Exactly one Preset File is designated as the default for a given station v Any Preset File may be designated as the default for a given Station

Executable UML Try harder! Preset File Name Station Serial number {I} is using the values from 1 supplies values to control 0..1

Executable UML Default file Preset File Name Station Serial number {I} uses values by default from 1 is default source of values for 0..1

Executable UML The complete solution Preset File Name Station Serial number {I} is using the values from 1 supplies values to control 0..1 uses values by default from 1 is default source of values for 0..1 R1 R2