SlideShare a Scribd company logo
1 of 6
Download to read offline
© 2023, IRJET | Impact Factor value: 8.226 | ISO 9001:2008 Certified Journal | Page 207
Approaches and Challenges of Software Reusability: A Review of
Research Literature
M.Vasuki1, R. Ramakrishnan2, V. Manju3
1 Associate professor, Department of Master Computer Application, Sri Manakula Vinayagar
Engineering College, Pondicherry-605 107.India
2 Associate professor, Department of Master Computer Application, Sri Manakula Vinayagar
Engineering College, Pondicherry-605 107.India
3 Student, Department of Master Computer Application, Sri Manakula Vinayagar
Engineering College, Pondicherry-605 107.India
------------------------------------------------------------------------***---------------------------------------------------------------------
ABSTRACT:
The article is discussing the practice of software reuse, which involves building new software applications and systems
from pre-existing software components. This approach has become increasingly important in recent times as it can improve
the quality and productivity of software development by providing support to software engineers throughout various phases
of software engineering. The article outlines three main approaches to software reuse: component-based software reuse,
domain engineering and software product lines, and architecture-based software reuse. Component-based software reuse
involves developing software components that can be reused across different software applications or systems, Domain
engineering and software product lines involve identifying and documenting the commonalities and variabilities of a set of
related software systems, and using this information to develop reusable components. Architecture-based software reuse
involves creating a software architecture that can be reused across multiple software applications or systems. Despite the
potential benefits of software reuse, there are also challenges that can affect the development process. These challenges
include issues related to finding, selecting, and adapting existing software components, as well as organizational and cultural
challenges that can make it difficult to implement software reuse practices effectively.
INTRODUCTION
Software reuse is the practice of creating new software systems utilising older software artefacts. Reusing software helps
to cut down on the expense, effort, and time needed to construct software systems. Due to the components prior testing,
validation, and performance optimization, reuse of software components can result in increased productivity, improved
quality, and lower development costs. The concept of software reuse has been around since the late 1960s, but it took
several decades for the practice to become widely adopted. One of the early efforts to promote software reuse was the Ada
programming language, which was designed to facilitate the development of reusable software components. However, the
adoption of Ada and other early approaches to software reuse was limited by the lack of standardization and the complexity
of developing and managing reusable components. Today, there are many software reuse techniques and practices that have
been developed and refined over the years. Some of these include domain analysis, software product lines, component-based
software engineering, service-oriented architecture, and open-source software. Each of these approaches has its own
strengths and weaknesses, and choosing the right approach depends on the specific needs and requirements of the software
development project. Despite the potential benefits of software reuse, there are still obstacles and restrictions that prevent
it from being widely used. One of the most difficult issues is finding and selecting relevant reusable artefacts, which
necessitates a thorough grasp of the system requirements, available components, and project applicability. Another problem
is managing the complexity of reusable software systems, which can be difficult to understand and troubleshoot due to the
interplay of numerous components. Furthermore, establishing compatibility between distinct software components can be
difficult since they may have different interfaces, data formats, or implementation details. In assumption, software reuse is a
significant study and development subject in software engineering. While the concept of software reuse has been around for
decades, much work remains to be done in order to fully realise its potential. With the development of new approaches and
methods, as well as the rising availability of reusable software components, software reuse is anticipated to continue to play
a major role in software development in the coming years.
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 10 Issue: 07 | July 2023 www.irjet.net p-ISSN: 2395-0072
© 2023, IRJET | Impact Factor value: 8.226 | ISO 9001:2008 Certified Journal | Page 208
REVIEW OF RELATED WORKS:
Kaur and Sohal (2013) investigated how to construct a QR code library using software reuse approaches. They created
the library utilising Android and other modern technologies, and their approach included applying design patterns, aspect-
oriented integration, and other object-oriented programming structures to boost productivity, save time, and save
development costs. They were able to accomplish these benefits by reusing code rather than beginning from scratch. Thapar
et al (2014) proposed a quality model for assessing software components based on reusability. They identified three
essential factors that are relevant in software selection and development: the quality properties preferred by stakeholders,
the necessary improvements to software component reuse, and the integration of these properties into a proposed model.
Their model helps to ensure that only quality properties that are necessary for improving software reuse are integrated into
the development process. Ahmer et al (2014) conducted a literature review to gain a better understanding of the concept,
benefits, and factors of software reusability. They identified 11 methods for software reuse, including design patterns,
component-based design, application frameworks, legacy systems wrapping, service-driven systems, application product
lines, COTS integration, and program libraries. Their review helped to consolidate existing knowledge on software reuse and
provided a framework for future research. Varnell-Sarjeant and Amschler Andrews (2015) analyzed empirical studies to
compare reuse results in embedded and non-embedded systems. They compared the success and failure of software reuse in
these two types of systems and looked at factors such as reuse amount, effort, quality, performance, and overall
achievement. Their findings help to identify the factors that contribute to successful software reuse and to understand the
impact of the development approach on reuse success or failure.Xin and Yang (2017) discussed an engineering
management software reuse framework that provides guidance on how to select types of reuses and how to manage the
reuse process. They identified four types of software reuse and explained how reuse feasibility should be analysed. Their
study highlighted the importance of key point management in the reuse of software and demonstrated how a careful
approach to software reuse can provide significant benefits. Mateen et al. (2017) developed a reuse strategy for increasing
software quality. They employed a verification and validation (V&V) method to control quality and accuracy throughout the
software life cycle, followed by a questionnaire survey to determine the influence of their methodology on quality attributes,
specifications, and design specifications. They discovered that using ad hoc, CBSE, MBSE, product line, and COTS reuse
strategies resulted in considerable increases in software quality. Finally, these studies highlight the potential benefits of
software reuse and provide guidance on how to achieve these benefits through careful planning, management, and selection
of reuse techniques. While software reuse has been around for decades, there is still much to learn about how to make the
most of this powerful tool for software development.
EXISTING SYSTEM:
Component-based development (CBD) is an existing system of software reuse. It is a software engineering approach that
emphasizes the use of reusable software components. In CBD, software is built by assembling pre-existing software
components, rather than writing code from scratch. CBD promotes the development of modular, reusable, and maintainable
software systems.
CBD involves creating software components that can be reused in different applications. These components are designed
to be self-contained and can be easily integrated with other components. CBD promotes software reuse by allowing
developers to create software systems by assembling pre-existing components, rather than writing code from scratch. This
reduces development time and cost while improving software quality.
CBD components can be developed in any programming language and can be implemented as standalone executables,
dynamic link libraries, or web services. Examples of CBD frameworks include Microsoft's .NET Framework and Java
Enterprise Edition.
CBD has several advantages, including:
 Reduced development time and cost
 Improved software quality
 Increased productivity
 Improved maintainability and scalability
 Improved interoperability
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 10 Issue: 07 | July 2023 www.irjet.net p-ISSN: 2395-0072
© 2023, IRJET | Impact Factor value: 8.226 | ISO 9001:2008 Certified Journal | Page 209
 Enhanced reuse of existing software components
However, CBD also has some disadvantages, including:
 Increased complexity due to the need for component integration
 Limited availability of reusable components
 Increased overhead due to component management and version control
