SlideShare a Scribd company logo
1 of 29
STRUCTURAL MODELING AND
ANALYSIS
By: JIGAR M. MAKHIJA
Structural modeling
• It can be referred as “Thing”.
• Structural modeling shows how this Things are
related with each other.
Thing
Class Interface Object Package
What is an Object?
• A self contained entity with well defined
characteristics
Eg:
Entity=Book;
Characteristics=page no, author , publisher,
price etc.
Type of Objects
Objects
Physical &
Conceptual
Domain &
Implementation
Active & Passive
1. Physical & Conceptual :
– Tangible & Intangible objects.
– Physical objects are the things which are visible
and that can be touched . E.g.: ATM.
– Conceptual objects are the things which we can’t
see normally. E.g.: Card Strip Reader.
2. Domain & Implementation :
– The objects identified from the real world are
domain objects.
e.g. : Bank Accounts, ATM, Customers Etc.
– The objects which are not related to the real
world entities are implementation objects.
e.g. : Error Logs, Transaction Records .
3. Active & Passive:
– The objects which can change its state without
any external command are Active objects .
e.g. : Timers & Clocks.
– The objects which can change its state unless any
external command is received are known by
Passive objects.
e.g. : Properties of bank account.
What is Class?
• A set of similar objects.
• It is combination of properties and methods
that are necessary to the system.
properties=attributes;
methods=operations;
Bank Account
- Name
- Balance
+ Debit(Amt)
+ Credit(Amt)
UML NOTATION
• Attributes:
– Properties of a class.
– Attributes consist of Name & its Value along with its
Type. E.g. : Int sum=100;
• Operations:
– A set of functions to provide services in software
system.
– Operations are similar to functions that consist of
parameters and return values.
e.g. : withdraw(amt) , getBalance() .
Encapsulation
• Information Hiding.
• Objects are like Black boxes.
• The implementation of objects are hidden
from those who use them (End Users).
• But, creator or developer knows the details of
internal construction of that object.
Inheritance
• Attributes and operations common to group
of subclass are attached to superclass and
inherited by its subclasses.
• Each subclass may also include new feature of
its own.
• Properties:
Generalization Specialization
• The purpose of this property is to
distribute the commonalities
from the superclass among a
group of similar subclasses.
Generalization
• It allows subclasses to extend the
functionalities of their superclass.
• A subclass can introduce new
operations and attributes of its
own.
Specialization
Abstract Classes
• An abstract class consist of operations
without their actual implementation .
• An operations without the implementation
(body) is called abstract operations.
• A class can be specified as abstract by writing
name in italics. E.g. Shape
Polymorphism
• Polymorphism is the ability for a variable to
hold objects of its own class and subclasses at
runtime.
Role
• Each end of association has a role.
Multiplicity
• Multiplicity refers to the number of objects
associated with a given object.
Association
• It represents binary relationships among
classes.
• Represented by line.
Person Company
1..n 1Works for
Employee Employer
Multiplicity
Role
Qualification
• It serves as names or keys that are part of
association and are used to select objects at
the other end of association.
Person Bank
Person Bank
0..n 0..n
Account No0..1 0..n
Reflexive Association
• A reflexive association is an association that
relates one object of a class to another object
of the same class.
N-ary Association
• A relationship involving three classes is referref to
as an ternary relationship, and one involving
many classes is referred to as an n-ary
relationship.
Association Classes
• Associations that include additional attributes
which do not naturally belong to the objects
involved in the associations.
Person Company
Position
-title
-starting_Date
-salary
0..n 0..nWorkFor
Aggregation
• Aggregation is a stronger form of association.
• It represent the “has-a or part-of”
relationship.
Company Division
1..n
Department
1..n
Composition
• Composition is a stronger form of aggregation.
• It represent the “part-of” relationship.
Company Division
1..n
Department
1..n
Constraints and Notes
• Constraints are relation between signs &
symbols of UML element that allow the
inclusion of new rules or the modification of
existing ones.
• Constraints are represented by label in curly
brackets {constraint name}.
{Constraints}
UML Notation for Structural Modeling
Class :
Interface:
Component
Component:
Interface
UML Notation for Structural Modeling
Node:
Constraint:
Association:
Aggregation:
Generalization:
Heuristics in using Structural Analysis
• Do not attempt to develop a single giant class
diagram.
• Use model management constructs such as
package, subsystems.
• Consider both logical & physical aspects.
• Use data or middleware for communication
among major subsystems whenever possible.
Heuristics in using Structural Analysis
• Make Design Patterns flexible and adaptable.
• Apply domain analysis such as textual analysis,
documentation reviews to identify reusable
components.
• Inter-play top-down approach & bottom-up
approach.
• Use packages to organize the domain classes
incrementally as development progresses.
Heuristics in using Structural Analysis
• Conduct use case analysis to yield missing
pieces in structural model.
• Review whether a particular class is becoming
too large.
Domain Modeling and Analysis Process
• Before domain analysis is conducted we need to
understand the problem of domain of the system.
• The output of the domain analysis is domain class
model which describes the classes and their
relationships.
• The domain class model consist of class diagrams, a
data dictionary describing the classes and their
associations (relationships ).
Developing Domain Class Models
1. Preparing the problem statement.
2. Identifying the objects and classes using textual
analysis.
3. Developing a data dictionary.
4. Identifying associations between classes.
5. Identifying attributes of classes and association
classes.
6. Structuring classes using inheritance.
7. Verifying access path for likely queries.
8. Iterating and refining the model.
…
That’s all for today.

