SlideShare a Scribd company logo
1 of 39
O B J E C T - O R I E N T E D S O F T W A R E
E N G I N E E R I N G
B Y T E A M 0 4
A N N I E B E N I T H A T H O M A S
D U R G A P O O J I T H A B O D D U L U R I
INDEX
TOPIC SLIDE NO
INTRODUCTION 1
MAIN FEATURES 3
REAL WORLD EXAMPLES 11
SWOT: ADV/BENEFITS 16
SWOT: DISADVANTAGES 19
OPTIONAL OOSE TOOLS 21
REFERNCES 24
CONCLUSION 26
I N T R O D U C T I O N
INTRODUCTION
• Object Oriented Software
Engineering(OOSE) also known as
Objectory is a method of object-
oriented development with the specific
aim to fit the development of large,
real-time systems
• OOSE is developed by Ivar Jacobson in
1992.
• It is the first object-oriented design
methodology to employ use cases to
drive software design.
• It follows the concept of modern UML
http://cs-exhibitions.uni-klu.ac.at/index.php?id=448
1
INTRODUCTION
• In OOSE , the software developer
identifies and organizes the
application in terms of object-oriented
concepts , prior to their final
representation in any specific
programming language or software
tools.
• It includes requirements, an analysis, a
design , an implementation and a
testing model.
• Object Oriented techniques make it
possible for us to handle large
systems, change and reuse them etc.
between customer and developer
http://cs-exhibitions.uni-klu.ac.at/index.php?id=448
2
M A I N F E A T U R E S / P H A S E S
C H A R A C T E R S T I C S
PHASE – I - REQUIREMENTS PHASE
• REQUIREMENTS PHASE – uses a natural language description of what the system
should do to build three models.
 The use case model – describes interaction between actors and the system.
The domain model -- describes objects, classes and associations between objects in
the domain.
The user-interface descriptions – contain mock-ups of various inteface between actors
and the system
https://books.google.com/books?id=p9gRBwAAQBAJ&pg
3
PHASE - II - ANALYSIS PHASE
• The ANALYSIS PHASE – produces the
analysis model and a set of subsystem
descriptions. The analysis model is a
refinement of the domain object
model produced in the requirements
phase.
 Fulfills all its requirements