PROPOSED SYSTEM:
Since there are several proposed systems of software reuse that can be used to improve the software development
process, Service oriented architecture is being proposed.
Service-oriented architecture (SOA) is a software architecture that emphasizes the use of loosely coupled services. SOA
promotes software reuse by allowing developers to reuse existing services to build new software systems. SOA services can
be implemented in any programming language and can be accessed using standard protocols such as SOAP and REST.
SOA is an architectural style that encourages the use of services to enable communication between different software
components. SOA can be presented as a technique to develop modular, reusable software components that can be shared and
utilized in other applications when it comes to software reuse.
SOA proposes a system that is composed of a set of services, each of which has a well-defined interface and functionality.
These services can be reused in different applications, allowing for greater flexibility and efficiency in software development.
SOA can be proposed as a way to create modular, reusable software components that can be shared and used in different
applications. This approach promotes a flexible and efficient software development process that can save time and
resources.
SOFTWARE REUSE APPROACH:
Software reuse technology is a software engineering approach that aims to reuse existing software components to create
new software systems. There are several forms of software reuse, including system reuse, application reuse, component
reuse, object reuse, and function reuse.
System reuse involves selecting multiple applications that can be reused within a system. This approach requires the
conceptual design, architectural design, system selection, interface development, integration and development to work
parallel to governance and management policies.
Application reuse entails changing a software system to meet the needs of several clients while preserving the source
code. This form of reuse is created for wide market use and is sometimes referred to as commercial off-the-shelf (COTS)
products. It employs a built-in configuration mechanism that allows a system to be developed to meet the needs of various
customers.
Component-based reuse divides software into atomic components. A repository of these components is used to build a
new software system by selecting the appropriate component from the repository every time a new component is needed.
Reusing software components that perform a certain activity, such as mathematical functions or class objects, is an
example of object and function reuse. This way of reusing has been used in standard libraries for decades. It is particularly
advantageous in areas such as mathematical algorithms and graphics, where the production of efficient objects and
functions necessitates a specialised, pricey skill.
CHALLENGES:
The difficulties encountered during software reuse: It cites three separate studies that revealed distinct impediments and
issues experienced during software reuse.
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 10 Issue: 07 | July 2023 www.irjet.net p-ISSN: 2395-0072
© 2023, IRJET | Impact Factor value: 8.226 | ISO 9001:2008 Certified Journal | Page 210
B. Jalender and colleagues (2010) identified both technical and non-technical barriers to software reuse. Missing systematic
component requirements, inability to guarantee the accuracy of a component, poor presentation of reusable pieces, and the
absence of a software reconstitution technique are among the technical obstacles. The inability to engage, encourage, train,
and reuse software, the lack of organisational support for software reuse institutionalisation, the difficulty in evaluating
reuse benefits, and the need to address intellectual property rights and software reuse contractual issues are the non-
technical barriers.
Sajjah and Ali (2014) conducted a systematic study of 36 chosen studies and identified 8 challenges associated with
software reuse during software application developments. The challenges highlighted by the study include domain analysis
and modeling, lack of reuse skills and knowledge, lack of management support, high reuse cost, lack of component storage,
lack of documentation, lack of proper IT infrastructure, and lack of team awareness. Making domain analysis and modeling
the highest form of challenge faced during software reuse.
Charles (2014) categorized the challenges of software reuse into technical, organizational, economical, and legal
impediments. The technical challenges include issues such as the lack of proper documentation and testing of reusable
components, while the organizational challenges are related to the lack of support for reuse initiatives, inadequate training,
and the absence of a reuse culture within an organization. The economic challenges refer to the cost of developing and
maintaining a reusable library, and the legal challenges include issues such as intellectual property rights and software reuse
contractual problems.
The study highlighted several technical, organizational, economical, and legal obstacles to software reuse. Technical obstacles
include finding codes and designs that are difficult to comprehend, particularly complex classes, and understanding the
architecture of reference, frameworks, models, and classes. Organizational barriers include a lack of coordinated reuse from
organizations, as they often do not have clear directives and processes that describe when and how to use existing software
in conformity with software development strategies. Economical hurdles include the cost of the manufacturer to supply
reuse components, viewed as an investment, and the cost for the "re-user" to locate, integrate, and check reusable
components. Legal issues are broken down into four parts: trade secret protection, patents for new and inventive technical
innovations, copyright protection, and ethical responsibilities and obligations. The reuse has the responsibility to have a
quality assurance of the software to inspect if the reused software complies with quality standards to prevent damage and
breakdowns. Overall, software reuse can be challenging, but if the challenges are addressed, it can be a viable option.
Software reuse is the practice of utilizing existing software artifacts, such as code, documentation, and design, to develop new
software systems. According to Schenkelberg (2016), structured and modular programming is the most likely use of
software reuse, as it uses a top-down analysis approach for problem-solving, modularization for program structure and
organization, and structured code for the individual modules, which simplifies the task of programming and reduces
complexity, thus improving programmer productivity.
However, there are several challenges that come with software reuse. These challenges, as highlighted by Schenkelberg
(2016), include increased maintenance costs, the need for longer software tool support, a "Not invented here" attitude that
decreases acceptance, the operating cost of producing and sustaining a component library, the time required to select
reusable software components, the need for more knowledge and training, and the necessity for a more diverse skillset.
To overcome these challenges, software developers must prioritize quality properties when adopting a reuse strategy.
According to Capilla et al (2019), the most popular quality properties are readability, functional stability, performance
interoperability, security, privacy, portability, efficiency, and modularity. If these properties are not put in place, software
reuse can become challenging.
Mäkitalo et al (2020) identified some downsides to software reuse, such as compatibility problems that can lead to technical
debt, reuse of copy-paste causing problems of traceability, dependencies of snowball that can affect the reuse of code,
reusable software assets often lacking maintenance, open package repositories causing security concerns, and General
Public Licenses (GPL) that can be challenging to understand.
In conclusion, software reuse is a positive practise that can increase productivity while decreasing complexity. However, it is
not without difficulties, and developers must prioritise quality properties while also addressing drawbacks in order to make
software reuse feasible and successful.
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 10 Issue: 07 | July 2023 www.irjet.net p-ISSN: 2395-0072
© 2023, IRJET | Impact Factor value: 8.226 | ISO 9001:2008 Certified Journal | Page 211
DISCUSSIONS:
Software reuse is an essential component of software engineering because it can result in significant benefits such as
reduced development time, lower costs, greater software quality, and increased productivity. To enjoy these benefits, software
architectures, design patterns, requirements specifications, and design documents must be rigorously documented and
designed. The reuse of software components may not always be possible due to various factors such as technical obstacles,
organizational barriers, economic hurdles, and legal issues.
However, by employing the proper tactics, such as structured and modular programming, reusing theories and frameworks
that provide the software's backbone, and reusing theories and frameworks that provide the software's backbone, these
obstacles can be solved.
To address the challenges connected with software reuse, software development techniques should include software reuse as
an integral component of the development process. This includes meticulously documenting software components and
architectures, creating libraries of reusable components, and encouraging reuse within the organisation. By executing these
measures, software development teams can reduce maintenance costs, shorten development time, improve software quality,
and increase productivity.
In conclusion, software reuse is a vital aspect of software engineering that can lead to significant benefits. It is essential to
document and systematically design software components, architectures, and design patterns to reap the full benefits of
software reuse. While there are challenges associated with software reuse, these can be overcome by adopting the right
strategies and incorporating software reuse into the software development process.
CONCLUSION:
In conclusion, software reuse implemented a service-oriented architecture which consists of various benefits, including
modular and reusable components, flexibility, loose coupling, service discovery, interoperability, and scalability. Finding,
selecting, and adapting existing components, as well as organisational and cultural aspects, provide obstacles. To reap the
benefits of SOA for software reuse, which can considerably enhance software development quality and productivity, careful
planning is required. Overall, SOA allows for the development of modular, reusable software components that increase
flexibility and efficiency. Its weak coupling allows for simple upgrades and replacements without affecting other components,
and service discovery protocols make interoperability possible. The modular nature of SOA enables scalability, but challenges
in finding and adapting components and organizational factors need to be addressed. Careful consideration and planning are
crucial to harness the benefits of software reuse with SOA, resulting in enhanced quality and productivity in software
development.
References
Ahmar, I., Abualkishik, A., & Yusof, M. (2014). Taxonomy, Definition, Approaches, Benefits, Reusability Levels, Factors and
Adaption of Software Reusability: A Review of The Research Literature. Journal of Applied Sciences, 14.
https://doi.org/10.3923/jas.2014.2396.2421
B. Jalender, N. Gowtham, Kumar, K. Praveen, K. Murahari, & K. Sampath. (2010). Technical Impediments to Software Reuse.
International Journal of Engineering Science and Technology, 2(11).
Capilla, R., Gallina, B., Cetina, C., & Favaro, J. (2019). Opportunities for Software Reuse in An Uncertain World: From Past to
Emerging Trends. Journal of Software: Evolution and Process, 31(8). https://doi.org/10.1002/smr.2217
Gacek, C. (Ed.). (2002). Software Reuse: Methods, Techniques, And Tools: 7th International Conference, ICSR-7 Austin, TX,
USA, April 15–19, 2002 Proceedings (Vol. 2319). Springer Berlin Heidelberg. https://doi.org/10.1007/3-540-46020-9
Jalender, B., Govardhan, D., & Premchand, P. (2010). A Pragmatic Approach to Software Reuse. Journal of Theoretical and
Applied Information Technology, 14, 10.
Kaur, A., & Sohal, H. (2013). QR Code Library on The Base of Software Reuse Approach. International Journal of Science and
Engineering Applications, 2, 44–48. https://doi.org/10.7753/ijsea0203.1002
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 10 Issue: 07 | July 2023 www.irjet.net p-ISSN: 2395-0072
© 2023, IRJET | Impact Factor value: 8.226 | ISO 9001:2008 Certified Journal | Page 212
Keswani, R., Joshi, S., & Jatain, A. (2014). Software Reuse in Practice. 2014 Fourth International Conference on Advanced
Computing & Communication Technologies, 159–162. https://doi.org/10.1109/acct.2014.57
Kim, Y., & Stohr, E. A. (1992). Software Reuse: Issues and Research Directions. Proceedings of the Twenty-Fifth Hawaii
International Conference on System Sciences, 612–623 Vol.4. https://doi.org/10.1109/HICSS.1992.183360
Mäkitalo, N., Taivalsaari, A., Kiviluoto, A., Mikkonen, T., & Capilla, R. (2020). On Opportunistic Software Reuse. Computing,
102(11), 2385–2408.
International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056
Volume: 10 Issue: 07 | July 2023 www.irjet.net p-ISSN: 2395-0072

