SlideShare a Scribd company logo
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

Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling
Benazir Fathima
 
Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12koolkampus
 
Software requirement specification
Software requirement specificationSoftware requirement specification
Software requirement specification
shiprashakya2
 
software engineering
software engineeringsoftware engineering
software engineering
Azad public school
 
V model presentation
V model presentationV model presentation
V model presentation
Niat Murad
 
Class based modeling
Class based modelingClass based modeling
Class based modeling
Md. Shafiuzzaman Hira
 
Software Engineering unit 2
Software Engineering unit 2Software Engineering unit 2
Software Engineering unit 2
Abhimanyu Mishra
 
Architectural Design in Software Engineering SE10
Architectural Design in Software Engineering SE10Architectural Design in Software Engineering SE10
Architectural Design in Software Engineering SE10koolkampus
 
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMI
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMIEvolving role of Software,Legacy software,CASE tools,Process Models,CMMI
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMI
nimmik4u
 
SRS(software requirement specification)
SRS(software requirement specification)SRS(software requirement specification)
SRS(software requirement specification)
Akash Kumar Dhameja
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
Dharmalingam Ganesan
 
Unified process model
Unified process modelUnified process model
Unified process model
RyndaMaala
 
software cost factor
software cost factorsoftware cost factor
software cost factor
Abinaya B
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
Aman Adhikari
 
Software Measurement and Metrics.pptx
Software Measurement and Metrics.pptxSoftware Measurement and Metrics.pptx
Software Measurement and Metrics.pptx
ubaidullah75790
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testing
Haris Jamil
 
Software design
Software designSoftware design
Software design
Benazir Fathima
 
Integration testing
Integration testingIntegration testing
Integration testing
queen jemila
 

What's hot (20)

Analysis modeling & scenario based modeling
Analysis modeling &  scenario based modeling Analysis modeling &  scenario based modeling
Analysis modeling & scenario based modeling
 
Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12Object Oriented Design in Software Engineering SE12
Object Oriented Design in Software Engineering SE12
 
Software requirement specification
Software requirement specificationSoftware requirement specification
Software requirement specification
 
software engineering
software engineeringsoftware engineering
software engineering
 
V model presentation
V model presentationV model presentation
V model presentation
 
Class based modeling
Class based modelingClass based modeling
Class based modeling
 
Software Engineering unit 2
Software Engineering unit 2Software Engineering unit 2
Software Engineering unit 2
 
Architectural Design in Software Engineering SE10
Architectural Design in Software Engineering SE10Architectural Design in Software Engineering SE10
Architectural Design in Software Engineering SE10
 
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMI
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMIEvolving role of Software,Legacy software,CASE tools,Process Models,CMMI
Evolving role of Software,Legacy software,CASE tools,Process Models,CMMI
 
SRS(software requirement specification)
SRS(software requirement specification)SRS(software requirement specification)
SRS(software requirement specification)
 
Software Architecture
Software ArchitectureSoftware Architecture
Software Architecture
 
Unified process model
Unified process modelUnified process model
Unified process model
 
software cost factor
software cost factorsoftware cost factor
software cost factor
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Unit1
Unit1Unit1
Unit1
 
Software Measurement and Metrics.pptx
Software Measurement and Metrics.pptxSoftware Measurement and Metrics.pptx
Software Measurement and Metrics.pptx
 
Object oriented testing
Object oriented testingObject oriented testing
Object oriented testing
 
Uml
UmlUml
Uml
 
Software design
Software designSoftware design
Software design
 
Integration testing
Integration testingIntegration testing
Integration testing
 

Similar to Reusability

Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure
rupeshchanchal
 
Unit 5- Cloud Applications.pdf
Unit 5- Cloud Applications.pdfUnit 5- Cloud Applications.pdf
Unit 5- Cloud Applications.pdf
MaryJacob24
 
Software engineering introduction
Software engineering introductionSoftware engineering introduction
Software engineering introduction
Vishal Singh
 
Lect7
Lect7Lect7
Lect7
Lect7Lect7
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
Saqib Raza
 
Quality Software Development
Quality Software DevelopmentQuality Software Development
Quality Software Development
Srinivasan Hariharan
 
Enterprise Architecture Verification Validation
Enterprise Architecture Verification Validation Enterprise Architecture Verification Validation
Enterprise Architecture Verification Validation
William Francis
 
Software Engineering Thesis Topics In Oxford.pptx
Software Engineering Thesis Topics In Oxford.pptxSoftware Engineering Thesis Topics In Oxford.pptx
Software Engineering Thesis Topics In Oxford.pptx
Daisy Jones
 