More Related Content

What's hot

Uml deployment diagram
Uml deployment diagramUml deployment diagram
Uml deployment diagramAsraa Batool
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineeringDarshit Metaliya
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagramsbarney92
 
Uml with detail
Uml with detailUml with detail
Uml with detailHamza Khan
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and DesignHaitham El-Ghareeb
 
Basic Structural Modeling
Basic Structural ModelingBasic Structural Modeling
Basic Structural ModelingAMITJain879
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentationanasz3z3
 
Object Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLObject Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLAjit Nayak
 
Sequence diagram
Sequence diagramSequence diagram
Sequence diagramRahul Pola
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specificationAman Adhikari
 
Uml structural diagrams
Uml structural diagramsUml structural diagrams
Uml structural diagramsSwathy T
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7koolkampus
 
Use case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramUse case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramNikhil Pandit
 
Fundamental design concepts
Fundamental design conceptsFundamental design concepts
Fundamental design conceptssrijavel
 

What's hot (20)

Uml deployment diagram
Uml deployment diagramUml deployment diagram
Uml deployment diagram
 
Design Concept software engineering
Design Concept software engineeringDesign Concept software engineering
Design Concept software engineering
 
Uml diagrams
Uml diagramsUml diagrams
Uml diagrams
 
Uml with detail
Uml with detailUml with detail
Uml with detail
 
Domain Modeling
Domain ModelingDomain Modeling
Domain Modeling
 
Object Oriented Analysis and Design
Object Oriented Analysis and DesignObject Oriented Analysis and Design
Object Oriented Analysis and Design
 
Basic Structural Modeling
Basic Structural ModelingBasic Structural Modeling
Basic Structural Modeling
 
Software design
Software designSoftware design
Software design
 
Software design
Software designSoftware design
Software design
 
Uml Presentation
Uml PresentationUml Presentation
Uml Presentation
 
Object Oriented Analysis Design using UML
Object Oriented Analysis Design using UMLObject Oriented Analysis Design using UML
Object Oriented Analysis Design using UML
 
PROTOTYPE MODEL
PROTOTYPE MODELPROTOTYPE MODEL
PROTOTYPE MODEL
 
Behavioural modelling
Behavioural modellingBehavioural modelling
Behavioural modelling
 
Component based software engineering
Component based software engineeringComponent based software engineering
Component based software engineering
 
Sequence diagram
Sequence diagramSequence diagram
Sequence diagram
 
Software requirement and specification
Software requirement and specificationSoftware requirement and specification
Software requirement and specification
 
Uml structural diagrams
Uml structural diagramsUml structural diagrams
Uml structural diagrams
 