More Related Content

Similar to Approaches and Challenges of Software Reusability

IRJET- Code Reuse & Reusability of the Software
IRJET- Code Reuse & Reusability of the SoftwareIRJET- Code Reuse & Reusability of the Software
IRJET- Code Reuse & Reusability of the SoftwareIRJET Journal
 
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 systemseSAT Publishing House
 
A Survey of Software Reusability
A Survey of Software ReusabilityA Survey of Software Reusability
A Survey of Software ReusabilityIJERA Editor
 
Changeability Evaluation Model for Object Oriented Software
Changeability Evaluation Model for Object Oriented SoftwareChangeability Evaluation Model for Object Oriented Software
Changeability Evaluation Model for Object Oriented SoftwareAIRCC Publishing Corporation
 
CHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
CHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARECHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
CHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWAREAIRCC Publishing Corporation
 
Software quality model based on development team characteristics
Software quality model based on development team  characteristicsSoftware quality model based on development team  characteristics
Software quality model based on development team characteristicsIJECEIAES
 
An efficient tool for reusable software
An efficient tool for reusable softwareAn efficient tool for reusable software
An efficient tool for reusable softwareprjpublications
 
Exploring the Efficiency of the Program using OOAD Metrics
Exploring the Efficiency of the Program using OOAD MetricsExploring the Efficiency of the Program using OOAD Metrics
Exploring the Efficiency of the Program using OOAD MetricsIRJET Journal
 
Contributors to Reduce Maintainability Cost at the Software Implementation Phase
Contributors to Reduce Maintainability Cost at the Software Implementation PhaseContributors to Reduce Maintainability Cost at the Software Implementation Phase
Contributors to Reduce Maintainability Cost at the Software Implementation PhaseWaqas Tariq
 
Effect of refactoring on software quality
Effect of refactoring on software qualityEffect of refactoring on software quality
Effect of refactoring on software qualitycsandit
 
THE USABILITY METRICS FOR USER EXPERIENCE
THE USABILITY METRICS FOR USER EXPERIENCETHE USABILITY METRICS FOR USER EXPERIENCE
THE USABILITY METRICS FOR USER EXPERIENCEvivatechijri
 
An empirical evaluation of impact of refactoring on internal and external mea...
An empirical evaluation of impact of refactoring on internal and external mea...An empirical evaluation of impact of refactoring on internal and external mea...
An empirical evaluation of impact of refactoring on internal and external mea...ijseajournal
 
A Systematic Review On Software Cost Estimation In Agile Software Development
A Systematic Review On Software Cost Estimation In Agile Software DevelopmentA Systematic Review On Software Cost Estimation In Agile Software Development
A Systematic Review On Software Cost Estimation In Agile Software DevelopmentBrooke Heidt
 
A sustainable procedural method of software design process improvements
A sustainable procedural method of software design process improvementsA sustainable procedural method of software design process improvements
A sustainable procedural method of software design process improvementsnooriasukmaningtyas
 
An Empirical Study of the Improved SPLD Framework using Expert Opinion Technique
An Empirical Study of the Improved SPLD Framework using Expert Opinion TechniqueAn Empirical Study of the Improved SPLD Framework using Expert Opinion Technique
An Empirical Study of the Improved SPLD Framework using Expert Opinion TechniqueIJEACS
 

Similar to Approaches and Challenges of Software Reusability (20)

IRJET- Code Reuse & Reusability of the Software
IRJET- Code Reuse & Reusability of the SoftwareIRJET- Code Reuse & Reusability of the Software
IRJET- Code Reuse & Reusability of the Software
 
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
 
A Survey of Software Reusability
A Survey of Software ReusabilityA Survey of Software Reusability
A Survey of Software Reusability
 
