SlideShare a Scribd company logo
4
Most read
7
Most read
11
Most read
Reusability
Subject: Object Oriented Analysis & Design
Teacher: Inam Ul Haq
University of Education Okara
Inam.bth@gmail.com
Lecture 5
OOA/D, University of Educatoin Okara 1
Who will be responsible for creating new
instance of class?
• The creation of objects is one of the most
common activities in an object-oriented
system. Consequently, it is useful to have a
general principle for the assignment
of creation responsibilities. Assigned well, the
design can support low coupling,
increased clarity, encapsulation, and reusability.
OOA/D, University of Educatoin Okara 2
Reusability
• Software development process called frameworks
that promotes reuse.
• Where feasible, software engineers should avoid
re-developing software
– software engineers should also make their designs
reusable.
OOA/D, University of Educatoin Okara 3
Reuse Practiced by Software Engineers
1. Reuse of expertise
Software engineers who have many years of experience working on projects
can often save considerable time when it comes to
developing new systems because they do not need to re-think many issues
2. Reuse of standard designs and algorithms
There are thousands of algorithms and other aspects of designs described in
various books, standards documents
and articles.
OOA/D, University of Educatoin Okara 4
Reuse Practiced by Software Engineers (Contt.)
3. Reuse of libraries of classes or procedures, or of powerful
commands built into languages and operating systems
Libraries and commands represent implemented algorithms, data structures
and other facilities.
Applications like spreadsheets, word processors and database
programs have built-in languages with commands for such things as sorting,
searching and displaying dialogs. Using these languages, which are often
called fourth-generation languages, is an important form of reuse.
OOA/D, University of Educatoin Okara 5
Reuse Practiced by Software Engineers (Contt.)
4. Reuse of frameworks
Frameworks are libraries containing the structure of
entire applications or subsystems. To complete the
application or subsystem,
you merely need to fill in certain missing details. A
framework can be written
in any programming language and can vary considerably
in sophistication and
detail. We will discuss them in more detail in Section 3.3.
OOA/D, University of Educatoin Okara 6
Reuse Practiced by Software Engineers (Contt.)
5. Reuse of complete applications
• You can take complete applications and add a
small amount of extra software that makes the applications behave in special ways
the client wants. For example, you might take a standard email application and add
a feature that would always update its ‘address book’ with data from the
company’s employee and client databases. This type of reuse is often called reuse
of commercial off-the-shelf or COTS software, and the extra code written is often
called glue code. It is common to write the glue code using scripting languages
which run using an interpreter.
• The elements reused in the latter three types of reuse are often collectively called
components.
OOA/D, University of Educatoin Okara 7
Framework (for reusability)
• a framework is reusable software that
implements a generic solution to a
generalized problem. It provides common
facilities applicable to different
application programs.
OOA/D, University of Educatoin Okara 8
Example of framework
• A framework for payroll management
Most businesses have software that
includes a payroll module. The rules and features needed in a payroll system
will differ considerably, depending on the type of business, the local
jurisdiction and other software the company uses. However, basic elements
such as making regular payments, and computing taxes and other deductions,
will always exist. Although it is possible to purchase complete payroll
applications, many businesses are of sufficient complexity that such
applications do not implement all the needed features and rules. Instead of
developing a custom payroll package from scratch, several businesses could
adapt a common framework to their individual needs.
OOA/D, University of Educatoin Okara 9
Example of framework
• A framework for e-commerce web sites
Most e-commerce web sites are built on the same general
model. There is a list of products to pick from; when an
item is selected it is added to a shopping cart; the site then
prompts for personal information and arranges for secure
payment.
Individual web sites will want to have special features to
differentiate themselves in the market. However,
developers could save a lot of work if they had a framework
that implemented the above general model.
OOA/D, University of Educatoin Okara 10
Framework of E-commerce
OOA/D, University of Educatoin Okara 11
Framework of E-commerce
OOA/D, University of Educatoin Okara 12
Learning Assignment
• Explore 10 advantages and 10 drawbacks
• Explore 10 software which cannot use
reusability
• Explore 10 software which can use reusability
• Select the best software development model
that can employ reusability
• Teacher will create 2 groups of testing
OOA/D, University of Educatoin Okara 13

