SlideShare a Scribd company logo
1 of 42
Object-OrientedObject-Oriented
Approach/DevelopmentApproach/Development
of Softwareof Software
Presented by: Raja PrasadPresented by: Raja Prasad
Mca (IV sem) AGIMca (IV sem) AGI
OutlinesOutlines
 Historical ProspectiveHistorical Prospective
 MotivationsMotivations
 Object-Oriented ModelObject-Oriented Model
 Object-Oriented programmingObject-Oriented programming
 Life CycleLife Cycle
 Object-Oriented AnalysisObject-Oriented Analysis
 UmlUml
 Object-Oriented DesignObject-Oriented Design
Historical PerspectiveHistorical Perspective
 Was initially thought of as a “research curiosity”Was initially thought of as a “research curiosity”
 Object-oriented programming is today whatObject-oriented programming is today what
structured programming was in the 1970’sstructured programming was in the 1970’s
 The Object and object attribute idea firstThe Object and object attribute idea first
conceived in the 1950’s for A.I.conceived in the 1950’s for A.I.
 The real movement began in 1966 with theThe real movement began in 1966 with the
introduction of theintroduction of the SimulaSimula languagelanguage
Historical PerspectiveHistorical Perspective
 Palo Alto Research Center (PARC) developedPalo Alto Research Center (PARC) developed
SmalltalkSmalltalk in the early 1970’sin the early 1970’s
 SmalltalkSmalltalk is considered the first truly object-orientedis considered the first truly object-oriented
languagelanguage
 Led other languages to support object-orientedLed other languages to support object-oriented
programmingprogramming
 examples:examples: Objective-C, C++, Self, Eiffel,Objective-C, C++, Self, Eiffel, andand FlavorsFlavors
 1980 Booch pioneered the concept of object-1980 Booch pioneered the concept of object-
oriented design (OOD)oriented design (OOD)
MotivationMotivation
 Benefits are Greater:Benefits are Greater:
 ProductivityProductivity
 ReliabilityReliability
 MaintainabilityMaintainability
 ManageabilityManageability
MotivationMotivation
 Direct mapping of concepts in the problemDirect mapping of concepts in the problem
domain to software units and their interfacesdomain to software units and their interfaces
 Viewing the world as objects is more naturalViewing the world as objects is more natural
since it is closer to the way humans thinksince it is closer to the way humans think
 Objects are more stable than functions…Objects are more stable than functions…
 Supports information hiding, data abstraction,Supports information hiding, data abstraction,
and encapsulationand encapsulation
 Easily modified, extended, and maintained…Easily modified, extended, and maintained…
 if your product was designed correctlyif your product was designed correctly
Object-Oriented ModelObject-Oriented Model
 A “new” way of thinking about what it means toA “new” way of thinking about what it means to
compute and how information can be structuredcompute and how information can be structured
 Systems are viewed as cooperating objects thatSystems are viewed as cooperating objects that
encapsulate structure and behavior in aencapsulate structure and behavior in a
hierarchical constructionhierarchical construction
 Functionality achieved by messages passingFunctionality achieved by messages passing
between objectsbetween objects
Object-Oriented ModelObject-Oriented Model
 Object-oriented model can be viewed as the frameworkObject-oriented model can be viewed as the framework
containing:containing:
 AbstractionAbstraction
 EncapsulationEncapsulation
 ModularityModularity
 HierarchyHierarchy
 ConcurrenceConcurrence
 ReusabilityReusability
 ExtensibilityExtensibility
Object-Oriented ModelObject-Oriented Model
 The integration ofThe integration of
procedural and data-procedural and data-
driven approachesdriven approaches
Object Oriented ProgrammingObject Oriented Programming
 Concepts:Concepts:
 Programs are organized into cooperating collectionsPrograms are organized into cooperating collections
of objectsof objects
 Object: entity that encapsulates state and behavior.Object: entity that encapsulates state and behavior.
An instance of a classAn instance of a class
 Interface or protocol: set of messages to which it willInterface or protocol: set of messages to which it will
respondrespond
 Response can be a message or routine, or delegationResponse can be a message or routine, or delegation
of the message to another objectof the message to another object
Object Oriented ProgrammingObject Oriented Programming
Life CycleLife Cycle
 If it is accepted that object-oriented is more thanIf it is accepted that object-oriented is more than
object-oriented coding, then a whole newobject-oriented coding, then a whole new
approach, including life cycle, must be adoptedapproach, including life cycle, must be adopted
(Booch, 1994)(Booch, 1994)
Life CycleLife Cycle
 Waterfall consists of aWaterfall consists of a