Changeability Evaluation Model for Object Oriented Software
Changeability Evaluation Model for Object Oriented SoftwareChangeability Evaluation Model for Object Oriented Software
Changeability Evaluation Model for Object Oriented Software
 
CHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
CHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARECHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
CHANGEABILITY EVALUATION MODEL FOR OBJECT ORIENTED SOFTWARE
 
Software quality model based on development team characteristics
Software quality model based on development team  characteristicsSoftware quality model based on development team  characteristics
Software quality model based on development team characteristics
 
An efficient tool for reusable software
An efficient tool for reusable softwareAn efficient tool for reusable software
An efficient tool for reusable software
 
Exploring the Efficiency of the Program using OOAD Metrics
Exploring the Efficiency of the Program using OOAD MetricsExploring the Efficiency of the Program using OOAD Metrics
Exploring the Efficiency of the Program using OOAD Metrics
 
195
195195
195
 
Software Reuse
Software ReuseSoftware Reuse
Software Reuse
 
M017548895
M017548895M017548895
M017548895
 
Contributors to Reduce Maintainability Cost at the Software Implementation Phase
Contributors to Reduce Maintainability Cost at the Software Implementation PhaseContributors to Reduce Maintainability Cost at the Software Implementation Phase
Contributors to Reduce Maintainability Cost at the Software Implementation Phase
 
50120130405029
5012013040502950120130405029
50120130405029
 
Effect of refactoring on software quality
Effect of refactoring on software qualityEffect of refactoring on software quality
Effect of refactoring on software quality
 
THE USABILITY METRICS FOR USER EXPERIENCE
THE USABILITY METRICS FOR USER EXPERIENCETHE USABILITY METRICS FOR USER EXPERIENCE
THE USABILITY METRICS FOR USER EXPERIENCE
 
Software Reuse
Software ReuseSoftware Reuse
Software Reuse
 
An empirical evaluation of impact of refactoring on internal and external mea...
An empirical evaluation of impact of refactoring on internal and external mea...An empirical evaluation of impact of refactoring on internal and external mea...
An empirical evaluation of impact of refactoring on internal and external mea...
 
A Systematic Review On Software Cost Estimation In Agile Software Development
A Systematic Review On Software Cost Estimation In Agile Software DevelopmentA Systematic Review On Software Cost Estimation In Agile Software Development
A Systematic Review On Software Cost Estimation In Agile Software Development
 
A sustainable procedural method of software design process improvements
A sustainable procedural method of software design process improvementsA sustainable procedural method of software design process improvements
A sustainable procedural method of software design process improvements
 
An Empirical Study of the Improved SPLD Framework using Expert Opinion Technique
An Empirical Study of the Improved SPLD Framework using Expert Opinion TechniqueAn Empirical Study of the Improved SPLD Framework using Expert Opinion Technique
An Empirical Study of the Improved SPLD Framework using Expert Opinion Technique
 

More from IRJET Journal

TUNNELING IN HIMALAYAS WITH NATM METHOD: A SPECIAL REFERENCES TO SUNGAL TUNNE...
TUNNELING IN HIMALAYAS WITH NATM METHOD: A SPECIAL REFERENCES TO SUNGAL TUNNE...TUNNELING IN HIMALAYAS WITH NATM METHOD: A SPECIAL REFERENCES TO SUNGAL TUNNE...
TUNNELING IN HIMALAYAS WITH NATM METHOD: A SPECIAL REFERENCES TO SUNGAL TUNNE...IRJET Journal
 
STUDY THE EFFECT OF RESPONSE REDUCTION FACTOR ON RC FRAMED STRUCTURE
STUDY THE EFFECT OF RESPONSE REDUCTION FACTOR ON RC FRAMED STRUCTURESTUDY THE EFFECT OF RESPONSE REDUCTION FACTOR ON RC FRAMED STRUCTURE
STUDY THE EFFECT OF RESPONSE REDUCTION FACTOR ON RC FRAMED STRUCTUREIRJET Journal
 
A COMPARATIVE ANALYSIS OF RCC ELEMENT OF SLAB WITH STARK STEEL (HYSD STEEL) A...
A COMPARATIVE ANALYSIS OF RCC ELEMENT OF SLAB WITH STARK STEEL (HYSD STEEL) A...A COMPARATIVE ANALYSIS OF RCC ELEMENT OF SLAB WITH STARK STEEL (HYSD STEEL) A...
A COMPARATIVE ANALYSIS OF RCC ELEMENT OF SLAB WITH STARK STEEL (HYSD STEEL) A...IRJET Journal
 
Effect of Camber and Angles of Attack on Airfoil Characteristics
Effect of Camber and Angles of Attack on Airfoil CharacteristicsEffect of Camber and Angles of Attack on Airfoil Characteristics
Effect of Camber and Angles of Attack on Airfoil CharacteristicsIRJET Journal
 
A Review on the Progress and Challenges of Aluminum-Based Metal Matrix Compos...
A Review on the Progress and Challenges of Aluminum-Based Metal Matrix Compos...A Review on the Progress and Challenges of Aluminum-Based Metal Matrix Compos...
A Review on the Progress and Challenges of Aluminum-Based Metal Matrix Compos...IRJET Journal
 
Dynamic Urban Transit Optimization: A Graph Neural Network Approach for Real-...
Dynamic Urban Transit Optimization: A Graph Neural Network Approach for Real-...Dynamic Urban Transit Optimization: A Graph Neural Network Approach for Real-...
Dynamic Urban Transit Optimization: A Graph Neural Network Approach for Real-...IRJET Journal
 
Structural Analysis and Design of Multi-Storey Symmetric and Asymmetric Shape...
Structural Analysis and Design of Multi-Storey Symmetric and Asymmetric Shape...Structural Analysis and Design of Multi-Storey Symmetric and Asymmetric Shape...
Structural Analysis and Design of Multi-Storey Symmetric and Asymmetric Shape...IRJET Journal
 
A Review of “Seismic Response of RC Structures Having Plan and Vertical Irreg...
A Review of “Seismic Response of RC Structures Having Plan and Vertical Irreg...A Review of “Seismic Response of RC Structures Having Plan and Vertical Irreg...
A Review of “Seismic Response of RC Structures Having Plan and Vertical Irreg...IRJET Journal
 
A REVIEW ON MACHINE LEARNING IN ADAS
A REVIEW ON MACHINE LEARNING IN ADASA REVIEW ON MACHINE LEARNING IN ADAS
A REVIEW ON MACHINE LEARNING IN ADASIRJET Journal
 
Long Term Trend Analysis of Precipitation and Temperature for Asosa district,...
Long Term Trend Analysis of Precipitation and Temperature for Asosa district,...Long Term Trend Analysis of Precipitation and Temperature for Asosa district,...
Long Term Trend Analysis of Precipitation and Temperature for Asosa district,...IRJET Journal
 
P.E.B. Framed Structure Design and Analysis Using STAAD Pro
P.E.B. Framed Structure Design and Analysis Using STAAD ProP.E.B. Framed Structure Design and Analysis Using STAAD Pro
P.E.B. Framed Structure Design and Analysis Using STAAD ProIRJET Journal
 