More Related Content

What's hot (20)

PPTX
Reusibility vs Extensibility in OOAD
Shivani Kapoor
 
PDF
The Object Model
yndaravind
 
PPTX
object oriented Programming ppt
Nitesh Dubey
 
PDF
Collaboration diagram- UML diagram
Ramakant Soni
 
PDF
Software requirements
Dr. Loganathan R
 
PPTX
Capturing System Behaviour
university of education,Lahore
 
PPT
Unit 1 - Introduction to Software Engineering.ppt
DrTThendralCompSci
 
PPTX
Interactive debugging system
Florence priyadarshini
 
PPT
Memory management
Vishal Singh
 
PPTX
Overview of UML Diagrams
Manish Kumar
 
PPTX
Distributed system architecture
Yisal Khan
 
PPT
Basic concepts of object oriented programming
Sachin Sharma
 
PPTX
Component and Deployment Diagram - Brief Overview
Rajiv Kumar
 
PPT
Analysis modeling & scenario based modeling
Benazir Fathima
 
PDF
Agile model
DivyaStephen3
 
PPTX
Unified process model
RyndaMaala
 
PPTX
Semantic net in AI
ShahDhruv21
 
PPT
Object Oriented Design
Sudarsun Santhiappan
 
PPT
REQUIREMENT ENGINEERING
Saqib Raza
 
PDF
Polymorphism in oop
MustafaIbrahimy
 
Reusibility vs Extensibility in OOAD
Shivani Kapoor
 
The Object Model
yndaravind
 
object oriented Programming ppt
Nitesh Dubey
 
Collaboration diagram- UML diagram
Ramakant Soni
 
Software requirements
Dr. Loganathan R
 
Capturing System Behaviour
university of education,Lahore
 
Unit 1 - Introduction to Software Engineering.ppt
DrTThendralCompSci
 
Interactive debugging system
Florence priyadarshini
 
Memory management
Vishal Singh
 
Overview of UML Diagrams
Manish Kumar
 
Distributed system architecture
Yisal Khan
 
Basic concepts of object oriented programming
Sachin Sharma
 
Component and Deployment Diagram - Brief Overview
Rajiv Kumar
 
Analysis modeling & scenario based modeling
Benazir Fathima
 
Agile model
DivyaStephen3
 
Unified process model
RyndaMaala
 
Semantic net in AI
ShahDhruv21
 
Object Oriented Design
Sudarsun Santhiappan
 
REQUIREMENT ENGINEERING
Saqib Raza
 
Polymorphism in oop
MustafaIbrahimy
 

Similar to Reusability (20)

PDF
Software Development Standard Operating Procedure
rupeshchanchal
 
PDF
Unit 5- Cloud Applications.pdf
MaryJacob24
 
PDF
Download the entire Software Engineering 10th Edition Sommerville Solutions M...
satzercintai40
 
PDF
Software Engineering 10th Edition Sommerville Solutions Manual
aishahbatis
 
PPT
Software engineering introduction
Vishal Singh
 
PDF
Lect7
Sulman Ahmed
 
PDF
Lect7
Sulman Ahmed
 
PPTX
ehcahce using spring boot application.pptx
tararamgoyal1178
 
PDF
Software Engineering 10th Edition Sommerville Solutions Manual
amatezohny
 
PPTX
fuzzy search using spring boot and ibmi db2.pptx
tararamgoyal1178
 
PPTX
Introduction to Software Engineering
Saqib Raza
 
PDF
Get Software Engineering 10th Edition Sommerville Solutions Manual free all c...
lavelyyurli
 
PDF
Software Engineering 10th Edition Sommerville Solutions Manual
xjkeednwdn8294
 
PDF
Download full ebook of a instant download pdf
aminosedades60
 
PDF
The LAST Coding Coding Course you Will Ever Need
AFFFILIATE
 