Is Structured to be robust .
http://www.iscn.at/select_newspaper/object/rational.html
4
PHASE –III - IMPLEMENTATION
• The system is realized through
implementation producing the
sources(source-code files, header files
etc.) that will result in an executable
system.
• Implementation model consists of
modules structured into
implementation packages.
• It Includes testing the separate classes
or packages.
http://www.iscn.at/select_newspaper/object/rational.html
5
PHASE – IV - TEST
• Test verifies the entire system, testing
each use case separately to verify that
its participating classes work together
correctly.
• Then testing the system as a whole
begins with use-case descriptions as
input to this test.
• At the end of the test, the system can
be delivered.
http://www.iscn.at/select_newspaper/object/rational.html
6
FEATURES - USE CASE DRIVEN DEVELOPMENT
• Objectory is a use-case driven approach. Use cases play a role in each of the four
engineering process components : requirements, analysis, design and test.
• Use cases have other roles as well:
– They can be used as a basis for iterative development
– They form a foundation for what is described in user manuals.
– They may be used as ordering units . A customer can get a system configured with particular
mix of use cases.
http://www.iscn.at/select_newspaper/object/rational.html
7
FEATURES – CONTROLLED ITERATIVE DEVELOPMENT
• The Objectory iterative approach is generally superior to a linear or waterfall approach
for many reasons,
– It lets you take into account changing requirements.
– Integration is not one” big bang” at the end elements are integrated progressively.
– It lets you migrate risks earlier because integration is generally the only time risks are
discovered or addressed.
– It provides management with a way to do tactical changes to the product
http://www.iscn.at/select_newspaper/object/rational.html
8
FEATURES – REQUIREMENTS MANAGEMENT
• The two key elements behind a controlled iterative process are requirements
management and change control
• The benefits of effective requirements management include:
– Better control of complex projects.
– Improved software quality and customer satisfaction.
– Reduced project costs and delays.
– Improved team communication.
http://www.iscn.at/select_newspaper/object/rational.html
9
FEATURES – COMPONENT BASED DEVELOPMENT
– Objectory supports component-based development in several ways.
• The iterative approach allows to progressively identify components, decide which one to develop,
which one to reuse, which one to buy.
• The focus on software architecture allows to articulate the structure: the components and the ways
they integrate: the fundamental mechanisms and patterns by which they interact.
• Concepts such as packages, subsystems, layers are used during analysis and design to organize
components, specify interfaces.
• Testing is organized around components first, then gradually larger set of integrated components.
http://www.iscn.at/select_newspaper/object/rational.html
10
R E A L W O R L D E X A M P L E S
CASE STUDIES
SL.No Project Name
and Project
web site and
address
Name of
company or
organization
Usage
1 www.gmail.co
m
GMAIL ENCAPSULATION
–
Every time you log
into your email
account your
password, would
probably be
retrieved in an
encyrpted form,
verified and only
then you are given
access. You do not
have any control,
over how the
password is
verified, and this
keeps it safe from
misuse.
https://mail.google.com/mail
11
CASE STUDIES
Sl.No Project Name
or website
address
Name of the
organization
Usage
II http://netbeans
org/
NETBEANS NetBeans is
a software
development p
atform written
in Java. The
NetBeans
Platform allows
applications to
be developed
from a set of
modular softwa
re
components ca
led modules.
http://netbeans.org/
12
CASE STUDIES
Sl No Project
Name or
website
Name of the
organization
Usage
III https://eclips
e.org
ECLIPSE Eclipse is
an integrated
development
environment (ID
E) used
in computer
programming,
and is the most
widely used Java
IDE. It contains a
base workspace
and an
extensible plug-
in system for
customizing the
environment.
Eclipse is written
mostly in Java
https://eclipse.org
13
CASE STUDIES
Sl.No Project
Name or
website
Name of
the
organization
Usage
IV https://www.
visualstudio.
com/
Microsoft
Visual
Studio
Microsoft
Visual
Studio is
an integrated
development
environment (
IDE)
from Microsof
t. It is used to
develop com
uter
programs for
Microsoft
Windows,
https://www.visualstudio.com/
14
CASE STUDIES
Sl No Project Name
or website
Name of the
organization
Usage
V https://www.fa
cebook.com/
FACEBOOK Facebook is
both a
consumer of
and
contributor
to free and
open source
software.
Facebook also
contributes to
other
opensource
projects such
as Java,
Javascript etc
https://www.facebook.com/
15
S W O T : A D V/ B E N E F I T S
BENEFITS
Sl.No Advantage Brief Explanation
I Reduced
Maintenance
The primary goal of
oriented development is
the assurance that the
system will enjoy a longer
life while having far
maintenance
costs. Because most of
processes within the
system are encapsulated,
the behaviors may be
reused and incorporated
into new behaviors.
II Real- World
Modeling
Object-oriented system
tend to model the real
world in a more complete
fashion than do traditional
methods. Objects are
organized into classes of
objects, and objects are
associated with
behaviors. The model is
based on objects, rather
than on data and
processing.
http://www.dba-oracle.com/t_object_oriented_approach.htm
16
BENEFITS
Sl.No Advantage Brief Explanation
III Improved
Reliability and
Flexibility
Object-oriented system
promise to be far more
reliable than traditional
systems, primarily
because new behaviors
can be "built" from
existing objects.
IV High Code
Reusability
When a new object is
created, it will
automatically inherit the
data attributes and
characteristics of the
class from which it was
spawned. The new
object will also inherit
the data and behaviors
from all superclasses in
which it participates.
http://www.dba-oracle.com/t_object_oriented_approach.htm
17
BENEFITS
Sl.No Advantages Brief
Explanation
V Scalable OO applications
are more scalable
then their
structured
programming
roots. makes
it easy to replace
old and aging
with faster
algorithms and
newer
technology.
VI Maintainable OOP methods
make code more
maintainable.
Identifying the
source of errors
becomes easier
because objects
are self-contained
http://codebetter.com/raymondlewallen/2005/02/08/advantages-of-an-object-oriented-
approach-for-new-programmers/
18
S W O T : W E A K N E S S / P R O B L E M S
DISADVANTAGES
SL.No Disadvantages Brief Explanation
I Functionality Functionality is
restricted within
objects. This may
pose a problem for
systems which are
intrinsically
procedural or
computational in
nature.
II Identification It cannot identify
which objects would
generate an optimal
system design.
III Communications The object-oriented
models do not easily
show the
communications
between the objects
in the system.
https://www.saylor.org/site/wp-content/uploads/2013/02/CS101-2.1.2-
AdvantagesDisadvantagesOfOOP-FINAL.pdf
19
DISADVANTAGES
SL.No Disadvantages Brief Explanation
IV Steep-learning curve The thought process
involved in object-oriented
programming may not be
natural for some people,
and it can take time to get
used to it. It is complex to
create programs based on
interaction of objects.
V Larger Program Size Object-oriented programs
typically involve more lines
of code than procedural
programs.
https://www.saylor.org/site/wp-content/uploads/2013/02/CS101-2.1.2-
AdvantagesDisadvantagesOfOOP-FINAL.pdf
20
( O P T I O N A L )
O B J E C T O R Y T O O L S
OBJECTORY TOOLS
SL.No Open Source
Tool
Web Address Evaluation
I Netbeans netbeans.org
/
NetBeans has
of the briefest
startup times of
any of the IDEs.
Configuration is
minimal; up and
running in a
remarkably short
time. And
debugging in
NetBeans was as
easy as it gets. In
short, NetBeans
PHP just worked
- which is just
what you want
netbeans.org/
21
OBJECTORY TOOLS
SL.No Open Source Tools Web Address Evaluation
II Eclipse https://eclipse.org/ Very open source. Allows
users to create plug ins for
it. It's one of those software
packages where if you can
think it, you can probably
it, or program a way to do
like most open source
software
III Microsoft Visual
Studio
https://www.visualstu
dio.com/
Visual Studio is arguable the
best Software Development
IDE in the planet, it has a
of features from code
completion, source control,
customization options, tools
and extensions, to a pletora
of software project
templates you can chose
from such as Web
Application, Windows
Desktop Applications etc.
https://eclipse.org/
https://www.visualstudio.com/
22
OBJECTORY TOOLS
SL.No Open Source Tools Web Address Evaluation
IV Jenkins https://jenkins.io/index
html
Creating new builds is easy;
Deploying existing builds is
easy as one click; and
perhaps most importantly,
debugging builds is easy.
V Gradle https://gradle.org/ Unlike similar build tools in
JVM ecosystem, Gradle does
use XML but rather a flexible
DSL based on the Groovy
programming language. This
leads to a short and clean
build configuration files. In
addition, Gradle is the de
facto build tool for Android
which means it has a wide
adoption
23
https://jenkins.io/index.html
https://gradle.org/
REFERENCES
REFERENCES
Open Source Tool Web Address to download Brief Explanation
OBJECT-ORIENTED
SOFTWARE ENGINEERING
- A use case driven approach
https://www.ivarjacobson.com
publications/books/object-
oriented-software-
engineering-1992
• Objectory which is the first
commercially available
comprehensive object-oriented
process for developing large-
scale industrial systems.
• The approach takes a global
view of system development
and focuses on minimizing the
systems life cycle cost.
Object-Oriented Software
Engineering Using UML,
Patterns, and Java
https://www.pearsonhighered.c
om/program/Bruegge-Object-
Oriented-Software-
Engineering-Using-UML-
Patterns-and-Java-3rd-
Edition/PGM58934.html
• An object-oriented modeling
approach covers techniques in a
step-by-step manner, from
requirements elicitation to testing,
enabling students to grasp the
complexity of object-oriented
modeling
• State-of-the-art coverage of
Object-Oriented software
engineering shows students how to
use the most practical aspects of
software engineering including the
basic elements of UML (Unified
Modeling Language)
24
REFERENCES
Open Source Tool Web address Brief Explanation
Object Oriented Analysis and
Design
http://www.umsl.edu/~sauterv
analysis/488_f01_papers/quillin.
htm
Most new client/server application
development tools emphasize
object-oriented features. The
introduction of the object-oriented
approach in the 1970s marked
a radical change in the
methodology and approach of
large-scale application
development.
The Rational Objectory
Process - A UML-based
Software Engineering Process
http://www.iscn.at/select_news
paper/object/rational.html
This paper presents an overview of
the Rational Objectory Process.
Rational Objectory Process is a full
lifecycle software engineering
process bringing Unified Modeling
Language (UML) best practices to
the fingertips of each software
developer.
25
http://www.umsl.edu/~sauterv/analysis/488_f01_papers/quillin.htm
http://www.iscn.at/select_newspaper/object/rational.html
CONCLUSION
CONCLUSION
• Objectory CASE tools provides comprehensive support to the software development
process.
• Quality assurance is an integral part of this process through templates for guidelines
and many checkpoints to check the quality of artifacts to be delivered in each phase.
• The Objectory is already linked with a number of other tools, such as tools for visual
modelling and requirements management. Objectory could be improved by a linkage
to quality assessment tools that supports.
https://books.google.com/books?id=k9Oma5M_Yt8C&pg=PA485&lpg
26
CONCLUSION
• Should companies and businesses invest financial and human resources, deploy and
use the selected topic/technology/methodology?
– YES
– The framework of objectory is a design technique called design with building blocks. With
the building block technique, a system is viewed as a system of connecting blocks with each
block representing a system service.
– An object-oriented model provides a consistent framework: it makes small terminology
inconsistencies in the original process noticeable and draws attention to missing
information.
– Increased Quality –IF 90% of a new application consists of a proven , existing components,
then only the remaining 10% of the code has to be tested from scratch. That observation
implies an order-of-magnitude reduction in defects.
27
CONCLUSION
• Should we (CS/IS Department) recommend selected advanced topic/technology for
active use in CS/IS curricula, for example, as a separate DIS or Advanced Topics course?
– YES
– Objectory methodology should be used or should be introduced as a course
– The Use cases provided at the starting point at the beginning of the semester helped
students to gain some initial understanding of the intended functionality.
– Students would feel OMTool to be more useful that the languages already being used.
– OMTool is closer match to C++.
– Objectory is a very open –ended and demanding methodology in the sense that it requires
much more though and experience than other methodologies, hence giving more
knowledge on the same.
https://books.google.com/books?id=Bd67Y1NkPWkC&pg
28
THANK YOU