A Review on Innovative Fiber Integration for Enhanced Reinforcement of Concre...
A Review on Innovative Fiber Integration for Enhanced Reinforcement of Concre...A Review on Innovative Fiber Integration for Enhanced Reinforcement of Concre...
A Review on Innovative Fiber Integration for Enhanced Reinforcement of Concre...IRJET Journal
 
Survey Paper on Cloud-Based Secured Healthcare System
Survey Paper on Cloud-Based Secured Healthcare SystemSurvey Paper on Cloud-Based Secured Healthcare System
Survey Paper on Cloud-Based Secured Healthcare SystemIRJET Journal
 
Review on studies and research on widening of existing concrete bridges
Review on studies and research on widening of existing concrete bridgesReview on studies and research on widening of existing concrete bridges
Review on studies and research on widening of existing concrete bridgesIRJET Journal
 
React based fullstack edtech web application
React based fullstack edtech web applicationReact based fullstack edtech web application
React based fullstack edtech web applicationIRJET Journal
 
A Comprehensive Review of Integrating IoT and Blockchain Technologies in the ...
A Comprehensive Review of Integrating IoT and Blockchain Technologies in the ...A Comprehensive Review of Integrating IoT and Blockchain Technologies in the ...
A Comprehensive Review of Integrating IoT and Blockchain Technologies in the ...IRJET Journal
 
A REVIEW ON THE PERFORMANCE OF COCONUT FIBRE REINFORCED CONCRETE.
A REVIEW ON THE PERFORMANCE OF COCONUT FIBRE REINFORCED CONCRETE.A REVIEW ON THE PERFORMANCE OF COCONUT FIBRE REINFORCED CONCRETE.
A REVIEW ON THE PERFORMANCE OF COCONUT FIBRE REINFORCED CONCRETE.IRJET Journal
 
Optimizing Business Management Process Workflows: The Dynamic Influence of Mi...
Optimizing Business Management Process Workflows: The Dynamic Influence of Mi...Optimizing Business Management Process Workflows: The Dynamic Influence of Mi...
Optimizing Business Management Process Workflows: The Dynamic Influence of Mi...IRJET Journal
 
Multistoried and Multi Bay Steel Building Frame by using Seismic Design
Multistoried and Multi Bay Steel Building Frame by using Seismic DesignMultistoried and Multi Bay Steel Building Frame by using Seismic Design
Multistoried and Multi Bay Steel Building Frame by using Seismic DesignIRJET Journal
 
Cost Optimization of Construction Using Plastic Waste as a Sustainable Constr...
Cost Optimization of Construction Using Plastic Waste as a Sustainable Constr...Cost Optimization of Construction Using Plastic Waste as a Sustainable Constr...
Cost Optimization of Construction Using Plastic Waste as a Sustainable Constr...IRJET Journal
 

More from IRJET Journal (20)

TUNNELING IN HIMALAYAS WITH NATM METHOD: A SPECIAL REFERENCES TO SUNGAL TUNNE...
TUNNELING IN HIMALAYAS WITH NATM METHOD: A SPECIAL REFERENCES TO SUNGAL TUNNE...TUNNELING IN HIMALAYAS WITH NATM METHOD: A SPECIAL REFERENCES TO SUNGAL TUNNE...
TUNNELING IN HIMALAYAS WITH NATM METHOD: A SPECIAL REFERENCES TO SUNGAL TUNNE...
 
STUDY THE EFFECT OF RESPONSE REDUCTION FACTOR ON RC FRAMED STRUCTURE
STUDY THE EFFECT OF RESPONSE REDUCTION FACTOR ON RC FRAMED STRUCTURESTUDY THE EFFECT OF RESPONSE REDUCTION FACTOR ON RC FRAMED STRUCTURE
STUDY THE EFFECT OF RESPONSE REDUCTION FACTOR ON RC FRAMED STRUCTURE
 
A COMPARATIVE ANALYSIS OF RCC ELEMENT OF SLAB WITH STARK STEEL (HYSD STEEL) A...
A COMPARATIVE ANALYSIS OF RCC ELEMENT OF SLAB WITH STARK STEEL (HYSD STEEL) A...A COMPARATIVE ANALYSIS OF RCC ELEMENT OF SLAB WITH STARK STEEL (HYSD STEEL) A...
A COMPARATIVE ANALYSIS OF RCC ELEMENT OF SLAB WITH STARK STEEL (HYSD STEEL) A...
 
Effect of Camber and Angles of Attack on Airfoil Characteristics
Effect of Camber and Angles of Attack on Airfoil CharacteristicsEffect of Camber and Angles of Attack on Airfoil Characteristics
Effect of Camber and Angles of Attack on Airfoil Characteristics
 
A Review on the Progress and Challenges of Aluminum-Based Metal Matrix Compos...
A Review on the Progress and Challenges of Aluminum-Based Metal Matrix Compos...A Review on the Progress and Challenges of Aluminum-Based Metal Matrix Compos...
A Review on the Progress and Challenges of Aluminum-Based Metal Matrix Compos...
 
Dynamic Urban Transit Optimization: A Graph Neural Network Approach for Real-...
Dynamic Urban Transit Optimization: A Graph Neural Network Approach for Real-...Dynamic Urban Transit Optimization: A Graph Neural Network Approach for Real-...
Dynamic Urban Transit Optimization: A Graph Neural Network Approach for Real-...
 
Structural Analysis and Design of Multi-Storey Symmetric and Asymmetric Shape...
Structural Analysis and Design of Multi-Storey Symmetric and Asymmetric Shape...Structural Analysis and Design of Multi-Storey Symmetric and Asymmetric Shape...
Structural Analysis and Design of Multi-Storey Symmetric and Asymmetric Shape...
 
A Review of “Seismic Response of RC Structures Having Plan and Vertical Irreg...
A Review of “Seismic Response of RC Structures Having Plan and Vertical Irreg...A Review of “Seismic Response of RC Structures Having Plan and Vertical Irreg...
A Review of “Seismic Response of RC Structures Having Plan and Vertical Irreg...
 
A REVIEW ON MACHINE LEARNING IN ADAS
A REVIEW ON MACHINE LEARNING IN ADASA REVIEW ON MACHINE LEARNING IN ADAS
A REVIEW ON MACHINE LEARNING IN ADAS
 
Long Term Trend Analysis of Precipitation and Temperature for Asosa district,...
Long Term Trend Analysis of Precipitation and Temperature for Asosa district,...Long Term Trend Analysis of Precipitation and Temperature for Asosa district,...
Long Term Trend Analysis of Precipitation and Temperature for Asosa district,...
 
P.E.B. Framed Structure Design and Analysis Using STAAD Pro
P.E.B. Framed Structure Design and Analysis Using STAAD ProP.E.B. Framed Structure Design and Analysis Using STAAD Pro
P.E.B. Framed Structure Design and Analysis Using STAAD Pro
 
A Review on Innovative Fiber Integration for Enhanced Reinforcement of Concre...
A Review on Innovative Fiber Integration for Enhanced Reinforcement of Concre...A Review on Innovative Fiber Integration for Enhanced Reinforcement of Concre...
A Review on Innovative Fiber Integration for Enhanced Reinforcement of Concre...
 
Survey Paper on Cloud-Based Secured Healthcare System
Survey Paper on Cloud-Based Secured Healthcare SystemSurvey Paper on Cloud-Based Secured Healthcare System
Survey Paper on Cloud-Based Secured Healthcare System
 