System Models in Software Engineering SE7
System Models in Software Engineering SE7System Models in Software Engineering SE7
System Models in Software Engineering SE7
 
Use case Diagram and Sequence Diagram
Use case Diagram and Sequence DiagramUse case Diagram and Sequence Diagram
Use case Diagram and Sequence Diagram
 
Fundamental design concepts
Fundamental design conceptsFundamental design concepts
Fundamental design concepts
 

Similar to Structural modeling and analysis

IBM OOAD Part1 Summary
IBM OOAD Part1 SummaryIBM OOAD Part1 Summary
IBM OOAD Part1 SummaryHaitham Raik
 
UNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptxUNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptxviju001
 
L1-Introduction to OOPs concepts.pdf
L1-Introduction to OOPs concepts.pdfL1-Introduction to OOPs concepts.pdf
L1-Introduction to OOPs concepts.pdfBhanuJatinSingh
 
Ooad lab manual
Ooad  lab manualOoad  lab manual
Ooad lab manualPraseela R
 
UML diagrams and symbols
UML diagrams and symbolsUML diagrams and symbols
UML diagrams and symbolsKumar
 
Object analysis and design
Object analysis and designObject analysis and design
Object analysis and designAnand Grewal
 
Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)riarana10
 
ArchitectureOfAOMsWICSA3
ArchitectureOfAOMsWICSA3ArchitectureOfAOMsWICSA3
ArchitectureOfAOMsWICSA3Erdem Sahin
 
object oriented programing lecture 1
object oriented programing lecture 1object oriented programing lecture 1
object oriented programing lecture 1Geophery sanga
 
MODELLING WITH OBJECTS.pptx
MODELLING WITH OBJECTS.pptxMODELLING WITH OBJECTS.pptx
MODELLING WITH OBJECTS.pptxTarun710971
 
Object-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptxObject-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptxXanGwaps
 

Similar to Structural modeling and analysis (20)

Ooad ch 1_2
Ooad ch 1_2Ooad ch 1_2
Ooad ch 1_2
 
IBM OOAD Part1 Summary
IBM OOAD Part1 SummaryIBM OOAD Part1 Summary
IBM OOAD Part1 Summary
 
UNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptxUNIT-3 Design Using UML (1).pptx
UNIT-3 Design Using UML (1).pptx
 
L1-Introduction to OOPs concepts.pdf
L1-Introduction to OOPs concepts.pdfL1-Introduction to OOPs concepts.pdf
L1-Introduction to OOPs concepts.pdf
 
Ooad ch 2
Ooad ch 2Ooad ch 2
Ooad ch 2
 
SMD Unit ii
SMD Unit iiSMD Unit ii
SMD Unit ii
 
Ooad lab manual
Ooad  lab manualOoad  lab manual
Ooad lab manual
 
2 uml
2 uml2 uml
2 uml
 
UML diagrams and symbols
UML diagrams and symbolsUML diagrams and symbols
UML diagrams and symbols
 
Object analysis and design
Object analysis and designObject analysis and design
Object analysis and design
 
Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)Software enginering.group-no-11 (1)
Software enginering.group-no-11 (1)
 
Object oriented programming
Object oriented programmingObject oriented programming
Object oriented programming
 
ArchitectureOfAOMsWICSA3
ArchitectureOfAOMsWICSA3ArchitectureOfAOMsWICSA3
ArchitectureOfAOMsWICSA3
 
DISE - OOAD Using UML
DISE - OOAD Using UMLDISE - OOAD Using UML
DISE - OOAD Using UML
 
object oriented programing lecture 1
object oriented programing lecture 1object oriented programing lecture 1
object oriented programing lecture 1
 
MODELLING WITH OBJECTS.pptx
MODELLING WITH OBJECTS.pptxMODELLING WITH OBJECTS.pptx
MODELLING WITH OBJECTS.pptx
 
Object-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptxObject-Oriented Systems Analysis and Design Using UML.pptx
Object-Oriented Systems Analysis and Design Using UML.pptx
 
Composite pattern.pptx
Composite pattern.pptxComposite pattern.pptx
Composite pattern.pptx
 
