Software Engineering Fundamentals: Q&A, Exams of Biology

A concise overview of fundamental software engineering concepts through a question-and-answer format. It covers topics such as software failures, software attributes, software engineering activities, and the differences between software engineering and related fields like computer science and system engineering. It also addresses key challenges, costs, and the impact of the web on software engineering practices. The document further defines various types of software products and systems, ethical considerations, and specific system types like embedded systems and information systems. This material is suitable for students and professionals seeking a quick review of essential software engineering principles.

Typology: Exams

2025/2026

Available from 09/17/2025

tutor-lee-1
tutor-lee-1 🇺🇸

4.3

(3)

11K documents

1 / 7

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Sommerville Software
Engineering 9th ed. Chapter 1
with complete verified solutions
2025
Two reasons for software failures - answer Increasing demands, low
expectations
Software Engineering - answer The process of developing computer
programs and all associated documentation and configuration data that is
required to make these programs operate correctly
What is software? - answer Computer programs and associated
documentation. Software products may be developed for a particular
customer or may be developed for a general market.
What are the attributes of good software? - answer Good software should
deliver the required functionality and performance to the user and should
be maintainable, dependable, and usable.
What is software engineering? - answer Software engineering is an
engineering discipline that is concerned with all aspects of software
production.
What are the fundamental software engineering
activities? - answer Software specification, software development,
software validation, and software evolution.
What is the difference between software
engineering and computer science? - answer Computer science focuses on
theory and
pf3
pf4
pf5

Partial preview of the text

Download Software Engineering Fundamentals: Q&A and more Exams Biology in PDF only on Docsity!

Sommerville Software

Engineering 9th ed. Chapter 1

with complete verified solutions

Two reasons for software failures - answer Increasing demands, low expectations Software Engineering - answer The process of developing computer programs and all associated documentation and configuration data that is required to make these programs operate correctly What is software? - answer Computer programs and associated documentation. Software products may be developed for a particular customer or may be developed for a general market. What are the attributes of good software? - answer Good software should deliver the required functionality and performance to the user and should be maintainable, dependable, and usable. What is software engineering? - answer Software engineering is an engineering discipline that is concerned with all aspects of software production. What are the fundamental software engineering activities? - answer Software specification, software development, software validation, and software evolution. What is the difference between software engineering and computer science? - answer Computer science focuses on theory and

fundamentals; software engineering is concerned with the practicalities of developing and delivering useful software. What is the difference between software engineering and system engineering? - answer System engineering is concerned with all aspects of computer-based systems development including hardware, software, and process engineering. Software engineering is part of this more general process. What are the key challenges facing software engineering? - answer Coping with increasing diversity, demands for reduced delivery times, and developing trustworthy software. What are the costs of software engineering? - answer Roughly 60% of software costs are development costs; 40% are testing costs. For custom software, evolution costs often exceed development costs. What are the best software engineering techniques and methods? - answer While all software projects have to be professionally managed and developed, different techniques are appropriate for different types of system. For example, games should always be developed using a series of prototypes whereas safety critical control systems require a complete and analyzable specification to be developed. You can't, therefore, say that one method is better than another. What differences has the Web made to software engineering? - answer The Web has led to the availability of software services and the possibility of developing highly distributed service-based systems. Web-based systems development has led to important advances in programming languages and software reuse.

  1. Software validation, where the software is checked to ensure that it is what the customer requires.
  2. Software evolution, where the software is modified to reflect changing customer and market requirements. General Issues facing Software - answer Heterogeneity - flexibility of software to perform well on different systems, devices, OS versions, etc. Business and social change - needs of business and consumers are constantly evolving. Technological advances drive change in demand to software, which when delivered drives a recursive change in the needs of software users. Security and trust - software must not be malicious, must protect users from invasion of privacy, security risks, leaks, etc. Stand-alone applications - answer Application systems that run on a local computer, such as a PC. They include all necessary functionality and do not need to be connected to a network Interactive transaction-based applications - answer Applications that execute on a remote computer and that are accessed by users from their own PCs or terminals. Obviously, these include web applications such as e- commerce applications where you can interact with a remote system to buy goods and services Embedded control systems - answer Software control systems that control and manage hardware devices. Numerically, there are probably more embedded systems than any other type of system. Batch processing systems - answer Business systems that are designed to process data in large batches. They process large numbers of individual inputs to create corresponding outputs.

Entertainment systems - answer Systems that are primarily for personal use and which are intended to entertain the user. Most of these systems are games of one kind or another. Systems for modeling and simulation - answer Systems that are developed by scientists and engineers to model physical processes or situations, which include many, separate, interacting objects. These are often computationally intensive and require high performance parallel systems for execution Data collection systems - answer Systems that collect data from their environment using a set of sensors and send that data to other systems for processing. The software has to interact with sensors and often is installed in a hostile environment such as inside an engine or in a remote location. Systems of systems - answer Systems that are composed of a number of other software systems. Some of these may be generic software products, such as a spreadsheet program. Other systems in the assembly may be specially written for that environment. Confidentiality - answer You should normally respect the confidentiality of your employers or clients irrespective of whether or not a formal confidentiality agreement has been signed Competence - answer You should not misrepresent your level of competence. You should not knowingly accept work that is outside your competence Intellectual property rights - answer You should be aware of local laws governing the use of intellectual property such as patents and copyright. You should be careful to ensure that the intellectual property of employers and clients is protected

and provide access to a database of information. Issues in information systems include security, usability, privacy, and maintaining data integrity sensor-based data collection system - answer system whose primary purpose is to collect data from a set of sensors and process that data in some way. The key requirements of such systems are reliability, even in hostile environmental conditions, and maintainability