sequential process,sequential process,
primarily in oneprimarily in one
directiondirection
 Does notDoes not
accommodate realaccommodate real
iterationiteration
 Criticized for placingCriticized for placing
no emphasis on reuseno emphasis on reuse
and having noand having no
unifying model tounifying model to
integrate the phasesintegrate the phases
Life CycleLife Cycle
 Water fountain lifeWater fountain life
cycle describes thecycle describes the
inherent iterative andinherent iterative and
incremental qualitiesincremental qualities
of object-orientedof object-oriented
developmentdevelopment
 Prototyping andPrototyping and
feedback loops arefeedback loops are
standardstandard
Object-Oriented AnalysisObject-Oriented Analysis
 Examines requirements from the perspective ofExamines requirements from the perspective of
the classes and objects found in the vocabularythe classes and objects found in the vocabulary
of the problem domainof the problem domain
 Yields black-box objects that are derived fromYields black-box objects that are derived from
the problem domainthe problem domain
 Scenarios can be used to determine necessaryScenarios can be used to determine necessary
object behaviorobject behavior
Analysis exampleAnalysis example
 Problem: Drawing shapesProblem: Drawing shapes
 Scenarios:Scenarios:
 Draw a pointDraw a point
 Draw a lineDraw a line
 Draw a circleDraw a circle
 Draw a squareDraw a square
 Draw a rectangleDraw a rectangle
 Draw a polygonDraw a polygon
UMLUML
 UML is a standard language for specifying,UML is a standard language for specifying,
visualizing, constructing, and documenting thevisualizing, constructing, and documenting the
artifacts of software systems.artifacts of software systems.
 UML was created by Object ManagementUML was created by Object Management
Group (OMG) and UML 1.0 specification draftGroup (OMG) and UML 1.0 specification draft
was proposed to the OMG in January 1997.was proposed to the OMG in January 1997.
 UML stands forUML stands for UUnifiednified MModelingodeling LLanguage.anguage.
 UML is a pictorial language used to makeUML is a pictorial language used to make
software blue prints.software blue prints.
UML Building-BlocksUML Building-Blocks
There three building blocks of UML
Building-Blocks
Relationships Diagrams
Structural
Behavioral
Grouping
Annotational
ThingsThings
Structural things: Structural things define the static part of the model.
They represent physical and conceptual elements
Continue thingsContinue things
Behavioral thingsBehavioral things
A behavioral thing consists of the dynamic parts of UML models.
Grouping thingsGrouping things
Grouping things can be defined as a mechanism to group elements
of a UML model together.
Annotational thingsAnnotational things
Annotational things can be defined as a mechanism to capture
remarks, descriptions, and comments of UML model elements.
Note is the only one Annotational thing available.
RelationshipRelationship
Relationship is another most important building block of UML. It
shows how elements are associated with each other and this association
describes the functionality of an application.
RelationshipRelationship
Structural NotationStructural Notationclass
Object
Structural NotationStructural Notation
Class diagramClass diagram
Defn:-The class diagram is a static diagram. It represents the
static view of an application.
Purpose:-The purpose of the class diagram is to model the static
view of an application.
Object diagramObject diagram
Defn:-Object diagrams are derived from class diagrams so object
diagrams are dependent upon class diagrams.
Object diagrams represent an instance of a class diagram.
Purpose:-The purpose of a diagram should be understood clearly
to implement it practically.
Component diagramComponent diagram
Defn:-Component diagrams are used to model physical aspects
of a system.
Purpose:-It does not describe the functionality of the system but
it describes the components used to make those functionalities.
Deployment diagramDeployment diagram
Defn:-deployment diagrams are used to describe the static
deployment view of a system. Deployment diagrams consist of
nodes and their relationships.
Purpose:-Deployment diagrams are used for describing the
hardware components where software components are deployed.
Use caseUse case
Defn:-deployment diagrams are used to describe the static
deployment view of a system. Deployment diagrams consist of
nodes and their relationships.
Purpose:-Deployment diagrams are used for describing the
hardware components where software components are deployed.
Sequence diagramSequence diagram
Collaboration diagramCollaboration diagram
Structure chart diagramStructure chart diagram
Activity diagramActivity diagram
Object-Oriented DesignObject-Oriented Design
 Object focus shifts to the solution domainObject focus shifts to the solution domain
 Objects, their semantics, and relationships areObjects, their semantics, and relationships are