Prototyping
PrototypingPrototyping
Prototyping
Paul Anthony Solis
 
HOW TO PHYSICALLY DESIGN A COMPUTER BASED INFORMATION SYSTEM
HOW TO PHYSICALLY DESIGN A COMPUTER BASED INFORMATION SYSTEMHOW TO PHYSICALLY DESIGN A COMPUTER BASED INFORMATION SYSTEM
HOW TO PHYSICALLY DESIGN A COMPUTER BASED INFORMATION SYSTEM
RebekahSamuel2
 
Zen Of Oracle Erp
Zen Of Oracle ErpZen Of Oracle Erp
Zen Of Oracle Erp
Mahesh Vallampati
 
ANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik Patel
ANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik PatelANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik Patel
ANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik Patel
AgileNetwork
 
Object oriented software_engg
Object oriented software_enggObject oriented software_engg
Object oriented software_engg
Annie Thomas
 
Developing reusable software components for distributed embedded systems
Developing reusable software components for distributed embedded systemsDeveloping reusable software components for distributed embedded systems
Developing reusable software components for distributed embedded systems
eSAT Publishing House
 
Approaches for Changing the Chart of Accounts - Eliminating the Risk
Approaches for Changing the Chart of Accounts - Eliminating the RiskApproaches for Changing the Chart of Accounts - Eliminating the Risk
Approaches for Changing the Chart of Accounts - Eliminating the Risk
eprentise
 
Improving Application Development Effectiveness
Improving Application Development Effectiveness Improving Application Development Effectiveness
Improving Application Development Effectiveness Computer Aid, Inc
 
Pm soln9416141129710
Pm soln9416141129710Pm soln9416141129710
Pm soln9416141129710
Nikhil Todkar
 
Discussion Post 1A software process model is a streamlined port.docx
Discussion Post 1A software process model is a streamlined port.docxDiscussion Post 1A software process model is a streamlined port.docx
Discussion Post 1A software process model is a streamlined port.docx
madlynplamondon
 

Similar to Reusability (20)

Software Development Standard Operating Procedure
Software Development Standard Operating Procedure Software Development Standard Operating Procedure
Software Development Standard Operating Procedure
 
Unit 5- Cloud Applications.pdf
Unit 5- Cloud Applications.pdfUnit 5- Cloud Applications.pdf
Unit 5- Cloud Applications.pdf
 
Software engineering introduction
Software engineering introductionSoftware engineering introduction
Software engineering introduction
 
Lect7
Lect7Lect7
Lect7
 
Lect7
Lect7Lect7
Lect7
 
Introduction to Software Engineering
Introduction to Software EngineeringIntroduction to Software Engineering
Introduction to Software Engineering
 
Quality Software Development
Quality Software DevelopmentQuality Software Development
Quality Software Development
 
Enterprise Architecture Verification Validation
Enterprise Architecture Verification Validation Enterprise Architecture Verification Validation
Enterprise Architecture Verification Validation
 
Software Engineering Thesis Topics In Oxford.pptx
Software Engineering Thesis Topics In Oxford.pptxSoftware Engineering Thesis Topics In Oxford.pptx
Software Engineering Thesis Topics In Oxford.pptx
 
Prototyping
PrototypingPrototyping
Prototyping
 
HOW TO PHYSICALLY DESIGN A COMPUTER BASED INFORMATION SYSTEM
HOW TO PHYSICALLY DESIGN A COMPUTER BASED INFORMATION SYSTEMHOW TO PHYSICALLY DESIGN A COMPUTER BASED INFORMATION SYSTEM
HOW TO PHYSICALLY DESIGN A COMPUTER BASED INFORMATION SYSTEM
 
Zen Of Oracle Erp
Zen Of Oracle ErpZen Of Oracle Erp
Zen Of Oracle Erp
 
ANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik Patel
ANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik PatelANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik Patel
ANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik Patel
 
Object oriented software_engg
Object oriented software_enggObject oriented software_engg
Object oriented software_engg
 
Developing reusable software components for distributed embedded systems
Developing reusable software components for distributed embedded systemsDeveloping reusable software components for distributed embedded systems
Developing reusable software components for distributed embedded systems
 
Approaches for Changing the Chart of Accounts - Eliminating the Risk
Approaches for Changing the Chart of Accounts - Eliminating the RiskApproaches for Changing the Chart of Accounts - Eliminating the Risk
Approaches for Changing the Chart of Accounts - Eliminating the Risk
 
Improving Application Development Effectiveness
Improving Application Development Effectiveness Improving Application Development Effectiveness
Improving Application Development Effectiveness
 