Oomd unit1
Oomd unit1Oomd unit1
Oomd unit1
 
Intoduction to uml
Intoduction to umlIntoduction to uml
Intoduction to uml
 

More from JIGAR MAKHIJA

Php pattern matching
Php pattern matchingPhp pattern matching
Php pattern matchingJIGAR MAKHIJA
 
Php server variables
Php server variablesPhp server variables
Php server variablesJIGAR MAKHIJA
 
Overview on Application protocols in Internet of Things
Overview on Application protocols in Internet of ThingsOverview on Application protocols in Internet of Things
Overview on Application protocols in Internet of ThingsJIGAR MAKHIJA
 
Msp430 g2 with ble(Bluetooth Low Energy)
Msp430 g2 with ble(Bluetooth Low Energy)Msp430 g2 with ble(Bluetooth Low Energy)
Msp430 g2 with ble(Bluetooth Low Energy)JIGAR MAKHIJA
 
Embedded system lab work
Embedded system lab workEmbedded system lab work
Embedded system lab workJIGAR MAKHIJA
 
Presentation on iot- Internet of Things
Presentation on iot- Internet of ThingsPresentation on iot- Internet of Things
Presentation on iot- Internet of ThingsJIGAR MAKHIJA
 
Learn Japanese -Basic kanji 120
Learn Japanese -Basic kanji 120Learn Japanese -Basic kanji 120
Learn Japanese -Basic kanji 120JIGAR MAKHIJA
 
View Alignment Techniques
View Alignment TechniquesView Alignment Techniques
View Alignment TechniquesJIGAR MAKHIJA
 
Letters (complaints & invitations)
Letters (complaints & invitations)Letters (complaints & invitations)
Letters (complaints & invitations)JIGAR MAKHIJA
 

More from JIGAR MAKHIJA (20)

Php gd library
Php gd libraryPhp gd library
Php gd library
 
Php pattern matching
Php pattern matchingPhp pattern matching
Php pattern matching
 
Php cookies
Php cookiesPhp cookies
Php cookies
 
Php functions
Php functionsPhp functions
Php functions
 
Php sessions
Php sessionsPhp sessions
Php sessions
 
Php server variables
Php server variablesPhp server variables
Php server variables
 
Db function
Db functionDb function
Db function
 
C++ version 1
C++  version 1C++  version 1
C++ version 1
 
C++ Version 2
C++  Version 2C++  Version 2
C++ Version 2
 
SAP Ui5 content
SAP Ui5 contentSAP Ui5 content
SAP Ui5 content
 
Solution doc
Solution docSolution doc
Solution doc
 
Overview on Application protocols in Internet of Things
Overview on Application protocols in Internet of ThingsOverview on Application protocols in Internet of Things
Overview on Application protocols in Internet of Things
 
125 green iot
125 green iot125 green iot
125 green iot
 
Msp430 g2 with ble(Bluetooth Low Energy)
Msp430 g2 with ble(Bluetooth Low Energy)Msp430 g2 with ble(Bluetooth Low Energy)
Msp430 g2 with ble(Bluetooth Low Energy)
 
Embedded system lab work
Embedded system lab workEmbedded system lab work
Embedded system lab work
 
Presentation on iot- Internet of Things
Presentation on iot- Internet of ThingsPresentation on iot- Internet of Things
Presentation on iot- Internet of Things
 
Oracle
OracleOracle
Oracle
 
Learn Japanese -Basic kanji 120
Learn Japanese -Basic kanji 120Learn Japanese -Basic kanji 120
Learn Japanese -Basic kanji 120
 
View Alignment Techniques
View Alignment TechniquesView Alignment Techniques
View Alignment Techniques
 
Letters (complaints & invitations)
Letters (complaints & invitations)Letters (complaints & invitations)
Letters (complaints & invitations)
 

Recently uploaded

OSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsOSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsSandeep D Chaudhary
 
When Quality Assurance Meets Innovation in Higher Education - Report launch w...
When Quality Assurance Meets Innovation in Higher Education - Report launch w...When Quality Assurance Meets Innovation in Higher Education - Report launch w...
When Quality Assurance Meets Innovation in Higher Education - Report launch w...Gary Wood
 