More Related Content

What's hot

Vision of cloud computing
Vision of cloud computingVision of cloud computing
Vision of cloud computinggaurav jain
 
Unit 1 - ML - Introduction to Machine Learning.pptx
Unit 1 - ML - Introduction to Machine Learning.pptxUnit 1 - ML - Introduction to Machine Learning.pptx
Unit 1 - ML - Introduction to Machine Learning.pptxjawad184956
 
Detection of Fake reviews
Detection of Fake reviews Detection of Fake reviews
Detection of Fake reviews 27DuddeSai
 
Face recognition ppt
Face recognition pptFace recognition ppt
Face recognition pptSantosh Kumar
 
Ch5- Software Engineering 9
Ch5- Software Engineering 9Ch5- Software Engineering 9
Ch5- Software Engineering 9Ian Sommerville
 
Smart attendance system using facial recognition
Smart attendance system using facial recognitionSmart attendance system using facial recognition
Smart attendance system using facial recognitionVigneshLakshmanan8
 
Face Recognition System/Technology
Face Recognition System/TechnologyFace Recognition System/Technology
Face Recognition System/TechnologyRahulSingh3034
 
Implicit Human-Computer Interaction - Lecture 11 - Next Generation User Inter...
Implicit Human-Computer Interaction - Lecture 11 - Next Generation User Inter...Implicit Human-Computer Interaction - Lecture 11 - Next Generation User Inter...
Implicit Human-Computer Interaction - Lecture 11 - Next Generation User Inter...Beat Signer
 
