Software Engineering - Coping with Change in Large Projects
18 Questions
0 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 a key factor to consider in large, complex, long-lifetime systems according to the text?

  • Developing reusable components from scratch
  • Incremental development for each team
  • Establishing a stable framework or architecture (correct)
  • Defining individual team responsibilities without an architecture

Which software engineering approach focuses on integrating reusable components instead of developing them anew?

  • Extreme Programming
  • Reuse-Oriented Software Engineering (correct)
  • Waterfall Model
  • Agile Software Development

What are COTS systems in the context of software components?

  • Reusable commercial off-the-shelf systems (correct)
  • Web services for remote invocation
  • Components that are developed from scratch
  • Stand-alone software systems configured for a specific environment

What distinguishes web services developed according to service standards as a software component?

<p>Available for remote invocation (B)</p> Signup and view all the answers

Which type of software components is designed to be integrated with frameworks like .NET or J2EE?

<p>Collections of objects developed as a package (A)</p> Signup and view all the answers

Why is planning in advance crucial for developing large, complex, long-lifetime systems according to the text?

<p>To establish a stable framework or architecture (C)</p> Signup and view all the answers

What is the primary reason for lack of control over system evolution when using reusable components?

<p>The organization has no control over updates to the reusable components (D)</p> Signup and view all the answers

What is the purpose of developing a prototype system before committing to high software production costs?

<p>To validate the software requirements with customers (C)</p> Signup and view all the answers

Which approach is primarily concerned with accommodating changes at a relatively low cost?

<p>Change tolerance (D)</p> Signup and view all the answers

What is the key advantage of incremental development in the context of accommodating changes?

<p>Proposed changes can be implemented in increments that have not yet been developed (A)</p> Signup and view all the answers

Which of the following is NOT a reason for change in large software projects mentioned in the text?

<p>Changes in development team composition (C)</p> Signup and view all the answers

What is the primary goal of change avoidance activities in the software process?

<p>To anticipate possible changes before significant rework is required (D)</p> Signup and view all the answers

Which of the following is NOT a key benefit of the incremental development approach compared to the waterfall model?

<p>The process is more visible, allowing managers to measure progress regularly. (D)</p> Signup and view all the answers

What is the most common approach for the development of application systems today?

<p>A mixture of plan-driven and agile approaches (A)</p> Signup and view all the answers

Which of the following is a problem with the incremental approach from a management perspective?

<p>The process is not visible, as managers need regular deliverables to measure progress. (B)</p> Signup and view all the answers

What is the primary reason that incorporating further software changes becomes increasingly difficult and costly in the incremental approach?

<p>Unless time and money is spent on refactoring to improve the software, regular change tends to corrupt its structure. (A)</p> Signup and view all the answers

What is the main advantage of the incremental development approach compared to the waterfall model in terms of software delivery?

<p>More rapid delivery and deployment of useful software to the customer is possible, even if all of the functionality has not been included. (B)</p> Signup and view all the answers

Which of the following is a problem that can arise with the incremental approach if refactoring is not performed?

<p>System structure tends to degrade as new increments are added, making incorporating further changes increasingly difficult and costly. (B)</p> Signup and view all the answers

More Like This

Use Quizgecko on...
Browser
Browser