SlideShare a Scribd company logo
1 of 18
® 
IBM Software Group 
© 2006 IBM Corporation 
Rational Software France 
Object-Oriented Analysis and Design with UML2 and 
Rational Software Modeler 
01. Concepts of Object-Orientation
IBM Software Group | Rational software 
Where Are We? 
 What is Modeling? 
 Principles of Object-Orientation 
 The Unified Modeling Language
IBM Software Group | Rational software 
What is a Model? 
 A model is a simplification of reality 
 Modeling achieves four aims: 
Helps you to visualize a system as you want it to be 
Permits you to specify the structure or behavior of a system 
Gives you a template that guides you in constructing a system 
Documents the decisions you have made 
 You build models of complex systems because you cannot 
comprehend such a system in its entirety 
 You build models to better understand the system you are developing
IBM Software Group | Rational software 
Principles of Visual Modeling 
 The model you create influences how the problem is attacked 
 Every model may be expressed at different levels of precision 
 The best models are connected to reality 
 No single model is sufficient
IBM Software Group | Rational software 
Model-Driven Development 
 A natural evolution of object-oriented technologies 
 The encapsulation of business logic in (UML) models 
 The use of these models to automate the development of applications, 
code generation, testing and maintenance 
? ?
IBM Software Group | Rational software 
Model-Driven Architecture (MDA) 
 An architectural style 
 An OMG initiative 
TTrraannssffoorrmmaattiioonn RRuulleess 
PSM PSM PSM 
Plat form Specific 
Model – 
Design/ 
Implementat ion 
Automated Generation 
TTrraannssffoorrmmaattiioonn RRuulleess 
Plat form 
I ndependent 
Model – 
Analysis/ Design 
PIM PIM 
Comput at ion 
I ndependent Model – 
Domain Model, 
Business Model, 
Requirement s, et c. 
CIM 
Code, Files, Artifacts 
Transformation Rules 
http://www.omg.com/
IBM Software Group | Rational software 
Where Are We? 
 What is Modeling? 
 Principles of Object-Orientation 
 The Unified Modeling Language
IBM Software Group | Rational software 
Basic Principles of Object Orientation 
 Abstraction 
 Encapsulation 
 Modularity 
 Hierarchy
IBM Software Group | Rational software 
What Is Abstraction? 
 The essential 
characteristics of an 
entity that distinguishes 
it from all other kinds of 
entities 
 Depends on the 
perspective of the viewer 
 Is not a concrete 
manifestation, denotes 
the ideal essence of 
something 
From Object-Oriented Analysis and Design with Applications by Grady Booch, 1994
IBM Software Group | Rational software 
What Is Encapsulation? 
 Hides implementation 
from clients 
Clients depend on 
interface 
Improves the resiliency 
of the system, i.e. its 
ability to adapt to 
change 
From Object-Oriented Analysis and Design with Applications by Grady Booch , 1994
IBM Software Group | Rational software 
What Is Modularity? 
 Breaks up something complex into manageable pieces. 
 Helps people understand complex systems 
From Object-Oriented Analysis and Design with Applications by Grady Booch , 1994
IBM Software Group | Rational software 
What Is Hierarchy? 
Increasing 
abstraction 
Decreasing 
abstraction 
Asset 
RealEstate 
BankAccount 
Savings 
Security 
Checking Stock 
Bond 
Elements at the same level of the hierarchy should 
be at the same level of abstraction
IBM Software Group | Rational software 
Where Are We? 
 What is Modeling? 
 Principles of Object-Orientation 
 The Unified Modeling Language
IBM Software Group | Rational software 
What Is the UML? 
 The UML is a language for 
 Visualizing 
 Specifying 
 Constructing 
 Documenting 
the artifacts of a software-intensive system
IBM Software Group | Rational software 
UML Covers All Aspects of Software Development 
 The UML addresses system architecture, requirements, tests, project 