PDF
Feeling Overwhelmed & Uninspired? Become Teacher 2.0. Master Agile Teaching f...
AFFFILIATE
 
PPT
Quality Software Development
Srinivasan Hariharan
 
PPT
Agile Software Development in Bachelor of Computer Applications.ppt
JASVEERSINGHVU21CSCI
 
PPTX
Software engineering concept reengineeri
SanaMateen7
 
PDF
Enterprise Architecture Verification Validation
William Francis
 
Software Development Standard Operating Procedure
rupeshchanchal
 
Unit 5- Cloud Applications.pdf
MaryJacob24
 
Download the entire Software Engineering 10th Edition Sommerville Solutions M...
satzercintai40
 
Software Engineering 10th Edition Sommerville Solutions Manual
aishahbatis
 
Software engineering introduction
Vishal Singh
 
ehcahce using spring boot application.pptx
tararamgoyal1178
 
Software Engineering 10th Edition Sommerville Solutions Manual
amatezohny
 
fuzzy search using spring boot and ibmi db2.pptx
tararamgoyal1178
 
Introduction to Software Engineering
Saqib Raza
 
Get Software Engineering 10th Edition Sommerville Solutions Manual free all c...
lavelyyurli
 
Software Engineering 10th Edition Sommerville Solutions Manual
xjkeednwdn8294
 
Download full ebook of a instant download pdf
aminosedades60
 
The LAST Coding Coding Course you Will Ever Need
AFFFILIATE
 
Feeling Overwhelmed & Uninspired? Become Teacher 2.0. Master Agile Teaching f...
AFFFILIATE
 
Quality Software Development
Srinivasan Hariharan
 
Agile Software Development in Bachelor of Computer Applications.ppt
JASVEERSINGHVU21CSCI
 
Software engineering concept reengineeri
SanaMateen7
 
Enterprise Architecture Verification Validation
William Francis
 
Ad

More from university of education,Lahore (20)

PPT
Activites and Time Planning
university of education,Lahore
 
PPT
Classical Encryption Techniques
university of education,Lahore
 
PPT
Activites and Time Planning
university of education,Lahore
 
PPTX
OSI Security Architecture
university of education,Lahore
 
PPTX
Network Security Terminologies
university of education,Lahore
 
PPT
Project Scheduling, Planning and Risk Management
university of education,Lahore
 
PPTX
Software Testing and Debugging
university of education,Lahore
 
PPTX
ePayment Methods
university of education,Lahore
 
PPT
Enterprise Application Integration
university of education,Lahore
 
PPTX
Microsoft Project
university of education,Lahore
 
PPTX
Itertaive Process Development
university of education,Lahore
 
PPTX
Computer Aided Software Engineering Nayab Awan
university of education,Lahore
 
PPTX
Lect 2 assessing the technology landscape
university of education,Lahore
 
PPTX
system level requirements gathering and analysis
university of education,Lahore
 
Activites and Time Planning
university of education,Lahore
 
Classical Encryption Techniques
university of education,Lahore
 
Activites and Time Planning
university of education,Lahore
 
OSI Security Architecture
university of education,Lahore
 
Network Security Terminologies
university of education,Lahore
 
Project Scheduling, Planning and Risk Management
university of education,Lahore
 
Software Testing and Debugging
university of education,Lahore
 
Enterprise Application Integration
university of education,Lahore
 
Itertaive Process Development
university of education,Lahore
 
Computer Aided Software Engineering Nayab Awan
university of education,Lahore
 
Lect 2 assessing the technology landscape
university of education,Lahore
 
system level requirements gathering and analysis
university of education,Lahore
 
Ad

Recently uploaded (20)

DOCX
Modul Ajar Deep Learning Bahasa Inggris Kelas 11 Terbaru 2025
wahyurestu63
 
PPTX
How to Track Skills & Contracts Using Odoo 18 Employee
Celine George
 
PPTX
TOP 10 AI TOOLS YOU MUST LEARN TO SURVIVE IN 2025 AND ABOVE
digilearnings.com
 
