How To Understand The Purpose Of A Class Diagram In Java.Io (Java)
|
|
- Maude Rodgers
- 3 years ago
- Views:
Transcription
1 Software Engineering I (02161) Week 3: Class diagrams part 1 Hubert Baumeister Informatics and Mathematical Modelling Technical University of Denmark Spring 2009 c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
2 Contents 1 Class Diagrams 2 Domain Model 3 Design and Implementation 4 Implementing Class Diagrams 5 Example 6 Summary Next Week: Generalisation / Inheritance / Subclass, Qualified Associations / Use of tables / Map datatype c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
3 Class Diagrams Class Diagrams Purpose to model concepts to identify important objects their state and interface to give an overview over the domain as part of the requirements analysis to give an overview over the systems as part of the design of the system to give an overview over the sytems implementation c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
4 Example Class Diagrams Example of a class diagram used for implementation c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
5 Example 2 Class Diagrams The same information as in the class diagram presented as Java source code public class Assembly extends Component { public double cost() { } public void add(component c) {} private Collection<Component> components; } public class CatalogueEntry { private String name = ""; public String getname() {} private long number; public long getnumber() {} private double cost; public double getcost() {} } public abstract class Component { public abstract double cost(); } public class Part extends Component { private CatalogueEntry entry; public CatalogueEntry getentry() {} public double cost(){} public Part(CatalogueEntry entry){} c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
6 Contents Domain Model 1 Class Diagrams 2 Domain Model Introduction Glossary Domain Model 3 Design and Implementation 4 Implementing Class Diagrams 5 Example 6 Summary c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
7 Domain model Domain Model Introduction Purpose: capture the customer s knowledge of the domain so that the system builders have the same knowledge Helps customer and system builders to speak the same language Necessary to define the terminology used Glossary Relationships between terms are shown in a class diagram Related to the concept of an ontology c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
8 Glossary Domain Model Glossary glossary (plural glossaries) 1. (lexicography) A list of terms in a particular domain of knowledge with the definitions for those terms. (Wikitionary) List of terms with explanations Terms can be nouns (e.g. those mentioned in a problem description) but also verbs or adjectives e.t.c. A glossary is prerequisit for defining an ontology c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
9 Example Domain Model Glossary Part of a glossary for a library application Book Copy... A book is a is a conceptual entity in a library. A book is defined by its title, the name of his authors, the publisher and the edition. A library can have several copies of the same book. A copy is a physical copy of a particular book. For example, the library has three copies of the book Using UML by Perdiate Stevens.... Warning Capture only knowledge relevant for the application Don t try to capture all possible knowledge c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
10 Domain Model Domain Model Domain model (concepts and their relations) Class diagrams can be used for showing terms and their relations Generalization Associations Name of the association Multiplicities Class Attributes Reading direction Classes Represent concepts of the domain Associations Represent relationships between concepts Generalizations is-a relationship between concepts c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
11 Contents Design and Implementation 1 Class Diagrams 2 Domain Model 3 Design and Implementation Introduction Classes Unidirectional Associations Bi-directional associations Aggregation 4 Implementing Class Diagrams 5 Example c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
12 Design and Implementation Introduction Class Diagram in Design and Implementations A class describes a collection of objects that a common characteristics regarding state (attributes) behaviour (operations) relations to other classes (associations and generalisations) c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
13 Design and Implementation The purpose of a class Introduction The interface of a class has to purposes to describe the functionality that is provided to the environment (programs using that class) to describe the functionality that needs to be implemented Private attributes encapsulate data Private operations are helper functions for other operations Level of detail of a class description depends on the purpose of the class diagram Domain Modelling : typically low level of detail Implementation. : typically high level of detail c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
14 Class Description Design and Implementation Classes - : private + : public # : protected KlasseNavn +navn1: String = "abc" -navn2: int #navn3: boolean -f1(a1:int,a2:string []): float +f2(x1:string,x2:boolean): void #f3(a:double): String Klassens navn Attributter Operationer navn3 og f1 er statiske størrelser private : only visible in the same class protected : visible also in subclasses public : visible also in other classes package : ( ) visible for other classes in the same package Attributes and operations that are underlined are static Attributes can be accessed without that an instance of that class exists Operations can be called without that an instance of that class exists c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
15 Design and Implementation Associations between classes Unidirectional Associations A association between classes means, that the objects belonging to the tow classes have knowledge of each other Associations can be navigable in one direction or two directions (a.k.a. bidirectional association) this means that knowledge can be only on one side or on two sides c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
16 Design and Implementation Unidirectional Associations Navigable associations in one direction I Example: Persons and their employers: * 0..1 Person Firma every person is associated to an employer (company/firma) every company has 0, 1, or more ( * ) employees (persons) The arrow means that a company has knowledge about all employees (persons) a company object has a reference to all the objects representing employees Conversely, a person object does not need to have a reference to the company object A at an arrow denotes that it should not be possible to navigate in this direction Navigability in the direction of the arrow 0 and are called multiplicities or cardinality c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
17 Design and Implementation Unidirectional Associations Navigable associations in one direction II Example: Persons and their employers: * 0..1 Person ansatte Firma a role (here employee) describes objects (here persons) at the end of an association, seen from the objects belonging to the classes at the opposite end of the (here company) in an implementation a role name is typically a variable. For example: public class Firma {... private Collection<Person> ansatte;... } c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
18 Design and Implementation Attributes and Associations Unidirectional Associations There is in principle no distinction between attributes and associations Associations can be drawn as attributes and vice versa c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
19 Design and Implementation Attributes versus Associations Unidirectional Associations When to use attributes and when to use associations? Associations When the target class of an association is shown in the diagram The target class of an association is a major class of the model e.g. Part, Assembly, Component,... Attributes When the target class of an associations is not shown in the diagram With datatypes / Value objects Datatypes consists of a set of values and set of operations on the values In contrast to classes are datatypes stateless e.g. int, boolean, String... Library classes However final choice depends on what one wants to express with the diagram E.g. Is it important to show a relationship to another class? c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
20 Multiplicities Design and Implementation Unidirectional Associations At the end of associations (or at other places) one often denotes how often an object can appear. E.g. how many employees a company can have These denotations are called multiplicities or cardinalities. Typical values used as cardinalities: values meaning m..n integer interval m to n (m and n inclusive) * 0, 1, 2,... m..* m, m + 1, m + 2, m + 3,... c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
21 Design and Implementation Bi-directional associations Bi-directional associations forældre 2 Person barn * ansatte * 0..1 * * kunde Firma when associations don t have any arrows, can this be understood as bi-directional, i..e. navigable in both directions, where on has decided not to show navigability, e.g. every person object has a reference to his employer every company object has a reference to his employee or as an under specification of navigability The example shows also two different associations between person and companies and a self-association c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
22 Design and Implementation Composite Aggregation (I) Aggregation A special relation between part-of between objects Sammensat Del Example: An consists of a header, a content and a collection of attachments 1 1 * 1 Hoved 1 Inhold * Attachment c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
23 Design and Implementation Composite Aggregation (II) Aggregation The basic two properties of a composite aggregation are: A part can only be part of one object The of the part object is tied to the life of the containing object This results in requirements to the implementation c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
24 Design and Implementation Composite Aggregation (III) Aggregation A part can only be part of one object Allowed c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
25 Design and Implementation Composite Aggregation (IV) Aggregation The life of the part object is tied to the life of the containing object If the containing object dies, so does the part object c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
26 Design and Implementation Composite Aggregation (V) Aggregation But: A part can be removed before the composite object is destroyed c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
27 Design and Implementation Aggregation Composite Aggregation (VI): Styklister A complex component (assembly) cannot have itself as a component Styklister can therefore be modelled using aggregation Component * Part 0..1 Assembly c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
28 Design and Implementation Shared Aggregation Aggregation Shared Aggregation General part of relationship Notation: empty diamond Precise semantics of shared aggregation varies by application area and modeller. (from the UML 2.0 standard) c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
29 Contents Implementing Class Diagrams 1 Class Diagrams 2 Domain Model 3 Design and Implementation 4 Implementing Class Diagrams Implementing classes Implemnting Associations Implementing bi-directional associations 5 Example 6 Summary c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
30 Implementing Class Diagrams Implementing classes Class descriptions and program skeleton (I) When classes are used to describe implementations, they correspond to program skeletons, e.g. public class ClaslName { public String name1 = "abc" private int name2 protected static boolean name3 } private static float f1(int a1, String[] a2) {... public void f2(string x1, boolean x2) {... } protected String f3(double a) {... } Development tools use this connection Diagram Program skeleton Program Diagram software development reverse engineering c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
31 Implementing Class Diagrams Implementing classes Class descriptions and program skeleton (II): Implementing public attributes Attributes are implemented as fields A +int a public class A { public int a; } In Java one uses setter and getter methods to access public fields instead of directly accessing the field This corresponds to the following class diagram public class A { private int a; } public void seta(int a) {this.a = a;} public int geta() { return a; } A -int a +seta(int a) +geta() However, a lot of tools support the generation of above Java code from the original diagram c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
32 Implementing Class Diagrams Implemnting Associations Implementing Associations: Cardinality 0..1 A 0..1 B public class A { private B b; } public B getb() { return b; } public void setb(b b) { this.b = b; } c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
33 Implementing Class Diagrams Implemnting Associations Implementing Associations: Cardinality * A * B public class A { private Collection<B> bs = new java.util.arraylist<b>(); } public Collection<B> getb() { return bs;} public void setb(collection<b> bs) { this.bs = bs; } If the multiplicity is >1, one adds a plural s to the role name: b bs Access to the implementation of the association using setb and getb poses encapsulation problems A client of A can change the association without A knowing it! c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
34 Implementing Class Diagrams Interface Collection<E> Implemnting Associations Operation boolean add(e e) boolean remove(e e) boolean contains(e e) Iterator<E> iterator() int size() Description returns false if e is in the collection returns true if e is in the collection returns true if e is in the collection allows to iterate over the collection number of elements Example of iterating over a collection Collection<String> names = new HashSet<String>() ; names.add("hans");... for (String name : names) { // Do something with name, e.g. System.out.println(name); } Collection cannot be instantiated directly One needs to use concrete implementation classes like HashSet or ArrayList c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
35 Implementing Class Diagrams Implemnting Associations Implementing Associations: Cardinality * (II) A * B public class A { private Collection<B> bs = new java.util.arraylist<b>(); } public void addb(b b) { bs.add(b);} public void contains(b b) { return bs.contains(b); } public void removeb(b b) { bs.remove(b); } addb, removeb,... control the access to the association The methods should have more intention revealing names, like registerstudent for addstudent c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
36 Implementing Class Diagrams Encapsulation problem Implemnting Associations University * Student University dtu = new University("DTU");.. Student hans = new Student("Hans"); Collection<Student> students = dtu.getstudents(); students.add(hans); students.remove(ole);... Students can be added and removed, without the university knowing about it! c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
37 Implementing Class Diagrams Implementing bi-directional associations Implementing bi-directional associations Example: Note: Person -navn: String +setfirma(firma:firma) * 0..1 ansatte arbejdsgiver Firma -navn: String +addansat(ansat:person,) +sletansat(ansat:person) Changes of a person objects employer gives rise to changes in up to two company objects list of employees Changes in the company s objects list of employees gives rise to a change in the person objects employer referential integrity Person private String navn; private Firma arbejdsgiver; public Person(String nv){navn = nv;} public void setfirma(firma f){... } Firma private String navn; private ArrayList<Person> ansatte =... public Firma(String nv){navn = nv; } public void addansat(person p} {... } public void sletansat(person p) {... } c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
38 Implementing Class Diagrams Implementing bi-directional associations Implementing bidirectional associations (II) Bidirectional associations are implemented as two unidirectional associations Person: Firma arbejdsgiver = null; Firma: Collection<Person>ansatte = new ArrayList<Person>(); consistency problem public void testaddansatte() { Firma firma = new Firma(); Person hans = new Person(); firma.addansatte(hans); // hans.setarbejdgiver(firma) needs to be tested too! } asserttrue(firma.containsansatte(hans)); assertequals(firma,hans.getarbejdsgiver()); sletansatte and setarbejdsgiver(null) have similar problems c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
39 Implementing Class Diagrams Consistency via helper functions Implementing bi-directional associations Three extra operations are used to ensure consistency Person: Implementation of role arbejdsgiver in Person Firma arbejdsgiver = null; protected void setf(firma f){arbejdsgiver = f;} public void setfirma(firma f){ if (arbejdsgiver!= null) arbejdsgiver.sletp(this); if (f!= null) f.addp(this); arbejdsgiver = f;} Firma: Implementation of role ansatte in Firma Collection<Person>ansatte = new ArrayList<Person>(); public void addansat(person p) {if (!ansatte.contains(p)) {ansatte.add(p); p.setf(this);} } public void sletansat(person p) {if (ansatte.contains(p)) {ansatte.remove(i); p.setf(null);}} protected void addp(person p){if (!ansatte.contains(p)) ansatte.add(p);} protected void sletp(person p) {if (ansatte.contains(p) ansatte.remove(p);} c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
40 Exercise Implementing Class Diagrams Implementing bi-directional associations Is the implementation correct? What happens if a compnay adds an emplyee that works already for another company? c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
41 Contents Example 1 Class Diagrams 2 Domain Model 3 Design and Implementation 4 Implementing Class Diagrams 5 Example 6 Summary c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
42 Example Eksempel: Svømmere og klubber Problem description En svømmer kan være medlem af en klub, men behøver det ikke hvis hun f.eks. svømmer på et elitecenter. En svømmer kan højst stille op til stævner for en klub. En svømmer beskrives ved navn, bedste tider, osv. En klub har en række medlemmer, og beskrives ved et navn. Man skal kunne oprette svømmere og klubber Man skal kunne tilføje, slette og ændre medlemskab How does one address this problem? What is the user relevant functionality of the system? What are possible use scenarios? For each scenario identify the important concepts create / enhance the domain model (glossary and domain class diagram) Write a test for the scenario Design and implement c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
43 Example Step 1: Identify functionality Functionality #1: Add a swimmer to a club Create a club with name Holte Create a swimmer with name Ole Add swimmer Ole to club Holte Add swimmer Ole to club Holte Check that Ole is member of Holte Check that Ole is member of Holte Functionality #2: Remove a swimmer from a club Create a club with name Virum Create a swimmer with name Per Add swimmer Per to club Virum Check that Per is member of Virum Remove swimmer Per from club Virum Check that Per is not member of Virum anymore c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
44 Example Step 2: Identify relevant notions Problem Description En svømmer kan være medlem af en klub, men behøver det ikke hvis hun f.eks. svømmer på et elitecenter. En svømmer kan højst stille op til stævner for en klub. En svømmer beskrives ved navn, bedste tider, osv. En klub har en række medlemmer, og beskrives ved et navn Add swimmer scenario Create a club with name Holte Create a swimmer with name Ole Add swimmer Ole to club Holte Check that Ole is member of Holte Nouns Classes Relationship between nouns Attributes and Associations Actions Methods c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
45 Example Step 3: Glossary and Domain modelling Glossary Swimmer (Svømmer) Klub A swimmer has a name and is member of at most one swim club. Swimmers are organized in clubs. A club has a name and can have several swimmers as members. c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
46 Example Step 4: Write a test case for the scenario public void testaddsvoemmer1() { Klub holte = new Klub("Holte"); Svoemmer ole = new Svoemmer("Ole"); assertfalse(holte.containssvoemmer(ole)); holte.addsvoemmer(ole); } asserttrue(holte.containssvoemmer(ole)); assertsame(holte,ole.getklub()); public void testaddsvoemmer2() { Klub holte = new Klub("Holte"); Svoemmer ole = new Svoemmer("Ole"); assertfalse(holte.containssvoemmer(ole)); ole.setklub(holte); } assertsame(holte,ole.getklub()); asserttrue(holte.containssvoemmer(ole)); c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
47 Example Step 5a: Design Svoemmer Svoemmer +navn: String +Svoemmer() * +medlemmer +klub 0..1 Klub +navn: String +Klub() +addsvoemmer() +containssvoemmer() c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
48 Example Step 5b: Implement Svoemmer package imm.swe1.svoemmer; public class Svoemmer { private String navn; private Klub klub; public Svoemmer(String navn) { this.navn = navn; } public String getnavn() { return navn; } public Klub getklub() { return klub; } public void setklub(klub klub) { if (this.klub == klub) return; this.klub = klub; klub.addsvoemmer(this); } } protected void setk(klub klub) { this.klub = klub; } c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
49 Example Step 6: Implement Klub public class Klub { private String navn ; private Collection<Svoemmer> medlemmer = new java.util.arraylist<svoemmer>() public Klub(String navn) { this.navn = navn; } public String getnavn() { return navn; } public void addsvoemmer(svoemmer svoemmer) { if (containssvoemmer(svoemmer)) return; medlemmer.add(svoemmer); svoemmer.setk(this); } } public boolean containssvoemmer(svoemmer svoemmer) { return medlemmer.contains(svoemmer); } c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
50 Example Step 2: Identify relevant notions Problem description En svømmer kan være medlem af en klub, men behøver det ikke hvis hun f.eks. svømmer på et elitecenter. En svømmer kan højst stille op til stævner for en klub. En svømmer beskrives ved navn, bedste tider, osv. En klub har en række medlemmer, og beskrives ved et navn. Remove svimmer scenario Create a club with name Virum Create a swimmer with name Per Add swimmer Per to club Virum Check that Per is member of Virum Remove swimmer Per from club Virum Check that Per is not member of Virum anymore Nouns Classes Relationship between nouns Attributes and Associations Actions Methods c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
51 Example Step 3: Domain Class modelling No changes to the domain model and the glossary Glossary Swimmer (Svømmer) Klub A swimmer has a name and is member of at most one swim club. Swimmers are organized in clubs. A club has a name and can have several swimmers as members. c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
52 Example Step 4: Write a test case for the scenario public void testsletsvoemmer1() { Klub virum = new Klub("Virum"); Svoemmer per = new Svoemmer("Per"); virum.addsvoemmer(per); } asserttrue(virum.containssvoemmer(per)); virum.sletsvoemmer(per); assertfalse(virum.containssvoemmer(per)); assertnull(per.getklub()); public void testsletsvoemmer2() { Klub virum = new Klub("Virum"); Svoemmer per = new Svoemmer("Per"); virum.addsvoemmer(per); asserttrue(virum.containssvoemmer(per)); per.setklub(null); } assertnull(per.getklub()); assertfalse(virum.containssvoemmer(per)); c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
53 Example Step 5a: Extend the Svoemmer Design Svoemmer +navn: String +Svoemmer() * +medlemmer +klub 0..1 Klub +navn: String +Klub() +addsvoemmer() +containssvoemmer() +sletsvoemmer() Added operation sletsvoemmer c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
54 Example Step 5: Extend the Svoemmer Implementation Additions to class Svoemmer public void setklub(klub klub) { if (this.klub == klub) return; Klub oldklub = this.klub; this.klub = klub; if (oldklub!= null) { oldklub.slets(this); } if (this.klub!= null) { this.klub.addsvoemmer(this); } } c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
55 Example Step 5: Implement Klub Additions to class Klub public void sletsvoemmer(svoemmer svoemmer) { if (!medlemmer.contains(svoemmer)) return; medlemmer.remove(svoemmer); svoemmer.setk(null); } protected void slets(svoemmer svoemmer) { medlemmer.remove(svoemmer); } c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
56 Summary Summary Introduction to Class Diagrams Domain Modelling Class Diagrams for Design and Implementation Implementing Class Diagrams c 2009 H. Baumeister (IMM) Software Engineering I (02161) Spring / 58
An Introduction To UML Class Diagrams Classes
An Introduction To UML Class Diagrams Classes 1. Represent a user-created or defined data type a. they are an abstract data type (ADT) b. they implement data hiding and encapsulation c. they establish
More informationUML Class Diagrams. Lesson Objectives
UML Class Diagrams 1 Lesson Objectives Understand UML class diagrams and object modelling Be able to identify the components needed to produce a class diagram from a specification Be able to produce class
More informationChapter 7 Data Modeling Using the Entity- Relationship (ER) Model
Chapter 7 Data Modeling Using the Entity- Relationship (ER) Model Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 7 Outline Using High-Level Conceptual Data Models for
More information11 November 2015. www.isbe.tue.nl. www.isbe.tue.nl
UML Class Diagrams 11 November 2015 UML Class Diagrams The class diagram provides a static structure of all the classes that exist within the system. Classes are arranged in hierarchies sharing common
More informationGetting Started With UML Class Modeling. An Oracle White Paper May 2007
Getting Started With UML Class Modeling An Oracle White Paper May 2007 Getting Started With UML Class Modeling INTRODUCTION... 3 WHAT IS CLASS MODELING... 3 CLASSES, ATTRIBUTES AND OPERATIONS... 4 GENERALIZATION...
More informationHistory OOP languages Year Language 1967 Simula-67 1983 Smalltalk
History OOP languages Intro 1 Year Language reported dates vary for some languages... design Vs delievered 1957 Fortran High level programming language 1958 Lisp 1959 Cobol 1960 Algol Structured Programming
More informationUML: Classes -- Association
UML: Classes -- Association Class1 You can indicate that two classes have an association by using a simple line connector. Class2 Web Development for Business 69 UML: Classes -- Association Class1 You
More informationATM Case Study OBJECTIVES. 2005 Pearson Education, Inc. All rights reserved. 2005 Pearson Education, Inc. All rights reserved.
1 ATM Case Study 2 OBJECTIVES.. 3 2 Requirements 2.9 (Optional) Software Engineering Case Study: Examining the Requirements Document 4 Object-oriented design (OOD) process using UML Chapters 3 to 8, 10
More informationHow to Make a Domain Model. Tutorial
How to Make a Domain Model Tutorial What is a Domain Model? Illustrates meaningful conceptual classes in problem domain Represents real-world concepts, not software components Software-oriented class diagrams
More informationChapter 8 The Enhanced Entity- Relationship (EER) Model
Chapter 8 The Enhanced Entity- Relationship (EER) Model Copyright 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 8 Outline Subclasses, Superclasses, and Inheritance Specialization
More informationIII. Class and Object Diagrams
III. Class and Object Diagrams Classes, Attributes and Operations Objects and Multi-objects Generalization and Inheritance Associations and Multiplicity Aggregation and Composition Business Objects and
More informationIV. The (Extended) Entity-Relationship Model
IV. The (Extended) Entity-Relationship Model The Extended Entity-Relationship (EER) Model Entities, Relationships and Attributes Cardinalities, Identifiers and Generalization Documentation of EER Diagrams
More informationGraphical Systems Modeling with UML / SysML Class diagrams
Graphical Systems Modeling with UML / SysML Class diagrams Piotr Ciskowski Perspectives - views: architecture class diagram object diagram composite structure diagram package diagram Logical view Use case
More information1 Class Diagrams and Entity Relationship Diagrams (ERD)
1 Class Diagrams and Entity Relationship Diagrams (ERD) Class diagrams and ERDs both model the structure of a system. Class diagrams represent the dynamic aspects of a system: both the structural and behavioural
More information2. Conceptual Modeling using the Entity-Relationship Model
ECS-165A WQ 11 15 Contents 2. Conceptual Modeling using the Entity-Relationship Model Basic concepts: entities and entity types, attributes and keys, relationships and relationship types Entity-Relationship
More informationCOMP 378 Database Systems Notes for Chapter 7 of Database System Concepts Database Design and the Entity-Relationship Model
COMP 378 Database Systems Notes for Chapter 7 of Database System Concepts Database Design and the Entity-Relationship Model The entity-relationship (E-R) model is a a data model in which information stored
More information02267: Software Development of Web Services
02267: Software Development of Web Services Week 8 Hubert Baumeister huba@dtu.dk Department of Applied Mathematics and Computer Science Technical University of Denmark Fall 2015 1 Recap I BPEL: I Doing
More informationCase studies: Outline. Requirement Engineering. Case Study: Automated Banking System. UML and Case Studies ITNP090 - Object Oriented Software Design
I. Automated Banking System Case studies: Outline Requirements Engineering: OO and incremental software development 1. case study: withdraw money a. use cases b. identifying class/object (class diagram)
More informationSTORM. Simulation TOol for Real-time Multiprocessor scheduling. Designer Guide V3.3.1 September 2009
STORM Simulation TOol for Real-time Multiprocessor scheduling Designer Guide V3.3.1 September 2009 Richard Urunuela, Anne-Marie Déplanche, Yvon Trinquet This work is part of the project PHERMA supported
More informationCS 111 Classes I 1. Software Organization View to this point:
CS 111 Classes I 1 Software Organization View to this point: Data Objects and primitive types Primitive types operators (+, /,,*, %). int, float, double, char, boolean Memory location holds the data Objects
More informationMasters programmes in Computer Science and Information Systems. Object-Oriented Design and Programming. Sample module entry test xxth December 2013
Masters programmes in Computer Science and Information Systems Object-Oriented Design and Programming Sample module entry test xxth December 2013 This sample paper has more questions than the real paper
More informationGUIDE to completion of the Excel spreadsheet
GUIDE to completion of the Excel spreadsheet 1 S i d e 1 TABLE OF CONTENTS 1 TABLE OF CONTENTS... 2 1.1 Data Entry Generalities... 3 1.2 Prepare data... 5 1.3 Simple Data Entry (horizontal direction)...
More informationHow To Design Software
The Software Development Life Cycle: An Overview Presented by Maxwell Drew and Dan Kaiser Southwest State University Computer Science Program Last Time The design process and design methods Design strategies
More informationThe UML Class Diagram
The UML Class Diagram Is a static diagram (describes system structure) Combines a number of model elements: Classes Attributes Operations (methods) Associations Aggregations Compositions Generalisations
More informationObject Oriented Software Design II
Object Oriented Software Design II Introduction to C++ Giuseppe Lipari http://retis.sssup.it/~lipari Scuola Superiore Sant Anna Pisa February 20, 2012 G. Lipari (Scuola Superiore Sant Anna) C++ Intro February
More informationChapter 2: Entity-Relationship Model. E-R R Diagrams
Chapter 2: Entity-Relationship Model What s the use of the E-R model? Entity Sets Relationship Sets Design Issues Mapping Constraints Keys E-R Diagram Extended E-R Features Design of an E-R Database Schema
More informationLecture 12: Entity Relationship Modelling
Lecture 12: Entity Relationship Modelling The Entity-Relationship Model Entities Relationships Attributes Constraining the instances Cardinalities Identifiers Generalization 2004-5 Steve Easterbrook. This
More informationChapter 2: Entity-Relationship Model. Entity Sets. " Example: specific person, company, event, plant
Chapter 2: Entity-Relationship Model! Entity Sets! Relationship Sets! Design Issues! Mapping Constraints! Keys! E-R Diagram! Extended E-R Features! Design of an E-R Database Schema! Reduction of an E-R
More informationDatabase Modelling in UML
Database Modelling in UML By Geoffrey Sparks, sparks@sparxsystems.com.au : http://www.sparxsystems.com.au Originally published in Methods & Tools e-newsletter : http://www.martinig.ch/mt/index.html Introduction
More informationPrinciples of Software Construction: Objects, Design, and Concurrency. Domain Modeling and Specifying System Behavior. toad
Principles of Software Construction: Objects, Design, and Concurrency Domain Modeling and Specifying System Behavior toad Fall 2014 Jonathan Aldrich Charlie Garrod School of Computer Science Administrivia:
More informationUmbrello UML Modeller Handbook
2 Contents 1 Introduction 7 2 UML Basics 8 2.1 About UML......................................... 8 2.2 UML Elements........................................ 9 2.2.1 Use Case Diagram.................................
More informationData Analysis 1. SET08104 Database Systems. Copyright @ Napier University
Data Analysis 1 SET08104 Database Systems Copyright @ Napier University Entity Relationship Modelling Overview Database Analysis Life Cycle Components of an Entity Relationship Diagram What is a relationship?
More informationCOSC 1020 3.0 Introduction to Computer Science I Section A, Summer 2005. Question Out of Mark A Total 16. B-1 7 B-2 4 B-3 4 B-4 4 B Total 19
Term Test #2 COSC 1020 3.0 Introduction to Computer Science I Section A, Summer 2005 Family Name: Given Name(s): Student Number: Question Out of Mark A Total 16 B-1 7 B-2 4 B-3 4 B-4 4 B Total 19 C-1 4
More informationUnit 2.1. Data Analysis 1 - V2.0 1. Data Analysis 1. Dr Gordon Russell, Copyright @ Napier University
Data Analysis 1 Unit 2.1 Data Analysis 1 - V2.0 1 Entity Relationship Modelling Overview Database Analysis Life Cycle Components of an Entity Relationship Diagram What is a relationship? Entities, attributes,
More informationTutorial - Building a Use Case Diagram
Tutorial - Building a Use Case Diagram 1. Introduction A Use Case diagram is a graphical representation of the high-level system scope. It includes use cases, which are pieces of functionality the system
More informationCSC 742 Database Management Systems
CSC 742 Database Management Systems Topic #4: Data Modeling Spring 2002 CSC 742: DBMS by Dr. Peng Ning 1 Phases of Database Design Requirement Collection/Analysis Functional Requirements Functional Analysis
More informationMore on Objects and Classes
Software and Programming I More on Objects and Classes Roman Kontchakov Birkbeck, University of London Outline Object References Class Variables and Methods Packages Testing a Class Discovering Classes
More informationJava (12 Weeks) Introduction to Java Programming Language
Java (12 Weeks) Topic Lecture No. Introduction to Java Programming Language 1 An Introduction to Java o Java as a Programming Platform, The Java "White Paper" Buzzwords, Java and the Internet, A Short
More informationCS 106 Introduction to Computer Science I
CS 106 Introduction to Computer Science I 01 / 21 / 2014 Instructor: Michael Eckmann Today s Topics Introduction Homework assignment Review the syllabus Review the policies on academic dishonesty and improper
More informationpublic void setusername(string username) { this.username = username; } public void setname(string name) { this.name = name; }
User-klassen package domain; import dk.au.hum.imv.persistence.db.databasepersistent; public class User extends DatabasePersistent { private String username; private String name; private String address;
More informationObject-Oriented Design Lecture 4 CSU 370 Fall 2007 (Pucella) Tuesday, Sep 18, 2007
Object-Oriented Design Lecture 4 CSU 370 Fall 2007 (Pucella) Tuesday, Sep 18, 2007 The Java Type System By now, you have seen a fair amount of Java. Time to study in more depth the foundations of the language,
More informationThe modal verbs kan sende modtage Same word for must and may Future expressed without modal verb
The modal verbs A modal verb can, may must, shall or will is an auxiliary it modifies the verb and expresses whether the action described is seen as plan, intention, necessity, possibility, prediction,
More informationTHE BCS PROFESSIONAL EXAMINATION Diploma October 2014 EXAMINERS REPORT Systems Analysis and Design
THE BCS PROFESSIONAL EXAMINATION Diploma October 2014 EXAMINERS REPORT Systems Analysis and Design Section A General Comments Many candidates lack the skill of being able to apply theoretical knowledge
More informationUML Modeling Guidelines
UML Modeling Guidelines Version 1.0 March 13, 2015 ONF TR-514 ONF Document Type: Technical Recommendation ONF Document Name: UML Modeling Guidelines V1.0 Disclaimer THIS SPECIFICATION IS PROVIDED AS IS
More informationIntroduktion til distribuerede systemer uge 37 - fil og webserver
Introduktion til distribuerede systemer uge 37 - fil og webserver Rune Højsgaard 090678 1. delsstuderende 13. september 2005 1 Kort beskrivelse Implementationen af filserver og webserver virker, men håndterer
More informationDesign by Contract beyond class modelling
Design by Contract beyond class modelling Introduction Design by Contract (DbC) or Programming by Contract is an approach to designing software. It says that designers should define precise and verifiable
More informationJava Cheatsheet. http://introcs.cs.princeton.edu/java/11cheatsheet/ Tim Coppieters Laure Philips Elisa Gonzalez Boix
Java Cheatsheet http://introcs.cs.princeton.edu/java/11cheatsheet/ Tim Coppieters Laure Philips Elisa Gonzalez Boix Hello World bestand genaamd HelloWorld.java naam klasse main methode public class HelloWorld
More informationOutline. Data Modeling. Conceptual Design. ER Model Basics: Entities. ER Model Basics: Relationships. Ternary Relationships. Yanlei Diao UMass Amherst
Outline Data Modeling Yanlei Diao UMass Amherst v Conceptual Design: ER Model v Relational Model v Logical Design: from ER to Relational Slides Courtesy of R. Ramakrishnan and J. Gehrke 1 2 Conceptual
More informationObject Oriented Design
Object Oriented Design Kenneth M. Anderson Lecture 20 CSCI 5828: Foundations of Software Engineering OO Design 1 Object-Oriented Design Traditional procedural systems separate data and procedures, and
More informationVHDL programmering H2
VHDL programmering H2 VHDL (Very high speed Integrated circuits) Hardware Description Language IEEE standard 1076-1993 Den benytter vi!! Hvornår blev den frigivet som standard første gang?? Ca. 1980!!
More informationPart 1 Foundations of object orientation
OFWJ_C01.QXD 2/3/06 2:14 pm Page 1 Part 1 Foundations of object orientation OFWJ_C01.QXD 2/3/06 2:14 pm Page 2 1 OFWJ_C01.QXD 2/3/06 2:14 pm Page 3 CHAPTER 1 Objects and classes Main concepts discussed
More informationStudent evaluation form
Student evaluation form Back Number of respondents: 17 1. Multiple choice question Percentage Name of course: [Insert name of course here!] Course Objectives: [Insert course objectives (målbeskrivelse)
More informationSchema Classes. Polyhedra Ltd
Schema Classes Polyhedra Ltd Copyright notice This document is copyright 1994-2006 by Polyhedra Ltd. All Rights Reserved. This document contains information proprietary to Polyhedra Ltd. It is supplied
More informationJOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at http://www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2003 Vol. 2, No. 5, September-October 2003 Mapping UML Associations into Java Code
More informationDISCLAIMER OVERVIEW WHY DO WE MODEL WHAT IS QUALITY? Jeff Jacobs, jmjacobs@jeffreyjacobs.com
DEVELOPING HIGH CLASS UML CLASS MODELS Jeff Jacobs, jmjacobs@jeffreyjacobs.com DISCLAIMER The views presented here are those of the presenter and do not represent those of any other person, organization,
More informationCSE 1020 Introduction to Computer Science I A sample nal exam
1 1 (8 marks) CSE 1020 Introduction to Computer Science I A sample nal exam For each of the following pairs of objects, determine whether they are related by aggregation or inheritance. Explain your answers.
More informationHow To Use The Command Pattern In Java.Com (Programming) To Create A Program That Is Atomic And Is Not A Command Pattern (Programmer)
CS 342: Object-Oriented Software Development Lab Command Pattern and Combinations David L. Levine Christopher D. Gill Department of Computer Science Washington University, St. Louis levine,cdgill@cs.wustl.edu
More informationStructure of Presentation. The Role of Programming in Informatics Curricula. Concepts of Informatics 2. Concepts of Informatics 1
The Role of Programming in Informatics Curricula A. J. Cowling Department of Computer Science University of Sheffield Structure of Presentation Introduction The problem, and the key concepts. Dimensions
More informationDraft Martin Doerr ICS-FORTH, Heraklion, Crete Oct 4, 2001
A comparison of the OpenGIS TM Abstract Specification with the CIDOC CRM 3.2 Draft Martin Doerr ICS-FORTH, Heraklion, Crete Oct 4, 2001 1 Introduction This Mapping has the purpose to identify, if the OpenGIS
More informationPart I. Multiple Choice Questions (2 points each):
Part I. Multiple Choice Questions (2 points each): 1. Which of the following is NOT a key component of object oriented programming? (a) Inheritance (b) Encapsulation (c) Polymorphism (d) Parallelism ******
More informationProceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010)
Electronic Communications of the EASST Volume 34 (2010) Proceedings of the 6th Educators Symposium: Software Modeling in Education at MODELS 2010 (EduSymp 2010) Position Paper: m2n A Tool for Translating
More informationInformationsteknologi Små computersystemers. Del 251: USB-fæstnet SCSI (UAS)
Dansk standard DS/ISO/IEC 14776-251 1. udgave 2014-05-27 Informationsteknologi Små computersystemers grænseflade (SCSI) Del 251: USB-fæstnet SCSI (UAS) Information technology Small computer system interface
More informationDesign and UML Class Diagrams. Suggested reading: Practical UML: A hands on introduction for developers http://dn.codegear.
Design and UML Class Diagrams Suggested reading: Practical UML: A hands on introduction for developers http://dn.codegear.com/article/31863 UML Distilled Ch. 3, by M. Fowler 1 Big questions What is UML?
More informationDatabase Design Methodology
Topic 7 Database Design Methodology LEARNING OUTCOMES When you have completed this Topic you should be able to: 1. Discuss the purpose of a design methodology. 2. Explain three main phases of design methodology.
More informationClasses and Objects. Agenda. Quiz 7/1/2008. The Background of the Object-Oriented Approach. Class. Object. Package and import
Classes and Objects 2 4 pm Tuesday 7/1/2008 @JD2211 1 Agenda The Background of the Object-Oriented Approach Class Object Package and import 2 Quiz Who was the oldest profession in the world? 1. Physician
More informationEntity-Relationship Model
UNIT -2 Entity-Relationship Model Introduction to ER Model ER model is represents real world situations using concepts, which are commonly used by people. It allows defining a representation of the real
More informationMathematics for Computer Science/Software Engineering. Notes for the course MSM1F3 Dr. R. A. Wilson
Mathematics for Computer Science/Software Engineering Notes for the course MSM1F3 Dr. R. A. Wilson October 1996 Chapter 1 Logic Lecture no. 1. We introduce the concept of a proposition, which is a statement
More informationComplexities of Simulating a Hybrid Agent-Landscape Model Using Multi-Formalism
Complexities of Simulating a Hybrid Agent-Landscape Model Using Multi-Formalism Composability Gary R. Mayer Gary.Mayer@asu.edu Hessam S. Sarjoughian Sarjougian@asu.edu Arizona Center for Integrative Modeling
More informationEl Dorado Union High School District Educational Services
El Dorado Union High School District Course of Study Information Page Course Title: ACE Computer Programming II (#495) Rationale: A continuum of courses, including advanced classes in technology is needed.
More informationCMSC 132: Object-Oriented Programming II. Design Patterns I. Department of Computer Science University of Maryland, College Park
CMSC 132: Object-Oriented Programming II Design Patterns I Department of Computer Science University of Maryland, College Park Design Patterns Descriptions of reusable solutions to common software design
More informationCo-Creation of Models and Metamodels for Enterprise. Architecture Projects.
Co-Creation of Models and Metamodels for Enterprise Architecture Projects Paola Gómez pa.gomez398@uniandes.edu.co Hector Florez ha.florez39@uniandes.edu.co ABSTRACT The linguistic conformance and the ontological
More information30-11-2009. Softwaretest. Kvalitetssikring og kvalitetskontrol. Kvalitetssikring og kvalitetskontrol. Kvalitetssikring.
Softwaretest Version: 30/11 10:30 Kvalitetssikring og kvalitetskontrol Kvalitetssikring The planned and systematic activities implemented in a quality system so that quality requirements for a product
More informationIntroduction. UML = Unified Modeling Language It is a standardized visual modeling language.
UML 1 Introduction UML = Unified Modeling Language It is a standardized visual modeling language. Primarily intended for modeling software systems. Also used for business modeling. UML evolved from earlier
More informationMeta Model Based Integration of Role-Based and Discretionary Access Control Using Path Expressions
Meta Model Based Integration of Role-Based and Discretionary Access Control Using Path Expressions Kathrin Lehmann, Florian Matthes Chair for Software Engineering for Business Information Systems Technische
More informationObject Relational Database Mapping. Alex Boughton Spring 2011
+ Object Relational Database Mapping Alex Boughton Spring 2011 + Presentation Overview Overview of database management systems What is ORDM Comparison of ORDM with other DBMSs Motivation for ORDM Quick
More information3.1 Use Case Diagrams
3.1 Subject/Topic/Focus: Introduction to Use Cases Summary: System Boundary Actors Use Cases Generalization, Inclusion, Extension Literature: [Fowler99], UML Distilled, Second Edition [Booch98] Last change:
More information02267: Software Development of Web Services
02267: Software Development of Web Services Week 8 Hubert Baumeister huba@dtu.dk Department of Applied Mathematics and Computer Science Technical University of Denmark Fall 2013 Contents RESTful Services
More informationIMM / Informatics and Mathematical Modeling Master thesis. Business Modeling. Alla Morozova. Kgs. Lyngby 2003 DTU
IMM / Informatics and Mathematical Modeling Master thesis Business Modeling Alla Morozova Kgs. Lyngby 2003 DTU PREFACE The author of this project would like to thank the master thesis project supervisor
More informationUsing UML Part One Structural Modeling Diagrams
UML Tutorials Using UML Part One Structural Modeling Diagrams by Sparx Systems All material Sparx Systems 2007 Sparx Systems 2007 Page 1 Trademarks Object Management Group, OMG, Unified Modeling Language,
More informationTHE ENTITY- RELATIONSHIP (ER) MODEL CHAPTER 7 (6/E) CHAPTER 3 (5/E)
THE ENTITY- RELATIONSHIP (ER) MODEL CHAPTER 7 (6/E) CHAPTER 3 (5/E) 2 LECTURE OUTLINE Using High-Level, Conceptual Data Models for Database Design Entity-Relationship (ER) model Popular high-level conceptual
More informationA technical discussion on modeling with UML 06/11/03 Entity Relationship Modeling with UML
A technical discussion on modeling with UML 06/11/03 Entity Relationship Modeling with UML Davor Gornik Improving software development capability 2 Table of Contents Entity Relationship Modeling... 1 Core
More informationCS560: Formal Modelling and Implementation of Systems (Term II) Lecture: Class Diagrams A. O Riordan, 2009 Includes notes by J Herbert, K Brown.
CS560: Formal Modelling and Implementation of Systems (Term II) Lecture: Class Diagrams A. O Riordan, 2009 Includes notes by J Herbert, K Brown. OOD - Classes Design includes specification of classes UML
More informationProgramming and Software Development CTAG Alignments
Programming and Software Development CTAG Alignments This document contains information about four Career-Technical Articulation Numbers (CTANs) for Programming and Software Development Career-Technical
More informationModern Systems Analysis and Design
Modern Systems Analysis and Design Prof. David Gadish Structuring System Data Requirements Learning Objectives Concisely define each of the following key data modeling terms: entity type, attribute, multivalued
More informationComputer Programming I
Computer Programming I COP 2210 Syllabus Spring Semester 2012 Instructor: Greg Shaw Office: ECS 313 (Engineering and Computer Science Bldg) Office Hours: Tuesday: 2:50 4:50, 7:45 8:30 Thursday: 2:50 4:50,
More informationAbstract. a http://www.eiffel.com
Abstract Eiffel Software a provides a compiler for the Eiffel programming language capable of generating C code or Common Intermediate Language byte code. The CLI code can be executed on the Common Language
More informationDesign and UML Class Diagrams
Design and UML Class Diagrams 1 Suggested reading: Practical UML: A hands on introduction for developers http://dn.codegear.com/article/31863 UML DistilledCh. 3, by M. Fowler How do people draw / write
More informationMobile App Design Project #1 Java Boot Camp: Design Model for Chutes and Ladders Board Game
Mobile App Design Project #1 Java Boot Camp: Design Model for Chutes and Ladders Board Game Directions: In mobile Applications the Control Model View model works to divide the work within an application.
More informationResearch on the Danish heroin assisted treatment programme
Research on the Danish heroin assisted treatment programme Katrine Schepelern Johansen Anthropologist, PhD Post.doc, Department of Anthropology, University of Copenhagen Treatment with heroin in Denmark
More informationOrganization of DSLE part. Overview of DSLE. Model driven software engineering. Engineering. Tooling. Topics:
Organization of DSLE part Domain Specific Language Engineering Tooling Eclipse plus EMF Xtext, Xtend, Xpand, QVTo and ATL Prof.dr. Mark van den Brand GLT 2010/11 Topics: Meta-modeling Model transformations
More informationInformation og dokumentation Ledelsessystem for dokumentstyring Krav
Dansk standard DS/ISO 30301 1. udgave 2011-11-22 Information og dokumentation Ledelsessystem for dokumentstyring Krav Information and documentation Management systems for records Requirements DS/ISO 30301
More informationChapter 2: Entity-Relationship Model
Chapter 2: Entity-Relationship Model Entity Sets Relationship Sets Design Issues Mapping Constraints Keys E R Diagram Extended E-R Features Design of an E-R Database Schema Reduction of an E-R Schema to
More informationThe Entity-Relationship Model
The Entity-Relationship Model 221 After completing this chapter, you should be able to explain the three phases of database design, Why are multiple phases useful? evaluate the significance of the Entity-Relationship
More informationOpdatering af metadata via SAS -programmer
Opdatering af metadata via SAS -programmer Henrik Dorf, chefkonsulent, PS Commercial Metadata SAS Management Console Meta browser SAS Data Integration Studio SAS Metadata Server Administrerer adgangen
More informationDeveloper Guide. Christian W. Günther christian@fluxicon.com. Library version: 1.0 RC7 Revision: 7
Developer Guide Christian W. Günther christian@fluxicon.com Library version: 1.0 RC7 Revision: 7 November 14, 2009 The XES Meta-model Introduction Event logs, as they occur in practice and research, can
More informationHow To Draw A Cell Phone Into A Cellphone In Unminimal Diagram (Uml)
UML Tutorial: Collaboration Diagrams Robert C. Martin Engineering Notebook Column Nov/Dec, 97 In this column we will explore UML collaboration diagrams. We will investigate how they are drawn, how they
More informationHow To Understand Software Quality
Chapter 24 - Quality Management Letizia Jaccheri 1 Topics covered Software quality (project, product, organization) Software standards (product, process) Reviews and inspections (code, progress, standards)
More informationXV. The Entity-Relationship Model
XV. The Entity-Relationship Model The Entity-Relationship Model Entities, Relationships and Attributes Cardinalities, Identifiers and Generalization Documentation of E-R Diagrams and Business Rules The
More informationAnalysis and Design with UML
Analysis and Design with UML Page 1 Agenda Benefits of Visual Modeling History of the UML Visual Modeling with UML The Rational Iterative Development Process Page 2 What is Visual Modeling? Item Order
More informationAdvanced Topics in Software Construction
Advanced Topics in Software Construction Winter Semester 2009/10 Final Exam (10.02.2010) Please read the exercises carefully. Total time: 90 min. Name Matriculation Number 1 2 3 4 5 12 14 14 12 13 65 Grade
More information