Review on studies and research on widening of existing concrete bridges
Review on studies and research on widening of existing concrete bridgesReview on studies and research on widening of existing concrete bridges
Review on studies and research on widening of existing concrete bridges
 
React based fullstack edtech web application
React based fullstack edtech web applicationReact based fullstack edtech web application
React based fullstack edtech web application
 
A Comprehensive Review of Integrating IoT and Blockchain Technologies in the ...
A Comprehensive Review of Integrating IoT and Blockchain Technologies in the ...A Comprehensive Review of Integrating IoT and Blockchain Technologies in the ...
A Comprehensive Review of Integrating IoT and Blockchain Technologies in the ...
 
A REVIEW ON THE PERFORMANCE OF COCONUT FIBRE REINFORCED CONCRETE.
A REVIEW ON THE PERFORMANCE OF COCONUT FIBRE REINFORCED CONCRETE.A REVIEW ON THE PERFORMANCE OF COCONUT FIBRE REINFORCED CONCRETE.
A REVIEW ON THE PERFORMANCE OF COCONUT FIBRE REINFORCED CONCRETE.
 
Optimizing Business Management Process Workflows: The Dynamic Influence of Mi...
Optimizing Business Management Process Workflows: The Dynamic Influence of Mi...Optimizing Business Management Process Workflows: The Dynamic Influence of Mi...
Optimizing Business Management Process Workflows: The Dynamic Influence of Mi...
 
Multistoried and Multi Bay Steel Building Frame by using Seismic Design
Multistoried and Multi Bay Steel Building Frame by using Seismic DesignMultistoried and Multi Bay Steel Building Frame by using Seismic Design
Multistoried and Multi Bay Steel Building Frame by using Seismic Design
 
Cost Optimization of Construction Using Plastic Waste as a Sustainable Constr...
Cost Optimization of Construction Using Plastic Waste as a Sustainable Constr...Cost Optimization of Construction Using Plastic Waste as a Sustainable Constr...
Cost Optimization of Construction Using Plastic Waste as a Sustainable Constr...
 

Recently uploaded

Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...VICTOR MAESTRE RAMIREZ
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...srsj9000
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerAnamika Sarkar
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and usesDevarapalliHaritha
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVRajaP95
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxwendy cai
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionDr.Costas Sachpazis
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2RajaP95
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxJoão Esperancinha
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZTE
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSCAESB
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxbritheesh05
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130Suhani Kapoor
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidNikhilNagaraju
 

Recently uploaded (20)

Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service NashikCollege Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
College Call Girls Nashik Nehal 7001305949 Independent Escort Service Nashik
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube ExchangerStudy on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
Study on Air-Water & Water-Water Heat Exchange in a Finned Tube Exchanger
 