The Story of Village Palampur Class 9 Free Study Material PDF
The Story of Village Palampur Class 9 Free Study Material PDFThe Story of Village Palampur Class 9 Free Study Material PDF
The Story of Village Palampur Class 9 Free Study Material PDFVivekanand Anglo Vedic Academy
 
How to Send Pro Forma Invoice to Your Customers in Odoo 17
How to Send Pro Forma Invoice to Your Customers in Odoo 17How to Send Pro Forma Invoice to Your Customers in Odoo 17
How to Send Pro Forma Invoice to Your Customers in Odoo 17Celine George
 
Basic Civil Engineering notes on Transportation Engineering & Modes of Transport
Basic Civil Engineering notes on Transportation Engineering & Modes of TransportBasic Civil Engineering notes on Transportation Engineering & Modes of Transport
Basic Civil Engineering notes on Transportation Engineering & Modes of TransportDenish Jangid
 
Improved Approval Flow in Odoo 17 Studio App
Improved Approval Flow in Odoo 17 Studio AppImproved Approval Flow in Odoo 17 Studio App
Improved Approval Flow in Odoo 17 Studio AppCeline George
 
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUM
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUMDEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUM
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUMELOISARIVERA8
 
AIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.pptAIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.pptNishitharanjan Rout
 
ANTI PARKISON DRUGS.pptx
ANTI         PARKISON          DRUGS.pptxANTI         PARKISON          DRUGS.pptx
ANTI PARKISON DRUGS.pptxPoojaSen20
 
Spring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community PartnershipsSpring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community Partnershipsexpandedwebsite
 
How To Create Editable Tree View in Odoo 17
How To Create Editable Tree View in Odoo 17How To Create Editable Tree View in Odoo 17
How To Create Editable Tree View in Odoo 17Celine George
 
An Overview of the Odoo 17 Knowledge App
An Overview of the Odoo 17 Knowledge AppAn Overview of the Odoo 17 Knowledge App
An Overview of the Odoo 17 Knowledge AppCeline George
 
Observing-Correct-Grammar-in-Making-Definitions.pptx
Observing-Correct-Grammar-in-Making-Definitions.pptxObserving-Correct-Grammar-in-Making-Definitions.pptx
Observing-Correct-Grammar-in-Making-Definitions.pptxAdelaideRefugio
 
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...EADTU
 
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...Nguyen Thanh Tu Collection
 
Graduate Outcomes Presentation Slides - English (v3).pptx
Graduate Outcomes Presentation Slides - English (v3).pptxGraduate Outcomes Presentation Slides - English (v3).pptx
Graduate Outcomes Presentation Slides - English (v3).pptxneillewis46
 

Recently uploaded (20)

OSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & SystemsOSCM Unit 2_Operations Processes & Systems
OSCM Unit 2_Operations Processes & Systems
 
When Quality Assurance Meets Innovation in Higher Education - Report launch w...
When Quality Assurance Meets Innovation in Higher Education - Report launch w...When Quality Assurance Meets Innovation in Higher Education - Report launch w...
When Quality Assurance Meets Innovation in Higher Education - Report launch w...
 
The Story of Village Palampur Class 9 Free Study Material PDF
The Story of Village Palampur Class 9 Free Study Material PDFThe Story of Village Palampur Class 9 Free Study Material PDF
The Story of Village Palampur Class 9 Free Study Material PDF
 
How to Send Pro Forma Invoice to Your Customers in Odoo 17
How to Send Pro Forma Invoice to Your Customers in Odoo 17How to Send Pro Forma Invoice to Your Customers in Odoo 17
How to Send Pro Forma Invoice to Your Customers in Odoo 17
 
Basic Civil Engineering notes on Transportation Engineering & Modes of Transport
Basic Civil Engineering notes on Transportation Engineering & Modes of TransportBasic Civil Engineering notes on Transportation Engineering & Modes of Transport
Basic Civil Engineering notes on Transportation Engineering & Modes of Transport
 