Face detection and recognition
Face detection and recognitionFace detection and recognition
Face detection and recognitionDerek Budde
 
Real-Time Logo Detection and Tracking
Real-Time Logo Detection and TrackingReal-Time Logo Detection and Tracking
Real-Time Logo Detection and Trackingmelgeorge
 
Computer Vision - Real Time Face Recognition using Open CV and Python
Computer Vision - Real Time Face Recognition using Open CV and PythonComputer Vision - Real Time Face Recognition using Open CV and Python
Computer Vision - Real Time Face Recognition using Open CV and PythonAkash Satamkar
 
Automatic Attendance system using Facial Recognition
Automatic Attendance system using Facial RecognitionAutomatic Attendance system using Facial Recognition
Automatic Attendance system using Facial RecognitionNikyaa7
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologiesnaina-rani
 
Biometrics Based Authentication AKASH
Biometrics Based Authentication AKASHBiometrics Based Authentication AKASH
Biometrics Based Authentication AKASHAkash Deep Maurya
 

What's hot (20)

Computer vision
Computer visionComputer vision
Computer vision
 
Vision of cloud computing
Vision of cloud computingVision of cloud computing
Vision of cloud computing
 
Unit 1 - ML - Introduction to Machine Learning.pptx
Unit 1 - ML - Introduction to Machine Learning.pptxUnit 1 - ML - Introduction to Machine Learning.pptx
Unit 1 - ML - Introduction to Machine Learning.pptx
 
FAKE Review Detection
FAKE Review DetectionFAKE Review Detection
FAKE Review Detection
 
Detection of Fake reviews
Detection of Fake reviews Detection of Fake reviews
Detection of Fake reviews
 
Face recognition ppt
Face recognition pptFace recognition ppt
Face recognition ppt
 
Ch5- Software Engineering 9
Ch5- Software Engineering 9Ch5- Software Engineering 9
Ch5- Software Engineering 9
 
Slides chapter 8
Slides chapter 8Slides chapter 8
Slides chapter 8
 
Smart attendance system using facial recognition
Smart attendance system using facial recognitionSmart attendance system using facial recognition
Smart attendance system using facial recognition
 
Object oriented analysis and design unit- v
Object oriented analysis and design unit- vObject oriented analysis and design unit- v
Object oriented analysis and design unit- v
 
Face Recognition System/Technology
Face Recognition System/TechnologyFace Recognition System/Technology
Face Recognition System/Technology
 
Implicit Human-Computer Interaction - Lecture 11 - Next Generation User Inter...
Implicit Human-Computer Interaction - Lecture 11 - Next Generation User Inter...Implicit Human-Computer Interaction - Lecture 11 - Next Generation User Inter...
Implicit Human-Computer Interaction - Lecture 11 - Next Generation User Inter...
 
Face detection and recognition
Face detection and recognitionFace detection and recognition
Face detection and recognition
 
Real-Time Logo Detection and Tracking
Real-Time Logo Detection and TrackingReal-Time Logo Detection and Tracking
Real-Time Logo Detection and Tracking
 
Face Recognition
Face RecognitionFace Recognition
Face Recognition
 
Ch 6
Ch 6Ch 6
Ch 6
 
Computer Vision - Real Time Face Recognition using Open CV and Python
Computer Vision - Real Time Face Recognition using Open CV and PythonComputer Vision - Real Time Face Recognition using Open CV and Python
Computer Vision - Real Time Face Recognition using Open CV and Python
 
Automatic Attendance system using Facial Recognition
Automatic Attendance system using Facial RecognitionAutomatic Attendance system using Facial Recognition
Automatic Attendance system using Facial Recognition
 
Object oriented methodologies
Object oriented methodologiesObject oriented methodologies
Object oriented methodologies
 
Biometrics Based Authentication AKASH
Biometrics Based Authentication AKASHBiometrics Based Authentication AKASH
Biometrics Based Authentication AKASH
 

Similar to Object oriented software_engg

PLA and the SC 2002-04-15
PLA and the SC 2002-04-15PLA and the SC 2002-04-15
PLA and the SC 2002-04-15Jay van Zyl
 
Tech leaders guide to effective building of machine learning products
Tech leaders guide to effective building of machine learning productsTech leaders guide to effective building of machine learning products
Tech leaders guide to effective building of machine learning productsGianmario Spacagna
 