PPTX
Applications of matrices In Real Life_20250724_091307_0000.pptx
gehlotkrish03
 
PDF
The Minister of Tourism, Culture and Creative Arts, Abla Dzifa Gomashie has e...
nservice241
 
PPTX
Digital Professionalism and Interpersonal Competence
rutvikgediya1
 
PPTX
Basics and rules of probability with real-life uses
ravatkaran694
 
PPTX
20250924 Navigating the Future: How to tell the difference between an emergen...
McGuinness Institute
 
PPTX
How to Close Subscription in Odoo 18 - Odoo Slides
Celine George
 
PPTX
Continental Accounting in Odoo 18 - Odoo Slides
Celine George
 
PDF
Virat Kohli- the Pride of Indian cricket
kushpar147
 
PDF
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...
Nguyen Thanh Tu Collection
 
PDF
Antianginal agents, Definition, Classification, MOA.pdf
Prerana Jadhav
 
PPTX
Sonnet 130_ My Mistress’ Eyes Are Nothing Like the Sun By William Shakespear...
DhatriParmar
 
PPTX
Applied-Statistics-1.pptx hardiba zalaaa
hardizala899
 
PDF
TOP 10 AI TOOLS YOU MUST LEARN TO SURVIVE IN 2025 AND ABOVE
digilearnings.com
 
PPTX
ENGLISH 8 WEEK 3 Q1 - Analyzing the linguistic, historical, andor biographica...
OliverOllet
 
PPTX
HEALTH CARE DELIVERY SYSTEM - UNIT 2 - GNM 3RD YEAR.pptx
Priyanshu Anand
 
PDF
Module 2: Public Health History [Tutorial Slides]
JonathanHallett4
 
PPTX
Dakar Framework Education For All- 2000(Act)
santoshmohalik1
 
Modul Ajar Deep Learning Bahasa Inggris Kelas 11 Terbaru 2025
wahyurestu63
 
How to Track Skills & Contracts Using Odoo 18 Employee
Celine George
 
TOP 10 AI TOOLS YOU MUST LEARN TO SURVIVE IN 2025 AND ABOVE
digilearnings.com
 
Applications of matrices In Real Life_20250724_091307_0000.pptx
gehlotkrish03
 
The Minister of Tourism, Culture and Creative Arts, Abla Dzifa Gomashie has e...
nservice241
 
Digital Professionalism and Interpersonal Competence
rutvikgediya1
 
Basics and rules of probability with real-life uses
ravatkaran694
 
20250924 Navigating the Future: How to tell the difference between an emergen...
McGuinness Institute
 
How to Close Subscription in Odoo 18 - Odoo Slides
Celine George
 
Continental Accounting in Odoo 18 - Odoo Slides
Celine George
 
Virat Kohli- the Pride of Indian cricket
kushpar147
 
BÀI TẬP TEST BỔ TRỢ THEO TỪNG CHỦ ĐỀ CỦA TỪNG UNIT KÈM BÀI TẬP NGHE - TIẾNG A...
Nguyen Thanh Tu Collection
 
Antianginal agents, Definition, Classification, MOA.pdf
Prerana Jadhav
 
Sonnet 130_ My Mistress’ Eyes Are Nothing Like the Sun By William Shakespear...
DhatriParmar
 
Applied-Statistics-1.pptx hardiba zalaaa
hardizala899
 
TOP 10 AI TOOLS YOU MUST LEARN TO SURVIVE IN 2025 AND ABOVE
digilearnings.com
 
ENGLISH 8 WEEK 3 Q1 - Analyzing the linguistic, historical, andor biographica...
OliverOllet
 
HEALTH CARE DELIVERY SYSTEM - UNIT 2 - GNM 3RD YEAR.pptx
Priyanshu Anand
 
Module 2: Public Health History [Tutorial Slides]
JonathanHallett4
 
Dakar Framework Education For All- 2000(Act)
santoshmohalik1
 