planning, and release management 
Use Case Diagram 
Actor A 
Use Case 1 
Use Case 2 
Use Case 3 
Actor B 
GrpFile 
read( ) 
open( ) 
create( ) 
fillFile( ) 
sortByName( ) 
rep 
FileMgr 
fetchDoc( ) 
Repository 
(from Persistence) 
name : char * = 0 
Class Diagram 
readDoc( ) 
readFile( ) 
DocumentList 
add( ) 
delete( ) 
Document 
name : int 
docid : int 
numField : int 
get( ) 
open( ) 
close( ) 
read( ) 
sortFileList( ) 
create( ) 
fillDocument( ) 
fList 
1 
FileList 
add( ) 
delete( ) 
File 
read( ) 
read() fill the 
code. 
user 
mainWnd fileMgr : 
FileMgr 
document : gFile 
repository 
Document 
1: Doc view request ( ) 
2: fetchDoc( ) 
3: create ( ) 
4: create ( ) 
5: readDoc ( ) 
6: filDocument ( ) 
7: readFile ( ) 
8: fil File ( ) 
9: sortByName ( ) 
Sequence Diagram 
ƯÁ¤¹®¼-¿¡ ´ëÇÑ º¸±â¸¦ 
»ç¿ëÀÚ°¡ ¿äûÇÑ´Ù. 
È-ÀÏ°ü¸®ÀÚ´Â Àоî¿Â 
¹®¼-ÀÇ Á¤º¸¸¦ ÇØ´ç ¹®¼- 
°´Ã¼¿¡ ¼³Á¤À» ¿äûÇÑ´Ù. 
È-¸é °´Ã¼´Â ÀоîμéÀÎ 
°´Ã¼μé¿¡ ´ëÇØ À̸§º°·Î 
Á¤·ÄÀ» ½ÃÄÑ È-¸é¿¡ 
º¸¿©ÁØ´Ù. 
Deployment Diagram 
Window95 
¹®¼-°ü¸® 
Ŭ¶óÀ̾ðÆ®.EXE 
Windows 
NT 
¹®¼-°ü¸® ¿£Áø.EXE 
Windows 
NT 
Windows95 
Solaris 
ÀÀ¿ë¼-¹ö.EXE 
Alpha 
UNIX 
IBM 
Mainframe 
μ¥ÀÌŸº£À̽º¼-¹ö 
Windows95 
¹®¼-°ü¸® ¾ÖÇø´ 
ºÐ»ê ȯ°æÀÇ ÇÏμå¿þ¾î ¹× ³×Æ®¿÷À¸·ÎÀÇ Á¤º¸ ½Ã½ºÅÛ ¿¬°á ¸ðμ¨ 
- À©μμ¿ì 95 : Ŭ¶óÀ̾ðÆ® 
- À©μμ¿ì NT: ÀÀ¿ë¼-¹ö 
- À¯´Ð½º ¸Ó½Å: ÀÀ¿ë ¼-¹ö ¹× μ¥ÀÌŸ ¼-¹ö, Åë½Å ¼-¹ö 
- IBM ¸ÞÀÎÇÁ·¹ÀÓ: μ¥ÀÌŸ ¼-¹ö, Åë½Å ¼-¹ö
IBM Software Group | Rational software 
History of the UML 
UML 2.0 
(2004) 
UML 1.5 
(March, ‘03) 
UML 1.1 
(Sept. ‘97) 
UML 1.0 
(Jan. ‘97) 
Current 
version = 2.1 
Other 
UML 0.9 
(June ‘96) 
UML 0.91 
(Oct. ‘96) 
and 
Unified Method 0.8 
(OOPSLA ’95) 
Booch ’93 OMT - 2 
OOSE Methods Booch ‘91 OMT - 1
IBM Software Group | Rational software 
A Language Is Not Enough to Build a System 
Team- Based 
Development 
Modeling 
Language 
Unified 
Process
IBM Software Group | Rational software 
Review 
 Why do we model? 
 True or false: A model influences how the problem is attacked. 
 True or false: A single model is sufficient in most cases. 
 How do MDD and MDA differ? 
 What are the four basic principles of object-orientation? 
 True or false: UML is a method to capture the requirements of the 
system to be and build a robust design.

More Related Content

Similar to 01 concepts of_object-orientation (1)