The Art and Science of Requirements Gathering
The Art and Science of Requirements GatheringThe Art and Science of Requirements Gathering
The Art and Science of Requirements GatheringVanessa Turke
 
Over view of software artitecture
Over view of software artitectureOver view of software artitecture
Over view of software artitectureABDEL RAHMAN KARIM
 
DOC-20210303-WA0017..pptx,coding stuff in c
DOC-20210303-WA0017..pptx,coding stuff in cDOC-20210303-WA0017..pptx,coding stuff in c
DOC-20210303-WA0017..pptx,coding stuff in cfloraaluoch3
 
What do you need to know before going in to Sri Lankan IT industry
What do you need to know before going in to Sri Lankan IT industryWhat do you need to know before going in to Sri Lankan IT industry
What do you need to know before going in to Sri Lankan IT industryAndun Sameera
 
Priyanka Singh_testing_resume
Priyanka Singh_testing_resumePriyanka Singh_testing_resume
Priyanka Singh_testing_resumePriyanka Singh
 
1. object oriented concepts & principles
1. object oriented concepts & principles 1. object oriented concepts & principles
1. object oriented concepts & principles poonam bora
 
Ehab wafik CV(1)
Ehab wafik CV(1)Ehab wafik CV(1)
Ehab wafik CV(1)Ehab Wafik
 
Se chapter 1,2,3 2 mark qa
Se chapter 1,2,3   2 mark  qaSe chapter 1,2,3   2 mark  qa
Se chapter 1,2,3 2 mark qaAruna M
 
127801976 mobile-shop-management-system-documentation
127801976 mobile-shop-management-system-documentation127801976 mobile-shop-management-system-documentation
127801976 mobile-shop-management-system-documentationNitesh Kumar
 
Formal Definition of Collaborative Spaces
Formal Definition of Collaborative SpacesFormal Definition of Collaborative Spaces
Formal Definition of Collaborative SpacesJean Vanderdonckt
 
Yii Framework in the RAD context + Mashup demo built on YII
Yii Framework in the RAD context + Mashup demo built on YIIYii Framework in the RAD context + Mashup demo built on YII
Yii Framework in the RAD context + Mashup demo built on YIIGeorge-Leonard Chetreanu
 

Similar to Object oriented software_engg (20)

Spm file33
Spm file33Spm file33
Spm file33
 
Chapter 2
Chapter 2Chapter 2
Chapter 2
 
PLA and the SC 2002-04-15
PLA and the SC 2002-04-15PLA and the SC 2002-04-15
PLA and the SC 2002-04-15
 
software engineering
software engineering software engineering
software engineering
 
Tech leaders guide to effective building of machine learning products
Tech leaders guide to effective building of machine learning productsTech leaders guide to effective building of machine learning products
Tech leaders guide to effective building of machine learning products
 
The Art and Science of Requirements Gathering
The Art and Science of Requirements GatheringThe Art and Science of Requirements Gathering
The Art and Science of Requirements Gathering
 
Over view of software artitecture
Over view of software artitectureOver view of software artitecture
Over view of software artitecture
 
Raju_Resume
Raju_ResumeRaju_Resume
Raju_Resume
 
DOC-20210303-WA0017..pptx,coding stuff in c
DOC-20210303-WA0017..pptx,coding stuff in cDOC-20210303-WA0017..pptx,coding stuff in c
DOC-20210303-WA0017..pptx,coding stuff in c
 
What do you need to know before going in to Sri Lankan IT industry
What do you need to know before going in to Sri Lankan IT industryWhat do you need to know before going in to Sri Lankan IT industry
What do you need to know before going in to Sri Lankan IT industry
 
Priyanka Singh_testing_resume
Priyanka Singh_testing_resumePriyanka Singh_testing_resume
Priyanka Singh_testing_resume
 
B Fn As
B Fn AsB Fn As
B Fn As
 
1. object oriented concepts & principles
1. object oriented concepts & principles 1. object oriented concepts & principles
1. object oriented concepts & principles
 
SDLC
SDLCSDLC
SDLC
 
Ehab wafik CV(1)
Ehab wafik CV(1)Ehab wafik CV(1)
Ehab wafik CV(1)
 
Documentation
DocumentationDocumentation
Documentation
 
Se chapter 1,2,3 2 mark qa
Se chapter 1,2,3   2 mark  qaSe chapter 1,2,3   2 mark  qa
Se chapter 1,2,3 2 mark qa
 
127801976 mobile-shop-management-system-documentation
127801976 mobile-shop-management-system-documentation127801976 mobile-shop-management-system-documentation
127801976 mobile-shop-management-system-documentation
 
Formal Definition of Collaborative Spaces
Formal Definition of Collaborative SpacesFormal Definition of Collaborative Spaces
Formal Definition of Collaborative Spaces
 
Yii Framework in the RAD context + Mashup demo built on YII
Yii Framework in the RAD context + Mashup demo built on YIIYii Framework in the RAD context + Mashup demo built on YII
Yii Framework in the RAD context + Mashup demo built on YII
 