Supporting Newcomer Multilingual Learners
Supporting Newcomer  Multilingual LearnersSupporting Newcomer  Multilingual Learners
Supporting Newcomer Multilingual Learners
 
Improved Approval Flow in Odoo 17 Studio App
Improved Approval Flow in Odoo 17 Studio AppImproved Approval Flow in Odoo 17 Studio App
Improved Approval Flow in Odoo 17 Studio App
 
ESSENTIAL of (CS/IT/IS) class 07 (Networks)
ESSENTIAL of (CS/IT/IS) class 07 (Networks)ESSENTIAL of (CS/IT/IS) class 07 (Networks)
ESSENTIAL of (CS/IT/IS) class 07 (Networks)
 
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUM
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUMDEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUM
DEMONSTRATION LESSON IN ENGLISH 4 MATATAG CURRICULUM
 
AIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.pptAIM of Education-Teachers Training-2024.ppt
AIM of Education-Teachers Training-2024.ppt
 
OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...OS-operating systems- ch05 (CPU Scheduling) ...
OS-operating systems- ch05 (CPU Scheduling) ...
 
ANTI PARKISON DRUGS.pptx
ANTI         PARKISON          DRUGS.pptxANTI         PARKISON          DRUGS.pptx
ANTI PARKISON DRUGS.pptx
 
Spring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community PartnershipsSpring gala 2024 photo slideshow - Celebrating School-Community Partnerships
Spring gala 2024 photo slideshow - Celebrating School-Community Partnerships
 
How To Create Editable Tree View in Odoo 17
How To Create Editable Tree View in Odoo 17How To Create Editable Tree View in Odoo 17
How To Create Editable Tree View in Odoo 17
 
An Overview of the Odoo 17 Knowledge App
An Overview of the Odoo 17 Knowledge AppAn Overview of the Odoo 17 Knowledge App
An Overview of the Odoo 17 Knowledge App
 
Mattingly "AI and Prompt Design: LLMs with NER"
Mattingly "AI and Prompt Design: LLMs with NER"Mattingly "AI and Prompt Design: LLMs with NER"
Mattingly "AI and Prompt Design: LLMs with NER"
 
Observing-Correct-Grammar-in-Making-Definitions.pptx
Observing-Correct-Grammar-in-Making-Definitions.pptxObserving-Correct-Grammar-in-Making-Definitions.pptx
Observing-Correct-Grammar-in-Making-Definitions.pptx
 
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
Transparency, Recognition and the role of eSealing - Ildiko Mazar and Koen No...
 
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
ĐỀ THAM KHẢO KÌ THI TUYỂN SINH VÀO LỚP 10 MÔN TIẾNG ANH FORM 50 CÂU TRẮC NGHI...
 
Graduate Outcomes Presentation Slides - English (v3).pptx
Graduate Outcomes Presentation Slides - English (v3).pptxGraduate Outcomes Presentation Slides - English (v3).pptx
Graduate Outcomes Presentation Slides - English (v3).pptx
 

