Topic 13 Object-oriented Analysis
|
|
- Alvin McDonald
- 5 years ago
- Views:
Transcription
1 Topic 3 Object-oriented Analysis a) f) DAAD Project Joint Course on Software Engineering Humboldt University Berlin, University of Novi Sad, University of Plovdiv, University of Skopje, University of Belgrade, University of Niš, University of Kragujevac Parts of this topic use material from the textbook H. Balzert, Software-Technik, Vol., 2nd ed., Spektrum Akademischer Verlag, 200 Version: July 30, 2003 (D May 4, 2003)
2 3. Object-oriented Analysis a) Overview: approaches, history, literature b) Object-oriented paradigm: basic notions c) Sub-models in UML d) How to read a given static OOA model? (Class diagram: example seminar organization ) e) Detailed specification: DD, pseudocode f) Packages 2 2
3 Classical waterfall model: the place of OOA Analysis and and Definition Design Design Balzert (200) Implementation Implementation Planning phase Feasibility study glossary preliminary requirements specification cost estimation project plan Definition phase Product definition requirements specification product model user interface user manual Test Test Usage Usage and and Maintenance Maintenance 3 3
4 Aspects of OOA Model paradigm: Decomposition of the SW systems into objects static / dynamic model (different views) Modeling language: UML: diagrams Methodology: How to develop a model? Tools: Together, Rational Rose, Paradigm Plus 4 4
5 Approaches, literature, systems of OO analysis: early works P. Coad, E. Yourdon. Objekt-orientierted Analysis. Prentice Hall, 990 J. Rumbaugh, M. Blaha, W. Premerlani, F. Eddy, W. Lorensen: Object-Oriented Model and Design. Prentice Hall, 99 OMT Object Modelling Technique Tool OMTool G. Booch: Object-oriented Analysis and Design with Applications. The Benjamin/Cummings Publishing Company, 994 Tool Rational Rose I. Jacobson, M. Christerson, P. Jonsson, G. Övergaard. Object-Oriented Software Engineering: A Use Case Driven Approach. Addison-Wesley, 994 Use Case Model Situation in more than 50 OOA methods - differences: notations, described aspects - Paradigm Plus: 996, tool supports methods 5 5
6 UML Unified Modeling Language authors: Rumbaugh, Booch, Jacobson Sept. 999: version.3 industry standard March 2003: Version.5 graphical language: collection of different diagram types for different views on the SWsystem critics: UML = mixture of methods UML only with syntax, without defined semantics 6 6
7 Approaches, literature, systems of OO analysis: the official UML literature J. Rumbaugh, I. Jacobson, G. Booch: The Unified Modeling Language Reference Guide, Addison Wesley, 999 G. Booch, J. Rumbaugh, I. Jacobson: The Unified Modeling Language User Guide, Addison Wesley, 999 I. Jacobson, G. Booch, J. Rumbaugh: The Unified Software Development Process, Addison Wesley,
8 History () Peter Coad in San Francisco His book»object-oriented Analysis«(990) (with E. Yourdon) helped to get OOA accepted. Introduced OOA patterns (995) 8 8
9 History (2) Dr. James Rumbaugh in Bethlehem, PA, USA Fellow, Rational Software Corporation Chief developer of the OMT method (Object Modeling Technique). 9 9
10 Goal of OOA like in case of structured analysis: produce a formalised product model (as part of product definition) with it: specialize requirements document combination of basic concepts: description of a system from different views 0 0
11 Combination of basic concepts in object-oriented analysis Data Dictionary (Balzert: attribute structure) Data flow diagram (Rumbaugh: functional model, 99) OOA 990 sequence diagram ER (Entity Rlationship) class diagram pseudo code state automaton collaboration diagram use case diagram entities & relations class structures control structures finite automaton interaction structures work flow
12 Basic concepts of software development Balzert vol., 2nd edition 200 Concepts and Views Alternative Notations Often used Rarely used nearly all concepts allowed Box diagram 973 Program flowchart 966 Decision tables 957 Activity diagram 997 Collaboration diagram Function tree Functional hierarchy Use Case Diagram 987 Business Process Data flow diagram 966 Information Flow Data- Dictionary 979 Data Structures Entity Relationship Model 976 Entity types and relations Class diagram 980/ 990 Class structures Functional View Data-Oriented View Object- Oriented View Pseudo code Control structures Algorithmic View Rules If-Then structures Rule- Based View State automat on 954 Finite State Automaton Petri Net 962 Concurrent structures State-Oriented View Sequence diagram 987 Interaction structures Scenario- Based View 2 2
13 from state automaton: Mealy automaton Moore automaton Harel automaton from time diagrams: sequence diagram OOA Sources of OOA from OOP: object operation class inheritance attribute message from semantical data modelling: aggregation (generalization type/ specialization type) from business processes: use case from ER model: associaltion with cardinalities (attribute) (entity type) 3 3
14 3. Object-oriented Analysis a) Overview: approaches, history, literature b) Object-oriented paradigm: basic notions c) Submodels in UML d) How to read a given static OOA model? (Class diagram: example seminar organization ) e) Detailed specification: DD, pseudocode f) Packages 4 4
15 OO paradigm: basic notions basic idea: decomposition of a SW system into objects and (object) classes basic notion: object used in all phases of SW development many definitions 5 5
16 Basic concepts of OO originally: on the level of programming (970,985) later: OOA, OOD (990) Object Class (collection of similar objects) Attribute (state, data of an object) Operation (behaviour) Message (sending messages to objects) Inheritance (class hierarchy) Polymorphism (overlaying of operations) known from OOP basic concept class diagram encompasses these OO concepts 6 6
17 Object-oriented analysis due to Booch (994) Object-oriented analysis is a method of analysis that examines requirements from the perspective of the classes and objects found in the vocabulary of the problem domain. Source: G. Booch: Object-oriented Analysis and Design with Applications, 994, page
18 The notion of object What is is an object? The official definition...? In the literature we find very different definitions! 8 8
19 Hopkins, Smalltalk: The notion of object () An Object is a combination of two parts:. Data the state of the object is maintained within that object 2. Operation all mechanisms to access and manipulate that state. ParcPlace VisualWorks Tutorial: Objects (are) software units that contain collections of related data plus operations for manipulating that data Rumbaugh: An object combines both data structure and behavior in a single entity. 9 9
20 The notion of object (2) Booch: Objects... are data abstractions with an interface of named operations and a hidden local state (994, page 38). A. Goldberg, Smalltalk 80: An object consists of some private memory and a set of operations. Booch: An object has state, behavior, and identity; the structure and behavior of similar objects are defined in their common class; the terms instance and object are interchangeable (994, page 83)
21 3. Object-oriented Analysis a) Overview: approaches, history, literature b) Object-oriented paradigm: basic notions c) Submodels in UML d) How to read a given static OOA model? (Class diagram: example seminar organization ) e) Detailed specification: DD, pseudocode f) Packages 2 2
22 Statical and dynamical model associations use case scenario static concepts dynamic concepts inheritance package message stateautomaton also also static? static? attribute operation static model also also dynamic? dynamic? object basic concepts class dynamic model 22 22
23 Statical and dynamical model: used UML diagrams associations use case? szenario inheritance static concepts class diagrams package diagrams component diagrams use casediagrams?? package attribute dynamic concepts stateautomaton message state automaton activity diagrams sequence diagrams collaboration diagrams operation static model object basic concepts class dynamic model 23 23
24 Diagrams in UML use case diagram: interaction of persons with systems class diagram: classes and their static relations sequence diagram: time-dependent flow of messages collaboration diagram: the same as sequence diagram package diagram: modularisation state diagram: dynamical behaviour of objects activity diagram: parallel processes component diagram: compilation units, hardware structure object diagram: objects and their relations 24 24
25 Application of UML diagrams in the phases of SW development (source: Informatik Spektrum, April 998) static model dynamic model use case diagrams Requirements activity diagrams class diagrams package diagrams Analysis sequence diagrams class diagrams (refined, with inheritance and associations) Design collaboration diagrams state-automaton component diagrams code classes definitions Implementation code methods object structure object behaviour 25 25
26 3. Object-oriented Analysis a) Overview: approaches, history, literature b) Object-oriented paradigm: basic notions c) Submodels in UML d) How to read a given static OOA model? (Class diagram: example seminar organization ) e) Detailed specification: DD, pseudocode f) Packages 26 26
27 Static OOA model: seminar organisation Company Shortname: String <0> Name: NameT Contact: ContactT Contact person: NamtT Sector: String <30> Contact person birthday: Date Function: String <30> Short information: String <200> Notices: String <200> Business volume: Float Client since: Date Booking Registered: Date Confirmation: Date Bill: Date Checked out: Date Notification: Date Register() Check out() Produce notification() Prove payment() Person Number: Serial Name: NameT Contact: ContactT Birthday: Date First registered: Date Short information: String <200> Notices: String <200> Produce address lable() Lecturer Biography: String<400> Daily honorar: Float Employer Associate 0.. Contractor Associate Entitlement: RoleET Password: String <6> Occupation: String <30> Is able to conduct Client Function: String <50> Business volume: Currency Participant Substitute paricipant Produce Notification() Client booking Customer Public seminar Cooperation partner: String<00> Cancel fee: Float Participant min: Short Participant actual: Short Produce participant list() Produce participant certificate() Company booking Company internal seminar All-inclusive price: Float Participants max: Short Presentation Number: Short Duration: Short From: Date To: Date Daily schedular start: Time Daily schedular stop: Time Start first day: Time End last day: Time Place: String <50> Participant max: Short Canceled: YesNoET Cancel() Produce honorar information() Register() Check out() Is free() Alternative seminars() Seminar supervisor Referent Seminar type Short titel: String<0> Titel: String <50> Purpose: String<400> Method: String<400> Overview: String<400> Daily procedure: String<20> Durance: Short Documents: String<200> Target group: String<200> Preconditions: String<200> Charge without tax: Float Participant number max: Short Participant number min: short 27 27
28 6 Read invoice data 4 Manage customers comp. booking data invoice data sets 3 Record paying delay 5 Manage companies Manage lecturers 2 Manage seminars DFD 0: Manage Seminars and Customers invoice information information booking data notific. letter notification letter request data requests request data requests info to lecturer lecturer data seminar short title lecturer data presentationno invoice certificates list of participants data base seminars and customers invoice data paying delays seminar requests seminar data invoice data invoice data invoice copies paying delays seminar information
29 Correlations requirements specification product model : structured analysis relation? product model 2: OO analysis Problems:. Is the information included in PM also included in PM2 (and vice versa)? 2. What about the understandability of the models? (readability, problem adequacy) 3. Is there a methodology to develop the corresponding model (easy to establish)? 29 29
30 Interface: Interface: comparable comparable with with a class class Client information booking data notific. letter bill 6 read invoice data comp. booking data invoice data sets information notification letter request data 4 requests manage customers Data Data flows: flows: collected collected sets sets of of attributes attributes billing data invoice data invoice copies invoice invoice data 3 record paying delay 5 manage companies lecturer data presentationno data base seminars and customers paying delays paying delays request data requests manage lecturers seminar short title certificates 2 manage seminars info to lecturer lecturer data list of participants seminar requests seminar data seminar information Some relations to OOA Product Product function function (F): (F): comparable comparable with with use use cases cases (general (general F) F) operation operation of of a class class (specific (specific F) F) 30 30
31 Static OOA model: seminar organisation Company Shortname: String <0> Name: NameT Contact: ContactT Contact person: NamtT Sector: String <30> Contact person birthday: Date Function: String <30> Short information: String <200> Notices: String <200> Business volume: Float Client since: Date Booking Registered: Date Confirmation: Date Bill: Date Checked out: Date Notification: Date Register() Check out() Produce notification() Prove payment() Person Number: Serial Name: NameT Contact: ContactT Birthday: Date First registered: Date Short information: String <200> Notices: String <200> Produce address lable() Lecturer Biography: String<400> Daily honorar: Float Employer Associate Client 0.. Function: String <50> Business volume: Currency Contractor Participant Substitute participant Produce Notification() Client booking Customer Public presentation Cooperation partner: String<00> Cancel fee: Float Participant min: Short Participant actual: Short Produce participant list() Produce participant certificate() Company booking Company internal presentation All-inclusive price: Float Participants max: Short Associate Entitlement: RoleET Password: String <6> Occupation: String <30> Presentation Number: Short Duration: Short From: Date To: Date Daily schedular start: Time Daily schedular stop: Time Start first day: Time End last day: Time Place: String <50> Participant max: Short Canceled: YesNoET Cancel() Produce honorar information() Register() Check out() Is free() Alternative seminars() Seminar supervisor Referent Is able to conduct Seminar type Short titel: String<0> Titel: String <50> Purpose: String<400> Method: String<400> Overview: String<400> Daily procedure: String<20> Durance: Short Documents: String<200> Target group: String<200> Preconditions: String<200> Charge without tax: Float Participant number max: Short Participant number min: short 3 3
32 Static OOA model: notions Company Shortname: String <0> Name: NameT Contact: ContactT Contact person: NamtT Sector: String <30> Contact person birthday: Date Function: String <30> Short information: String <200> Notices: String <200> Business volume: Float Client since: Date Association Booking Registered: Date Confirmation: Date Bill: Date Checked out: Date Notification: Date Register() Check out() Produce notification() Prove payment() Classes: - name - attribute - operations Employer Associate Client 0.. Function: String <50> Business volume: Currency Produce Notification() 0.. Customer Contractor Cardinality 0.. Participant Substitute paricipant 0.. Role Client booking Generalization / Inheritance Company booking 32 32
33 Static OOA model: problems () Company Shortname: String <0> Name: NameT Contact: ContactT Contact person: NamtT Sector: String <30> Contact person birthday: Date Function: String <30> Short information: String <200> Notices: String <200> Business volume: Float Client since: Date To be able to read a final model Employer Associate Client 0.. Function: String <50> Business volume: Currency Contractor Participant Substitute paricipant Produce Notification() Client booking Most Customer challenging problem: How Public to presentation develop Cooperation just partner: this String<00> model? Cancel fee: Float Participant min: Short Participant actual: Short Produce participant list() Produce participant certificate() Booking Registered: Date Confirmation: Date Bill: Date Checked out: Date Notification: Date Register() Check out() Produce notification() Prove payment() Company booking Company internal presentation All-inclusive price: Float Participants max: Short But: is the model also reasonable? To be able to assess a final model Person Number: Serial Name: NameT Contact: ContactT Birthday: Date First registered: Date Short information: String <200> Notices: String <200> Produce address lable() Associate Entitlement: RoleET Password: String <6> Occupation: String <30> Presentation Number: Short Duration: Short From: Date To: Date Daily schedular start: Time Daily schedular stop: Time Start first day: Time End last day: Time Place: String <50> Participant max: Short Canceled: YesNoET Cancel() Produce honorar information() Register() Check out() Is free() Alternative seminars() Seminar supervisor Referent To be able to produce a model Lecturer Biography: String<400> Daily honorar: Float Are there missing: classes attributes operations? Do we have the choice Is able to conduct Seminar type Short titel: String<0> Titel: of String other <50> Purpose: String<400> Method: classes? String<400> Overview: String<400> Daily procedure: String<20> Durance: Short Documents: String<200> Target group: String<200> Preconditions: String<200> Charge without tax: Float Participant number max: Short Participant number min: short 33 33
34 Static OOA model: problems (2) Company Shortname: String <0> Name: NameT 2 classes: Contact: ContactT Contact person: NamtT Sector: String <30> ones Contact person birthday: ones? Date Function: String <30> Short information: String <200> Notices: String <200> Business volume: Float Client since: Date Employer Associate 2 classes: Why Why just just these these Client 0.. Function: String <50> Business volume: Currency Contractor Participant Substitute paricipant Produce Notification() Client booking Customer Public presentation Cooperation partner: String<00> Cancel fee: Float Participant min: Short Participant actual: Short Produce participant list() Produce participant certificate() Why not? Booking Registered: Date Confirmation: Date Bill: Date Checked out: Date Notification: Date Register() Check out() Produce notification() Prove payment() delay of payment customer bill date amount printdop() Company booking Company internal presentation All-inclusive price: Float Participants max: Short Person Number: Serial Name: NameT Contact: ContactT Birthday: Date First registered: Date Short information: String <200> Notices: String <200> Produce address lable() Associate Entitlement: RoleET Password: String <6> Occupation: String <30> address name street number country ZIP city phone Presentation Number: Short Duration: Short From: Date To: Date Daily schedular start: Time Daily schedular stop: Time Start first day: Time End last day: Time Place: String <50> Participant max: Short Canceled: YesNoET Cancel() Produce honorar information() Register() Check out() Is free() Alternative seminars() Seminar supervisor Referent Lecturer Biography: String<400> Daily honorar: Float Is able to conduct Seminar type Short titel: String<0> Titel: String <50> Purpose: String<400> Method: String<400> Overview: String<400> Daily procedure: String<20> Durance: Short Documents: String<200> Target group: String<200> Preconditions: String<200> Charge without tax: Float Participant number max: Short Participant number min: short 34 34
35 Company Shortname: String <0> Name: NameT Contact: ContactT Contact person: NamtT Sector: String <30> Contact person birthday: Date Function: String <30> Short information: String <200> Notices: String <200> Business volume: Float Client since: Date Employer 0.. additional Associate Client additional attributes attributes and and operations operations Function: String <50> Business volume: Currency Contractor net price: Short Participant Substitute paricipant Produce Notification() Client booking Customer... Public presentation Cooperation partner: String<00> Cancel fee: Float Participant min: Short Participant actual: Short Produce participant list() Produce participant certificate() Static OOA model: problems (3) attributes attributes and and operations: operations: Why Why just just these these ones? ones? Booking Registered: Date Confirmation: Date Bill: Date Checked out: Date Notification: Date Register() Check out() Produce notification() Prove payment() Presentation carried out: Boolean acquire() change() delete() printinfo() Company booking Company internal presentation All-inclusive price: Float Participants max: Short Person 5.2 Seminar data Number: Serial Name: NameT Contact: ContactT Birthday: Date First registered: Date Short information: String <200> Notices: String <200> Associate Entitlement: RoleET Password: String <6> Occupation: String <30> Presentation Number: Short Duration: Short From: Date To: Date Daily schedular start: Time Daily schedular stop: Time Start first day: Time End last day: Time Place: String <50> Participant max: Short Canceled: YesNoET Cancel() Produce honorar information() Register() Check out() Is free() Alternative seminars() Seminar supervisor Referent Lecturer D30 (PD30) Presentation data (max ): Presentation number, duration (in days), from, to, daily period split-beginning, daily period splitend, beginning of the first day, end of the last day, presentation place (hotel/company, address, room), cooperation partner, public Produce address lable() (yes/no), net price, cancel fee, min. participant rate, max. participant rate, actual participant, carried out (yes/no) Biography: String<400> Daily honorar: Float Is able to conduct Seminar type Short titel: String<0> Titel: String <50> Purpose: String<400> Method: String<400> Overview: String<400> Daily procedure: String<20> Durance: Short Documents: String<200> Target group: String<200> Preconditions: String<200> Charge without tax: Float Participant number max: Short Participant number min: short 35 35
36 Static OOA model: inheritance Company Shortname: String <0> Name: 3 NameT Address: generalisation ContactT generalisation AddressT Contact: Contact person: NamtT Sector: classes classes String <30> Contact person birthday: Date Function: String <30> Short information: String <200> Notices: String <200> Business volume: Float Client since: Date Employer Associate Client 0.. Function: String <50> Business volume: Currency Contractor Participant Substitute paricipant Produce Notification() Client booking Customer Public presentation Cooperation partner: String<00> Cancel fee: Float Participant min: Short Participant actual: Short Produce participant list() Produce participant certificate() Booking Registered: Date Confirmation: Date Bill: Date Checked out: Date Notification: Date Register() Check out() Produce notification() Prove payment() Company booking Company internal presentation All-inclusive price: Float Participants max: Short Person Number: Serial Name: NameT Contact: ContactT Birthday: Date First registered: Date Short information: String <200> Notices: String <200> Produce address lable() Associate Entitlement: RoleET Password: String <6> Occupation: String <30> Presentation Number: Short Duration: Short From: Date To: Date Daily schedular start: Time Daily schedular stop: Time Start first day: Time End last day: Time Place: String <50> Participant max: Short Canceled: YesNoET Cancel() Produce honorar information() Register() Check out() Is free() Alternative seminars() Seminar supervisor Referent Lecturer Biography: String<400> Daily honorar: Float has has 3 derived derived classes classes Is able to conduct Problem: Seminar type comprehensible arrangement of classes (automatization is subject of research) Short titel: String<0> Titel: String <50> Purpose: String<400> Method: String<400> Overview: String<400> Daily procedure: String<20> Durance: Short Documents: String<200> Target group: String<200> Preconditions: String<200> Charge without tax: Float Participant number max: Short Participant number min: short 36 36
37 Static OOA model : associations, roles Company Shortname: String <0> Name: NameT Contact: ContactT Contact person: NamtT Sector: String <30> Contact person birthday: Date Function: String <30> Short information: String <200> Notices: String <200> Business volume: Float Client since: Date Booking Registered: Date Confirmation: Date Bill: Date Checked out: Date Notification: Date Register() Check out() Produce notification() Prove payment() Person Number: Serial Name: NameT Contact: ContactT Birthday: Date First registered: Date Short information: String <200> Notices: String <200> Produce address lable() name name of of the the association association Lecturer Biography: String<400> Daily honorar: Float Employer Associate Client 0.. Function: String <50> Business volume: Currency Contractor Participant Substitute paricipant Produce Notification() Client booking Customer Public presentation Cooperation partner: String<00> Cancel fee: Float Participant min: Short Participant actual: Short Produce participant list() Produce participant certificate() several several roles roles in in associations associations between between the the same same classes classes Company booking Company internal presentation All-inclusive price: Float Participants max: Short Associate Entitlement: RoleET Password: String <6> Occupation: String <30> Presentation Number: Short Duration: Short From: Date To: Date Daily schedular start: Time Daily schedular stop: Time Start first day: Time End last day: Time Place: String <50> Participant max: Short Canceled: YesNoET Cancel() Produce honorar information() Register() Check out() Is free() Alternative seminars() Presentation custodian Referent Is able to conduct Seminar type Short titel: String<0> Titel: String <50> Purpose: String<400> Method: String<400> Overview: String<400> Daily procedure: String<20> Durance: Short Documents: String<200> Target group: String<200> Preconditions: String<200> Charge without tax: Float Participant number max: Short Participant number min: short 37 37
38 Static OOA model : cardinalities Company Shortname: String <0> Name: NameT Contact: ContactT some some Contact person: NamtT cardinalities Sector: String cardinalities <30> Contact person birthday: Date Function: String <30> Short information: String <200> Notices: String <200> Business volume: Float Client since: Date Booking Registered: Date Confirmation: Date Bill: Date Checked out: Date Notification: Date Register() Check out() Produce notification() Prove payment() Person Number: Serial Name: NameT Contact: ContactT Birthday: Date First registered: Date Short information: String <200> Notices: String <200> Produce address lable() Lecturer Biography: String<400> Daily honorar: Float? Employer Associate Client 0.. Function: String <50> Business volume: Currency Contractor Participant Substitute paricipant Produce Notification() Client booking Customer Public presentation Cooperation partner: String<00> Cancel fee: Float Participant min: Short Participant actual: Short Produce participant list() Produce participant certificate() Company booking Is Is a : : relation relation between client and public public presentation presentation between client and Company internal presentation All-inclusive price: Float Participants max: Short Associate Entitlement: RoleET Password: String <6> Occupation: String <30> Presentation Number: Short Duration: Short From: Date To: Date Daily schedular start: Time Daily schedular stop: Time Start first day: Time End last day: Time Place: String <50> Participant max: Short Canceled: YesNoET Cancel() Produce honorar information() Register() Check out() Is free() Alternative seminars() Seminar supervisor Referent Is able to conduct Seminar type Short titel: String<0> Titel: String <50> Purpose: String<400> Method: String<400> Overview: String<400> Daily procedure: String<20> Durance: Short Documents: String<200> Target group: String<200> Preconditions: String<200> Charge without tax: Float Participant number max: Short Participant number min: short 38 38
39 3. Object-oriented Analysis a) Overview: approaches, history, literature b) Object-oriented paradigm: basic notions c) Submodels in UML d) How to read a given static OOA model? (Class diagram: example seminar organization ) e) Detailed specification: DD, pseudocode f) Packages 39 39
40 Combination of basic concepts in object-oriented analysis Data Dictionary (Balzert: attribute structure) Data flow diagram (Rumbaugh: functional model, 99) OOA 990 sequence diagram ER (Entity Relationship) class diagram pseudo code state automaton collaboration diagram use case diagram entities & relations class structures control structures finite automaton interaction structures work flow 40 40
41 What is to be specified in more detail for classes? classes general task of a class attributes meaning (Which information is represented?) structure, type: DD operations Customer name: NameT address: AddressT function: String business volume: Currency produce notification() effect, transformational behaviour parameter, types of parameter (signature of operation) 4 4
42 Example: specification of attributes () Class Customer Attribute Name Description: the name of the customer Type: NameT Attribute Address? DD user interface Ergonomic Name: private address Description: the private address of the customer Type: AddressT Optional attribute: yes 42 42
43 Example: specification of attributes (2) Specification of the user defined Type NameT NameT = Salutation + (Title) + First name + Name Attribute Salutation Type: enum Range: Mr., Mrs., Miss Default value: Mr. DD - notation Attribute Title Description: academic degree Type: enum Range: Dr., Prof., Prof. Dr., empty Extendable: yes %new Titles possible Default value: empty Optional Attribute: yes Attribute First name... Attribute Name
44 3. Object-oriented Analysis a) Overview: approaches, history, literature b) Object-oriented paradigm: basic notions c) Submodels in UML d) How to read a given static OOA model? (Class diagram: example seminar organization ) e) Detailed specification: DD, pseudocode f) Packages 44 44
45 Packages Goal: Collect components to a larger unit. Analog notion: Subsystem UML A package collects model elements (e.g. classes) and diagrams A package may contain packages
46 Packages in UML notation Package name Trading system Purchase Sale Stock Dependence 46 46
47 Company Shortname: String <0> Name: NameT Contact: ContactT Contact person: NamtT Sector: String <30> Contact person birthday: Date Function: String <30> Short information: String <200> Notices: String <200> Business volume: Float Client since: Date Package Seminar management : Offers of the company Booking Registered: Date Confirmation: Date Bill: Date Checked out: Date Notification: Date Register() Check out() Produce notification() Prove payment() Person Number: Serial Name: NameT Contact: ContactT Birthday: Date First registered: Date Short information: String <200> Notices: String <200> Produce address lable() Lecturer Biography: String<400> Daily honorar: Float Employer Associate Client 0.. Function: String <50> Business volume: Currency Contractor Participant Substitute paricipant Produce Notification() Client booking Customer Public presentation Cooperation partner: String<00> Cancel fee: Float Participant min: Short Participant actual: Short Produce participant list() Produce participant certificate() Company booking Company internal presentation All-inclusive price: Float Participants max: Short Associate Entitlement: RoleET Password: String <6> Occupation: String <30> Presentation Number: Short Duration: Short From: Date To: Date Daily schedular start: Time Daily schedular stop: Time Start first day: Time End last day: Time Place: String <50> Participant max: Short Canceled: YesNoET Cancel() Produce honorar information() Register() Check out() Is free() Alternative seminars() Seminar supervisor Referent Is able to conduct Seminar type Short titel: String<0> Titel: String <50> Purpose: String<400> Method: String<400> Overview: String<400> Daily procedure: String<20> Durance: Short Documents: String<200> Target group: String<200> Preconditions: String<200> Charge without tax: Float Participant number max: Short Participant number min: short 47 47
48 Package diagram Seminar management Seminar management Person Lecturer Associate Public presentation Presentation Seminar type Company internal presentation 48 48
Software Development Methodologies
Software Development Methodologies Lecturer: Raman Ramsin Lecture 3 Seminal Object-Oriented Methodologies: A Feature-Focused Review 1 Responsibility-Driven Design (RDD) Introduced in 1990; a UML-based
More informationObject-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks
Object-Oriented Analysis Object-Oriented Analysis Techniques Coad s OOA Technique Short History Terminological Comparison Postscript and Remarks Object-Oriented Analysis -- 1 Object-Oriented Analysis Object-Oriented
More informationSoftware Development Methodologies
Software Development Methodologies Lecturer: Raman Ramsin Lecture 3 Seminal Object-Oriented Methodologies: A Feature-Focused Review (Part 1) 1 Coad-Yourdon Two-phase introduction: Object-Oriented Analysis
More informationSoftware 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 informationIntegrating Systems and Software Engineering Concepts in AP-233
Integrating Systems and Software Engineering Concepts in AP-233 Asmus Pandikow, Erik Herzog, Anders Törne Real-Time Systems Laboratory Linköpings Universitet 581 83 Linköping, Sweden E-mail: {asmpa, erica,
More informationOBJECT-ORIENTED SOFTWARE DEVELOPMENT Using OBJECT MODELING TECHNIQUE (OMT)
OBJECT-ORIENTED SOFTWARE DEVELOPMENT Using OBJECT MODELING TECHNIQUE () Ahmed Hayajneh, May 2003 1 1 Introduction One of the most popular object-oriented development techniques today is the Object Modeling
More informationSOFTWARE 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 informationLecture #2 on Object-Oriented Modeling
Outline Lecture #2 on Object-Oriented Modeling Thierry Géraud EPITA Research and Development Laboratory (LRDE) 2006 Thierry Géraud Lecture #2 on Object-Oriented Modeling EPITA-LRDE 2006 1 / 38 Outline
More informationSoftware Design, Modelling and Analysis in UML
Software Design, Modelling and Analysis in UML Lecture 02: Semantical Model 2013-10-23 02 2013-10-23 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany Contents
More informationLecture 02: Semantical Model
Software Design, Modelling and Analysis in UML Lecture 02: Semantical Model 2014-10-23 02 2014-10-23 main Prof. Dr. Andreas Podelski, Dr. Bernd Westphal Albert-Ludwigs-Universität Freiburg, Germany Contents
More informationLecture Notes UML UNIT-II. Subject: OOAD Semester: 8TH Course No: CSE-802
UNIT-II Lecture Notes On UML IMPORTANCE OF MODELING, BRIEF OVERVIEW OF OBJECT MODELING TECHNOLOGY (OMT) BY RAMBAUGH, BOOCH METHODOLOGY, USE CASE DRIVE APPROACH (OOSE) BY JACKOBSON. KHALID AMIN AKHOON 1
More informationNOTES 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 informationREVIEW OF THE BASIC CHARACTERISTICS OF OBJECT ORIENTATION
c08classandmethoddesign.indd Page 282 13/12/14 2:57 PM user 282 Chapter 8 Class and Method Design acceptance of UML as a standard object notation, standardized approaches based on work of many object methodologists
More informationUML diagrams. Software artifacts include: SRS, SDS, test cases, source code, technical/user manual, software architecture, etc.
UML Modeling UML diagrams UML (Unified Modeling Language) is a general purpose visual modeling language that provides different types of diagrammatic techniques and notations to specify, visualize, analyze,
More informationProgramming Language Constructs as Basis for Software Architectures
Programming Language Constructs as Basis for Software Architectures 1 From individual parts to components In the 50s: Machine/Assembler programs: bound to specific hardware In the 60s-70s: Higher programming
More informationCSC Advanced Object Oriented Programming, Spring Overview
CSC 520 - Advanced Object Oriented Programming, Spring 2018 Overview Brief History 1960: Simula first object oriented language developed by researchers at the Norwegian Computing Center. 1970: Alan Kay
More informationREAL-TIME OBJECT-ORIENTED DESIGN AND FORMAL METHODS
REAL-TIME OBJECT-ORIENTED DESIGN AND FORMAL METHODS Juan Antonio de la Puente Dept. of Telematics Engineering School of Telecommunication, Technical University of Madrid E-mail: jpuente@dit.upm.es 1. Introduction
More informationObject Oriented System Development
Object Oriented System Development Ratna Wardani Semester Genap, 2012 2/26/2012 Ratna W/PSBO2012 1 About This Course It shows how to apply OOAD technique to analyze and develop systems.. It gives you an
More informationIngegneria del Software Corso di Laurea in Informatica per il Management. Introduction to UML
Ingegneria del Software Corso di Laurea in Informatica per il Management Introduction to UML Davide Rossi Dipartimento di Informatica Università di Bologna Modeling A model is an (abstract) representation
More informationINFORMS 4th Conference on Information Systems and Technology. Generalizations as Data and Behavior Abstractions
INFORMS 4th Conference on Information Systems and Technology Generalizations as Data and Behavior Abstractions,..- Dale L. Lunsford The University of Southern Mississippi, College of Business Administration,
More informationFrom Analysis to Design. LTOOD/OOAD Verified Software Systems
From Analysis to Design 1 Use Cases: Notation Overview Actor Use case System X System boundary UCBase «extend» UCExt Actor A UCVar1 UCVar2 Extending case Generalization «include» Actor B UCIncl Included
More informationSession 8: UML The Unified Modeling (or the Unstructured Muddling) language?
Session 8: UML The Unified Modeling (or the Unstructured Muddling) language? A few observations, opinions, pros & cons COMP 320 / 420 Spring, 2018 Mr. Weisert Where did the UML come from? Object-oriented
More informationSoftware Engineering
Software Engineering A systematic approach to the analysis, design, implementation and maintenance of software. Software Development Method by Jan Pettersen Nytun, page 1 Software Engineering Methods Most
More informationObject-Oriented Analysis and Design
0. Object Orientation: An Subject/Topic/Focus: over this lecture Summary: Lecturer, lecture, rooms, assistants, lab classes, credit points... Need for systems analysis and software engineers Literature
More informationUNIT-I Introduction of Object Oriented Modeling
UNIT-I Introduction of Object Oriented Modeling - Prasad Mahale Object Oriented Modeling and Reference Books: Design 1. Grady Booch, James Rumbaugh, Ivar Jacobson Unified Modeling Language User Guide,
More informationCourse "Softwaretechnik" Book Chapter 2 Modeling with UML
Course "Softwaretechnik" Book Chapter 2 Modeling with UML Lutz Prechelt, Bernd Bruegge, Allen H. Dutoit Freie Universität Berlin, Institut für Informatik http://www.inf.fu-berlin.de/inst/ag-se/ Modeling,
More informationINTERACTION ARCHITECTURAL MODELING. Lecture 9 Interaction Architectureal Modeling
User Centred Design 09 INTERACTION ARCHITECTURAL MODELING Lecture 9 Interaction Architectureal Modeling PREVIOUS LESSON(S) Synthetizing User Research Personas Actors / User Roles Scenarios Essential Use
More informationSystem Structure Modeling
System Structure Modeling 108 111....... 111..... 1.1 111...... 2.1 112... 3.1 112..... 4.1 112... 5.1 113... System Structure Models 113... Classes 1.2 114... Attributes 2.2 114... Methods 3.2 114...
More informationCh t 8 Chapter 8. System Models
Ch t 8 Chapter 8. System Models Objectives To explain why the context t of a system should be modelled d as a part of requirements engineering process To describe behavioural modelling, data modelling
More informationOO Analysis and Design with UML 2 and UP
OO Analysis and Design with UML 2 and UP Dr. Jim Arlow, Zuhlke Engineering Limited Clear View Training 2008 v2.5 1 UML principles Clear View Training 2008 v2.5 2 1.2 What is UML? Unified Modelling Language
More informationFormal Specification of Software Systems
Formal Specification of Software Systems Lecture Notes Winter Term 2001 / 2002 Heinrich Hußmann Technische Universität Dresden Formal Specification of Software Systems Summary: Construction of large software
More informationMSc programme (induction week) Department of Informatics INTRODUCTION TO UML
MSc programme (induction week) Department of Informatics INTRODUCTION TO UML Some of this material is based on Bernd Bruegge and Allen H. Dutoit (2009) Object-Oriented Software Engineering: Using UML,
More informationA Framework for Converting Classical Design to Reusable Design
A Framework for Converting Classical Design to Reusable Design Abdul Khader Jilani 1, Dr. Syed Abdul Sattar 2 1 Research Scholar, Rayalaseema University, Kurnool, Andhra Pradesh, India 2 Dean, Royal Institute
More informationThe Music Notation Toolkit: A Study in Object- Oriented Development
Proceedings of the NACCQ 2000 Wellington NZ www.naccq.ac.nz ABSTRACT The Music Notation Toolkit: A Study in Object- Oriented Development Central Institute of Technology Upper Hutt New Zealand andrew.eales@cit.ac.nz
More informationThe Unified Modeling Language User Guide
The Unified Modeling Language User Guide Grady Booch James Rumbaugh Ivar Jacobson Rational Software Corporation TT ADDISON-WESLEY Boston San Francisco New York Toronto Montreal London Munich Paris Madrid
More informationKeywords: Abstract Factory, Singleton, Factory Method, Prototype, Builder, Composite, Flyweight, Decorator.
Comparative Study In Utilization Of Creational And Structural Design Patterns In Solving Design Problems K.Wseem Abrar M.Tech., Student, Dept. of CSE, Amina Institute of Technology, Shamirpet, Hyderabad
More informationProgramming Language Constructs as Basis for Software Architectures. Stefan Resmerita, WS2015
Programming Language Constructs as Basis for Software Architectures 1 From individual parts to components In the 50s: Machine/Assembler programs: bound to specific hardware In the 60s-70s: Higher programming
More informationSRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR
SRM ARTS AND SCIENCE COLLEGE SRM NAGAR, KATTANKULATHUR 603203 DEPARTMENT OF COMPUTER SCIENCE & APPLICATIONS LESSON PLAN (2017-2018) Course / Branch : BCA Total Hours : 45 Subject Name : OBJECT ORIENTED
More informationIntroduction to Software Engineering. 6. Modeling Behaviour
Introduction to Software Engineering 6. Modeling Behaviour Roadmap > Use Case Diagrams > Sequence Diagrams > Collaboration (Communication) Diagrams > Activity Diagrams > Statechart Diagrams Nested statecharts
More informationSystems Analysis & Design
Systems Analysis & Design Dr. Ahmed Lawgali Ahmed.lawgali@uob.edu.ly Slide 1 Systems Analysis & Design Course Textbook: Systems Analysis and Design With UML 2.0 An Object-Oriented Approach, Second Edition
More informationANSAwise - Object-Oriented Methods for Distributed Systems
Poseidon House Castle Park Cambridge CB3 0RD United Kingdom TELEPHONE: Cambridge (01223) 515010 INTERNATIONAL: +44 1223 515010 FAX: +44 1223 359779 E-MAIL: apm@ansa.co.uk Training ANSAwise - Object-Oriented
More informationCourse 3 7 March
Course 3 7 March adiftene@info.uaic.ro 1 From Courses 1, 2 Modeling Modeling Languages Graphic Languages UML History UML Definition UML Diagram Types UML Use Case Diagram Actors Use Case UML Class Diagrams
More informationWeek 9 Implementation
Week 9 Implementation Dr. Eliane l. Bodanese What is more important From a software engineering perspective: Good Gui? does what customer wants maintainable, extensible, reusable Commented Code? how is
More informationDesign and Evolution of an Agent-Based CASE System for OOAD
Proceedings of ATS 2003 206 Design and Evolution of an -Based CASE System for OOAD Dong Liu, Kalaivani Subramaniam, Behrouz H. Far, and Armin Eberlein Department of Electrical and Computer Engineering
More informationUML Modeling I. Instructor: Yongjie Zheng September 3, CS 490MT/5555 Software Methods and Tools
UML Modeling I Instructor: Yongjie Zheng September 3, 2015 CS 490MT/5555 Software Methods and Tools Object-Oriented Design: Topics & Skills Rational Unified Process Unified Modeling Languages (UML) Provide
More informationObject Oriented Modeling
Overview UML Unified Modeling Language What is Modeling? What is UML? A brief history of UML Understanding the basics of UML UML diagrams UML Modeling tools 2 Modeling Object Oriented Modeling Describing
More informationCompany Transmogrification using OOP Concepts
Company Transmogrification using OOP Concepts Priyanka K R 1, Shruthi B M 2 1, 2 Department of CSE 1, 2 GSSS Institute of Engineering and Technology for Women, Mysuru, India Abstract- Object-oriented modeling
More informationProgramming 2. Outline (112) Lecture 0. Important Information. Lecture Protocol. Subject Overview. General Overview.
Programming 2 (112) Lecture 0 College of Computer Science and Engineering Taibah University S2, 1439 Outline Important Information Lecture Protocol Subject Overview General Overview Course Objectives Studying
More informationOn UML2.0 s Abandonment of the Actors-Call-Use-Cases Conjecture
On UML2.0 s Abandonment of the Actors-Call-Use-Cases Conjecture Sadahiro Isoda Toyohashi University of Technology Toyohashi 441-8580, Japan isoda@tutkie.tut.ac.jp Abstract. UML2.0 recently made a correction
More informationOO Requirements to OO design. Csaba Veres Alan M. Davis (1995), Colorado
OO Requirements to OO design Csaba Veres Alan M. Davis (1995), Colorado Alan Davis? Guru? Academic and professional www.omni-vista.com? Controversial article on research into requirements engineering Requirements
More informationUsing the UML to Describe Design Patterns
Proceedings of the 16 th Annual NACCQ, Palmerston North New Zealand July, 2003 (eds) Mann, S. and Williamson, A. www.naccq.ac.nz Using the UML to Describe Design Patterns ABSTRACT to describe patterns
More informationObject-Oriented Analysis and Design. Pre-UML Situation. The Unified Modeling Language. Unification Efforts
Object-Oriented Analysis and Design Analysis vs. Design Analysis Activities Finding the Objects/ Classes An Analysis Example The Unified Modeling Language Pre-UML Situation Early 90s Explosion of OO methods/notations
More informationUML Primer. -Elango Sundaram
UML Primer -Elango Sundaram About UML UML Can be thought of as a blue print for Software Graphical notation for expressing underlying OOA&D ideas Can be used to design any type of application, hardware,
More informationOn UML2.0 s Abandonment of the Actors- Call-Use-Cases Conjecture
Vol. 4, No. 6 Special issue: Use Case Modeling at UML-2004 On UML2.0 s Abandonment of the Actors- Call-Use-Cases Conjecture Sadahiro Isoda, Toyohashi University of Technology, Toyohashi 441-8580, Japan
More informationSeminar Organization
Seminar Organization HUSemOrg: Database Design (Hildebrandt, 22.08.07) In this document we give an overview about the database layer of the application HUSemOrg. We firstly introduce the structure of the
More informationClass Diagrams in Analysis
3.2 Subject/Topic/Focus: Introduction to Classes Summary: Conceptual Modeling Notation: Classes Associations: Multiplicity, Roles, Aggregation, Composition Generalization Objects Analysis Process Literature:
More informationSystems Analysis and Design in a Changing World, Fourth Edition
Systems Analysis and Design in a Changing World, Fourth Edition Systems Analysis and Design in a Changing World, 4th Edition Learning Objectives Explain the purpose and various phases of the systems development
More informationEngineering Design w/embedded Systems
1 / 40 Engineering Design w/embedded Systems Lecture 33 UML Patrick Lam University of Waterloo April 4, 2013 2 / 40 What is UML? Unified Modelling Language (UML): specify and document architecture of large
More informationObject Oriented Processes. R.K.Joshi Dept of Computer Science and Engg. IIT Bombay
Object Oriented Processes R.K.Joshi Dept of Computer Science and Engg. IIT Bombay Life Cycle Models Waterfall Spiral Fountain Extreme Model Driven Phases and their relations with object orientation requirements
More informationManaging Change and Complexity
Managing Change and Complexity The reality of software development Overview Some more Philosophy Reality, representations and descriptions Some more history Managing complexity Managing change Some more
More informationCS560 Lecture: Software Architecture Includes slides by I. Sommerville
CS560 Lecture: Software Architecture 2009 Includes slides by I. Sommerville Architectural Design Design process for identifying the sub-systems making up a system and the framework for sub-system control
More informationCISC 322 Software Architecture
CISC 322 Software Architecture UML - The Unified Modelling Language Nicolas Bettenburg 1 DEFINITION The Unified Modelling Language (UML) is a graphical language for visualizing, specifying, constructing,
More informationOBJECT-ORIENTED MODELING AND DESIGN. Introduction
OBJECT-ORIENTED MODELING AND DESIGN Introduction Contents: Introduction. Course Relevance Learning Outcomes Overview of the syllabus Introduction to Object Orientation Introduction Object Oriented Approach
More informationObject-Oriented Analysis and Design
Object-Oriented Analysis and Design 6 FUNCTIONAL FUNCTIONAL MODELING Source: OBJECT-ORIENTED MODELING AND DESIGN James Rumbaugh, Michael Blaha, William Premerlani, Frederick Eddy, William Lorensen PAUL
More informationChapter 12. UML and Patterns. Copyright 2008 Pearson Addison-Wesley. All rights reserved
Chapter 12 UML and Patterns Copyright 2008 Pearson Addison-Wesley. All rights reserved Introduction to UML and Patterns UML and patterns are two software design tools that can be used within the context
More informationLangara College Spring archived
1 of 7 10/23/07 2:09 PM COMPUTING SCIENCE AND INFORMATION SYSTEMS DEPARTMENT COMPUTING SCIENCE AND INFORMATION SYSTEMS 1300 Systems Analysis & Design (3.0 credits) COURSE OUTLINE Spring 2008 Section 088
More informationBCS Certificate in Systems Modelling Techniques Syllabus Version 3.5 December 2016
BCS Certificate in Systems Modelling Techniques Syllabus Version 3.5 December 2016 This professional certification is not regulated by the following United Kingdom Regulators - Ofqual, Qualification in
More informationAn Introduction To Object Modeling System Concept for Object Modeling The Overall View Components of UML Diagram
An Introduction To Object Modeling System Concept for Object Modeling The Overall View Components of UML Diagram After studying this chapter you should be able to: Define an object. Understand the terms
More informationObject-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 informationCourse "Softwaretechnik Modeling with UML Stephan Salinger
Course "Softwaretechnik Modeling with UML Stephan Salinger (Foliensatz/Inhalt: Lutz Prechelt, Bernd Bruegge, Allen H. Dutoit) Freie Universität Berlin, Institut für Informatik http://www.inf.fu-berlin.de/inst/ag-se/
More informationLangara College Spring archived
1 of 7 11/23/2006 1:29 PM COMPUTING SCIENCE AND INFORMATION SYSTEMS DEPARTMENT COMPUTING SCIENCE AND INFORMATION SYSTEMS 1300 Systems Analysis & Design (3.0 credits) COURSE OUTLINE Spring 2007 Section
More informationResearch Review on Basic Principles of Unified Modelling Language
Research Review on Basic Principles of Unified Modelling Language Agha Salman Haider Sr Lecturer, Jazan University, Saudi Arabia Abstract This paper presents review of concepts, ideas and the introduction
More informationObject-Oriented Software Development Goal and Scope
Object-Oriented Software Development Goal and Scope Koichiro Ochimizu Japan Advanced Institute of Science and Technologies School of Information Science Scope and Goal Goal enable you to understand basic
More informationDatabase Systems. Overview - important points. Lecture 5. Some introductory information ERD diagrams Normalization Other stuff 08/03/2015
Lecture 5 Database Systems Instructor: M.Imran Khalil Imrankhalil3@gmail.com Resource:Imrankhalil3.wordpress.com University of Sargodha Canal Campus Lahore Overview - important points Some introductory
More informationRepresenting Control Constructs in Object-Flow Process. Diagrams
1 Representing Control Constructs in Object-Flow Process Diagrams or Peleg and Dov Dori Faculty of Industrial Engineering and anagement Technion Israel Institute of Technology Haifa 32000, Israel {mor,
More informationModeling Databases Using UML
Modeling Databases Using UML Fall 2017, Lecture 4 There is nothing worse than a sharp image of a fuzzy concept. Ansel Adams 1 Software to be used in this Chapter Star UML http://www.mysql.com/products/workbench/
More informationPertemuan 8. Object Oriented Modeling and Design
Pertemuan 8 Object Oriented Modeling and Design References Rumbaugh, James et al., Object Oriented Modeling and Design, 1991, Prentice Hall, Inc., USA, ISBN: 0 13 629841 9 9 Coad, Peter and Yourdon, Edward,
More informationUML big picture. Perdita Stevens. School of Informatics University of Edinburgh
UML big picture Perdita Stevens School of Informatics University of Edinburgh Plan Whence UML? Parts of UML How it all fits together UML as a language Consistency: what does it mean, do we need it? Defining
More informationSE203b: OO Design for Software Engineers. Office: TEB349, Ext
SE203b: OO Design for Software Engineers W0 : Course Overview Jan. 11, 2006 SE203b, ECE UWO, Hamada Ghenniwa Teaching Team Instructor TAs o Hamada Ghenniwa Office: TEB349, Ext. 88262 e-mail: hghenniwa@eng.uwo.ca
More informationOBJECT ORIENTED SYSTEM DEVELOPMENT Software Development Dynamic System Development Information system solution Steps in System Development Analysis
UNIT I INTRODUCTION OBJECT ORIENTED SYSTEM DEVELOPMENT Software Development Dynamic System Development Information system solution Steps in System Development Analysis Design Implementation Testing Maintenance
More informationQuality-Driven Architecture Design Method
Quality-Driven Architecture Design Method Matinlassi Mari, Niemelä Eila P.O. Box 1100, 90571 Oulu Tel. +358 8 551 2111 Fax +358 8 551 2320 {Mari.Matinlassi, Eila.Niemela}@vtt.fi Abstract: In this paper
More informationOBJECT ORIENTED ANALYSIS AND DESIGN
UNIT 1I OBJECT ORIENTED METHODOLOGIES Contents Rumbaugh Methodology Booch Methodology Jacobson Methodology Patterns Frameworks Unified Approach Unified Modeling Language Use case Class diagram Interactive
More informationDeveloping CASE tools which support integrated development notations
Revised version in Proceedings of the 6th Workshop on the Next Generation of CASE Tools, Finland, June 1995. Developing CASE tools which support integrated development notations John C. Grundy and John
More informationIan Sommerville 2006 Software Engineering, 8th edition. Chapter 8 Slide 1
System models Slide 1 Objectives To explain why the context of a system should be modelled as part of the RE process To describe behavioural modelling, data modelling and object modelling To introduce
More informationSan Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1,2 and 3, Spring 2017
San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1,2 and 3, Spring 2017 Course and Contact Information Instructor: Dr. Kim Office Location:
More informationDatabase Systems. A Practical Approach to Design, Implementation, and Management. Database Systems. Thomas Connolly Carolyn Begg
Database Systems A Practical Approach to Design, Implementation, and Management For these Global Editions, the editorial team at Pearson has collaborated with educators across the world to address a wide
More informationINTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY
INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY A PATH FOR HORIZING YOUR INNOVATIVE WORK TRANSFORMATION OF UML SEQUENCE DIAGRAM TO JAVA CODE HARSHAL D. GURAD 1, PROF. V.
More informationCASE TOOLS LAB VIVA QUESTION
1. Define Object Oriented Analysis? VIVA QUESTION Object Oriented Analysis (OOA) is a method of analysis that examines requirements from the perspective of the classes and objects found in the vocabulary
More informationObject-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 informationObject Oriented Analysis & Design (OOAD)
Object Oriented Analysis & Design (OOAD) 1 OOAD It focuses on objects where system is broken down in terms of the objects that exist within it. Functions (behaviour) and data (state) relating to a single
More informationObject Oriented Processes. R.K.Joshi Dept of Computer Science and Engg. IIT Bombay
Object Oriented Processes R.K.Joshi Dept of Computer Science and Engg. IIT Bombay Life Cycle Models Waterfall Spiral Fountain Extreme Model Driven Phases and their relations with object orientation requirements
More informationComputer Science for Engineers
Computer Science for Engineers Lecture 5 Object Orientation part 3 Prof. Dr. Dr.-Ing. Jivka Ovtcharova Dipl. Wi.-Ing. Dan Gutu 27 th of November 2009 Aggregation and Composition (1) A special case of an
More informationObject Model. Object Orientated Analysis and Design. Benjamin Kenwright
Object Model Object Orientated Analysis and Design Benjamin Kenwright Outline Submissions/Quizzes Review Object Orientated Programming Concepts (e.g., encapsulation, data abstraction,..) What do we mean
More informationSE 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 informationCONFERENCE REGISTRATION FORM Sheraton Hotel, Rhodes, Greece, September 2018
ICNAAM 2018 CONFERENCE REGISTRATION FORM Sheraton Hotel, Rhodes, Greece, 13-18 September 2018 Title Mr Mrs Dr Prof Surname First Name Address City Country Postcode Telephone Telefax Mobile Ph Email Name
More informationChapter 1: Principles of Programming and Software Engineering
Chapter 1: Principles of Programming and Software Engineering Data Abstraction & Problem Solving with C++ Fifth Edition by Frank M. Carrano Software Engineering and Object-Oriented Design Coding without
More informationCHAPTER 1. Topic: UML Overview. CHAPTER 1: Topic 1. Topic: UML Overview
CHAPTER 1 Topic: UML Overview After studying this Chapter, students should be able to: Describe the goals of UML. Analyze the History of UML. Evaluate the use of UML in an area of interest. CHAPTER 1:
More informationRegistration for Gourmet Gallery 2019 Shelf Exhibition at the Collective Stand
Registration for Gourmet Gallery 2019 Shelf Exhibition at the Collective Stand Gourmand International Please enter all requested information in the appropriate fields of this fillable PDF form. Please
More informationUSING TRANSFORMATIONS TO INTEGRATE TASK MODELS IN
USING TRANSFORMATIONS TO INTEGRATE TASK MODELS IN THE UML Position Paper to the WTUML: Workshop on Transformations in UML ETAPS 2001 European Joint Conference on Theory and Practice of Software Nuno Jardim
More informationKOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY (KUST)
Programming Concepts & Algorithms Course Syllabus Course Title Course Code Computer Department Pre-requisites Course Code Course Instructor Programming Concepts & Algorithms + lab CPE 405C Computer Department
More information