Reusability

  • 1. Reusability Subject: Object Oriented Analysis & Design Teacher: Inam Ul Haq University of Education Okara [email protected] Lecture 5 OOA/D, University of Educatoin Okara 1
  • 2. Who will be responsible for creating new instance of class? • The creation of objects is one of the most common activities in an object-oriented system. Consequently, it is useful to have a general principle for the assignment of creation responsibilities. Assigned well, the design can support low coupling, increased clarity, encapsulation, and reusability. OOA/D, University of Educatoin Okara 2
  • 3. Reusability • Software development process called frameworks that promotes reuse. • Where feasible, software engineers should avoid re-developing software – software engineers should also make their designs reusable. OOA/D, University of Educatoin Okara 3
  • 4. Reuse Practiced by Software Engineers 1. Reuse of expertise Software engineers who have many years of experience working on projects can often save considerable time when it comes to developing new systems because they do not need to re-think many issues 2. Reuse of standard designs and algorithms There are thousands of algorithms and other aspects of designs described in various books, standards documents and articles. OOA/D, University of Educatoin Okara 4
  • 5. Reuse Practiced by Software Engineers (Contt.) 3. Reuse of libraries of classes or procedures, or of powerful commands built into languages and operating systems Libraries and commands represent implemented algorithms, data structures and other facilities. Applications like spreadsheets, word processors and database programs have built-in languages with commands for such things as sorting, searching and displaying dialogs. Using these languages, which are often called fourth-generation languages, is an important form of reuse. OOA/D, University of Educatoin Okara 5
  • 6. Reuse Practiced by Software Engineers (Contt.) 4. Reuse of frameworks Frameworks are libraries containing the structure of entire applications or subsystems. To complete the application or subsystem, you merely need to fill in certain missing details. A framework can be written in any programming language and can vary considerably in sophistication and detail. We will discuss them in more detail in Section 3.3. OOA/D, University of Educatoin Okara 6
  • 7. Reuse Practiced by Software Engineers (Contt.) 5. Reuse of complete applications • You can take complete applications and add a small amount of extra software that makes the applications behave in special ways the client wants. For example, you might take a standard email application and add a feature that would always update its ‘address book’ with data from the company’s employee and client databases. This type of reuse is often called reuse of commercial off-the-shelf or COTS software, and the extra code written is often called glue code. It is common to write the glue code using scripting languages which run using an interpreter. • The elements reused in the latter three types of reuse are often collectively called components. OOA/D, University of Educatoin Okara 7
  • 8. Framework (for reusability) • a framework is reusable software that implements a generic solution to a generalized problem. It provides common facilities applicable to different application programs. OOA/D, University of Educatoin Okara 8
  • 9. Example of framework • A framework for payroll management Most businesses have software that includes a payroll module. The rules and features needed in a payroll system will differ considerably, depending on the type of business, the local jurisdiction and other software the company uses. However, basic elements such as making regular payments, and computing taxes and other deductions, will always exist. Although it is possible to purchase complete payroll applications, many businesses are of sufficient complexity that such applications do not implement all the needed features and rules. Instead of developing a custom payroll package from scratch, several businesses could adapt a common framework to their individual needs. OOA/D, University of Educatoin Okara 9
  • 10. Example of framework • A framework for e-commerce web sites Most e-commerce web sites are built on the same general model. There is a list of products to pick from; when an item is selected it is added to a shopping cart; the site then prompts for personal information and arranges for secure payment. Individual web sites will want to have special features to differentiate themselves in the market. However, developers could save a lot of work if they had a framework that implemented the above general model. OOA/D, University of Educatoin Okara 10
  • 11. Framework of E-commerce OOA/D, University of Educatoin Okara 11
  • 12. Framework of E-commerce OOA/D, University of Educatoin Okara 12
  • 13. Learning Assignment • Explore 10 advantages and 10 drawbacks • Explore 10 software which cannot use reusability • Explore 10 software which can use reusability • Select the best software development model that can employ reusability • Teacher will create 2 groups of testing OOA/D, University of Educatoin Okara 13