Podcast
Questions and Answers
What is a key benefit of adopting a design process based on systematic software reuse?
What is a key benefit of adopting a design process based on systematic software reuse?
- Relying solely on custom-built components
- Ignoring the concept of software reuse for originality
- Achieving better software more quickly and at a lower cost (correct)
- Developing software from scratch for each project
What is application system reuse in software engineering?
What is application system reuse in software engineering?
- Creating separate applications with no shared components
- Developing a new application system for each project
- Reusing the entire application system either as COTS or in application families (correct)
- Ignoring the use of existing application systems
What does 'Not-invented-here syndrome' refer to in software engineering?
What does 'Not-invented-here syndrome' refer to in software engineering?
- A practice of always using ready-made components
- A mindset that encourages extensive software reuse
- A tendency to rewrite components instead of reusing existing ones (correct)
- A belief that in-house development is always better than external solutions
What is a common problem associated with lack of tool support for software reuse?
What is a common problem associated with lack of tool support for software reuse?
How can the absence of source code for reused software affect maintenance costs?
How can the absence of source code for reused software affect maintenance costs?
What does 'Component reuse' refer to in the context of software engineering?
What does 'Component reuse' refer to in the context of software engineering?
Why is writing original software seen as more challenging than reusing other people's software?
Why is writing original software seen as more challenging than reusing other people's software?
What is one of the problems associated with populating a reusable component library?
What is one of the problems associated with populating a reusable component library?
Which factor for systematic software reuse requires upper management support?
Which factor for systematic software reuse requires upper management support?
What must engineers be reasonably confident of before they include a component search in their normal development process?
What must engineers be reasonably confident of before they include a component search in their normal development process?
What is a potential problem associated with the legal factor influencing reuse?
What is a potential problem associated with the legal factor influencing reuse?
How many times do some artifacts need to be reused to recoup the extra cost of developing reusable components according to Favaro's study?
How many times do some artifacts need to be reused to recoup the extra cost of developing reusable components according to Favaro's study?
Flashcards are hidden until you start studying
Study Notes
Systematic Software Reuse
- One key benefit of adopting a design process based on systematic software reuse is the reduction of development costs and time.
Application System Reuse
- Application system reuse refers to the reuse of entire software applications or systems in software engineering.
Not-invented-here Syndrome
- The 'Not-invented-here syndrome' refers to the reluctance of developers to use existing software components or reuse code because they were not created in-house.
Tool Support for Software Reuse
- A common problem associated with lack of tool support for software reuse is the difficulty in finding and integrating reusable components.
Maintenance Costs
- The absence of source code for reused software can increase maintenance costs because it can be difficult to modify or debug the reused code.
Component Reuse
- Component reuse refers to the reuse of software components, such as objects, modules, or subsystems, in the context of software engineering.
Original Software vs. Reused Software
- Writing original software is often seen as more challenging than reusing other people's software because it requires more creativity, expertise, and effort.
Reusable Component Library
- One of the problems associated with populating a reusable component library is the difficulty in defining a common interface or standard for the components.
Upper Management Support
- Upper management support is a crucial factor for systematic software reuse, as it requires a strategic decision to invest in reuse and a commitment to change the development process.
Component Search
- Engineers must be reasonably confident of the quality and reliability of the components before they include a component search in their normal development process.
Legal Factor
- A potential problem associated with the legal factor influencing reuse is the risk of intellectual property infringement or licensing issues when reusing software components.
Reuse Costs
- According to Favaro's study, some artifacts need to be reused at least 3-5 times to recoup the extra cost of developing reusable components.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.