identifiedidentified
 Implementation and iteration occurImplementation and iteration occur
 Jacobsen says “when details of theJacobsen says “when details of the
implementation begin to show, it’s OOD”implementation begin to show, it’s OOD”
 In my practice: OOA is preliminary design, andIn my practice: OOA is preliminary design, and
OOD is detailed designOOD is detailed design
Management IssuesManagement Issues
 Object-oriented development requires aObject-oriented development requires a
commitment to change processes, resources, andcommitment to change processes, resources, and
organizational structure.organizational structure.
 LOC measurements are less valuable, # ofLOC measurements are less valuable, # of
classes reused, inheritance depth, number ofclasses reused, inheritance depth, number of
class-to-class relationships, object coupling, totalclass-to-class relationships, object coupling, total
# of classes, and class sizes are more valuable# of classes, and class sizes are more valuable
and meaningfuland meaningful
Management IssuesManagement Issues
 Booch suggests smaller development teams, andBooch suggests smaller development teams, and
cultivation of reuse expertscultivation of reuse experts
 Reward reuse, not LOC: build libraries andReward reuse, not LOC: build libraries and
application frameworksapplication frameworks
 QA: review and testing activities still essential,QA: review and testing activities still essential,
but timing and definition are differentbut timing and definition are different
 Tools: everything described exists in visualTools: everything described exists in visual
studiostudio
The FutureThe Future
 The future is now… object-orientedThe future is now… object-oriented
development is pretty standarddevelopment is pretty standard
 Class libraries and application frameworks (exist)Class libraries and application frameworks (exist)
 Transparent information access across applicationsTransparent information access across applications
and environments (exists)and environments (exists)
 Movement will gain popularity (did)Movement will gain popularity (did)
Questions? Comments?Questions? Comments?
 Feel free to speak up!Feel free to speak up!

More Related Content

What's hot

M01 Oo Intro
M01 Oo IntroM01 Oo Intro
M01 Oo IntroDang Tuan
 
Design Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur UniversityDesign Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur UniversityShubham Narkhede
 
Knowledge Capturing via Conceptual Reframing: A Goal-oriented Framework for K...
Knowledge Capturing via Conceptual Reframing: A Goal-oriented Framework for K...Knowledge Capturing via Conceptual Reframing: A Goal-oriented Framework for K...
Knowledge Capturing via Conceptual Reframing: A Goal-oriented Framework for K...Antonio Lieto
 
Brief introduction to Object Oriented Analysis and Design
Brief introduction to Object Oriented Analysis and DesignBrief introduction to Object Oriented Analysis and Design
Brief introduction to Object Oriented Analysis and DesignAmrullah Zunzunia
 
Object-Oriented Analysis And Design With Applications Grady Booch
Object-Oriented Analysis And Design With Applications Grady BoochObject-Oriented Analysis And Design With Applications Grady Booch
Object-Oriented Analysis And Design With Applications Grady BoochSorina Chirilă
 
A&D - Object Oriented Analysis using UML
A&D - Object Oriented Analysis using UMLA&D - Object Oriented Analysis using UML
A&D - Object Oriented Analysis using UMLvinay arora
 
Bussolon, Betti: Conceptualize once, design anywhere
Bussolon, Betti: Conceptualize once, design anywhereBussolon, Betti: Conceptualize once, design anywhere
Bussolon, Betti: Conceptualize once, design anywhereStefano Bussolon
 