power system scada applications and uses
power system scada applications and usespower system scada applications and uses
power system scada applications and uses
 
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IVHARMONY IN THE NATURE AND EXISTENCE - Unit-IV
HARMONY IN THE NATURE AND EXISTENCE - Unit-IV
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
What are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptxWhat are the advantages and disadvantages of membrane structures.pptx
What are the advantages and disadvantages of membrane structures.pptx
 
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective IntroductionSachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
Sachpazis Costas: Geotechnical Engineering: A student's Perspective Introduction
 
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2HARMONY IN THE HUMAN BEING - Unit-II UHV-2
HARMONY IN THE HUMAN BEING - Unit-II UHV-2
 
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptxDecoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
 
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
ZXCTN 5804 / ZTE PTN / ZTE POTN / ZTE 5804 PTN / ZTE POTN 5804 ( 100/200 GE Z...
 
GDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentationGDSC ASEB Gen AI study jams presentation
GDSC ASEB Gen AI study jams presentation
 
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCRCall Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
Call Us -/9953056974- Call Girls In Vikaspuri-/- Delhi NCR
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
Artificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptxArtificial-Intelligence-in-Electronics (K).pptx
Artificial-Intelligence-in-Electronics (K).pptx
 
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
VIP Call Girls Service Kondapur Hyderabad Call +91-8250192130
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfid
 

Approaches and Challenges of Software Reusability

  • 1. © 2023, IRJET | Impact Factor value: 8.226 | ISO 9001:2008 Certified Journal | Page 207 Approaches and Challenges of Software Reusability: A Review of Research Literature M.Vasuki1, R. Ramakrishnan2, V. Manju3 1 Associate professor, Department of Master Computer Application, Sri Manakula Vinayagar Engineering College, Pondicherry-605 107.India 2 Associate professor, Department of Master Computer Application, Sri Manakula Vinayagar Engineering College, Pondicherry-605 107.India 3 Student, Department of Master Computer Application, Sri Manakula Vinayagar Engineering College, Pondicherry-605 107.India ------------------------------------------------------------------------***--------------------------------------------------------------------- ABSTRACT: The article is discussing the practice of software reuse, which involves building new software applications and systems from pre-existing software components. This approach has become increasingly important in recent times as it can improve the quality and productivity of software development by providing support to software engineers throughout various phases of software engineering. The article outlines three main approaches to software reuse: component-based software reuse, domain engineering and software product lines, and architecture-based software reuse. Component-based software reuse involves developing software components that can be reused across different software applications or systems, Domain engineering and software product lines involve identifying and documenting the commonalities and variabilities of a set of related software systems, and using this information to develop reusable components. Architecture-based software reuse involves creating a software architecture that can be reused across multiple software applications or systems. Despite the potential benefits of software reuse, there are also challenges that can affect the development process. These challenges include issues related to finding, selecting, and adapting existing software components, as well as organizational and cultural challenges that can make it difficult to implement software reuse practices effectively. INTRODUCTION Software reuse is the practice of creating new software systems utilising older software artefacts. Reusing software helps to cut down on the expense, effort, and time needed to construct software systems. Due to the components prior testing, validation, and performance optimization, reuse of software components can result in increased productivity, improved quality, and lower development costs. The concept of software reuse has been around since the late 1960s, but it took several decades for the practice to become widely adopted. One of the early efforts to promote software reuse was the Ada programming language, which was designed to facilitate the development of reusable software components. However, the adoption of Ada and other early approaches to software reuse was limited by the lack of standardization and the complexity of developing and managing reusable components. Today, there are many software reuse techniques and practices that have been developed and refined over the years. Some of these include domain analysis, software product lines, component-based software engineering, service-oriented architecture, and open-source software. Each of these approaches has its own strengths and weaknesses, and choosing the right approach depends on the specific needs and requirements of the software development project. Despite the potential benefits of software reuse, there are still obstacles and restrictions that prevent it from being widely used. One of the most difficult issues is finding and selecting relevant reusable artefacts, which necessitates a thorough grasp of the system requirements, available components, and project applicability. Another problem is managing the complexity of reusable software systems, which can be difficult to understand and troubleshoot due to the interplay of numerous components. Furthermore, establishing compatibility between distinct software components can be difficult since they may have different interfaces, data formats, or implementation details. In assumption, software reuse is a significant study and development subject in software engineering. While the concept of software reuse has been around for decades, much work remains to be done in order to fully realise its potential. With the development of new approaches and methods, as well as the rising availability of reusable software components, software reuse is anticipated to continue to play a major role in software development in the coming years. International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056 Volume: 10 Issue: 07 | July 2023 www.irjet.net p-ISSN: 2395-0072
  • 2. © 2023, IRJET | Impact Factor value: 8.226 | ISO 9001:2008 Certified Journal | Page 208 REVIEW OF RELATED WORKS: Kaur and Sohal (2013) investigated how to construct a QR code library using software reuse approaches. They created the library utilising Android and other modern technologies, and their approach included applying design patterns, aspect- oriented integration, and other object-oriented programming structures to boost productivity, save time, and save development costs. They were able to accomplish these benefits by reusing code rather than beginning from scratch. Thapar et al (2014) proposed a quality model for assessing software components based on reusability. They identified three essential factors that are relevant in software selection and development: the quality properties preferred by stakeholders, the necessary improvements to software component reuse, and the integration of these properties into a proposed model. Their model helps to ensure that only quality properties that are necessary for improving software reuse are integrated into the development process. Ahmer et al (2014) conducted a literature review to gain a better understanding of the concept, benefits, and factors of software reusability. They identified 11 methods for software reuse, including design patterns, component-based design, application frameworks, legacy systems wrapping, service-driven systems, application product lines, COTS integration, and program libraries. Their review helped to consolidate existing knowledge on software reuse and provided a framework for future research. Varnell-Sarjeant and Amschler Andrews (2015) analyzed empirical studies to compare reuse results in embedded and non-embedded systems. They compared the success and failure of software reuse in these two types of systems and looked at factors such as reuse amount, effort, quality, performance, and overall achievement. Their findings help to identify the factors that contribute to successful software reuse and to understand the impact of the development approach on reuse success or failure.Xin and Yang (2017) discussed an engineering management software reuse framework that provides guidance on how to select types of reuses and how to manage the reuse process. They identified four types of software reuse and explained how reuse feasibility should be analysed. Their study highlighted the importance of key point management in the reuse of software and demonstrated how a careful approach to software reuse can provide significant benefits. Mateen et al. (2017) developed a reuse strategy for increasing software quality. They employed a verification and validation (V&V) method to control quality and accuracy throughout the software life cycle, followed by a questionnaire survey to determine the influence of their methodology on quality attributes, specifications, and design specifications. They discovered that using ad hoc, CBSE, MBSE, product line, and COTS reuse strategies resulted in considerable increases in software quality. Finally, these studies highlight the potential benefits of software reuse and provide guidance on how to achieve these benefits through careful planning, management, and selection of reuse techniques. While software reuse has been around for decades, there is still much to learn about how to make the most of this powerful tool for software development. EXISTING SYSTEM: Component-based development (CBD) is an existing system of software reuse. It is a software engineering approach that emphasizes the use of reusable software components. In CBD, software is built by assembling pre-existing software components, rather than writing code from scratch. CBD promotes the development of modular, reusable, and maintainable software systems. CBD involves creating software components that can be reused in different applications. These components are designed to be self-contained and can be easily integrated with other components. CBD promotes software reuse by allowing developers to create software systems by assembling pre-existing components, rather than writing code from scratch. This reduces development time and cost while improving software quality. CBD components can be developed in any programming language and can be implemented as standalone executables, dynamic link libraries, or web services. Examples of CBD frameworks include Microsoft's .NET Framework and Java Enterprise Edition. CBD has several advantages, including:  Reduced development time and cost  Improved software quality  Increased productivity  Improved maintainability and scalability  Improved interoperability International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056 Volume: 10 Issue: 07 | July 2023 www.irjet.net p-ISSN: 2395-0072
  • 3. © 2023, IRJET | Impact Factor value: 8.226 | ISO 9001:2008 Certified Journal | Page 209  Enhanced reuse of existing software components However, CBD also has some disadvantages, including:  Increased complexity due to the need for component integration  Limited availability of reusable components  Increased overhead due to component management and version control PROPOSED SYSTEM: Since there are several proposed systems of software reuse that can be used to improve the software development process, Service oriented architecture is being proposed. Service-oriented architecture (SOA) is a software architecture that emphasizes the use of loosely coupled services. SOA promotes software reuse by allowing developers to reuse existing services to build new software systems. SOA services can be implemented in any programming language and can be accessed using standard protocols such as SOAP and REST. SOA is an architectural style that encourages the use of services to enable communication between different software components. SOA can be presented as a technique to develop modular, reusable software components that can be shared and utilized in other applications when it comes to software reuse. SOA proposes a system that is composed of a set of services, each of which has a well-defined interface and functionality. These services can be reused in different applications, allowing for greater flexibility and efficiency in software development. SOA can be proposed as a way to create modular, reusable software components that can be shared and used in different applications. This approach promotes a flexible and efficient software development process that can save time and resources. SOFTWARE REUSE APPROACH: Software reuse technology is a software engineering approach that aims to reuse existing software components to create new software systems. There are several forms of software reuse, including system reuse, application reuse, component reuse, object reuse, and function reuse. System reuse involves selecting multiple applications that can be reused within a system. This approach requires the conceptual design, architectural design, system selection, interface development, integration and development to work parallel to governance and management policies. Application reuse entails changing a software system to meet the needs of several clients while preserving the source code. This form of reuse is created for wide market use and is sometimes referred to as commercial off-the-shelf (COTS) products. It employs a built-in configuration mechanism that allows a system to be developed to meet the needs of various customers. Component-based reuse divides software into atomic components. A repository of these components is used to build a new software system by selecting the appropriate component from the repository every time a new component is needed. Reusing software components that perform a certain activity, such as mathematical functions or class objects, is an example of object and function reuse. This way of reusing has been used in standard libraries for decades. It is particularly advantageous in areas such as mathematical algorithms and graphics, where the production of efficient objects and functions necessitates a specialised, pricey skill. CHALLENGES: The difficulties encountered during software reuse: It cites three separate studies that revealed distinct impediments and issues experienced during software reuse. International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056 Volume: 10 Issue: 07 | July 2023 www.irjet.net p-ISSN: 2395-0072
  • 4. © 2023, IRJET | Impact Factor value: 8.226 | ISO 9001:2008 Certified Journal | Page 210 B. Jalender and colleagues (2010) identified both technical and non-technical barriers to software reuse. Missing systematic component requirements, inability to guarantee the accuracy of a component, poor presentation of reusable pieces, and the absence of a software reconstitution technique are among the technical obstacles. The inability to engage, encourage, train, and reuse software, the lack of organisational support for software reuse institutionalisation, the difficulty in evaluating reuse benefits, and the need to address intellectual property rights and software reuse contractual issues are the non- technical barriers. Sajjah and Ali (2014) conducted a systematic study of 36 chosen studies and identified 8 challenges associated with software reuse during software application developments. The challenges highlighted by the study include domain analysis and modeling, lack of reuse skills and knowledge, lack of management support, high reuse cost, lack of component storage, lack of documentation, lack of proper IT infrastructure, and lack of team awareness. Making domain analysis and modeling the highest form of challenge faced during software reuse. Charles (2014) categorized the challenges of software reuse into technical, organizational, economical, and legal impediments. The technical challenges include issues such as the lack of proper documentation and testing of reusable components, while the organizational challenges are related to the lack of support for reuse initiatives, inadequate training, and the absence of a reuse culture within an organization. The economic challenges refer to the cost of developing and maintaining a reusable library, and the legal challenges include issues such as intellectual property rights and software reuse contractual problems. The study highlighted several technical, organizational, economical, and legal obstacles to software reuse. Technical obstacles include finding codes and designs that are difficult to comprehend, particularly complex classes, and understanding the architecture of reference, frameworks, models, and classes. Organizational barriers include a lack of coordinated reuse from organizations, as they often do not have clear directives and processes that describe when and how to use existing software in conformity with software development strategies. Economical hurdles include the cost of the manufacturer to supply reuse components, viewed as an investment, and the cost for the "re-user" to locate, integrate, and check reusable components. Legal issues are broken down into four parts: trade secret protection, patents for new and inventive technical innovations, copyright protection, and ethical responsibilities and obligations. The reuse has the responsibility to have a quality assurance of the software to inspect if the reused software complies with quality standards to prevent damage and breakdowns. Overall, software reuse can be challenging, but if the challenges are addressed, it can be a viable option. Software reuse is the practice of utilizing existing software artifacts, such as code, documentation, and design, to develop new software systems. According to Schenkelberg (2016), structured and modular programming is the most likely use of software reuse, as it uses a top-down analysis approach for problem-solving, modularization for program structure and organization, and structured code for the individual modules, which simplifies the task of programming and reduces complexity, thus improving programmer productivity. However, there are several challenges that come with software reuse. These challenges, as highlighted by Schenkelberg (2016), include increased maintenance costs, the need for longer software tool support, a "Not invented here" attitude that decreases acceptance, the operating cost of producing and sustaining a component library, the time required to select reusable software components, the need for more knowledge and training, and the necessity for a more diverse skillset. To overcome these challenges, software developers must prioritize quality properties when adopting a reuse strategy. According to Capilla et al (2019), the most popular quality properties are readability, functional stability, performance interoperability, security, privacy, portability, efficiency, and modularity. If these properties are not put in place, software reuse can become challenging. Mäkitalo et al (2020) identified some downsides to software reuse, such as compatibility problems that can lead to technical debt, reuse of copy-paste causing problems of traceability, dependencies of snowball that can affect the reuse of code, reusable software assets often lacking maintenance, open package repositories causing security concerns, and General Public Licenses (GPL) that can be challenging to understand. In conclusion, software reuse is a positive practise that can increase productivity while decreasing complexity. However, it is not without difficulties, and developers must prioritise quality properties while also addressing drawbacks in order to make software reuse feasible and successful. International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056 Volume: 10 Issue: 07 | July 2023 www.irjet.net p-ISSN: 2395-0072
  • 5. © 2023, IRJET | Impact Factor value: 8.226 | ISO 9001:2008 Certified Journal | Page 211 DISCUSSIONS: Software reuse is an essential component of software engineering because it can result in significant benefits such as reduced development time, lower costs, greater software quality, and increased productivity. To enjoy these benefits, software architectures, design patterns, requirements specifications, and design documents must be rigorously documented and designed. The reuse of software components may not always be possible due to various factors such as technical obstacles, organizational barriers, economic hurdles, and legal issues. However, by employing the proper tactics, such as structured and modular programming, reusing theories and frameworks that provide the software's backbone, and reusing theories and frameworks that provide the software's backbone, these obstacles can be solved. To address the challenges connected with software reuse, software development techniques should include software reuse as an integral component of the development process. This includes meticulously documenting software components and architectures, creating libraries of reusable components, and encouraging reuse within the organisation. By executing these measures, software development teams can reduce maintenance costs, shorten development time, improve software quality, and increase productivity. In conclusion, software reuse is a vital aspect of software engineering that can lead to significant benefits. It is essential to document and systematically design software components, architectures, and design patterns to reap the full benefits of software reuse. While there are challenges associated with software reuse, these can be overcome by adopting the right strategies and incorporating software reuse into the software development process. CONCLUSION: In conclusion, software reuse implemented a service-oriented architecture which consists of various benefits, including modular and reusable components, flexibility, loose coupling, service discovery, interoperability, and scalability. Finding, selecting, and adapting existing components, as well as organisational and cultural aspects, provide obstacles. To reap the benefits of SOA for software reuse, which can considerably enhance software development quality and productivity, careful planning is required. Overall, SOA allows for the development of modular, reusable software components that increase flexibility and efficiency. Its weak coupling allows for simple upgrades and replacements without affecting other components, and service discovery protocols make interoperability possible. The modular nature of SOA enables scalability, but challenges in finding and adapting components and organizational factors need to be addressed. Careful consideration and planning are crucial to harness the benefits of software reuse with SOA, resulting in enhanced quality and productivity in software development. References Ahmar, I., Abualkishik, A., & Yusof, M. (2014). Taxonomy, Definition, Approaches, Benefits, Reusability Levels, Factors and Adaption of Software Reusability: A Review of The Research Literature. Journal of Applied Sciences, 14. https://doi.org/10.3923/jas.2014.2396.2421 B. Jalender, N. Gowtham, Kumar, K. Praveen, K. Murahari, & K. Sampath. (2010). Technical Impediments to Software Reuse. International Journal of Engineering Science and Technology, 2(11). Capilla, R., Gallina, B., Cetina, C., & Favaro, J. (2019). Opportunities for Software Reuse in An Uncertain World: From Past to Emerging Trends. Journal of Software: Evolution and Process, 31(8). https://doi.org/10.1002/smr.2217 Gacek, C. (Ed.). (2002). Software Reuse: Methods, Techniques, And Tools: 7th International Conference, ICSR-7 Austin, TX, USA, April 15–19, 2002 Proceedings (Vol. 2319). Springer Berlin Heidelberg. https://doi.org/10.1007/3-540-46020-9 Jalender, B., Govardhan, D., & Premchand, P. (2010). A Pragmatic Approach to Software Reuse. Journal of Theoretical and Applied Information Technology, 14, 10. Kaur, A., & Sohal, H. (2013). QR Code Library on The Base of Software Reuse Approach. International Journal of Science and Engineering Applications, 2, 44–48. https://doi.org/10.7753/ijsea0203.1002 International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056 Volume: 10 Issue: 07 | July 2023 www.irjet.net p-ISSN: 2395-0072
  • 6. © 2023, IRJET | Impact Factor value: 8.226 | ISO 9001:2008 Certified Journal | Page 212 Keswani, R., Joshi, S., & Jatain, A. (2014). Software Reuse in Practice. 2014 Fourth International Conference on Advanced Computing & Communication Technologies, 159–162. https://doi.org/10.1109/acct.2014.57 Kim, Y., & Stohr, E. A. (1992). Software Reuse: Issues and Research Directions. Proceedings of the Twenty-Fifth Hawaii International Conference on System Sciences, 612–623 Vol.4. https://doi.org/10.1109/HICSS.1992.183360 Mäkitalo, N., Taivalsaari, A., Kiviluoto, A., Mikkonen, T., & Capilla, R. (2020). On Opportunistic Software Reuse. Computing, 102(11), 2385–2408. International Research Journal of Engineering and Technology (IRJET) e-ISSN: 2395-0056 Volume: 10 Issue: 07 | July 2023 www.irjet.net p-ISSN: 2395-0072