Structural modeling and analysis

  • 2. Structural modeling • It can be referred as “Thing”. • Structural modeling shows how this Things are related with each other. Thing Class Interface Object Package
  • 3. What is an Object? • A self contained entity with well defined characteristics Eg: Entity=Book; Characteristics=page no, author , publisher, price etc.
  • 4. Type of Objects Objects Physical & Conceptual Domain & Implementation Active & Passive
  • 5. 1. Physical & Conceptual : – Tangible & Intangible objects. – Physical objects are the things which are visible and that can be touched . E.g.: ATM. – Conceptual objects are the things which we can’t see normally. E.g.: Card Strip Reader.
  • 6. 2. Domain & Implementation : – The objects identified from the real world are domain objects. e.g. : Bank Accounts, ATM, Customers Etc. – The objects which are not related to the real world entities are implementation objects. e.g. : Error Logs, Transaction Records .
  • 7. 3. Active & Passive: – The objects which can change its state without any external command are Active objects . e.g. : Timers & Clocks. – The objects which can change its state unless any external command is received are known by Passive objects. e.g. : Properties of bank account.
  • 8. What is Class? • A set of similar objects. • It is combination of properties and methods that are necessary to the system. properties=attributes; methods=operations; Bank Account - Name - Balance + Debit(Amt) + Credit(Amt) UML NOTATION
  • 9. • Attributes: – Properties of a class. – Attributes consist of Name & its Value along with its Type. E.g. : Int sum=100; • Operations: – A set of functions to provide services in software system. – Operations are similar to functions that consist of parameters and return values. e.g. : withdraw(amt) , getBalance() .
  • 10. Encapsulation • Information Hiding. • Objects are like Black boxes. • The implementation of objects are hidden from those who use them (End Users). • But, creator or developer knows the details of internal construction of that object.
  • 11. Inheritance • Attributes and operations common to group of subclass are attached to superclass and inherited by its subclasses. • Each subclass may also include new feature of its own. • Properties: Generalization Specialization
  • 12. • The purpose of this property is to distribute the commonalities from the superclass among a group of similar subclasses. Generalization • It allows subclasses to extend the functionalities of their superclass. • A subclass can introduce new operations and attributes of its own. Specialization
  • 13. Abstract Classes • An abstract class consist of operations without their actual implementation . • An operations without the implementation (body) is called abstract operations. • A class can be specified as abstract by writing name in italics. E.g. Shape
  • 14. Polymorphism • Polymorphism is the ability for a variable to hold objects of its own class and subclasses at runtime.
  • 15. Role • Each end of association has a role. Multiplicity • Multiplicity refers to the number of objects associated with a given object. Association • It represents binary relationships among classes. • Represented by line. Person Company 1..n 1Works for Employee Employer Multiplicity Role
  • 16. Qualification • It serves as names or keys that are part of association and are used to select objects at the other end of association. Person Bank Person Bank 0..n 0..n Account No0..1 0..n
  • 17. Reflexive Association • A reflexive association is an association that relates one object of a class to another object of the same class. N-ary Association • A relationship involving three classes is referref to as an ternary relationship, and one involving many classes is referred to as an n-ary relationship.
  • 18. Association Classes • Associations that include additional attributes which do not naturally belong to the objects involved in the associations. Person Company Position -title -starting_Date -salary 0..n 0..nWorkFor
  • 19. Aggregation • Aggregation is a stronger form of association. • It represent the “has-a or part-of” relationship. Company Division 1..n Department 1..n
  • 20. Composition • Composition is a stronger form of aggregation. • It represent the “part-of” relationship. Company Division 1..n Department 1..n
  • 21. Constraints and Notes • Constraints are relation between signs & symbols of UML element that allow the inclusion of new rules or the modification of existing ones. • Constraints are represented by label in curly brackets {constraint name}. {Constraints}
  • 22. UML Notation for Structural Modeling Class : Interface: Component Component: Interface
  • 23. UML Notation for Structural Modeling Node: Constraint: Association: Aggregation: Generalization:
  • 24. Heuristics in using Structural Analysis • Do not attempt to develop a single giant class diagram. • Use model management constructs such as package, subsystems. • Consider both logical & physical aspects. • Use data or middleware for communication among major subsystems whenever possible.
  • 25. Heuristics in using Structural Analysis • Make Design Patterns flexible and adaptable. • Apply domain analysis such as textual analysis, documentation reviews to identify reusable components. • Inter-play top-down approach & bottom-up approach. • Use packages to organize the domain classes incrementally as development progresses.
  • 26. Heuristics in using Structural Analysis • Conduct use case analysis to yield missing pieces in structural model. • Review whether a particular class is becoming too large.
  • 27. Domain Modeling and Analysis Process • Before domain analysis is conducted we need to understand the problem of domain of the system. • The output of the domain analysis is domain class model which describes the classes and their relationships. • The domain class model consist of class diagrams, a data dictionary describing the classes and their associations (relationships ).
  • 28. Developing Domain Class Models 1. Preparing the problem statement. 2. Identifying the objects and classes using textual analysis. 3. Developing a data dictionary. 4. Identifying associations between classes. 5. Identifying attributes of classes and association classes. 6. Structuring classes using inheritance. 7. Verifying access path for likely queries. 8. Iterating and refining the model.