Lieto - Book Presentation Cognitive Design for Artificial Minds (AGI Northwes...
Lieto - Book Presentation Cognitive Design for Artificial Minds (AGI Northwes...Lieto - Book Presentation Cognitive Design for Artificial Minds (AGI Northwes...
Lieto - Book Presentation Cognitive Design for Artificial Minds (AGI Northwes...Antonio Lieto
 
Semantic Modeling Notation (Scanlon, SemTech 2010)
Semantic Modeling Notation (Scanlon, SemTech 2010)Semantic Modeling Notation (Scanlon, SemTech 2010)
Semantic Modeling Notation (Scanlon, SemTech 2010)rscanlon
 
The Grammar of User Experience
The Grammar of User ExperienceThe Grammar of User Experience
The Grammar of User ExperienceStefano Bussolon
 
Java quick reference
Java quick referenceJava quick reference
Java quick referenceArthyR3
 

What's hot (16)

M01 Oo Intro
M01 Oo IntroM01 Oo Intro
M01 Oo Intro
 
Design Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur UniversityDesign Pattern Notes: Nagpur University
Design Pattern Notes: Nagpur University
 
Pattern recognition
Pattern recognitionPattern recognition
Pattern recognition
 
Object model
Object modelObject model
Object model
 
Knowledge Capturing via Conceptual Reframing: A Goal-oriented Framework for K...
Knowledge Capturing via Conceptual Reframing: A Goal-oriented Framework for K...Knowledge Capturing via Conceptual Reframing: A Goal-oriented Framework for K...
Knowledge Capturing via Conceptual Reframing: A Goal-oriented Framework for K...
 
Pawan111
Pawan111Pawan111
Pawan111
 
Sda 8
Sda   8Sda   8
Sda 8
 
Brief introduction to Object Oriented Analysis and Design
Brief introduction to Object Oriented Analysis and DesignBrief introduction to Object Oriented Analysis and Design
Brief introduction to Object Oriented Analysis and Design
 
Object-Oriented Analysis And Design With Applications Grady Booch
Object-Oriented Analysis And Design With Applications Grady BoochObject-Oriented Analysis And Design With Applications Grady Booch
Object-Oriented Analysis And Design With Applications Grady Booch
 
A&D - Object Oriented Analysis using UML
A&D - Object Oriented Analysis using UMLA&D - Object Oriented Analysis using UML
A&D - Object Oriented Analysis using UML
 
Bussolon, Betti: Conceptualize once, design anywhere
Bussolon, Betti: Conceptualize once, design anywhereBussolon, Betti: Conceptualize once, design anywhere
Bussolon, Betti: Conceptualize once, design anywhere
 
Lieto - Book Presentation Cognitive Design for Artificial Minds (AGI Northwes...
Lieto - Book Presentation Cognitive Design for Artificial Minds (AGI Northwes...Lieto - Book Presentation Cognitive Design for Artificial Minds (AGI Northwes...
Lieto - Book Presentation Cognitive Design for Artificial Minds (AGI Northwes...
 
Semantic Modeling Notation (Scanlon, SemTech 2010)
Semantic Modeling Notation (Scanlon, SemTech 2010)Semantic Modeling Notation (Scanlon, SemTech 2010)
Semantic Modeling Notation (Scanlon, SemTech 2010)
 
The Grammar of User Experience
The Grammar of User ExperienceThe Grammar of User Experience
The Grammar of User Experience
 
Ph.D. Registeration seminar
Ph.D. Registeration seminarPh.D. Registeration seminar
Ph.D. Registeration seminar
 
Java quick reference
Java quick referenceJava quick reference
Java quick reference
 

Viewers also liked

Viewers also liked (15)

Sociallove 150212113824-conversion-gate02
Sociallove 150212113824-conversion-gate02Sociallove 150212113824-conversion-gate02
Sociallove 150212113824-conversion-gate02
 
El monstruo
El monstruoEl monstruo
El monstruo
 
Practica 22
Practica 22Practica 22
Practica 22
 
Les JEMA au Grand Bassin
Les JEMA au Grand BassinLes JEMA au Grand Bassin
Les JEMA au Grand Bassin
 
Packet Loss Distributions of TCP using Web100
Packet Loss Distributions of TCP using Web100Packet Loss Distributions of TCP using Web100
Packet Loss Distributions of TCP using Web100
 
Template 2-customer
Template 2-customerTemplate 2-customer
Template 2-customer
 
Dip in BM
Dip in BMDip in BM
Dip in BM
 
Salon céramique contenants juin 2014
Salon céramique contenants   juin 2014Salon céramique contenants   juin 2014
Salon céramique contenants juin 2014
 
Top 5 dual sim mobiles
Top 5 dual sim mobilesTop 5 dual sim mobiles
Top 5 dual sim mobiles
 
Biografia de linus torvalds y bill gates
Biografia de linus torvalds y bill gatesBiografia de linus torvalds y bill gates
Biografia de linus torvalds y bill gates
 
Enseñanza en línea mediante programas libres y de código abierto
Enseñanza en línea mediante programas libres y de código abiertoEnseñanza en línea mediante programas libres y de código abierto
Enseñanza en línea mediante programas libres y de código abierto
 
Biodiversidad
BiodiversidadBiodiversidad
Biodiversidad
 
Càritas-Desigualdad social
Càritas-Desigualdad socialCàritas-Desigualdad social
Càritas-Desigualdad social
 
Prospectiva empresarial
Prospectiva empresarialProspectiva empresarial
Prospectiva empresarial
 
Zauma belmontes 2_daunidad
Zauma belmontes 2_daunidadZauma belmontes 2_daunidad
Zauma belmontes 2_daunidad
 

Similar to Opps approch of software development

Cs 2401 Unit 1
Cs 2401 Unit 1Cs 2401 Unit 1
Cs 2401 Unit 1Susan Cox
 
Object-oriented modeling and design.pdf
Object-oriented modeling and  design.pdfObject-oriented modeling and  design.pdf
Object-oriented modeling and design.pdfSHIVAM691605
 
Object-Oriented Programming in Java (Module 1)
Object-Oriented Programming in Java (Module 1)Object-Oriented Programming in Java (Module 1)
Object-Oriented Programming in Java (Module 1)muhammadmubinmacadad2
 
Assignment 1 SYD601 2012 rick_danby completed with audio
Assignment 1 SYD601 2012 rick_danby completed with audioAssignment 1 SYD601 2012 rick_danby completed with audio
Assignment 1 SYD601 2012 rick_danby completed with audioRickNZ
 
Object Oriented Database
Object Oriented DatabaseObject Oriented Database
Object Oriented DatabaseMegan Espinoza
 
Object-OrientedProgrammingObject-Oriented Pr.docx
Object-OrientedProgrammingObject-Oriented Pr.docxObject-OrientedProgrammingObject-Oriented Pr.docx
Object-OrientedProgrammingObject-Oriented Pr.docxvannagoforth
 
Object oriented design-UNIT V
Object oriented design-UNIT VObject oriented design-UNIT V
Object oriented design-UNIT VAzhar Shaik
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologiesnaina-rani
 
What is Object Orientation?
What is Object Orientation?What is Object Orientation?
What is Object Orientation?AMITJain879
 
ooadunitiintroduction-150730050129-lva1-app6892.pptx
ooadunitiintroduction-150730050129-lva1-app6892.pptxooadunitiintroduction-150730050129-lva1-app6892.pptx
ooadunitiintroduction-150730050129-lva1-app6892.pptxubaidullah75790
 
Object-Oriented Analysis and Design
Object-Oriented Analysis and DesignObject-Oriented Analysis and Design
Object-Oriented Analysis and DesignRiazAhmad786
 
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...cscpconf
 
Formalization & data abstraction during use case modeling in object oriented ...
Formalization & data abstraction during use case modeling in object oriented ...Formalization & data abstraction during use case modeling in object oriented ...
Formalization & data abstraction during use case modeling in object oriented ...csandit
 
fdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.pptfdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.pptRAJESH S
 
OO Development 5 - Analysis
OO Development 5 - AnalysisOO Development 5 - Analysis
OO Development 5 - AnalysisRandy Connolly
 

Similar to Opps approch of software development (20)

Cs 2401 Unit 1
Cs 2401 Unit 1Cs 2401 Unit 1
Cs 2401 Unit 1
 
Object-oriented modeling and design.pdf
Object-oriented modeling and  design.pdfObject-oriented modeling and  design.pdf
Object-oriented modeling and design.pdf
 
Ooad unit 1
Ooad unit 1Ooad unit 1
Ooad unit 1
 
Object-Oriented Programming in Java (Module 1)
Object-Oriented Programming in Java (Module 1)Object-Oriented Programming in Java (Module 1)
Object-Oriented Programming in Java (Module 1)
 
CS3391 -OOP -UNIT – I NOTES FINAL.pdf
CS3391 -OOP -UNIT – I  NOTES FINAL.pdfCS3391 -OOP -UNIT – I  NOTES FINAL.pdf
CS3391 -OOP -UNIT – I NOTES FINAL.pdf
 
Assignment 1 SYD601 2012 rick_danby completed with audio
Assignment 1 SYD601 2012 rick_danby completed with audioAssignment 1 SYD601 2012 rick_danby completed with audio
Assignment 1 SYD601 2012 rick_danby completed with audio
 
Object Oriented Database
Object Oriented DatabaseObject Oriented Database
Object Oriented Database
 
Object-OrientedProgrammingObject-Oriented Pr.docx
Object-OrientedProgrammingObject-Oriented Pr.docxObject-OrientedProgrammingObject-Oriented Pr.docx
Object-OrientedProgrammingObject-Oriented Pr.docx
 
Object oriented design-UNIT V
Object oriented design-UNIT VObject oriented design-UNIT V
Object oriented design-UNIT V
 
Oomd unit1
Oomd unit1Oomd unit1
Oomd unit1
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
 
What is Object Orientation?
What is Object Orientation?What is Object Orientation?
What is Object Orientation?
 
DISE - OOAD Using UML
DISE - OOAD Using UMLDISE - OOAD Using UML
DISE - OOAD Using UML
 
Chapter1
Chapter1Chapter1
Chapter1
 
ooadunitiintroduction-150730050129-lva1-app6892.pptx
ooadunitiintroduction-150730050129-lva1-app6892.pptxooadunitiintroduction-150730050129-lva1-app6892.pptx
ooadunitiintroduction-150730050129-lva1-app6892.pptx
 
Object-Oriented Analysis and Design
Object-Oriented Analysis and DesignObject-Oriented Analysis and Design
Object-Oriented Analysis and Design
 
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
FORMALIZATION & DATA ABSTRACTION DURING USE CASE MODELING IN OBJECT ORIENTED ...
 
Formalization & data abstraction during use case modeling in object oriented ...
Formalization & data abstraction during use case modeling in object oriented ...Formalization & data abstraction during use case modeling in object oriented ...
Formalization & data abstraction during use case modeling in object oriented ...
 
fdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.pptfdocuments.in_unit-2-ooad.ppt
fdocuments.in_unit-2-ooad.ppt
 
OO Development 5 - Analysis
OO Development 5 - AnalysisOO Development 5 - Analysis
OO Development 5 - Analysis
 

Recently uploaded

BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...Sapna Thakur
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfchloefrazer622
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13Steve Thomason
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdfQucHHunhnh
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Krashi Coaching
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfAyushMahapatra5
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...fonyou31
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphThiyagu K
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdfSoniaTolstoy
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3JemimahLaneBuaron
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 

Recently uploaded (20)

BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
BAG TECHNIQUE Bag technique-a tool making use of public health bag through wh...
 
Disha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdfDisha NEET Physics Guide for classes 11 and 12.pdf
Disha NEET Physics Guide for classes 11 and 12.pdf
 
The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13The Most Excellent Way | 1 Corinthians 13
The Most Excellent Way | 1 Corinthians 13
 
1029 - Danh muc Sach Giao Khoa 10 . pdf
1029 -  Danh muc Sach Giao Khoa 10 . pdf1029 -  Danh muc Sach Giao Khoa 10 . pdf
1029 - Danh muc Sach Giao Khoa 10 . pdf
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
Kisan Call Centre - To harness potential of ICT in Agriculture by answer farm...
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
Ecosystem Interactions Class Discussion Presentation in Blue Green Lined Styl...
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdfBASLIQ CURRENT LOOKBOOK  LOOKBOOK(1) (1).pdf
BASLIQ CURRENT LOOKBOOK LOOKBOOK(1) (1).pdf
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3Q4-W6-Restating Informational Text Grade 3
Q4-W6-Restating Informational Text Grade 3
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 

Opps approch of software development

  • 1. Object-OrientedObject-Oriented Approach/DevelopmentApproach/Development of Softwareof Software Presented by: Raja PrasadPresented by: Raja Prasad Mca (IV sem) AGIMca (IV sem) AGI
  • 2. OutlinesOutlines  Historical ProspectiveHistorical Prospective  MotivationsMotivations  Object-Oriented ModelObject-Oriented Model  Object-Oriented programmingObject-Oriented programming  Life CycleLife Cycle  Object-Oriented AnalysisObject-Oriented Analysis  UmlUml  Object-Oriented DesignObject-Oriented Design
  • 3. Historical PerspectiveHistorical Perspective  Was initially thought of as a “research curiosity”Was initially thought of as a “research curiosity”  Object-oriented programming is today whatObject-oriented programming is today what structured programming was in the 1970’sstructured programming was in the 1970’s  The Object and object attribute idea firstThe Object and object attribute idea first conceived in the 1950’s for A.I.conceived in the 1950’s for A.I.  The real movement began in 1966 with theThe real movement began in 1966 with the introduction of theintroduction of the SimulaSimula languagelanguage
  • 4. Historical PerspectiveHistorical Perspective  Palo Alto Research Center (PARC) developedPalo Alto Research Center (PARC) developed SmalltalkSmalltalk in the early 1970’sin the early 1970’s  SmalltalkSmalltalk is considered the first truly object-orientedis considered the first truly object-oriented languagelanguage  Led other languages to support object-orientedLed other languages to support object-oriented programmingprogramming  examples:examples: Objective-C, C++, Self, Eiffel,Objective-C, C++, Self, Eiffel, andand FlavorsFlavors  1980 Booch pioneered the concept of object-1980 Booch pioneered the concept of object- oriented design (OOD)oriented design (OOD)
  • 5. MotivationMotivation  Benefits are Greater:Benefits are Greater:  ProductivityProductivity  ReliabilityReliability  MaintainabilityMaintainability  ManageabilityManageability
  • 6. MotivationMotivation  Direct mapping of concepts in the problemDirect mapping of concepts in the problem domain to software units and their interfacesdomain to software units and their interfaces  Viewing the world as objects is more naturalViewing the world as objects is more natural since it is closer to the way humans thinksince it is closer to the way humans think  Objects are more stable than functions…Objects are more stable than functions…  Supports information hiding, data abstraction,Supports information hiding, data abstraction, and encapsulationand encapsulation  Easily modified, extended, and maintained…Easily modified, extended, and maintained…  if your product was designed correctlyif your product was designed correctly
  • 7. Object-Oriented ModelObject-Oriented Model  A “new” way of thinking about what it means toA “new” way of thinking about what it means to compute and how information can be structuredcompute and how information can be structured  Systems are viewed as cooperating objects thatSystems are viewed as cooperating objects that encapsulate structure and behavior in aencapsulate structure and behavior in a hierarchical constructionhierarchical construction  Functionality achieved by messages passingFunctionality achieved by messages passing between objectsbetween objects
  • 8. Object-Oriented ModelObject-Oriented Model  Object-oriented model can be viewed as the frameworkObject-oriented model can be viewed as the framework containing:containing:  AbstractionAbstraction  EncapsulationEncapsulation  ModularityModularity  HierarchyHierarchy  ConcurrenceConcurrence  ReusabilityReusability  ExtensibilityExtensibility
  • 9. Object-Oriented ModelObject-Oriented Model  The integration ofThe integration of procedural and data-procedural and data- driven approachesdriven approaches
  • 10. Object Oriented ProgrammingObject Oriented Programming  Concepts:Concepts:  Programs are organized into cooperating collectionsPrograms are organized into cooperating collections of objectsof objects  Object: entity that encapsulates state and behavior.Object: entity that encapsulates state and behavior. An instance of a classAn instance of a class  Interface or protocol: set of messages to which it willInterface or protocol: set of messages to which it will respondrespond  Response can be a message or routine, or delegationResponse can be a message or routine, or delegation of the message to another objectof the message to another object
  • 11. Object Oriented ProgrammingObject Oriented Programming
  • 12. Life CycleLife Cycle  If it is accepted that object-oriented is more thanIf it is accepted that object-oriented is more than object-oriented coding, then a whole newobject-oriented coding, then a whole new approach, including life cycle, must be adoptedapproach, including life cycle, must be adopted (Booch, 1994)(Booch, 1994)
  • 13. Life CycleLife Cycle  Waterfall consists of aWaterfall consists of a sequential process,sequential process, primarily in oneprimarily in one directiondirection  Does notDoes not accommodate realaccommodate real iterationiteration  Criticized for placingCriticized for placing no emphasis on reuseno emphasis on reuse and having noand having no unifying model tounifying model to integrate the phasesintegrate the phases
  • 14. Life CycleLife Cycle  Water fountain lifeWater fountain life cycle describes thecycle describes the inherent iterative andinherent iterative and incremental qualitiesincremental qualities of object-orientedof object-oriented developmentdevelopment  Prototyping andPrototyping and feedback loops arefeedback loops are standardstandard
  • 15. Object-Oriented AnalysisObject-Oriented Analysis  Examines requirements from the perspective ofExamines requirements from the perspective of the classes and objects found in the vocabularythe classes and objects found in the vocabulary of the problem domainof the problem domain  Yields black-box objects that are derived fromYields black-box objects that are derived from the problem domainthe problem domain  Scenarios can be used to determine necessaryScenarios can be used to determine necessary object behaviorobject behavior
  • 16. Analysis exampleAnalysis example  Problem: Drawing shapesProblem: Drawing shapes  Scenarios:Scenarios:  Draw a pointDraw a point  Draw a lineDraw a line  Draw a circleDraw a circle  Draw a squareDraw a square  Draw a rectangleDraw a rectangle  Draw a polygonDraw a polygon
  • 17. UMLUML  UML is a standard language for specifying,UML is a standard language for specifying, visualizing, constructing, and documenting thevisualizing, constructing, and documenting the artifacts of software systems.artifacts of software systems.  UML was created by Object ManagementUML was created by Object Management Group (OMG) and UML 1.0 specification draftGroup (OMG) and UML 1.0 specification draft was proposed to the OMG in January 1997.was proposed to the OMG in January 1997.  UML stands forUML stands for UUnifiednified MModelingodeling LLanguage.anguage.  UML is a pictorial language used to makeUML is a pictorial language used to make software blue prints.software blue prints.
  • 18. UML Building-BlocksUML Building-Blocks There three building blocks of UML Building-Blocks Relationships Diagrams Structural Behavioral Grouping Annotational
  • 19. ThingsThings Structural things: Structural things define the static part of the model. They represent physical and conceptual elements
  • 21. Behavioral thingsBehavioral things A behavioral thing consists of the dynamic parts of UML models.
  • 22. Grouping thingsGrouping things Grouping things can be defined as a mechanism to group elements of a UML model together.
  • 23. Annotational thingsAnnotational things Annotational things can be defined as a mechanism to capture remarks, descriptions, and comments of UML model elements. Note is the only one Annotational thing available.
  • 24. RelationshipRelationship Relationship is another most important building block of UML. It shows how elements are associated with each other and this association describes the functionality of an application.
  • 28. Class diagramClass diagram Defn:-The class diagram is a static diagram. It represents the static view of an application. Purpose:-The purpose of the class diagram is to model the static view of an application.
  • 29. Object diagramObject diagram Defn:-Object diagrams are derived from class diagrams so object diagrams are dependent upon class diagrams. Object diagrams represent an instance of a class diagram. Purpose:-The purpose of a diagram should be understood clearly to implement it practically.
  • 30. Component diagramComponent diagram Defn:-Component diagrams are used to model physical aspects of a system. Purpose:-It does not describe the functionality of the system but it describes the components used to make those functionalities.
  • 31. Deployment diagramDeployment diagram Defn:-deployment diagrams are used to describe the static deployment view of a system. Deployment diagrams consist of nodes and their relationships. Purpose:-Deployment diagrams are used for describing the hardware components where software components are deployed.
  • 32. Use caseUse case Defn:-deployment diagrams are used to describe the static deployment view of a system. Deployment diagrams consist of nodes and their relationships. Purpose:-Deployment diagrams are used for describing the hardware components where software components are deployed.
  • 37. Object-Oriented DesignObject-Oriented Design  Object focus shifts to the solution domainObject focus shifts to the solution domain  Objects, their semantics, and relationships areObjects, their semantics, and relationships are identifiedidentified  Implementation and iteration occurImplementation and iteration occur  Jacobsen says “when details of theJacobsen says “when details of the implementation begin to show, it’s OOD”implementation begin to show, it’s OOD”  In my practice: OOA is preliminary design, andIn my practice: OOA is preliminary design, and OOD is detailed designOOD is detailed design
  • 38. Management IssuesManagement Issues  Object-oriented development requires aObject-oriented development requires a commitment to change processes, resources, andcommitment to change processes, resources, and organizational structure.organizational structure.  LOC measurements are less valuable, # ofLOC measurements are less valuable, # of classes reused, inheritance depth, number ofclasses reused, inheritance depth, number of class-to-class relationships, object coupling, totalclass-to-class relationships, object coupling, total # of classes, and class sizes are more valuable# of classes, and class sizes are more valuable and meaningfuland meaningful
  • 39. Management IssuesManagement Issues  Booch suggests smaller development teams, andBooch suggests smaller development teams, and cultivation of reuse expertscultivation of reuse experts  Reward reuse, not LOC: build libraries andReward reuse, not LOC: build libraries and application frameworksapplication frameworks  QA: review and testing activities still essential,QA: review and testing activities still essential, but timing and definition are differentbut timing and definition are different  Tools: everything described exists in visualTools: everything described exists in visual studiostudio
  • 40. The FutureThe Future  The future is now… object-orientedThe future is now… object-oriented development is pretty standarddevelopment is pretty standard  Class libraries and application frameworks (exist)Class libraries and application frameworks (exist)  Transparent information access across applicationsTransparent information access across applications and environments (exists)and environments (exists)  Movement will gain popularity (did)Movement will gain popularity (did)
  • 41.
  • 42. Questions? Comments?Questions? Comments?  Feel free to speak up!Feel free to speak up!