Aspect Oriented Software Development
Aspect Oriented Software DevelopmentAspect Oriented Software Development
Aspect Oriented Software Development
Jignesh Patel
 

Similar to 01 concepts of_object-orientation (1) (20)

UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015
UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015
UML Modeling and Profiling Lab - Advanced Software Engineering Course 2014/2015
 
CASE tools and their effects on software quality
CASE tools and their effects on software qualityCASE tools and their effects on software quality
CASE tools and their effects on software quality
 
Sdlc
SdlcSdlc
Sdlc
 
Sdlc
SdlcSdlc
Sdlc
 
Chapter1
Chapter1Chapter1
Chapter1
 
Aspect Oriented Software Development
Aspect Oriented Software DevelopmentAspect Oriented Software Development
Aspect Oriented Software Development
 
View Alignment Techniques
View Alignment TechniquesView Alignment Techniques
View Alignment Techniques
 
MDD and modeling tools research
MDD and modeling tools researchMDD and modeling tools research
MDD and modeling tools research
 
Practical Experiences Migrating Unified Modeling Language Models to IBM® Rati...
PracticalExperiences Migrating Unified Modeling Language Models to IBM® Rati...PracticalExperiences Migrating Unified Modeling Language Models to IBM® Rati...
Practical Experiences Migrating Unified Modeling Language Models to IBM® Rati...
 
Business Analyst
Business AnalystBusiness Analyst
Business Analyst
 
xUMLFinalPresentation.ppt
xUMLFinalPresentation.pptxUMLFinalPresentation.ppt
xUMLFinalPresentation.ppt
 
Developing Tools for “What if…” Testing of Large-scale Software Systems
Developing Tools for “What if…” Testing of Large-scale Software SystemsDeveloping Tools for “What if…” Testing of Large-scale Software Systems
Developing Tools for “What if…” Testing of Large-scale Software Systems
 
[DSC Europe 23] Igor Ilic - Redefining User Experience with Large Language Mo...
[DSC Europe 23] Igor Ilic - Redefining User Experience with Large Language Mo...[DSC Europe 23] Igor Ilic - Redefining User Experience with Large Language Mo...
[DSC Europe 23] Igor Ilic - Redefining User Experience with Large Language Mo...
 
Cs 2401 Unit 1
Cs 2401 Unit 1Cs 2401 Unit 1
Cs 2401 Unit 1
 
Uml
UmlUml
Uml
 
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTSMANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
MANAGING AND ANALYSING SOFTWARE PRODUCT LINE REQUIREMENTS
 
Day5
Day5Day5
Day5
 
The software management and engineering in the AI-oriented projects tutorial
The software management and engineering in the AI-oriented projects tutorialThe software management and engineering in the AI-oriented projects tutorial
The software management and engineering in the AI-oriented projects tutorial
 
Lecture 12 requirements modeling - (system analysis)
Lecture 12   requirements modeling - (system analysis)Lecture 12   requirements modeling - (system analysis)
Lecture 12 requirements modeling - (system analysis)
 
Activity Diagram
Activity DiagramActivity Diagram
Activity Diagram
 

Recently uploaded

AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
ankushspencer015
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Christo Ananth
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
dharasingh5698
 

Recently uploaded (20)

Online banking management system project.pdf
Online banking management system project.pdfOnline banking management system project.pdf
Online banking management system project.pdf
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
AKTU Computer Networks notes --- Unit 3.pdf
AKTU Computer Networks notes ---  Unit 3.pdfAKTU Computer Networks notes ---  Unit 3.pdf
AKTU Computer Networks notes --- Unit 3.pdf
 
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
 
Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
Call Girls Pimpri Chinchwad Call Me 7737669865 Budget Friendly No Advance Boo...
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024Water Industry Process Automation & Control Monthly - April 2024
Water Industry Process Automation & Control Monthly - April 2024
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
Intze Overhead Water Tank Design by Working Stress - IS Method.pdf
Intze Overhead Water Tank  Design by Working Stress - IS Method.pdfIntze Overhead Water Tank  Design by Working Stress - IS Method.pdf
Intze Overhead Water Tank Design by Working Stress - IS Method.pdf
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
 
chapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineeringchapter 5.pptx: drainage and irrigation engineering
chapter 5.pptx: drainage and irrigation engineering
 
Vivazz, Mieres Social Housing Design Spain
Vivazz, Mieres Social Housing Design SpainVivazz, Mieres Social Housing Design Spain
Vivazz, Mieres Social Housing Design Spain
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
Generative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPTGenerative AI or GenAI technology based PPT
Generative AI or GenAI technology based PPT
 
UNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its PerformanceUNIT - IV - Air Compressors and its Performance
UNIT - IV - Air Compressors and its Performance
 
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
The Most Attractive Pune Call Girls Manchar 8250192130 Will You Miss This Cha...
 
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICSUNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
UNIT-IFLUID PROPERTIES & FLOW CHARACTERISTICS
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
 

01 concepts of_object-orientation (1)

  • 1. ® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 01. Concepts of Object-Orientation
  • 2. IBM Software Group | Rational software Where Are We?  What is Modeling?  Principles of Object-Orientation  The Unified Modeling Language
  • 3. IBM Software Group | Rational software What is a Model?  A model is a simplification of reality  Modeling achieves four aims: Helps you to visualize a system as you want it to be Permits you to specify the structure or behavior of a system Gives you a template that guides you in constructing a system Documents the decisions you have made  You build models of complex systems because you cannot comprehend such a system in its entirety  You build models to better understand the system you are developing
  • 4. IBM Software Group | Rational software Principles of Visual Modeling  The model you create influences how the problem is attacked  Every model may be expressed at different levels of precision  The best models are connected to reality  No single model is sufficient
  • 5. IBM Software Group | Rational software Model-Driven Development  A natural evolution of object-oriented technologies  The encapsulation of business logic in (UML) models  The use of these models to automate the development of applications, code generation, testing and maintenance ? ?
  • 6. IBM Software Group | Rational software Model-Driven Architecture (MDA)  An architectural style  An OMG initiative TTrraannssffoorrmmaattiioonn RRuulleess PSM PSM PSM Plat form Specific Model – Design/ Implementat ion Automated Generation TTrraannssffoorrmmaattiioonn RRuulleess Plat form I ndependent Model – Analysis/ Design PIM PIM Comput at ion I ndependent Model – Domain Model, Business Model, Requirement s, et c. CIM Code, Files, Artifacts Transformation Rules http://www.omg.com/
  • 7. IBM Software Group | Rational software Where Are We?  What is Modeling?  Principles of Object-Orientation  The Unified Modeling Language
  • 8. IBM Software Group | Rational software Basic Principles of Object Orientation  Abstraction  Encapsulation  Modularity  Hierarchy
  • 9. IBM Software Group | Rational software What Is Abstraction?  The essential characteristics of an entity that distinguishes it from all other kinds of entities  Depends on the perspective of the viewer  Is not a concrete manifestation, denotes the ideal essence of something From Object-Oriented Analysis and Design with Applications by Grady Booch, 1994
  • 10. IBM Software Group | Rational software What Is Encapsulation?  Hides implementation from clients Clients depend on interface Improves the resiliency of the system, i.e. its ability to adapt to change From Object-Oriented Analysis and Design with Applications by Grady Booch , 1994
  • 11. IBM Software Group | Rational software What Is Modularity?  Breaks up something complex into manageable pieces.  Helps people understand complex systems From Object-Oriented Analysis and Design with Applications by Grady Booch , 1994
  • 12. IBM Software Group | Rational software What Is Hierarchy? Increasing abstraction Decreasing abstraction Asset RealEstate BankAccount Savings Security Checking Stock Bond Elements at the same level of the hierarchy should be at the same level of abstraction
  • 13. IBM Software Group | Rational software Where Are We?  What is Modeling?  Principles of Object-Orientation  The Unified Modeling Language
  • 14. IBM Software Group | Rational software What Is the UML?  The UML is a language for  Visualizing  Specifying  Constructing  Documenting the artifacts of a software-intensive system
  • 15. IBM Software Group | Rational software UML Covers All Aspects of Software Development  The UML addresses system architecture, requirements, tests, project planning, and release management Use Case Diagram Actor A Use Case 1 Use Case 2 Use Case 3 Actor B GrpFile read( ) open( ) create( ) fillFile( ) sortByName( ) rep FileMgr fetchDoc( ) Repository (from Persistence) name : char * = 0 Class Diagram readDoc( ) readFile( ) DocumentList add( ) delete( ) Document name : int docid : int numField : int get( ) open( ) close( ) read( ) sortFileList( ) create( ) fillDocument( ) fList 1 FileList add( ) delete( ) File read( ) read() fill the code. user mainWnd fileMgr : FileMgr document : gFile repository Document 1: Doc view request ( ) 2: fetchDoc( ) 3: create ( ) 4: create ( ) 5: readDoc ( ) 6: filDocument ( ) 7: readFile ( ) 8: fil File ( ) 9: sortByName ( ) Sequence Diagram ƯÁ¤¹®¼-¿¡ ´ëÇÑ º¸±â¸¦ »ç¿ëÀÚ°¡ ¿äûÇÑ´Ù. È-ÀÏ°ü¸®ÀÚ´Â Àоî¿Â ¹®¼-ÀÇ Á¤º¸¸¦ ÇØ´ç ¹®¼- °´Ã¼¿¡ ¼³Á¤À» ¿äûÇÑ´Ù. È-¸é °´Ã¼´Â ÀоîμéÀÎ °´Ã¼μé¿¡ ´ëÇØ À̸§º°·Î Á¤·ÄÀ» ½ÃÄÑ È-¸é¿¡ º¸¿©ÁØ´Ù. Deployment Diagram Window95 ¹®¼-°ü¸® Ŭ¶óÀ̾ðÆ®.EXE Windows NT ¹®¼-°ü¸® ¿£Áø.EXE Windows NT Windows95 Solaris ÀÀ¿ë¼-¹ö.EXE Alpha UNIX IBM Mainframe μ¥ÀÌŸº£À̽º¼-¹ö Windows95 ¹®¼-°ü¸® ¾ÖÇø´ ºÐ»ê ȯ°æÀÇ ÇÏμå¿þ¾î ¹× ³×Æ®¿÷À¸·ÎÀÇ Á¤º¸ ½Ã½ºÅÛ ¿¬°á ¸ðμ¨ - À©μμ¿ì 95 : Ŭ¶óÀ̾ðÆ® - À©μμ¿ì NT: ÀÀ¿ë¼-¹ö - À¯´Ð½º ¸Ó½Å: ÀÀ¿ë ¼-¹ö ¹× μ¥ÀÌŸ ¼-¹ö, Åë½Å ¼-¹ö - IBM ¸ÞÀÎÇÁ·¹ÀÓ: μ¥ÀÌŸ ¼-¹ö, Åë½Å ¼-¹ö
  • 16. IBM Software Group | Rational software History of the UML UML 2.0 (2004) UML 1.5 (March, ‘03) UML 1.1 (Sept. ‘97) UML 1.0 (Jan. ‘97) Current version = 2.1 Other UML 0.9 (June ‘96) UML 0.91 (Oct. ‘96) and Unified Method 0.8 (OOPSLA ’95) Booch ’93 OMT - 2 OOSE Methods Booch ‘91 OMT - 1
  • 17. IBM Software Group | Rational software A Language Is Not Enough to Build a System Team- Based Development Modeling Language Unified Process
  • 18. IBM Software Group | Rational software Review  Why do we model?  True or false: A model influences how the problem is attacked.  True or false: A single model is sufficient in most cases.  How do MDD and MDA differ?  What are the four basic principles of object-orientation?  True or false: UML is a method to capture the requirements of the system to be and build a robust design.

Editor's Notes

  1. Software teams often do not model Many software teams build applications approaching the problem like they were building paper airplanes Start coding from project requirements Work longer hours and create more code Lacks any planned architecture Doomed to failure Modeling is a common thread to successful projects