Pm soln9416141129710
Pm soln9416141129710Pm soln9416141129710
Pm soln9416141129710
 
Discussion Post 1A software process model is a streamlined port.docx
Discussion Post 1A software process model is a streamlined port.docxDiscussion Post 1A software process model is a streamlined port.docx
Discussion Post 1A software process model is a streamlined port.docx
 
Ch05
Ch05Ch05
Ch05
 

More from university of education,Lahore

Activites and Time Planning
 Activites and Time Planning Activites and Time Planning
Activites and Time Planning
university of education,Lahore
 
Classical Encryption Techniques
Classical Encryption TechniquesClassical Encryption Techniques
Classical Encryption Techniques
university of education,Lahore
 
Activites and Time Planning
Activites and Time PlanningActivites and Time Planning
Activites and Time Planning
university of education,Lahore
 
OSI Security Architecture
OSI Security ArchitectureOSI Security Architecture
OSI Security Architecture
university of education,Lahore
 
Network Security Terminologies
Network Security TerminologiesNetwork Security Terminologies
Network Security Terminologies
university of education,Lahore
 
Project Scheduling, Planning and Risk Management
Project Scheduling, Planning and Risk ManagementProject Scheduling, Planning and Risk Management
Project Scheduling, Planning and Risk Management
university of education,Lahore
 
Software Testing and Debugging
Software Testing and DebuggingSoftware Testing and Debugging
Software Testing and Debugging
university of education,Lahore
 
ePayment Methods
ePayment MethodsePayment Methods
A Star Search
A Star SearchA Star Search
Enterprise Application Integration
Enterprise Application IntegrationEnterprise Application Integration
Enterprise Application Integration
university of education,Lahore
 
Uml Diagrams
Uml DiagramsUml Diagrams
eDras Max
eDras MaxeDras Max
RAD Model
RAD ModelRAD Model
Microsoft Project
Microsoft ProjectMicrosoft Project
Itertaive Process Development
Itertaive Process DevelopmentItertaive Process Development
Itertaive Process Development
university of education,Lahore
 
Computer Aided Software Engineering Nayab Awan
Computer Aided Software Engineering Nayab AwanComputer Aided Software Engineering Nayab Awan
Computer Aided Software Engineering Nayab Awan
university of education,Lahore
 
Lect 2 assessing the technology landscape
Lect 2 assessing the technology landscapeLect 2 assessing the technology landscape
Lect 2 assessing the technology landscape
university of education,Lahore
 
system level requirements gathering and analysis
system level requirements gathering and analysissystem level requirements gathering and analysis
system level requirements gathering and analysis
university of education,Lahore
 

More from university of education,Lahore (20)

Activites and Time Planning
 Activites and Time Planning Activites and Time Planning
Activites and Time Planning
 
Steganography
SteganographySteganography
Steganography
 
Classical Encryption Techniques
Classical Encryption TechniquesClassical Encryption Techniques
Classical Encryption Techniques
 
Activites and Time Planning
Activites and Time PlanningActivites and Time Planning
Activites and Time Planning
 
OSI Security Architecture
OSI Security ArchitectureOSI Security Architecture
OSI Security Architecture
 
Network Security Terminologies
Network Security TerminologiesNetwork Security Terminologies
Network Security Terminologies
 
Project Scheduling, Planning and Risk Management
Project Scheduling, Planning and Risk ManagementProject Scheduling, Planning and Risk Management
Project Scheduling, Planning and Risk Management
 
Software Testing and Debugging
Software Testing and DebuggingSoftware Testing and Debugging
Software Testing and Debugging
 
ePayment Methods
ePayment MethodsePayment Methods
ePayment Methods
 
SEO
SEOSEO
SEO
 
A Star Search
A Star SearchA Star Search
A Star Search
 
Enterprise Application Integration
Enterprise Application IntegrationEnterprise Application Integration
Enterprise Application Integration
 
Uml Diagrams
Uml DiagramsUml Diagrams
Uml Diagrams
 
eDras Max
eDras MaxeDras Max
eDras Max
 
RAD Model
RAD ModelRAD Model
RAD Model
 
Microsoft Project
Microsoft ProjectMicrosoft Project
Microsoft Project
 
Itertaive Process Development
Itertaive Process DevelopmentItertaive Process Development
Itertaive Process Development
 
Computer Aided Software Engineering Nayab Awan
Computer Aided Software Engineering Nayab AwanComputer Aided Software Engineering Nayab Awan
Computer Aided Software Engineering Nayab Awan
 
Lect 2 assessing the technology landscape
Lect 2 assessing the technology landscapeLect 2 assessing the technology landscape
Lect 2 assessing the technology landscape
 