Recently uploaded

Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf31events.com
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfFerryKemperman
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Rob Geurden
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmSujith Sukumaran
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based projectAnoyGreter
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentationvaddepallysandeep122
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZABSYZ Inc
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Angel Borroy López
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfYashikaSharma391629
 

Recently uploaded (20)

Sending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdfSending Calendar Invites on SES and Calendarsnack.pdf
Sending Calendar Invites on SES and Calendarsnack.pdf
 
Introduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdfIntroduction Computer Science - Software Design.pdf
Introduction Computer Science - Software Design.pdf
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...Simplifying Microservices & Apps - The art of effortless development - Meetup...
Simplifying Microservices & Apps - The art of effortless development - Meetup...
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
Intelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalmIntelligent Home Wi-Fi Solutions | ThinkPalm
Intelligent Home Wi-Fi Solutions | ThinkPalm
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
MYjobs Presentation Django-based project
MYjobs Presentation Django-based projectMYjobs Presentation Django-based project
MYjobs Presentation Django-based project
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
PREDICTING RIVER WATER QUALITY ppt presentation
PREDICTING  RIVER  WATER QUALITY  ppt presentationPREDICTING  RIVER  WATER QUALITY  ppt presentation
PREDICTING RIVER WATER QUALITY ppt presentation
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
Salesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZSalesforce Implementation Services PPT By ABSYZ
Salesforce Implementation Services PPT By ABSYZ
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
Alfresco TTL#157 - Troubleshooting Made Easy: Deciphering Alfresco mTLS Confi...
 
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdfInnovate and Collaborate- Harnessing the Power of Open Source Software.pdf
Innovate and Collaborate- Harnessing the Power of Open Source Software.pdf
 

