Software Engineering Tenth Edition Quiz
8 Questions
1 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 purpose of the Mentcare system?

To provide medical staff with timely information to support the treatment of patients and to generate management information that allows health service managers to assess performance against local and government targets.

What is an example of an embedded system?

  • A medical information system
  • A digital learning environment
  • A wilderness weather station
  • An insulin pump (correct)

Which of these is NOT a fundamental idea of software engineering?

  • A managed and understood development process
  • Understanding and managing the requirements are important.
  • The software should be written in a dynamic language. (correct)
  • Dependability and performance are important for all types of software.
  • You should make effective use of existing resources.

What are some of the challenges presented with software engineering?

<p>Software reuse (A), Increasing system complexity (B), Software reliability (C), Maintaining software systems (D), Software cost (E), Software security (F)</p> Signup and view all the answers

Which of the following is a software engineering principle?

<p>The use of existing resources</p> Signup and view all the answers

What is the name of the organization that proposes a fundamental meta-process, that can be instantiated for a wide variety of specific software engineering methods?

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

What is meant by the "Drone Revolution?"

<p>The use of unmanned flying machines, known as drones, that employ various types of software systems to see, hear, and act.</p> Signup and view all the answers

What is the difference between professional software development and custom software development?

<p>Generic software products are produced and sold on the open market, while custom software is designed and implemented for a single customer. The key difference is that the organization that develops the software controls the software specification for generic products. In the case of custom software, the customer controls the software specification.</p> Signup and view all the answers

Flashcards

Software Engineering

A systematic approach to designing, developing, and maintaining software.

Software Specification

The initial state of software development where the software to be produced is defined along with any operational constraints.

Software Development

The phase where the software is designed and coded.

Software Validation

The process of verifying that the software meets the specified requirements.

Signup and view all the flashcards

Software Evolution

The process of modifying existing software to meet changing customer demands or new market requirements.

Signup and view all the flashcards

Interactive Transaction-Based Application

A software system that is accessed by users from their own computers, phones, or tablets.

Signup and view all the flashcards

Embedded Control System

Software that controls and manages hardware devices.

Signup and view all the flashcards

Batch Processing System

A business system designed to process large amounts of data together.

Signup and view all the flashcards

Entertainment Systems

Software systems designed for user entertainment, primarily games.

Signup and view all the flashcards

Systems of Systems

A computer system composed of multiple connected software systems, some of which may be generic and some custom-made.

Signup and view all the flashcards

Software Process

A set of activities that lead to the production of a software product.

Signup and view all the flashcards

Acceptability

Good software should be readily accepted by its targeted users due to its understandability, usability, and compatibility with other systems.

Signup and view all the flashcards

Dependability and Security

The ability of a software system to function reliably, securely, and safely.

Signup and view all the flashcards

Efficiency

Software should be efficient in its use of system resources, promoting responsiveness, quick processing times, and optimal resource utilization.

Signup and view all the flashcards

Maintainability

Software should be written in a way that allows it to adapt to changing customer needs or market demands over time.

Signup and view all the flashcards

Software Engineering Ethics

The principles and practices that govern ethical conduct in the software engineering profession.

Signup and view all the flashcards

Confidentiality Agreement

A formal agreement that outlines the obligations and responsibilities of both the software developer and the client.

Signup and view all the flashcards

Competence

The ability to provide accurate and honest information about one's skills and knowledge in the software engineering field.

Signup and view all the flashcards

Intellectual Property Rights

The legal rights that govern the ownership and use of intellectual property such as patents and copyrights.

Signup and view all the flashcards

Customized Software

A software system that is specifically designed and implemented for a particular customer, rather than being a generic product sold on the open market.

Signup and view all the flashcards

Generic Software Product

A software system that is developed by an organization and sold on the open market, potentially to any customer that purchases it.

Signup and view all the flashcards

Stand-Alone Application

A software system that runs on a personal computer or mobile device and contains all necessary functionality without requiring a network connection.

Signup and view all the flashcards

Software Development Process

A process, sometimes called a software process, is a systematic approach that is adopted by software engineers which involves multiple stages, from planning to execution, that culminate in the creation of a software product.

Signup and view all the flashcards

Computer Science

The branch of computer science focused on the fundamental principles, theories, and concepts that underlie computers and software systems.

Signup and view all the flashcards

System Engineering

An area of engineering concerned with the overall development and evolution of complex systems, taking into account both hardware and software systems along with process engineering.

Signup and view all the flashcards

Systems of Systems

A collection of software components and systems that work together to deliver a larger, more complex functionality.

Signup and view all the flashcards

Resilience

The capability of a software system to adapt and survive, even in the face of unexpected events, errors, or attacks.

Signup and view all the flashcards

Agile Software Development

The practice of building software in an iterative, incremental manner, where small units of functionality are developed and delivered in short cycles, promoting rapid feedback and adaptation to changing requirements.

Signup and view all the flashcards

Scrum

A popular agile framework that emphasizes teamwork, short iterations, and continuous improvement in software development.

Signup and view all the flashcards

User Stories

Breaking down complex software development tasks into smaller, manageable units of functionality, typically represented as user stories.

Signup and view all the flashcards

Test-Driven Development

A software development practice where tests are written before the code itself, guiding the development process and ensuring testability.

Signup and view all the flashcards

Component-Based Software Engineering

A style of software development where small, independent units of code are combined to form a larger application, promoting code reusability and modularity.

Signup and view all the flashcards

Study Notes

Book Information

  • Title: Software Engineering
  • Edition: Tenth
  • Author: Ian Sommerville
  • Publisher: Pearson

Preface

  • Progress in software engineering over the past 50 years has been significant, impacting national utilities, infrastructure, and communication systems.
  • Software engineering is crucial for addressing present-day societal challenges like climate change, resource depletion, and population growth.
  • Software projects sometimes have issues with delivery time and cost overruns, but significant progress has been made in methods and technologies.
  • The current edition of the book emphasizes core principles, avoiding an evangelical position on specific approaches (agile or formal methods) like the previous editions, and reflecting industry practice.
  • This edition includes updated and added chapters on agile software engineering.
  • More chapters on resilience engineering, systems of systems, and service-oriented software engineering have been included.
  • Chapters covering reliability, safety, and security have been reorganized.
  • Additional supplementary material is available on the book's website, including videos.

Changes from the 9th Edition

  • The chapter on agile software engineering has been extensively updated, discussing Scrum.
  • Other chapters have been updated to reflect the increased use of agile methods.
  • New chapters have been added on resilience engineering, systems engineering, and systems of systems.
  • Chapters on reliability, safety, and security have been reorganized and updated.
  • New material on RESTful services has been added to the chapter on service-oriented software engineering.
  • The chapter on configuration management has been revised and updated with new material on version control systems like Git.
  • Process improvement and aspect-oriented software engineering chapters have been moved to the book's website as web chapters.
  • Supplementary videos and YouTube links have been added to support specific content.

Studying That Suits You

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

Quiz Team

Related Documents

Description

Test your knowledge on the key concepts from the Tenth Edition of 'Software Engineering' by Ian Sommerville. This quiz covers updates on agile software engineering, resilience engineering, and the core principles essential for modern software development. Challenge yourself and see how much you know about the current practices in the field!

More Like This

Use Quizgecko on...
Browser
Browser