Software Reuse Chapter 15 Quiz

FoolproofMesa avatar
FoolproofMesa
·
·
Download

Start Quiz

Study Flashcards

32 Questions

What is the main focus of software reuse?

Systematic software reuse

What does 'System reuse' involve in software engineering?

Reusing complete systems

Which type of reuse involves incorporating an application without any change into others?

Application reuse

What has there been a major switch to in the past 10 years in software engineering?

Systematic software reuse

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

Reduced process risk

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

Component reuse

What is the main aim of systematic software reuse?

Achieving better software more quickly and at lower cost

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

To reduce the margin of error in project cost estimation

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

Lack of tool support

How does reusing software contribute to lower development costs?

By making fewer lines of code have to be written

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

Implementation of user interface standards

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

To improve dependability

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

Not-invented-here syndrome

How does reusing software contribute to increased dependability?

'Reused software has been tried and tested in working systems'

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

'Some software tools do not support reuse'

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

'Finding, understanding, and adapting reusable components'

What does the dependability of a system reflect?

The user's degree of trust in the system

What attributes does dependability cover?

Reliability, availability, and security

Why may undependable systems be rejected by their users?

Because they are unreliable, unsafe, or insecure

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

The costs of system failure may be very high

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

Dependability

What are some related attributes to dependability?

Reliability and availability

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?

Resilience

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

Security

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

Maintainability

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

Availability

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?

Resilience

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

Error tolerance

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

Safety

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

Repairability

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

Security

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

Safety

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.

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.

Make Your Own Quizzes and Flashcards

Convert your notes into interactive study material.

Get started for free
Use Quizgecko on...
Browser
Browser