system level requirements gathering and analysis
system level requirements gathering and analysissystem level requirements gathering and analysis
system level requirements gathering and analysis
 

Recently uploaded

Basic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumersBasic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumers
PedroFerreira53928
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
Sandy Millin
 
Language Across the Curriculm LAC B.Ed.
Language Across the  Curriculm LAC B.Ed.Language Across the  Curriculm LAC B.Ed.
Language Across the Curriculm LAC B.Ed.
Atul Kumar Singh
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
DeeptiGupta154
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
siemaillard
 
Fish and Chips - have they had their chips
Fish and Chips - have they had their chipsFish and Chips - have they had their chips
Fish and Chips - have they had their chips
GeoBlogs
 
The Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdfThe Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdf
kaushalkr1407
 
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptxMARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
bennyroshan06
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
Jisc
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
Delapenabediema
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptx
Pavel ( NSTU)
 
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCECLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
BhavyaRajput3
 
Introduction to Quality Improvement Essentials
Introduction to Quality Improvement EssentialsIntroduction to Quality Improvement Essentials
Introduction to Quality Improvement Essentials
Excellence Foundation for South Sudan
 
Cambridge International AS A Level Biology Coursebook - EBook (MaryFosbery J...
Cambridge International AS  A Level Biology Coursebook - EBook (MaryFosbery J...Cambridge International AS  A Level Biology Coursebook - EBook (MaryFosbery J...
Cambridge International AS A Level Biology Coursebook - EBook (MaryFosbery J...
AzmatAli747758
 
How to Create Map Views in the Odoo 17 ERP
How to Create Map Views in the Odoo 17 ERPHow to Create Map Views in the Odoo 17 ERP
How to Create Map Views in the Odoo 17 ERP
Celine George
 
Instructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptxInstructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptx
Jheel Barad
 
How to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsHow to Break the cycle of negative Thoughts
How to Break the cycle of negative Thoughts
Col Mukteshwar Prasad
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
RaedMohamed3
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
Thiyagu K
 
Ethnobotany and Ethnopharmacology ......
Ethnobotany and Ethnopharmacology ......Ethnobotany and Ethnopharmacology ......
Ethnobotany and Ethnopharmacology ......
Ashokrao Mane college of Pharmacy Peth-Vadgaon
 

Recently uploaded (20)

Basic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumersBasic phrases for greeting and assisting costumers
Basic phrases for greeting and assisting costumers
 
2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...2024.06.01 Introducing a competency framework for languag learning materials ...
2024.06.01 Introducing a competency framework for languag learning materials ...
 
Language Across the Curriculm LAC B.Ed.
Language Across the  Curriculm LAC B.Ed.Language Across the  Curriculm LAC B.Ed.
Language Across the Curriculm LAC B.Ed.
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
 
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 
Fish and Chips - have they had their chips
Fish and Chips - have they had their chipsFish and Chips - have they had their chips
Fish and Chips - have they had their chips
 
The Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdfThe Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdf
 
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptxMARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
 
Synthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptxSynthetic Fiber Construction in lab .pptx
Synthetic Fiber Construction in lab .pptx
 
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCECLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
CLASS 11 CBSE B.St Project AIDS TO TRADE - INSURANCE
 
Introduction to Quality Improvement Essentials
Introduction to Quality Improvement EssentialsIntroduction to Quality Improvement Essentials
Introduction to Quality Improvement Essentials
 
Cambridge International AS A Level Biology Coursebook - EBook (MaryFosbery J...
Cambridge International AS  A Level Biology Coursebook - EBook (MaryFosbery J...Cambridge International AS  A Level Biology Coursebook - EBook (MaryFosbery J...
Cambridge International AS A Level Biology Coursebook - EBook (MaryFosbery J...
 
How to Create Map Views in the Odoo 17 ERP
How to Create Map Views in the Odoo 17 ERPHow to Create Map Views in the Odoo 17 ERP
How to Create Map Views in the Odoo 17 ERP
 
Instructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptxInstructions for Submissions thorugh G- Classroom.pptx
Instructions for Submissions thorugh G- Classroom.pptx
 
How to Break the cycle of negative Thoughts
How to Break the cycle of negative ThoughtsHow to Break the cycle of negative Thoughts
How to Break the cycle of negative Thoughts
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
 
Ethnobotany and Ethnopharmacology ......
Ethnobotany and Ethnopharmacology ......Ethnobotany and Ethnopharmacology ......
Ethnobotany and Ethnopharmacology ......
 

Reusability

  • 1. 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
  • 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