Software Reuse Chapter 15 Quiz
32 Questions
25 Views

Choose a study mode

Play Quiz
Study Flashcards
Spaced Repetition
Chat to lesson

Podcast

Play an AI-generated podcast conversation about this lesson

Questions and Answers

What is the main focus of software reuse?

  • Systematic software reuse (correct)
  • Application reuse
  • Component reuse
  • Original development
  • What does 'System reuse' involve in software engineering?

  • Reusing small-scale software components
  • Reusing application families
  • Reusing complete systems (correct)
  • Reusing single objects or functions
  • Which type of reuse involves incorporating an application without any change into others?

  • Component reuse
  • Object and function reuse
  • System reuse
  • Application reuse (correct)
  • What has there been a major switch to in the past 10 years in software engineering?

    <p>Systematic software reuse</p> Signup and view all the answers

    What is one of the benefits of software reuse mentioned in the text?

    <p>Reduced process risk</p> Signup and view all the answers

    Which type of reuse involves reusing components of an application from sub-systems to single objects?

    <p>Component reuse</p> Signup and view all the answers

    What is the main aim of systematic software reuse?

    <p>Achieving better software more quickly and at lower cost</p> Signup and view all the answers

    Why is bringing a system to market as early as possible important?

    <p>To reduce the margin of error in project cost estimation</p> Signup and view all the answers

    What is one of the problems with software reuse described in the text?

    <p>Lack of tool support</p> Signup and view all the answers

    How does reusing software contribute to lower development costs?

    <p>By making fewer lines of code have to be written</p> Signup and view all the answers

    What is one benefit of reusing software components in terms of standards compliance?

    <p>Implementation of user interface standards</p> Signup and view all the answers

    Why is effective use of specialists mentioned as a benefit of software reuse?

    <p>To improve dependability</p> Signup and view all the answers

    What is a problem related to creating, maintaining, and using a component library for software reuse?

    <p>Not-invented-here syndrome</p> Signup and view all the answers

    How does reusing software contribute to increased dependability?

    <p>'Reused software has been tried and tested in working systems'</p> Signup and view all the answers

    'Populating a reusable component library' can be expensive because...

    <p>'Some software tools do not support reuse'</p> Signup and view all the answers

    What is one problem with the reuse of software components in terms of maintenance costs?

    <p>'Finding, understanding, and adapting reusable components'</p> Signup and view all the answers

    What does the dependability of a system reflect?

    <p>The user's degree of trust in the system</p> Signup and view all the answers

    What attributes does dependability cover?

    <p>Reliability, availability, and security</p> Signup and view all the answers

    Why may undependable systems be rejected by their users?

    <p>Because they are unreliable, unsafe, or insecure</p> Signup and view all the answers

    What may happen if a system failure leads to economic losses or physical damage?

    <p>The costs of system failure may be very high</p> Signup and view all the answers

    What is the most important system property for many computer-based systems?

    <p>Dependability</p> Signup and view all the answers

    What are some related attributes to dependability?

    <p>Reliability and availability</p> Signup and view all the answers

    What is the principal dependability property that reflects the system's ability to maintain the continuity of critical services in the presence of disruptive events?

    <p>Resilience</p> Signup and view all the answers

    What is a judgment of how likely it is that the system can resist accidental or deliberate intrusions?

    <p>Security</p> Signup and view all the answers

    Reflects the extent to which the system can be adapted to new requirements?

    <p>Maintainability</p> Signup and view all the answers

    What is the probability that the system will be up and running and able to deliver useful services to users?

    <p>Availability</p> Signup and view all the answers

    Which dependability property reflects a judgment of how well a system can maintain the continuity of its critical services in the presence of disruptive events?

    <p>Resilience</p> Signup and view all the answers

    What reflects the extent to which user input errors can be avoided and tolerated?

    <p>Error tolerance</p> Signup and view all the answers

    What reflects a judgment of how likely it is that the system will cause damage to people or its environment?

    <p>Safety</p> Signup and view all the answers

    What reflects the extent to which the system can be repaired in the event of a failure?

    <p>Repairability</p> Signup and view all the answers

    What reflects a judgment of how likely it is that the system can resist accidental or deliberate intrusions?

    <p>Security</p> Signup and view all the answers

    What is a judgment of how likely it is that the system will cause damage to people or its environment?

    <p>Safety</p> Signup and view all the answers

    Study Notes

    Software Reuse

    • The main focus of software reuse is to reduce the development time and cost by reusing existing software components.
    • System reuse involves reusing a complete system or subsystems without any modification.

    Types of Reuse

    • Black-box reuse involves incorporating an application without any change into others.
    • White-box reuse involves reusing components of an application from sub-systems to single objects.

    Benefits of Software Reuse

    • One of the benefits of software reuse is reduced development costs.
    • Reusing software components contributes to lower development costs by reducing the amount of code that needs to be written and tested.
    • Reusing software components also contributes to increased dependability.

    Dependability

    • Dependability reflects the system's ability to avoid failures and maintain the continuity of critical services in the presence of disruptive events.
    • Attributes covered by dependability include availability, reliability, maintainability, and security.
    • Undependable systems may be rejected by their users.
    • System failure can lead to economic losses or physical damage.

    Attributes of Dependability

    • Availability is the probability that the system will be up and running and able to deliver useful services to users.
    • Reliability reflects a judgment of how likely it is that the system can resist accidental or deliberate intrusions.
    • Maintainability reflects the extent to which the system can be repaired in the event of a failure.
    • Security reflects a judgment of how likely it is that the system can resist accidental or deliberate intrusions.
    • Safety reflects a judgment of how likely it is that the system will cause damage to people or its environment.
    • Fault tolerance reflects the extent to which the system can maintain the continuity of its critical services in the presence of disruptive events.

    System Properties

    • The most important system property for many computer-based systems is dependability.
    • Related attributes to dependability include availability, reliability, maintainability, security, and safety.

    Studying That Suits You

    Use AI to generate personalized quizzes and flashcards to suit your learning preferences.

    Quiz Team

    Description

    Test your knowledge on software reuse, including topics like the reuse landscape, application frameworks, software product lines, and application system reuse. Understand the concept of designing systems by composing existing components used in other systems for better and quicker software development.

    More Like This

    Use Quizgecko on...
    Browser
    Browser