Object oriented software_engg

  • 1. O B J E C T - O R I E N T E D S O F T W A R E E N G I N E E R I N G B Y T E A M 0 4 A N N I E B E N I T H A T H O M A S D U R G A P O O J I T H A B O D D U L U R I
  • 2. INDEX TOPIC SLIDE NO INTRODUCTION 1 MAIN FEATURES 3 REAL WORLD EXAMPLES 11 SWOT: ADV/BENEFITS 16 SWOT: DISADVANTAGES 19 OPTIONAL OOSE TOOLS 21 REFERNCES 24 CONCLUSION 26
  • 3. I N T R O D U C T I O N
  • 4. INTRODUCTION • Object Oriented Software Engineering(OOSE) also known as Objectory is a method of object- oriented development with the specific aim to fit the development of large, real-time systems • OOSE is developed by Ivar Jacobson in 1992. • It is the first object-oriented design methodology to employ use cases to drive software design. • It follows the concept of modern UML http://cs-exhibitions.uni-klu.ac.at/index.php?id=448 1
  • 5. INTRODUCTION • In OOSE , the software developer identifies and organizes the application in terms of object-oriented concepts , prior to their final representation in any specific programming language or software tools. • It includes requirements, an analysis, a design , an implementation and a testing model. • Object Oriented techniques make it possible for us to handle large systems, change and reuse them etc. between customer and developer http://cs-exhibitions.uni-klu.ac.at/index.php?id=448 2
  • 6. M A I N F E A T U R E S / P H A S E S C H A R A C T E R S T I C S
  • 7. PHASE – I - REQUIREMENTS PHASE • REQUIREMENTS PHASE – uses a natural language description of what the system should do to build three models.  The use case model – describes interaction between actors and the system. The domain model -- describes objects, classes and associations between objects in the domain. The user-interface descriptions – contain mock-ups of various inteface between actors and the system https://books.google.com/books?id=p9gRBwAAQBAJ&pg 3
  • 8. PHASE - II - ANALYSIS PHASE • The ANALYSIS PHASE – produces the analysis model and a set of subsystem descriptions. The analysis model is a refinement of the domain object model produced in the requirements phase.  Fulfills all its requirements Is Structured to be robust . http://www.iscn.at/select_newspaper/object/rational.html 4
  • 9. PHASE –III - IMPLEMENTATION • The system is realized through implementation producing the sources(source-code files, header files etc.) that will result in an executable system. • Implementation model consists of modules structured into implementation packages. • It Includes testing the separate classes or packages. http://www.iscn.at/select_newspaper/object/rational.html 5
  • 10. PHASE – IV - TEST • Test verifies the entire system, testing each use case separately to verify that its participating classes work together correctly. • Then testing the system as a whole begins with use-case descriptions as input to this test. • At the end of the test, the system can be delivered. http://www.iscn.at/select_newspaper/object/rational.html 6
  • 11. FEATURES - USE CASE DRIVEN DEVELOPMENT • Objectory is a use-case driven approach. Use cases play a role in each of the four engineering process components : requirements, analysis, design and test. • Use cases have other roles as well: – They can be used as a basis for iterative development – They form a foundation for what is described in user manuals. – They may be used as ordering units . A customer can get a system configured with particular mix of use cases. http://www.iscn.at/select_newspaper/object/rational.html 7
  • 12. FEATURES – CONTROLLED ITERATIVE DEVELOPMENT • The Objectory iterative approach is generally superior to a linear or waterfall approach for many reasons, – It lets you take into account changing requirements. – Integration is not one” big bang” at the end elements are integrated progressively. – It lets you migrate risks earlier because integration is generally the only time risks are discovered or addressed. – It provides management with a way to do tactical changes to the product http://www.iscn.at/select_newspaper/object/rational.html 8
  • 13. FEATURES – REQUIREMENTS MANAGEMENT • The two key elements behind a controlled iterative process are requirements management and change control • The benefits of effective requirements management include: – Better control of complex projects. – Improved software quality and customer satisfaction. – Reduced project costs and delays. – Improved team communication. http://www.iscn.at/select_newspaper/object/rational.html 9
  • 14. FEATURES – COMPONENT BASED DEVELOPMENT – Objectory supports component-based development in several ways. • The iterative approach allows to progressively identify components, decide which one to develop, which one to reuse, which one to buy. • The focus on software architecture allows to articulate the structure: the components and the ways they integrate: the fundamental mechanisms and patterns by which they interact. • Concepts such as packages, subsystems, layers are used during analysis and design to organize components, specify interfaces. • Testing is organized around components first, then gradually larger set of integrated components. http://www.iscn.at/select_newspaper/object/rational.html 10
  • 15. R E A L W O R L D E X A M P L E S
  • 16. CASE STUDIES SL.No Project Name and Project web site and address Name of company or organization Usage 1 www.gmail.co m GMAIL ENCAPSULATION – Every time you log into your email account your password, would probably be retrieved in an encyrpted form, verified and only then you are given access. You do not have any control, over how the password is verified, and this keeps it safe from misuse. https://mail.google.com/mail 11
  • 17. CASE STUDIES Sl.No Project Name or website address Name of the organization Usage II http://netbeans org/ NETBEANS NetBeans is a software development p atform written in Java. The NetBeans Platform allows applications to be developed from a set of modular softwa re components ca led modules. http://netbeans.org/ 12
  • 18. CASE STUDIES Sl No Project Name or website Name of the organization Usage III https://eclips e.org ECLIPSE Eclipse is an integrated development environment (ID E) used in computer programming, and is the most widely used Java IDE. It contains a base workspace and an extensible plug- in system for customizing the environment. Eclipse is written mostly in Java https://eclipse.org 13
  • 19. CASE STUDIES Sl.No Project Name or website Name of the organization Usage IV https://www. visualstudio. com/ Microsoft Visual Studio Microsoft Visual Studio is an integrated development environment ( IDE) from Microsof t. It is used to develop com uter programs for Microsoft Windows, https://www.visualstudio.com/ 14
  • 20. CASE STUDIES Sl No Project Name or website Name of the organization Usage V https://www.fa cebook.com/ FACEBOOK Facebook is both a consumer of and contributor to free and open source software. Facebook also contributes to other opensource projects such as Java, Javascript etc https://www.facebook.com/ 15
  • 21. S W O T : A D V/ B E N E F I T S
  • 22. BENEFITS Sl.No Advantage Brief Explanation I Reduced Maintenance The primary goal of oriented development is the assurance that the system will enjoy a longer life while having far maintenance costs. Because most of processes within the system are encapsulated, the behaviors may be reused and incorporated into new behaviors. II Real- World Modeling Object-oriented system tend to model the real world in a more complete fashion than do traditional methods. Objects are organized into classes of objects, and objects are associated with behaviors. The model is based on objects, rather than on data and processing. http://www.dba-oracle.com/t_object_oriented_approach.htm 16
  • 23. BENEFITS Sl.No Advantage Brief Explanation III Improved Reliability and Flexibility Object-oriented system promise to be far more reliable than traditional systems, primarily because new behaviors can be "built" from existing objects. IV High Code Reusability When a new object is created, it will automatically inherit the data attributes and characteristics of the class from which it was spawned. The new object will also inherit the data and behaviors from all superclasses in which it participates. http://www.dba-oracle.com/t_object_oriented_approach.htm 17
  • 24. BENEFITS Sl.No Advantages Brief Explanation V Scalable OO applications are more scalable then their structured programming roots. makes it easy to replace old and aging with faster algorithms and newer technology. VI Maintainable OOP methods make code more maintainable. Identifying the source of errors becomes easier because objects are self-contained http://codebetter.com/raymondlewallen/2005/02/08/advantages-of-an-object-oriented- approach-for-new-programmers/ 18
  • 25. S W O T : W E A K N E S S / P R O B L E M S
  • 26. DISADVANTAGES SL.No Disadvantages Brief Explanation I Functionality Functionality is restricted within objects. This may pose a problem for systems which are intrinsically procedural or computational in nature. II Identification It cannot identify which objects would generate an optimal system design. III Communications The object-oriented models do not easily show the communications between the objects in the system. https://www.saylor.org/site/wp-content/uploads/2013/02/CS101-2.1.2- AdvantagesDisadvantagesOfOOP-FINAL.pdf 19
  • 27. DISADVANTAGES SL.No Disadvantages Brief Explanation IV Steep-learning curve The thought process involved in object-oriented programming may not be natural for some people, and it can take time to get used to it. It is complex to create programs based on interaction of objects. V Larger Program Size Object-oriented programs typically involve more lines of code than procedural programs. https://www.saylor.org/site/wp-content/uploads/2013/02/CS101-2.1.2- AdvantagesDisadvantagesOfOOP-FINAL.pdf 20
  • 28. ( O P T I O N A L ) O B J E C T O R Y T O O L S
  • 29. OBJECTORY TOOLS SL.No Open Source Tool Web Address Evaluation I Netbeans netbeans.org / NetBeans has of the briefest startup times of any of the IDEs. Configuration is minimal; up and running in a remarkably short time. And debugging in NetBeans was as easy as it gets. In short, NetBeans PHP just worked - which is just what you want netbeans.org/ 21
  • 30. OBJECTORY TOOLS SL.No Open Source Tools Web Address Evaluation II Eclipse https://eclipse.org/ Very open source. Allows users to create plug ins for it. It's one of those software packages where if you can think it, you can probably it, or program a way to do like most open source software III Microsoft Visual Studio https://www.visualstu dio.com/ Visual Studio is arguable the best Software Development IDE in the planet, it has a of features from code completion, source control, customization options, tools and extensions, to a pletora of software project templates you can chose from such as Web Application, Windows Desktop Applications etc. https://eclipse.org/ https://www.visualstudio.com/ 22
  • 31. OBJECTORY TOOLS SL.No Open Source Tools Web Address Evaluation IV Jenkins https://jenkins.io/index html Creating new builds is easy; Deploying existing builds is easy as one click; and perhaps most importantly, debugging builds is easy. V Gradle https://gradle.org/ Unlike similar build tools in JVM ecosystem, Gradle does use XML but rather a flexible DSL based on the Groovy programming language. This leads to a short and clean build configuration files. In addition, Gradle is the de facto build tool for Android which means it has a wide adoption 23 https://jenkins.io/index.html https://gradle.org/
  • 33. REFERENCES Open Source Tool Web Address to download Brief Explanation OBJECT-ORIENTED SOFTWARE ENGINEERING - A use case driven approach https://www.ivarjacobson.com publications/books/object- oriented-software- engineering-1992 • Objectory which is the first commercially available comprehensive object-oriented process for developing large- scale industrial systems. • The approach takes a global view of system development and focuses on minimizing the systems life cycle cost. Object-Oriented Software Engineering Using UML, Patterns, and Java https://www.pearsonhighered.c om/program/Bruegge-Object- Oriented-Software- Engineering-Using-UML- Patterns-and-Java-3rd- Edition/PGM58934.html • An object-oriented modeling approach covers techniques in a step-by-step manner, from requirements elicitation to testing, enabling students to grasp the complexity of object-oriented modeling • State-of-the-art coverage of Object-Oriented software engineering shows students how to use the most practical aspects of software engineering including the basic elements of UML (Unified Modeling Language) 24
  • 34. REFERENCES Open Source Tool Web address Brief Explanation Object Oriented Analysis and Design http://www.umsl.edu/~sauterv analysis/488_f01_papers/quillin. htm Most new client/server application development tools emphasize object-oriented features. The introduction of the object-oriented approach in the 1970s marked a radical change in the methodology and approach of large-scale application development. The Rational Objectory Process - A UML-based Software Engineering Process http://www.iscn.at/select_news paper/object/rational.html This paper presents an overview of the Rational Objectory Process. Rational Objectory Process is a full lifecycle software engineering process bringing Unified Modeling Language (UML) best practices to the fingertips of each software developer. 25 http://www.umsl.edu/~sauterv/analysis/488_f01_papers/quillin.htm http://www.iscn.at/select_newspaper/object/rational.html
  • 36. CONCLUSION • Objectory CASE tools provides comprehensive support to the software development process. • Quality assurance is an integral part of this process through templates for guidelines and many checkpoints to check the quality of artifacts to be delivered in each phase. • The Objectory is already linked with a number of other tools, such as tools for visual modelling and requirements management. Objectory could be improved by a linkage to quality assessment tools that supports. https://books.google.com/books?id=k9Oma5M_Yt8C&pg=PA485&lpg 26
  • 37. CONCLUSION • Should companies and businesses invest financial and human resources, deploy and use the selected topic/technology/methodology? – YES – The framework of objectory is a design technique called design with building blocks. With the building block technique, a system is viewed as a system of connecting blocks with each block representing a system service. – An object-oriented model provides a consistent framework: it makes small terminology inconsistencies in the original process noticeable and draws attention to missing information. – Increased Quality –IF 90% of a new application consists of a proven , existing components, then only the remaining 10% of the code has to be tested from scratch. That observation implies an order-of-magnitude reduction in defects. 27
  • 38. CONCLUSION • Should we (CS/IS Department) recommend selected advanced topic/technology for active use in CS/IS curricula, for example, as a separate DIS or Advanced Topics course? – YES – Objectory methodology should be used or should be introduced as a course – The Use cases provided at the starting point at the beginning of the semester helped students to gain some initial understanding of the intended functionality. – Students would feel OMTool to be more useful that the languages already being used. – OMTool is closer match to C++. – Objectory is a very open –ended and demanding methodology in the sense that it requires much more though and experience than other methodologies, hence giving more knowledge on the same. https://books.google.com/books?id=Bd67Y1NkPWkC&pg 28