CS 324 DIY Questions
Which of the following is NOT one of the main 5 UML diagram types? a. Activity diagrams b. Use case diagrams c. State diagrams d. Map diagrams
ANS: d
Which of the following is NOT one of the principal dimensions to dependability? a. Availability b. Reliability c. Safety d. Persistence
ANS: d
Which of the following best describes the fault-error-failure model proposed by Brian Randell? A) Errors lead directly to system failures B) Faults always result in system errors C) Human errors cause faults, which lead to errors, and errors lead to system failures D) System failures occur independently of faults and errors
Ans: C
In what situation might system availability be more critical than system reliability? A) ATM network for a bank B) Software used for word processing C) Aircraft control software D) National critical infrastructure
Ans: A
What are the 3 automated test components? a. Setup part, call part, assertion part b. Setup part, release part, relay part c. Relay part, assertion part, diagnosis part d. Diagnosis part, call part, release part
Ans: A
What are the two kinds of design model? a. Structural and dynamic models b. Dynamic and peer-to-peer models c. Structural and static models d. Static and peer-to-peer models
Ans: A
What is an Architectural pattern? A) A description of a system's organizational structure B) A method for documenting software architecture C) A standardized notation for architectural modeling D) A graphical representation of software components
Ans: A
What is software inspection? a. People examining the source representation with the aim of discovering anomalies and defects b. A setup part, where you initialize the system with the test case, namely the inputs and expected outputs. c. Choose inputs that force the system to generate all error messages d. A stage in the testing process in which users or customers provide input and advice on system testing.
Ans: A
What is system modeling primarily used for during the requirements engineering process? A) To stimulate and focus discussions among software engineers B) To generate a complete system implementation C) To document the system's structure and operation D) To develop formal mathematical models of the system
Ans: A
What is the correct definition for Equipment in an STS stack? a. Hardware devices, some of which may be computers. Most devices will include an embedded system of some kind. b. Middleware that provides access to remote systems and databases. c. Specific functionality to meet some organization requirements. d. Provides a set of common facilities for higher levels in the system.
Ans: A
Which of the following is NOT a cause of failure? a. Operational Failure b. Software Failure c. Runtime failure d. Hardware failure
Ans: C
Which of the following is NOT a system quality assessment? a. Business process assessment b. Application assessment c. Integrity assessment d. Environment assessment
Ans: C
Which of the following is NOT a validity check? a. Range checks b. Reasonableness checks c. Underrepresentation checks d. Size checks
Ans: C
When might the use of the Unified Modeling Language (UML) be less useful in software design? a. When developing software in an object-oriented language like Java. b. When implementing a system using off-the-shelf packages. c. When dealing with dynamically typed languages like Python. d. When documenting design models.
ANS: C
Which diagram type is used to model interactions between a system and its external agents? A. Class Diagram B. State Diagram C. Use Case Diagram D. Sequence Diagram
ANS: C
Which is NOT a way to identify object-oriented systems? A. Use a grammatical analysis of the system to be created and constructed B. Use a scenario based analysis C. Objects and Attributes are verbs D. Use tangible entities in the application
ANS: C
Which is NOT one of the principles mentioned in the agile manifesto? A. The software is developed in increments, with the customer specifying the requirements to be included in each increment. B. Customers should be closely involved throughout the development process. C. Team members should work using a prescriptive process, rather than being left to develop their own ways of working. D. Focus on simplicity in both the software being developed and in the development process.
ANS: C
Which is NOT one of the three stages of testing? a. Development testing b. Release testing c. Competitor testing d. User testing
ANS: C
Which of the following are NOT an example of a process model? A. The waterfall model B. Incremental Development C. Decremental Development D. Integration and Configuration
ANS: C
Which of the following is NOT a problem that clients face while using agile development? A. Designed for smaller co-located teams B. More efficient for newly made software development rather than maintenance of the software C. Agile development is perfect and has no problems that can occur D. The informality of agile development is incompatible with the actual legal contract that are used by larger companies
ANS: C
Which of the following is NOT a type of application? A. Embedded Control System B. Stand-Alone C. Generic Product D. Batch Processing System
ANS: C
Which of the following is NOT an advantage of model-driven architecture (MDA)? a. Reduces likelihood of errors b. Speeds up design process c. Specializes in one specific programming language d. Creates reusable platform-independent application models
ANS: C
Which of the following is NOT one of the checks you can perform to test inputs? A. Size checks B. Representation checks C. Unreasonableness checks D. Range checks
ANS: C
Which of the following is NOT one of the non-functional requirements of the system when choosing architectural style and structure? A. Security B. Maintainability C. Accessibility D. Performance
ANS: C
Which of the following is NOT one of the stages of commercial software testing? A. User testing B. Development testing C. Algorithm testing D. Release testing
ANS: C
Which of the following is NOT part of the five principal dimensions of dependability? A. Reliability B. Resilience C. Accountability D. Availability
ANS: C
Which of the following is NOT part of the four strategic ways for evolving systems? A. Replace part of the old system with a new system B. Scrap the system C. Reengineer the system but worsen the system further D. Leave the system unchanged
ANS: C
Which of the following is a disadvantage of using open-source software? a. Open-source development requires more time and money b. Bugs in open-source software are patched more slowly than in proprietary software c. Open-source licensing often disallows keeping your code hidden d. Open-source software is unreliable
ANS: C
Which of the following is a main stakeholder type? a. Rival company b. White hat hackers c. End users d. Tier 1 company
ANS: C
Which of the following is a probability that the system with cause an accident? A. Accident B. Hazard C. Risk D. Hazard Severity
ANS: C
Which of the following is an example of Customized Software? A. Word Processors B. Project Management Tools C. Control Systems D. Databases
ANS: C
Which of the following is not a characteristic of a good user interface design? A. Intuitiveness B. Accessibility C. Complex layout D. Consistency
ANS: C
Which graphical notation is commonly used for representing systems in system modeling? A. Unified Modeling Language (UML). B. Process models. C. Use case diagrams. D. Sequence diagrams.
ANS: A
Which is NOT a benefit of prototyping A.) Software Evolution B.) A closer match to user's real needs C.) Improved systems usability D.) Improved maintainability
ANS: A
What is the purpose of defining system boundaries? A. To identify user requirements. B. To establish communication protocols. C. To determine what is inside and outside the system. D. To generate system implementations.
ANS: C
What type of development methodology is typically used for safety-critical systems? a. Agile b. Scrum c. Waterfall d. Incremental development
ANS: C
Which of the following is not a type of model? a. A Computation Independent Model b. A Platform Independent Model c. Web Server Development Models d. Platform Specific Models
ANS: C
Which of the following is true of software reuse? a. It is considered bad practice to reuse software b. Software cannot be reused at the component level c. Software reuse enables quicker and less costly development d. Only functions and objects from programming language libraries are reused
ANS: C
Which diagram type from the Unified Modeling Language (UML) is used to show interactions between actors and the system and between system components? A) Activity diagrams B) Use case diagrams C) Sequence diagrams D) State diagrams
Ans: C
Which of the following architectural views shows the system hardware and how software components are distributed across the processors in the system? a. Logical view b. Process view c. Conceptual view d. Physical view
ANS: D
Which of the following are advantages to pair programming? A. Encourages refactoring B. Becomes its own review process (though informal) C. Supports the idea of collective ownership and responsibility D. All of the above
ANS: D
Which of the following is true of safety-critical systems? a. If the system is reliable, it is safe b. They are always subject to regulation c. Formal specifications can guarantee their safety d. It is impossible to make them 100% safe
ANS: D
Which of the following layers is NOT part of the sociotechnical system stack? A. Social Layer B. Business Layer C. Operating System Layer D. Top Layer
ANS: D
In the context of business value assessment, what may decrease the business value of a system? a. Low system dependability b. Efficient business processes c. Widespread use of web-based ordering d. High system outputs
ANS: a
Requirements specification is the process of writing down the __ and system requirements in a requirements document. a. User requirements b. Stakeholder requirements c. Project manager requirements d. Team lead requirements
ANS: a
What is software? a. Physical computer hardware b. Computer programs and associated documentation c. Electrical circuits and components d. Printed user materials
ANS: b
What is the Probability of Failure on Demand (POFOD)? a. The rate of occurrence of failures. b. The probability that the system will fail when a service request is made. c. The reciprocal of Rate of fault occurrence. d. The fraction of time that the system is available for use.
ANS: b
What is the characteristic of the waterfall model that makes it most suitable for well-understood requirements? a. Incremental development b. Inflexible partitioning into distinct stages c. Integration and configuration d. Validation at every stage
ANS: b
What is the conventional wisdom in software engineering regarding designing for change? a) It is not worthwhile to anticipate changes b) Anticipating changes reduces costs later in the life cycle c) It is best to avoid any changes in the software d) Changes cannot be reliably implemented
ANS: b
What is the correct order of the steps of the software engineering process? a. Software development, Software specification, Software validation, Software evolution b. Software specification, Software development, Software validation, Software evolution c. Software validation, Software specification, Software development, Software evolution d. Software evolution, Software validation, Software development, Software specification
ANS: b
What is the focus of validation testing? a. To execute a program using artificial data b. To demonstrate the software meets its requirements c. To discover program defects before it is put into use d. To expose defects in the software's behavior
ANS: b
Which of the following is one of the classes of interface errors? a. Interface Reuse errors b. Interface Understanding errors c. Timing errors d. Interface use errors
ANS: c
Which of the following is one of the system properties closely related to dependability? a. Error intolerance b. Coding simplicity c. Maintainability d. Proficiency
ANS: c
Which testing stage involves testing components independently? a. System testing b. Customer testing c. Component testing d. None of the above
ANS: c
Which type of interface error is characterized by a calling componeent misunderstanding the specification of the interface of the called component? a. Interface misuse b. Timing errors c. Interface misunderstanding d. Parameter interfaces
ANS: c
What are some benefits of pair programming as described in the text? a. It hinders the development of common ownership of code. b. It discourages knowledge sharing within the team. c. It serves as an informal code review process. d. It prevents the team from benefiting from system code improvements.
ANS: c. It serves as an informal code review process.
Why do many software companies turn to software process improvement, as mentioned in the text? a. To increase the complexity of their software. b. To slow down their development processes. c. To enhance the quality of their software and reduce costs. d. To eliminate the need for any development processes.
ANS: c. To enhance the quality of their software and reduce costs.
The ASM recognizes that scaling is a __ process where development teams move from the core agile practices discussed here to what is called Disciplined Agile Delivery A: mixture B: staged C: unstaged D: free roam
CORRECT: B
When designing a ___ architecture, you have to decide what your system and broader application classes have in common, and decide how much knowledge from these application architectures you can reuse. a. server b. system c. admin d. console
CORRECT: B
__ diagrams and __ diagrams are used to describe the interactions between users and systems in the system being designed a. Sequence, bubble b. Use case, sequence c. Use case, speed d. User, joe
CORRECT: B
Behavioral models are used to describe the __ behavior of an executing system a. rampid b. livid c. dynamic d. static
CORRECT: C
The choice of distribution architecture is a key decision that affects the __ and __ of the system. a. specs, battery usage b. performance, settings c. performance, reliability d. speed, reliability
CORRECT: C
The final scaling stage in ASM is to move to __ at Scale where the complexity that is inherent in large projects is recognized. A: work force B: brute force C: agility D: stamina
CORRECT: C
A range of communication channels such as email, instant messaging, wikis, and social networking systems should be provided to facilitate __. A: jump starting B: networking C: cloud connecting D: communications
CORRECT: D
Using large components __ the number of component communications. a. maintains b. stabalizes c. increases d. reduces
CORRECT: D
_ models were among the first graphical software models a. Withdraw b. Mine-driven c. Extraction d. Data-driven
CORRECT: D
__ systems are usually implemented as distributed systems, connected using Internet protocols a. User-Server b. Independent c. Admin-Server d. Client-server
CORRECT: D
A __ inspection session can discover many errors in a system. a.) single b.) double c.) multiple d.) zero
Correct: A
A __ variable may have an incorrect value caused by the execution of faulty code. a. state b. major c. steap d. minor
Correct: A
The priority in defect testing is to find those inputs in the set Ie because these reveal __ with the system. a.) problems b.) solutions c.) problems and solutions d.) vulnerabilities
Correct: A
Software companies __ that their software will always contain some residual faults. a. realize and stress b. accept c. deny d. dont mind
Correct: B
User testing is intended to show that a program __ what it is intended to do and to discover. a.) does not do b.) does c.) can somewhat do d.) none of the above
Correct: B
__ techniques include the use of strongly typed programming language to allow extensive compiler checking and minimizing the use of error-prone programming language constructs, such as pointers." a. Waterfall b. Fault-avoidance c. Avoidance d. Faulty
Correct: B
Experienced users "work around" software features that they have found to be __. a. slow and outdated b. reliable c. unreliable d. perfect
Correct: C
Understand test-first development, where you design __ before writing code and run these tests automatically. a.) graphs b.) answers c.) tests d.) input
Correct: C
As a software product becomes more established, users expect it to become _ reliable. a.) not b.) some-what c.) less d.) more
Correct: D
To avoid incurring excessive and unnecessary costs, it is important that you specify the reliability that you really need rather than simply choose a very high level of __. a. Compiler b. operating system c. processing power d. reliability for the whole system
Correct: D
The use of the system If a system is only used occasionally or by a small number of people, this may mean that it has a business value. a. low b. high c. medium d. "zero"
Correct: a
It may be impossible to change to more effective business processes because the __ cannot be modified to support new processes a. Crypto-ware b. legacy software c. legacy hardware d. policies
Correct: b
To achieve a __ level of reliability and availability in a software-intensive system, you use a combination of fault-avoidance, fault-detection, and fault-tolerance techniques. a. non existent b. high c. low d. medium
Correct: b
To avoid incurring excessive and unnecessary costs, it is important that you specify the __ that you really need rather than simply choose a very high level of __ for the whole system. a. status b. reliability c. power d. management
Correct: b
Which software development approach emphasizes adaptability, iterative development, and continuous improvement, making it less suitable for safety-critical systems? a. Waterfall b. Agile c. Scrum d. Incremental development
Correct: b
If a system is __ and the problems directly affect business customers, or mean that people in the business are diverted from other tasks to solve these problems, the system has a low business value. a. dependable b. reliable c. not dependable d. not efficient
Correct: c
Large software systems usually have a lifetime a. durable b. short c. long d. fast
Correct: c
The __ Method is typically used for safety-critical systems. a. agile b. scrum c. waterfall d. incremental development
Correct: c
New software development is inherently __, so that there may be unexpected problems with a new system. a. common b. creative c. safe d. risky
Correct: d
The main advantage of using structured arguments in safety cases is __? a. They require less evidence and documentation b. They focus only on high-level claims about system safety c. They demonstrate that the program works as intended d. showing program execution cannot reach unsafe states
Correct: d
To develop a system design from concept to detailed, object-oriented design, you need to understand and define the context and the __ with the system" a.) admin rights b.) external interactions c.) internal interactions d.) components that come
correct- B
You can document the environment of the system using a simple _ diagram, showing the entities in the system and their associations. a.) chain b.) block c.) interval d.) dome
correct- B
it isn't always necessary or appropriate to describe the design in detail using the _. a.) UML or other design description language. b.) PHP Foundation c.) Pycharm IDE d.) MULU
correct- A
Object-oriented design using the UML An object-oriented system is made up of interacting objects that maintain their own ___ and provide operations on that state. a.) remote state b.) hosted state c.) local state d.) state
correct- C
Objects include both and operations to manipulate that data. a.) internal, external b.) slow, rapid c.) storage, data d.) data, operations
correct- D
In what type of model are classes laid out in a hierarchy? a. Use case diagram b. Event-driven model c. Data-driven model d. Generalization
ANS: D
Which is considered a type of stakeholder? a. End users b. System managers c. System owners d. All the above.
ANS: D
What does Software Inspections represent? A.) Test verifications B.) Static verifications C.) Data base schemas D.) All the above
Answer: B or C
What steps are in the "process improvement cycle"? a. Measure, Analyze, Change b. Collect, Analyze, Test c. Measure, Seek, Destroy d. Analyze, View, Verify
ANS:
A software process is a sequence of activity that leads to the production of a__ a. Software Product b. Software Development c. Software Evolution d. Software Validation
ANS: A
After the creation of the internet what positive major changes were made to software engineering? A. Software component become stand-alone services B. Software Misuse C. The need to specify the requirements for systems in advance D. Nothing has changed
ANS: A
Hazard probability is... a. The probability of the events occurring which create a hazard. b. An assessment of the worst possible damage that could result from a particular hazard. c. A measure of the probability that the system will cause an accident. d. An unplanned event or sequence of events that results in human death or injury.
ANS: A
How many levels of abstraction can you design software architectures? A. 2 B. 5 C. 8 D. 6
ANS: A
Human error or mistake refers to... a. Human behavior that results in the introduction of faults into a system. b. An event that occurs at some point in time when the system does not deliver a service as expected by its users. c. An erroneous system state during execution that can lead to a system error. d. A characteristic of a software system that can lead to a system error.
ANS: A
Identify the Distributed Scrum? A.) a common development environment for all teams B.) agile methods are most appropriate for new software development rather than for software maintenance. C.) Developers work in pairs, checking each other's work and providing the support to always do a good job. D.) Enough design is carried out to meet the current requirements and no more.
ANS: A
Implementation is the process of ___ a. Realizing the design as a program b. How to solve a program c. Adding the algorithm d. Identifying the software components
ANS: A
In a process model of the elicitation and analysis process, which of the following is NOT a process activity? A. Prototyping and understanding B. Classification and organization C. Prioritization and negotiation D. Documentation
ANS: A
In object-oriented design, changing the implementation of an object or adding services should not affect other system objects. a. True b. False c. Depends on the situation. d. Never say never
ANS: A
In what situations might structured object-oriented design processes be less cost-effective? A. For small systems with simple requirements. B. For large systems developed by different groups. C. For systems that do not require maintenance. D. For systems implemented using off-the-shelf components.
ANS: A
In what system would security and privacy be most important? a. An online banking system b. A modeling and simulation system c. A video game system d. A weather data collection system
ANS: A
In which context would a simple, informal block diagram be criticized for documenting software architectures? A. When they lack semantics and don't show relationships between entities. B. When they provide too much detail and clutter the design. C. When they focus on non-functional characteristics. D. When they are used for communication with stakeholders.
ANS: A
In which of the following scenarios is Agile development particularly suitable and commonly used? A. Product development where a software company is developing a small or medium-sized product for sale. B. Custom system development within an organization with extensive external rules and regulations. C. Custom system development within an organization without any customer involvement. D. Product development with a focus on comprehensive documentation.
ANS: A
Incremental development is the most common approach for the development of what kinds of systems? a. Application systems and software products b. Safety-critical systems c. Embedded systems d. Complex, long-lifetime systems
ANS: A
Knowing the responsibilities and the issues software engineers experience, they fall into traps of what? A.) Copyright B.) Software ethics C.) Case Studies D.) Bankrupt
ANS: A
One fundamental principle of software engineering in relation to a software system is? a. Rewriting existing software b. Getting it done as fast as possible c. Being able to work in Visual Basic d. Being able to work straight from the terminal
ANS: A
Software system requirements are often classified as what? A. Functional Requirements B. Software Requirements C. System Requirements D. User Requirements
ANS: A
Stand-alone applications... A. Are run on local computers and accessed by users on their own devices B. Are executed on a remote computer C. Need to be connected to a network to function D. Include control systems that control and manage hardware devices
ANS: A
The socio technical system from top to bottom is... a. Business processes, application software, platform and infrastructure software, hardware. b. Hardware, platform and infrastructure software, application software, business processes. c. Hardware, application software, business processes. d. Application software, hardware, business processes, platform and infrastructure software.
ANS: A
Unit testing is _. a. The process of testing program components, such as method or object classes. b. Mathematical concepts such as finite-state machines or sets. c. A type of programming language. d. A graphical model.
ANS: A
Use case diagrams of a system demonstrate which of the following? a. Interactions between a system and external agents b. A sequence of interactions c. Interactions between system components d. Activities involved in data processing
ANS: A
What advantage do inspections have over testing in terms of incomplete versions of a system? A. Inspections do not require execution of the system, so incomplete versions can be inspected without additional costs. B. Incomplete versions of a system can be tested without specialized test harnesses. C. Testing is more effective for incomplete versions of a system. D. Inspections are not suitable for incomplete versions of a system.
ANS: A
What are Data collection systems? A.) Blockchain systems. B.) Systems that gather information from their environment using sensors that send data to other processors. C.) These are systems that re composed of a number of other software systems. D.) Considered to be Wi-Fi boxes to manipulate the people to cover the governments agenda.
ANS: A
What are the three main activities in the REQUIREMENTS engineering process? A. Elicitation & analysis, specification, and validation B. Specification, development, and evolution C. Configuration, evaluation, and discovery D. Adaptation, integration, and refinement
ANS: A
What are the three main application types? A.) Stand-alone applications, Interactive Transaction-based applications, Embedded control systems. B.) Word processing, Content access, Application suites C.) Simulation Software, Multimedia, Spreadsheet software D.) Enterprise software, Presentation software, Education software
ANS: A
Which best describes a "sprint" in the Scrum method? A. A fixed length of time usually between 2 to 4 weeks. B. A flexible length of time under a week. C. A fixed length of time usually between 1 to 2 weeks. D. A flexible length of time usually between 2 to 4 weeks.
ANS: A
What describes natural language notation? a. Written using numbered sentences. Each sentence should express one requirement. b. Based on mathematical concepts such as finite-state machines or sets. c. Like a programming language but with more abstract features to specify the requirements by defining an operational model of the system. d. Graphical models supplemented by text annotations are used to define the functional requirements for the system.
ANS: A
What does Ease of Use measure? a. Training Time b. Mbytes c. Percentage of target dependent statements d. None of the above
ANS: A
What does MDA stand for? a. Model-Driven Architecture b. Modern Data Analytics c. Modular Development Approach d. Mobile Deployment and Administration
ANS: A
What does Model checking do? a. A formal approach to static analysis that exhaustively checks all states in a system for potential errors. b. Certified process for safety-critical system development c. Checks the code. d. Sees how dependable the code is.
ANS: A
What does V & V stand for? a. Validation and Verification b. Voting and Veto c. Virtual and Visualization d. Vision and Validation
ANS: A
What does it mean to "embrace change"? a. Expect the system requirements to change and so design the system to accommodate these changes. b. Try to implement new software to your designs and concepts c. Being carefully involved throughout the development process to avoid unwanted changes d. Develop in increments to reduce possiblilty of human error.
ANS: A
What does redundancy in a system refer to? A) Spare capacity B) System efficiency C) System complexity D) System speed
ANS: A
What does the term "reliability" mean in the context of system dependability? A. The probability of failure-free system operation over a specified time. B. The probability that a system will be operational and able to deliver services at a point in time. C. The rate of occurrence of failure in the system. D. The mean time to failure for a system.
ANS: A
What is Engineering discipline? a. Applying theories, methods, and tools when appropriate to make things work within constraints. b. Having the discipline and self-motivation to code anytime. c. Being able to find solutions with constraints. d. Understanding and implementing concepts.
ANS: A
What is NOT part of developing a system design from concept to detailed? A. Develop Interface B. Specify Interface C. Design the System Architecture D. Develop Design Models
ANS: A
What is a system context model? a. A structural model that demonstrates the other systems in the environment of the system being developed. b. A dynamic model that shows how the system interacts with its environment as it is used. c. None of the provided answers. d. Both of the provided answers.
ANS: A
What is one of the key reasons for the expense and risk associated with replacing legacy systems? A) The lack of documentation for legacy systems. B) Compatibility issues with modern hardware. C) Legacy systems being too slow. D) Inefficient business processes.
ANS: A
What is one of the primary purposes of system modeling? A. To develop abstract models of a system from different perspectives. B. To generate a complete system implementation from the model. C. To establish system boundaries. D. To document an existing system.
ANS: A
What is the Rational Unified Process (RUP)? A. A flexible model that brings together the elements of general process models and supports prototyping and incremental delivery of software. B. A plan-driven model that presents the software development process as a number of different stages. C. An incremental model that develops an initial implementation, gets feedback, and evolves the software through several versions. D. A data model that estimates the need in a particular market or area for the software that needs to be developed.
ANS: A
What is the Software Process? A.) A structured set of activities required to develop a software system B.) A abstract representation of a process C.) A phase to be completed before moving onto the next D.) All the above
ANS: A
What is the best process model to use? A. Depends on the customer and regulatory requirements B. Incremental Development C. The waterfall model D. Integration and Configuration
ANS: A
What is the main focus of architectural design? A. Organizing a software system and designing its overall structure. B. Identifying the non-functional requirements of a system. C. Developing reusable components for a range of systems. D. Documenting the visible properties of system entities.
ANS: A
What is the primary focus of software design and implementation in software engineering? a. Building an executable software system b. Verification and validation c. Developing requirements d. Configuring off-the-shelf packages
ANS: A
What is the primordial concern of the dependability of a computer system? A) Trustworthiness B) Operation speed C) Cost-effectiveness D) User satisfaction
ANS: A
What is the role of models in the requirements engineering process for both existing and new systems? A. They serve as a basis for discussing strengths and weaknesses of the existing system. B. They generate complete system implementations. C. They establish system boundaries. D. They define business process models.
ANS: A
What kind of method is utilized for agile development? A. Incremental methods B. Plan-driven methods C. Data methods D. Waterfall methods
ANS: A
What steps are in the "process improvement cycle"? a. Measure, Analyze, Change b. Collect, Analyze, Test c. Measure, Seek, Destroy d. Analyze, View, Verify
ANS: A
What year did the "agile method" get developed? A.) 1990's B.) 1900's C.) Late 2000's D.) 1983
ANS: A
Which architectural and system characteristic deals with using fine-grain, replaceable components? a. Maintainability b. Safety c. Performance d. Security
ANS: A
Which architecture consists of a central data store through which all system components interact? a. Repository architecture b. Layered architecture c. Model-view-controller architecture d. Pipe and filter architecture
ANS: A
Which is most true about the process maturity approach? A. It is rooted in plan-driven development and usually requires increased "overhead." B. It deliberately minimizes formality and documentation and focuses on the code being developed. C. The improvement philosophy of it is that the best processes are those with the lowest overheads, and it deliberately minimizes formality and documentation. D. A primary characteristic is rapid delivery of functionality and is more focused on iterative development.
ANS: A
Which layer of the sociotechnical systems stack is said to contain higher-level strategic processes and business rules, policies, and norms? a. Organizational layer b. Business process layer c. Social layer d. Communications and data management layer
ANS: A
Which of the following is NOT a common characteristic between each agile method? A. Each agile method has not common characteristic B. The system is developed in increments C. The use of extensive tool support to help the development process D. The processes of specification, design and implementation are intertangled
ANS: A
Which of the following is NOT a level of software reuse? A. The sequence level B. The abstraction level C. The component level D. The object level
ANS: A
Which of the following is NOT a metric to measure reliability and availability? A. Probability of failure on demand B. AVAIL C. Rate of occurrence of failures D. Non-functional failure occurrence
ANS: A
Which of the following is NOT a reason a dependability of a system is more important than their detailed functionality? A. System failure affects a small number of people. B. System failure affects a large number of people. C. Costs of system failure could be large. D. Undependable systems could cause information loss.
ANS: A
Which of the following is NOT a reason for urgent changes mentioned in the book? A. Unexpected competitors with a prettier system B. A serious system fault is detected causing the operations to not function normally. C. Unanticipated changes to the business D. If operating system changes causes unexpected effects
ANS: A
Which of the following is NOT a type of software maintenance? A. Scrap the system B. Repairs to fix bugs and vulnerabilities C. Environmental adaptations D. Functionality additions
ANS: A
Which of the following is NOT an activity in a dependably process? A. Requirement reviews to check that the requirements are inconsistent and unfinished. B. Requirement reviews to check that the requirements are consistent and finished. C. Design and program inspections D. Test planning and management
ANS: A
Which of the following is NOT an approach to requirements elicitation? a. Prototyping b. Observation c. Interviewing d. Ethnography
ANS: A
Which of the following is NOT how a graphical model is commonly used? A. Graphical models are not commonly used B. Documenting an existing system C. Detailed system description that can be used to generate a system implementation D. To stimulate and focus discussion about an existing or proposed system
ANS: A
Which of the following is NOT one of the difficulties large companies face when introducing agile methods A. Large organizations and their procedures and standards do not conflict and are compatible with the agile methods B. Agile methods work better when the team members have higher skill levels C. Hesitation to make the switch from conventional systems of engineering processes to agile methods D. Project managers with little experience in agile methods could possibly become reluctant to make a risk after the new approach
ANS: A
Which of the following is NOT one of the difficulties that can arise after or attempting to apply reliability measurements? A. Low costs of test data generation B. High costs of test data generation C. Operational profile uncertainty D. Recognizing failure
ANS: A
Which of the following is NOT one of the goals of the verification and validation process? A. Verification purpose B. Software purpose C. Marketing environment D. User expectations
ANS: A
Which of the following is NOT one of the perspectives mentioned in the book? A. Internal Perspective B. Interaction Perspective C. Behavioral Perspective D. Structural Perspective
ANS: A
Which of the following is NOT one of three risk categories that are used in hazard assessments? A. As low as humanly possible B. As low as reasonably practical C. Acceptable risks D. Intolerable risks
ANS: A
Which of the following is NOT part of automated testing? A. Object part B. Call part C. Setup part D. Assertion part
ANS: A
Which of the following is NOT part of the four fundamental activities of Software Engineering? A. Satisfaction B. Development C. Specification D. Evolution
ANS: A
Which of the following is an example of a primary safety-critical system? a. Insulin pump system b. Telecommunication software c. Electricity supply control system d. Sewage treatment control system
ANS: A
Which of the following is an example of fault avoidance? a. Using strongly typed programming languages b. Systematic testing and debugging c. Using fault tolerant architecture d. Static analysis
ANS: A
Which of the following is part of the Safety-Critical classes? A. Secondary safety-critical software B. Tertiary safety-critical software C. Quaternary safety-critical software D. Quinary safety-critical software
ANS: A
Which of the following is true of hazard assessment? a. Risk aversion varies between countries b. Intolerable risks are the cheapest to mitigate c. Consumers have become less risk-averse over time d. Hazard assessment is independent of events in other systems
ANS: A
Which of the following is true of software maintenance? a. It is cheaper to add features during development than during maintenance b. Programs become easier to maintain as they age c. Program maintenance work is more popular than development work d. It is usually best to scrap legacy systems completely
ANS: A
Which of the following is NOT part of the requirements engineering process? a. Elicitation and analysis b. Implementation c. Validation d. Specification
ANS: B
Which of the following is used to translate texts from one language to another and to carry out a specific instruction in the input language? A. Language processing system B. Transaction processing system C. Logical processing system D. Architecture processing system
ANS: A
Which principal dimensions of dependability consists of the ability that the system will correctly deliver services as expected by the user? a. Reliability b. Safety c. Security d. Availability
ANS: A
Which type of software maintenance requires the biggest changes to the software? a. Functionality addition or modification b. Fault repair c. Environmental adaptation d. System retirement
ANS: A
Why is interface specification important? a. It allows objects and subsystems to be designed in parallel b. It specifies graphical user interface (GUI) elements ahead of time c. It allows attributes and implementation of an object to be made public to developers d. The interface will change based on implementation
ANS: A
Why is system replacement considered risky, according to the text? A. Lack of complete system specification B. Overabundance of historical data C. Tight integration of business processes D. Excessive documentation
ANS: A
Why is understanding the context important in system design? A. It helps establish the boundaries of the system. B. It determines the cost-effectiveness of the design process. C. It dictates the choice of programming language. D. It ensures compatibility with off-the-shelf systems.
ANS: A
What does a sequence diagram show? a. Show interactions between actors and the system and between system components. b. Show how the system reacts to internal and external events. c. Show the interactions between the system and its environment. d. Show the object classes in the system and the associations between these classes.
ANS: A.
According to the text, what drives the evolution of software systems? A. Financial gains B. Proposals for change C. Technological breakthroughs D. Creative inspiration
ANS: B
According to the text, what is a potential challenge associated with legacy system replacement? A. Lack of business policies B. Inconsistent application data C. Overreliance on new hardware D. Low integration of system and business processes
ANS: B
An insulin pump software falls under which safety-critical software?? a. Secondary safety-critical software. b. Primary safety-critical software. c. Both d. Neither
ANS: B
Architectural design is where you... A. Define the interfaces between system components. B. Identify the overall structure of the system, the principal components, their relationships, and how they are distributed. C. Design the system data structures and how these are to be represented in a database. D. Search for usable components, and if unavailable, you design how it operates.
ANS: B
For which of the following languages benefits the most from utilizing UML diagrams? a. Phyton b. Java c. HTML d. CSS
ANS: B
How is fault tolerance achieved in system design? A. By avoiding the development of the system. B. By ensuring that faults in the delivered software do not result in system failure. C. By increasing the probability of detecting and correcting errors before deployment. D. By developing systems that maximize the possibility of human error.
ANS: B
How many Capability maturity levels are there? A.) 2 B.) 5 C.) 10 D.) None of the above
ANS: B
How would an architecture prioritize the non-functional requirement of availability? a. System should be designed using fine-grain, self-contained components b. System should include redundant components c. Critical operations should be localized within a small number of components d. All components should be located on the same computer
ANS: B
In today's time, Software engineering is important. Usually, it is used for advanced software systems, in order to produce systems that are reliable. However, the cost doesn't match the performance over time. Why? A.) Because the software team views the concept as good performance, and decent price to promote their work. B.) More and more, individuals and society rely on trustworthy, and advanced systems economically and quickly. C.) For most types of systems, the majority of costs are the costs of changing the software after it has gone into use. D.) The Software systems, often change based on the performance which lowers the price to an affordable cost.
ANS: B
In what context might incomplete and incorrect models be acceptable in system modeling? A. When documenting an existing system B. As a means of facilitating discussions C. As a detailed system description for implementation D. When defining system boundaries
ANS: B
In what scenario would automated testing typically be impossible? a. Testing arithmetic operations b. Testing a graphical user interface (GUI) c. Testing interfaces between components d. Stress-testing a system
ANS: B
Large amounts of overtime are not considered acceptable as the net effect is often to reduce code quality and medium term productivity. This is known as __. a. Pair programming b. Sustainable pace c. On-site customer d. Open contract customer
ANS: B
Software Engineering is different from Computer Science because...? A. Hardware Development B. Deals with the practicality of producing software C. Focuses on the theories D. Deals with smaller programs and codes
ANS: B
The following are examples of generic products, EXCEPT... A. Appointment systems B. Traffic monitoring systems C. Graphics programs D. CAD software
ANS: B
The requirement for software to be written in such a way that it can evolve to meet the changing demands of consumers best represents which product characteristic? a. Efficiency b. Maintainability c. Acceptability d. Security
ANS: B
What action or technique can be used to avoid the structural deterioration of a program as more code is added? a. Incremental delivery b. Refactoring c. Customer involvement d. Continuous integration
ANS: B
Which of the following is NOT something you need to consider when making a dependable system? A. Software failure B. Safety failure C. Hardware failure D. Operational failure
ANS: B
What architectural concept is described as being used to model the interfacing of sub-systems, organizing the system into a set of layers (or abstract machines), and supporting incremental development of sub-systems with minimal impact on other layers when changes occur? A) Modularization B) Layered Architecture C) Abstraction D) Encapsulation
ANS: B
What are external requirements in the context of non-functional requirements? a) Requirements derived from the system's organizational policies b) Requirements imposed by regulatory authorities or laws c) Requirements related to the system's runtime behavior d) Requirements that specify the system's information needs
ANS: B
What are the related attributes covered by dependability? A. Speed, efficiency, and versatility. B. Reliability, availability, and security. C. Scalability, usability, and maintainability. D. Cost, performance, and adaptability.
ANS: B
What are the two types of software products? a. Software and Hardware b. Generic and Customized c. System engineering and Computer Science d. Internet and Word Wide Web
ANS: B
What does a system context model demonstrate? A. The interaction between system objects. B. The external environment of the system being developed. C. The internal components of the system. D. The system's user interfaces.
ANS: B
What does the design process primarily focus on when developing an application using an off-the-shelf system? A. Developing a conventional programming language. B. Adapting the system to the user's requirements. C. Configuring the hardware for the system. D. Creating new software components from scratch.
ANS: B
What is a "user story"? A. The background of a user that may affect software use such as culture, political views, etc. B. A scenario of software use that might be experienced by a system user. C. When a software developer becomes a system user. D. The mission statement of the company and/or organization.
ANS: B
What is a characteristic of validation testing? A. It aims to expose defects in the program. B. It expects the system to perform correctly under specific conditions. C. It requires execution of the system with test data. D. It focuses on static system representation.
ANS: B
What is a potential advantage of using off-the-shelf systems (COTS) for implementing certain applications? A. They are always cheaper than developing a system from scratch. B. They can be adapted and tailored to users' requirements. C. They require less effort for development. D. They do not require any maintenance.
ANS: B
What is an interaction model in software design? a. A model showing the external environment of the system. b. A dynamic model demonstrating how the system interacts with its environment. c. A use case model representing the system's internal structure. d. A representation of system boundaries.
ANS: B
What is an issue that faces software systems? a. Too many computers exist b. There exist too many proprietary programs that don't work together well c. The systems are getting too slow d. There are too many developers
ANS: B
What is layered architecture used for? a. None of the provided answers. b. Used to model the interfacing of sub-systems. Organizes the system into a set of layers. c. Network which allows clients to access servers. d. Functional transformations to process their inputs to produce outputs.
ANS: B
What is one drawback to plan-driven software development processes in a rapidly changing environment? A. They result in a trade off of better, more quality software in favor of quickly deployed software. B. By the time the software is complete and available for use, it may have already become useless due to the original reason for its development changing radically. C. More time is spent on program development and testing than on how the system should be developed. D. Customers are too closely involved throughout the development process.
ANS: B
What is one of the criticisms of simple, informal block diagrams in documenting software architectures? A. They are too detailed. B. They lack semantics and do not show relationships between entities. C. They are suitable for complex enterprise systems. D. They are the most efficient method for architectural documentation.
ANS: B
What is safety-critical system? a. Systems where it stores safety guidelines. b. System whose failure can lead to human death or injury. c. System where it stores personal information. d. System with important software.
ANS: B
What is the definition of Organizational Requirements? A. Requirements that specify or constrain the runtime of the software B. System requirements derived from policies and procedures in the customer's and developer's organizations C. Derived from factors external to the system and its development process D. Requirements that do not specify or constrain the runtime of the software
ANS: B
What is the distinction between "architecture in the small" and "architecture in the large" in software design? A. "Architecture in the small" involves small-scale components, while "architecture in the large" involves individual programs. B. "Architecture in the small" concerns individual programs, while "architecture in the large" deals with complex enterprise systems. C. "Architecture in the small" is concerned with program reuse, while "architecture in the large" focuses on program decomposition. D. "Architecture in the small" focuses on simple block diagrams, while "architecture in the large" uses complex models.
ANS: B
What is the goal of fault avoidance in system development? A. To maximize the possibility of mistakes. B. To minimize the possibility of mistakes and avoid system faults. C. To develop systems that always avoid human errors. D. To trap mistakes after they result in the introduction of system faults.
ANS: B
What is the most widely used agile method? a. Plan-driven process b. Scrum c. Extreme programming d. Waterfall model
ANS: B
What is the output of architectural design? a. System requirements document b. Architectural model c. Implementation of system architecture d. Prototype
ANS: B
Which of the following is a characteristic of agile methods? a. Complex code b. Embracing change c. Extensive documentation d. Process over people
ANS: B
What is the primary advantage of buying off-the-shelf systems (COTS) for software development in various domains? A. It eliminates the need for software design and implementation. B. It allows for customization and tailoring to user requirements. C. It is always cheaper than developing a system from scratch. D. It simplifies the software engineering process.
ANS: B
What is the primary goal of software engineering? a. Developing software without any plan b. Applying engineering principles to software development c. Ignoring software development methodologies d. Experimenting with different programming languages
ANS: B
What is the primary purpose of testing in software development? A. To execute a program using artificial data. B. To discover program defects before the program is put into use. C. To supplement static validation techniques. D. To analyze the static system representation.
ANS: B
What is the purpose of a safety case in the context of system development? A) To enhance system performance B) To demonstrate compliance with rules and regulations C) To reduce development costs D) To ensure software diversity
ANS: B
What is the purpose of a system context model in software design? a. To document interactions between objects in a system. b. To define the boundaries of a software system. c. To represent the system's internal structure. d. To illustrate how the system interacts with its environment.
ANS: B
When did object-oriented design evolve? A. 1990s B. 1980s C. 2000s D. 2010s
ANS: B
When links between requirements engineers, designers, and programmers are indirect, models should be... a. Simple b. Detailed c. Used only for discussion d. Models are not necessary
ANS: B
When using the Waterfall Model, what step should you take first? A. System and software design B. Requirements analysis and definition C. Implementation and unit testing D. Operation and Maintenance
ANS: B
Which definition best describes a software process in software engineering? a. A program that runs on a computer b. A set of related activities that leads to the production of a software system c. An operation performed by a computer that reads data d. An application run by a software system
ANS: B
Which is NOT one of the four clusters of systems? a. Low quality, low business value. b. Old age, young age. c. Low quality, high business value. d. High quality, high business value.
ANS: B
Which is NOT one of the guidelines for writing requirements? a. Avoid the use of computer jargon. b. Do NOT highlight text to identify key parts. c. Include an explanation of why a requirement is necessary. d. Use language in a consistent way.
ANS: B
Which is NOT one of the types of interfaces error? a. Parameter interface. b. Non-parameter interface. c. Shared memory interface. d. Procedural interface.
ANS: B
Which is an advantage of incremental delivery? A. Reduced development effort. B. The highest priority system services tend to receive the most testing. C. A closer match to the users' real needs. D. Improved design quality.
ANS: B
Which of the following best describes the evolution step of the software process? a. The software is rewritten from scratch. b. The software is updated to accommodate changing consumer and market expectations. c. The software is designed and programmed for the first time. d. Customers and engineers define the software's requirements and constraints.
ANS: B
Which of the following does NOT occur during release planning? a. A decision is made on what to implement b. The cost and impact of the release is analyzed c. System faults are considered d. New functionalities are considered
ANS: B
Which of the following is NOT a UML diagram type? A. Sequence Diagram B. Switch Case Diagram C. Class Diagram D. State Diagram
ANS: B
Which of the following is NOT a reason why users like the Scrum method? A. Trust is established between the developer and the customer B. Unstable requirements holds up progress C. Customers can see on-time delivery of increments D. The product is broken down into manageable pieces that stakeholders can understand and relate to
ANS: B
Which of the following is NOT a way to maximize diversity between system versions? a. Using different programming languages b. Requiring communication between teams c. Requiring different algorithms be used d. Using different development environments
ANS: B
Which of the following is NOT an advantage of designing and documents software architecture? A. Large-scale reuse B. Small-scale reuse C. System analysis D. Stakeholder communication
ANS: B
Which of the following is NOT an effective way of writing test cases? a. Identify input groups with similar characteristics and choose tests from within these groups b. Design tests such that the system won't break c. Use previous experience of what causes errors to design tests d. Design tests that will force invalid output to be generated
ANS: B
Which of the following is NOT one of the advantages to over testing? A. Over testing can help point out any areas that need to be more efficient. B. Over testing has no advantages and creates more work for the employees. C. Errors can hide other errors. So over testing reveals more errors that a software may have. D. Cut down costs of finishing incomplete versions.
ANS: B
Which of the following is NOT one of the functional reliability requirements? A. Redundancy Requirements B. Permanent Requirements C. Recovery Requirements D. Process Requirements
ANS: B
Which of the following is NOT one of the potential system accidents that may occur after using hazard-driving techniques? A. Hazard detection and removal B. Damage detection and removal C. Hazard avoidance D. Damage limitation
ANS: B
Which of the following is NOT one of the principal dimensions of dependability mentioned in the text? A) Availability B) Efficiency C) Safety D) Reliability
ANS: B
Which of the following is NOT part of a legacy system? A. Business process B. Application process C. Support Software D. Business policies and rules
ANS: B
Which of the following is an example of dependable development? a. Writing code with a high amount of dependencies b. Performing a wide variety of validation activities to find errors c. Assigning no more than one team member to each process activity d. Using the same testing method throughout the development process
ANS: B
Which of the following is not a use of application architectures? A) As a starting point for architectural design B) As an index to store all your important information C) As a means of assessing components for reuse D) As a vocabulary for talking about application types
ANS: B
Which of the following is not part of the requirements checking process? a. Consistency b. Availability c. Validity d. Verifiability
ANS: B
Which of the following is the definition of generalization? a. Generalization is a mathematical concept used to solve complex equations. b. Generalization is an everyday technique that we use to manage complexity. c. Generalization is a technique for creating new objects from existing ones. d. Generalization is a specific programming language feature.
ANS: B
Which of the following is true of inspections and testing? a. Testing tools in IDEs have made inspections obsolete b. Inspections are better at finding defects than testing c. Inspections have replaced program testing d. Both inspections and testing are unnecessary if code is well-written
ANS: B
Which of the following is true of non-functional requirements? a. They should be as general as possible b. They should be written quantitatively so they can be objectively tested c. They are less important than functional requirements d. They have no effect on functional requirements
ANS: B
Which of these descriptions fits the process model of "incremental development"? A. Takes the fundamental process activities of specification, development, validation, and evolution and represents them as separate process phases such as requirements specification, software design, implementation, and testing. B. Uses specification, development, and validation to develop as a series of versions, with each version adding functionality to the previous version. C. Relies on the availability of reusable components or systems, and focuses on configuring these components for use in a new setting and integrating them into a system. D. None of the above.
ANS: B
Which option should be chosen when a system is still required but is fairly stable, and the system users make relatively few change requests? A) Scrap the system completely. B) Leave the system unchanged and continue with regular maintenance. C) Reengineer the system to improve its maintainability. D) Replace all or part of the system with a new system.
ANS: B
Which reliability metric defines the probable number of system failures likely to be observed relative to a certain period of time? a. Probability of failure on demand (POFOD) b. Rate of occurrence of failures (ROCOF) c. Availability (AVAIL) d. No reliability metric defines this
ANS: B
Which reliability metric should be used when failure on demand can lead to a serious system failure? a. Availability (AVAIL) b. Probability of failure on demand (POFOD) c. Rate of occurrence of failures (ROCOF) d. Mean time to failure (MTTF)
ANS: B
Why do businesses hesitate to replace legacy systems with more modern equivalents? A) Legacy systems are always more cost-effective. B) The risks and costs of replacement may outweigh the benefits. C) Legacy systems are easier to maintain. D) Modern systems are not compatible with legacy data.
ANS: B
Why has there been reluctance to adopt formal methods? a. They have been shown to fail frequently b. They are difficult to scale up to very large systems c. They are not compatible with plan-driven methodologies d. They are not dependable
ANS: B
Why is perceived reliability considered more important in practice? A. Because specifications are always complete and correct. B. Because users don't read specifications and may not know how the system is supposed to behave. C. Because business critical systems rarely demand 24/7 service. D. Because fault avoidance is the most crucial aspect of system development.
ANS: B
Why is testing considered a dynamic verification process? A. It involves examining the source code. B. It requires execution of the system with test data. C. It is concerned with analyzing the static system representation. D. It focuses on discovering program defects.
ANS: B
Why is understanding the relationships between the software being designed and its external environment important in software development? A. To eliminate the need for setting system boundaries. B. To decide what features are implemented in the system. C. To reduce development and maintenance effort. D. To streamline the design and implementation stages.
ANS: B
Written in such a way it can evolve to meet the changing needs of customers. Because of this software change is an inevitable requirement of a changing business environment. A.) Capability B.) Maintainability C.) Software development D.) Software Products
ANS: B
Behavioral models are _. a. Event driven, with minimal data processing. b. Models of the dynamic behavior of a system as it is executing. Show what happens or what is supposed to happen when a system responds to a stimulus from its environment. c. Models the behavior of the system in response to external and internal events. d. The sequence of actions involved in processing input data and generating an output.
ANS: B.
A good model for a software system should: a. Be as detailed as possible b. Be an exhaustive map for every stage of the development process c. Simplify details of the system d. Consider only one perspective
ANS: C
Architectural patterns are ___. a. The dynamic behavior of a system as it is executing. b. Event driven, with minimal data processing. c. A means of representing, sharing, and reusing knowledge. d. the behavior of the system in response to external and internal events.
ANS: C
Associated safety cases are: a. Records of all design and safety review b. An overview of the system and a description of its critical components c. References to other safety cases that may impact the safety case. d. The safety requirements taken from the system requirements specification.
ANS: C
How do inspections and testing complement each other in the verification and validation process? A. They are opposing techniques and should not be used together. B. Both are focused on discovering program defects. C. Inspections can check conformance with a specification, while testing focuses on real customer requirements. D. Inspections are used for dynamic verification, while testing is used for static verification.
ANS: C
How has the development of the Internet and the World Wide Web impacted software engineering? a. Software engineering is no longer necessary. b. Software no longer needs to be validated before it is deployed. c. Software reuse has become commonplace in web-based systems. d. Offline systems are never made anymore.
ANS: C
How many Agile Method Principles are there? A.) 3 B.) 4 C.) 5 D.) 7
ANS: C
In software design and implementation, why are these activities invariably inter-leaved? A. To ensure that the system requirements are well-documented. B. To maintain a clear separation between design and implementation. C. To allow for creative and logical aspects of the process. D. To streamline the process and reduce development time.
ANS: C
In software development, how are reused elements typically adapted to meet specific user requirements when integrating systems from existing components or COTS (Commercial-off-the-shelf) systems? A. By completely rewriting the reused components to match the new requirements. B. By avoiding any configuration to maintain the integrity of the original components. C. By configuring and customizing the reused elements to align with user requirements. D. By isolating the reused elements and not allowing any modification.
ANS: C
In system modeling, which perspective is concerned with modeling the organization of a system or the structure of the data processed by the system? A. External perspective B. Interaction perspective C. Structural perspective D. Behavioral perspective
ANS: C
In the context of assessing legacy systems, what is business value? A) The age of the system. B) The cost of maintaining the system. C) How much time and effort the system saves compared to other methods. D) The quality of the hardware.
ANS: C
In which of the following process stages does the evaluation of software components or packages typically occur to determine their suitability for a specific project? A. Requirements specification B. Requirements refinement C. Software discovery and evaluation D. Component adaptation and integration E. Application system configuration
ANS: C
It is __ to get customer feedback on the development work that has been done. a. slower b. harder c. easier d. None of the above
ANS: C
Scrum development is divided into 2-4-week development periods called __. a. User stories b. Scrums c. Sprints d. Backlogs
ANS: C
Simple Design is when __. a. A design at low cost that provides maximum business value. b. Every phase in the development is thoroughly understood and acknowledged by the customer. c. Enough design is carried out to meet the current requirements and no more. d. There are no complicated algorithms in the development.
ANS: C
System models are typically created in: a. Object-oriented programming languages b. HTML c. UML d. Scripting languages
ANS: C
The "software platform" is _. A. Only the physical build of the machine to be used. B. Where the software will be presented at a conference. C. The environment in which the software will execute. D. Another term for the programming language that is being used.
ANS: C
The developers of Extreme Programming (XP) suggests that the code being developed should be constantly refactored. Refactoring means: A. Redo-ing the logical structure of the program and its algorithms. B. Scrapping the original idea and establishing a more cohesive one. C. Looking for possible improvements to the software and implementing them immediately. D. Documenting every line of code being developed.
ANS: C
The process of requirements engineering is best visually represented by a: a. Table b. Triangle c. Spiral d. Square
ANS: C
The systemic approach used in software engineering is called__ a. Engineering discipline b. Software Product c. Software Process d. Engineering job
ANS: C
The waterfall model has more of an advantage over the incremental development model because... A. The possibility of early delivery B. The cost of implementing requirement changes is significantly less C. The incremental development model has more advantages over the waterfall model D. Receiving feedback on finished aspects of the project/software
ANS: C
This class will be primarily about? a. Programming in Java b. Algorithms c. Software engineering development and ethics d. Learning to hack
ANS: C
What are the key process stages? A.) Requirement specification B.) Software discovery and evaluation C.) A and B D.) Adapt component
ANS: C
What aspect of a program is NOT covered by the definition of dependability? a. Availability b. Resilience c. Efficiency d. Reliability
ANS: C
What do professional societies expect from their software engineering members? a. Ignoring ethical considerations b. Focusing solely on technical aspects c. Following codes of conduct and standards d. Avoiding collaboration with other engineers
ANS: C
What does system modeling primarily involve in the software development process? A. Developing graphical notations for customer communication. B. Creating detailed system descriptions for system implementation. C. Developing abstract models representing different views of a system. D. Defining the system boundary for political judgment.
ANS: C
What does the dependability of a computer-based system reflect? A. The speed of the system. B. The size of the user base. C. The user's trust in the system and confidence in its expected operation. D. The system's complexity.
ANS: C
What is the purpose of a feasibility study in requirements engineering? a) To define functional requirements b) To assess system security c) To determine if the system can be implemented within schedule and budget d) To specify non-functional requirements
ANS: C
What does the term "resilience" refer to in the context of system dependability? A. The extent to which the system can be repaired in the event of a failure. B. The probability that the system can resist accidental or deliberate intrusions. C. The extent to which the system can maintain the continuity of its critical services in the presence of disruptive events. D. The judgment of how likely it is that the system will cause damage to people or its environment.
ANS: C
What effect can the position of the system boundary have on system requirements? A. It has no effect on system requirements. B. It simplifies the system requirements. C. It may influence the workload of different parts of an organization. D. It only impacts external systems.
ANS: C
What is a characteristic of legacy systems, as described in the text? A. They are always developed using the latest technology B. They rely solely on new hardware C. They may include obsolete support software D. They are never constrained by business processes
ANS: C
What is a common reason for software change, as mentioned in the text? A. Historical significance B. Aesthetic improvements C. Emergence of new requirements D. Philosophical shifts
ANS: C
What is an architectural pattern and why is it valuable? A. A description of system interfaces; it helps with system analysis. B. A graphical representation of architectural models; it simplifies communication. C. A proven design practice; it provides a stylized solution for common design challenges. D. A type of notation for documenting software architectures; it ensures semantic clarity.
ANS: C
What is an example of a Product Requirement? A. Nuclear safety authority B. Operational process that defines how it will be used C. How fast the system must execute and how much memory it needs D. The product itself
ANS: C
What is an example of a system failure? a. The code is not being double checked to work for all cases. b. In the weather system, a programming might decide that the way to compute the time for the next transmission is to add 1 hour to the current time. This works except when the transmission time is between 23.00 and midnight. c. No weather data is transmitted because the time is invalid. d. Value of the variable is set incorrectly so faulty code is executed.
ANS: C
What is an interaction model? a. A structural model that demonstrates the other systems in the environment of the system being developed. b. A miniature model that does not interact with its environment. c. A dynamic model that shows how the system interacts with its environment as it is used. d. Neither of the answers provided.
ANS: C
What is availability in the context of system dependability? A. The probability that the system can resist accidental or deliberate intrusions. B. The probability that the system will correctly deliver services as expected by users. C. The probability that the system will be up and running and able to deliver useful services to users. D. A judgment of how well a system can maintain the continuity of its critical services.
ANS: C
What is one of the primary advantages of incremental development when it comes to accommodating changing customer requirements? A. It increases the cost of accommodating changes due to frequent iterations. B. It requires extensive analysis and documentation, making changes more challenging. C. It allows for more rapid delivery of useful software and reduces the cost of change. D. It delays customer feedback until the end of the development process.
ANS: C
What is one of the primary reasons why agile development methods emerged in the late 1990s? A. To increase the complexity of software systems. B. To implement plan-driven development for all projects. C. To radically reduce the delivery time for working software systems. D. To establish stable software requirements for all businesses.
ANS: C
What is support software? a. Defines how the business should be carried out. b. Inconsistent data and duplicated in several files over a number of different databases. c. operating system and utilities provided by the hardware manufacturer used for system development. d. A hardware that is not compatible with current organizational IT purchasing policies
ANS: C
What is the correct order of the levels in the process maturity model? a. Initial, optimizing, defined, managed, quantitatively managed b. Optimizing, initial, defined, managed, quantitatively managed c. Initial, managed, defined, quantitatively managed, optimizing d. Managed, quantitatively managed, defined, initial, optimizing
ANS: C
What is the definition of "sprint"? a. A implemention iteration. Sprints are usually 12-24 weeks long. b. A Negotiation iteration. Sprints are usually 1-2 days long. c. A development iteration. Sprints are usually 2-4 weeks long. d. A measurement iteration. Sprints are usually 2-4 weeks long.
ANS: C
What is the main drawback of the waterfall process model? A. Loss of control over evolution of reused system elements. B. The system structure tends to degrade as new increments are added. C. Difficulty accommodating change after the process is underway; a phase has to be complete before moving onto the next phase. D. System may not meet real needs of user.
ANS: C
What is the output of the architectural design process, which describes how the system is organized as a set of communicating components? A. Architectural communication plan B. Architectural requirements document C. Architectural model D. Architectural testing framework
ANS: C
What is the potential cost difference between fixing a requirements error after delivery and fixing an implementation error? A. Requirements errors cost the same as implementation errors. B. Fixing a requirements error costs twice as much as fixing an implementation error. C. Fixing a requirements error may cost up to 100 times more than fixing an implementation error. D. Fixing a requirements error is always less expensive than fixing an implementation error.
ANS: C
What is the primary goal of architectural design in software development? A. To define specific requirements for the system. B. To create detailed design specifications. C. To organize the overall structure of the software system. D. To assess non-functional requirements.
ANS: C
What is the primary objective of validation in the software development process? A. To increase requirements error costs. B. To identify all possible requirements conflicts. C. To ensure that the customer's needs are best supported. D. To minimize the cost of fixing implementation errors.
ANS: C
Which of these is NOT considered ethical behavior for software engineers? A. Respecting confidentiality, even if a formal agreement has not been signed B. Refraining from using one's skills for computer misuse C. Accepting work outside of one's competence D. Respecting intellectual property
ANS: C
Which of these is something that approaches to scaling agile methods have in common? A. There cannot be more than a single product owner or customer representative. B. You must stick to a completely incremental approach to requirements engineering. C. It is impossible to focus only on the code of the system. D. None of the above.
ANS: C
Which one is not an ethical responsibility of a software engineer? a. Competence b. Confidentiality c. Political allegiance d. Intellectual Property
ANS: C
Which open-source server system is the foundation of the Apache web server? a. SQL b. Phyton c. Linux d. Java
ANS: C
Which piece of documentation is a collection of evidence that provides a strong argument for the safety of a system? a. Safety certification b. Hazard register c. Safety case d. Hazard log
ANS: C
Which principal dimensions of dependability consists of the likelihood that a system will cause damage to people or its environment? a. Availability b. Reliability c. Safety d. Security
ANS: C
Which reengineering approach is most expensive? a. Source code translation b. Program and data restructuring c. Restructuring plus architectural changes d. Automated program restructuring
ANS: C
Which type of user testing method consists of customers testing a system to decide if it is ready to be accepted and deployed? a. Beta testing b. Alpha testing c. Acceptance testing d. Deployment testing
ANS: C
Who are the readers of user requirements typically concerned with? a) Software developers b) System architects c) Managers not interested in system details d) External stakeholders
ANS: C
Why is a high-level architectural view of a system useful for communication with system stakeholders and project planning? A. Because it provides a detailed, cluttered view of the system. B. Because it focuses on low-level system components. C. Because stakeholders can relate to an abstract view without being confused by details. D. Because it primarily addresses non-functional requirements.
ANS: C
Why is it challenging to achieve both completeness and consistency in large system requirements? a) Stakeholders have similar needs and expectations. b) Large systems have fewer stakeholders. c) Mistakes and omissions are common in complex specifications. d) Requirements are always clear and unambiguous.
ANS: C
Why is it important to present multiple views of the software architecture for both design and documentation? A. To include information about when patterns are useful. B. To provide a high-level architectural view for stakeholders. C. To show different perspectives and aspects of the system. D. To demonstrate the non-functional characteristics of the system.
ANS: C
Why is it important to uniquely identify each requirement in the requirements management process? A. To increase the complexity of requirements. B. To make the change management process more challenging. C. To enable cross-referencing with other requirements. D. To eliminate the need for traceability policies.
ANS: C
Why is modeling system-to-system interaction important? A. To develop abstract models of a system from different perspectives. B. To establish system boundaries. C. To highlight communication problems that may arise. D. To define business process models.
ANS: C
Why is the Waterfall model considered less suitable for projects where requirements are prone to change? A. Because it excels at adapting to changing customer requirements. B. Because it is a flexible approach that can easily accommodate evolving project needs. C. Because its inflexible partitioning makes it difficult to respond to changing requirements. D. Because it encourages constant adjustments to the project plan.
ANS: C
Why should both client and contractor staff be involved in reviews of requirements definition? A. To eliminate the need for formal reviews. B. To increase the cost of the review process. C. To resolve problems at an early stage through good communication. D. To minimize the level of requirements management detail.
ANS: C
Model-driven engineering (MDE) is __. a. The dynamic behavior of a system as it is executing. b. Event driven, with minimal data processing. c. An approach to software development where models rather than programs are the principal outputs of the development process. d. Models the behavior of the system in response to external and internal events.
ANS: C.
An exception handler usually does NOT do which of the following? A. Passes control to the programming language runtime support system that handles exceptions B. Carries out some alternative processing to that which was originally intended C. Signals to a higher-level component that an exception has occurred D. Signals to a lower-level component that an exception has occurred
ANS: D
Architectural design is _. a. Statements in natural language plus diagrams of the services the system provides and its operational constraints. b. Contractor managers c. Client managers d. Concerned with understanding how a software system should be organized and designing the overall structure of that system.
ANS: D
Examples of safety assurance activities are... a. Hazard analysis b. Safety reviews c. Safety certification d. All the above
ANS: D
How is the availability of a system quantitatively expressed? A. In terms of the mean time to failure. B. In terms of the probability of failure-free operation. C. In terms of the rate of occurrence of failure. D. In terms of the system being up and running for a specified percentage of time.
ANS: D
How long does the Scrum Sprint Cycle last? A.) 24 hours B.) 3 days C.) 1 week D.) 2 - 4 weeks
ANS: D
In an object-oriented system, what is a key characteristic of objects? a. They share their state with other objects. b. They can be directly accessed from outside the object. c. They are not associated with real-world entities. d. They include both data and operations.
ANS: D
Interface design is __. a. where you search for reusable components. If unavailable, you design how it will operate. b. where you design the system data structures and how these are to be represented in a database. c. where you identify the overall structure of the system, the principal components (subsystems or modules), their relationships and how they are distributed. d. where you define the interfaces between system components.
ANS: D
Key problems among Agile maintenance are __. a. Lack of product documentation b. Keeping customers involved in the development process c. Maintaining the continuity of development team d. All of the above
ANS: D
Rapid software development is known as ___ development. A. Greedy B. Directive C. Speedy D. Agile
ANS: D
Software design and implementation is _. a. The first step in the software engineering process. b. The stage that does NOT have an executable software system developed yet. c. Not a stage in the software engineering process. d. The stage in the software engineering process at which an executable software system is developed.
ANS: D
Software system that are reliable may not be safe due to... a. There is never a 100% guarantee that a software system is fault-free and fault- tolerant. b. Specification may be incomplete as in it does not describe the required behavior of the system in some critical situations. c. Hardware malfunctions may cause sensors and actuators to behave in an unpredictable way. d. All the above.
ANS: D
System failure refers to... a. A characteristic of a software system that can lead to a system error. b. An erroneous system state during execution that can lead to a system error. c. Human behavior that results in the introduction of faults into a system. d. An event that occurs at some point in time when the system does not deliver a service as expected by its users.
ANS: D
System hardware legacy systems... a. Defines how the business should be carried out. b. Used in business to achieve an objective. c. Data processed by the application system. d. may be written for hardware that is no longer available, that is expensive to maintain, and may not be compatible with current organizational IT purchasing policies.
ANS: D
The definition "a process in which planning is incremental and continual as software is developed" best describes which term? a. Process improvement b. Plan-driven process c. Integration and configuration model d. Agile process
ANS: D
To develop a system design from concept to detailed, object-oriented design, you need to... a. Design the system architecture. b. Identify the principal objects in the system. c. Specify interfaces. d. All the above.
ANS: D
What are common activities in various object-oriented design processes? A. Define the context and modes of use of the system. B. Develop design models. C. Specify object interfaces. D. All of the above.
ANS: D
What are metrics used to specify reliability and availability? a. Probability of failure on demand (POFOD) b. Rate of occurrence of failures (ROCOF) c. Availability (AVAIL) d. All the above.
ANS: D
What are system requirements? a. Statements in natural language plus diagrams of the services the system provides and its operational constraints. Written for customers. b. Contractor managers c. Client managers d. Document with detailed descriptions of system's functions, services, and operational constraints. Defines what should be implemented so may be part of a contract between client and contractor.
ANS: D
What are the complementary approaches that are used to improve the reliability of a system? a. Fault avoidance b. Fault detection and correction c. Fault tolerance d. All the above
ANS: D
What does the 'Preface' chapter describe in a requirements document? a. Briefly describes the systems functions and explain how it will work with other systems. b. Presents a high-level overview of the anticipated system architecture, showing the distribution of functions across system modules. c. Defines the technical terms used in the document. d. Defines the expected readership of the document and describes its version history, including a rational for the creation of a new version and summary of the changes made in each version.
ANS: D
What is NOT a part of the waterfall model phases? A.) Requirement analysis and definition B.) Systems and software design C.) Implementation and unit testing D.) Incremental development
ANS: D
What is NOT one reason eliciting and understanding requirements from system stakeholders is a difficult process? A. Political factors that influence the requirements of a system B. Dynamic analysis of the economic and business environment C. Different stakeholders with differing requirements may express their requirements in different ways D. Stakeholders know what they want from a computer system
ANS: D
What is an example of an acceptable risk (in the case of the insulin pump)? a. None of the examples are an acceptable risk. b. Failure in the system causing a threat to human life such as an overdose of insulin. c. Failure of the hardware monitoring system where (at worst) the consequence is a short-term insulin underdose. d. Allergic reaction that causes minor skin irritation.
ANS: D
What is an important factor to consider during the environmental assessment of a legacy system? A) The number of user interfaces. B) The understandability of the source code. C) The age of the hardware. D) The volume of data used by the system.
ANS: D
What is error tolerance? a. Reusing components. b. Being able to repair quickly. Must diagnose the problems and access the component that has failed. c. Maintain the value of a system by including new requirements. d. System can detect errors and either fix them automatically or request the user to re-input their data.
ANS: D
What is one of the key benefits of ongoing refactoring in software development? A. It increases the need for extensive documentation. B. It makes changes to the code more difficult. C. It eliminates the need for architecture refactoring. D. It improves code understandability and simplifies future changes.
ANS: D
Which model shows the organization and architecture of a system? A. Interaction model B. Behavioral model C. External model D. Structural model
ANS: D
What is one of the key benefits of ongoing requirements management in software development? A. It leads to fewer emerging requirements. B. It eliminates the need for change management processes. C. It reduces the need for regular reviews. D. It allows for better assessment of requirements changes and improves traceability.
ANS: D
What is one reason why legacy systems are expensive to change? a. Legacy systems have highly detailed, up-to-date documentation b. Legacy systems already run effectively on modern hardware c. It is impossible to refactor legacy systems d. Legacy systems may be implemented with obsolete programming languages
ANS: D
What is the "setup part" of an automated test? a. That part does not exist. b. When comparing the result of the call with the call with the expected result. c. Where you call the object or method to be tested. d. Where you initialize the system with the test case, namely, the input and expected outputs.
ANS: D
What is the distinction between functional and non-functional requirements? a) Functional requirements specify what the system should do, while non-functional requirements specify how it should be implemented. b) Functional requirements define constraints, while non-functional requirements describe system behavior. c) Functional requirements focus on system architecture, while non-functional requirements focus on user needs. d) Functional requirements pertain to system features, while non-functional requirements relate to system characteristics.
ANS: D
What is the essential role of design models in structured object-oriented design processes, particularly for large systems developed by different groups? A. To eliminate the need for software design. B. To simplify communication between developers and stakeholders. C. To reduce development and maintenance effort. D. To provide a vital communication mechanism.
ANS: D
What is the final output of the requirements engineering process? a. A prototype of the system b. A finished system c. System design and architecture d. System requirements document
ANS: D
What is the first step of the requirements elicitation and analysis process? a. Requirements classification and organization b. Requirements specification c. Requirements prioritization and negotiation d. Requirements discovery
ANS: D
What is the goal of verification and validation process? a. To ensure that the system does NOT fit the purpose. b. Too many goals to count. c. There is no goal. d. To establish confidence that the software system is "fit for purpose."
ANS: D
What is the output of the architectural design process? A. A set of communicating components. B. A complete system model showing interfaces and connections. C. A high-level architectural view of a system. D. An architectural model describing system organization.
ANS: D
What principle of Agile methods emphasizes the importance of individuals and their interactions over processes and tools? A. Customer collaboration over contract negotiation B. Responding to change over following a plan C. Working software over comprehensive documentation D. Individuals and interactions over processes and tools
ANS: D
What type of models reveal how the system being developed is used in broader business processes, and what modeling technique may be used for this purpose? A. Context models; UML class diagrams B. Interaction models; UML sequence diagrams C. Structural models; UML use case diagrams D. Process models; UML activity diagrams
ANS: D
When developing dependable software, you need to ensure that... a. Avoid the introduction of accidental errors into the system. b. Design verification and validation processes that are effective in discovering residual errors that affect the dependability of the system. c. Design protection mechanisms that guard against external attacks d. All the above.
ANS: D
Which UML model types are useful for adding detail to use case and architectural models? a. Subsystem models b. Sequence models c. State machine models d. All the above.
ANS: D
Which approach should be used to achieve the highest level of reliability and availability in a system? a. Fault tolerance b. Fault detection c. Fault avoidance d. A combination of fault avoidance, detection, and tolerance
ANS: D
Which architectural and system characteristic deal with using a layered architecture with critical assets in the inner layers? a. Maintainability b. Safety c. Performance d. Security
ANS: D
Which characteristic of Agile development involves the frequent delivery of new versions for evaluation by stakeholders? A. Inter-leaved program specification, design, and implementation B. Extensive tool support with automated testing tools C. Minimal documentation with a focus on working code D. Involving stakeholders in version specification and evaluation
ANS: D
Which design principle should be applied to ensure performance optimization in software architecture? A) Use a layered architecture with critical assets in the inner layers B) Localize safety-critical features in a small number of sub-systems C) Include redundant components and mechanisms for fault tolerance D) Localize critical operations and minimize communications. Use large rather than fine-grain components
ANS: D
Which is NOT a reason why prototypes must be discarded after development? A. The prototype will probably not meet normal organizational quality standards. B. Prototypes are normally undocumented. C. It may be impossible to tune the system to meet non-functional requirements. D. All of these are reasons.
ANS: D
Which is NOT one of the strategic options for evolving systems? a. Scrap the system completely. b. Leave the system unchanged and continue with regular maintenance. c. Reengineer the system to improve its maintainability. d. Programming languages.
ANS: D
Which is NOT one of the three major advantages of incremental development (as opposed to the waterfall method)? A. Easier to get feedback. B. The cost of implementation is reduced. C. Early delivery and/or deployment of the software. D. Cleaner code with each change.
ANS: D
Which is Not a part of the Extreme programming practices? A.) Collective ownership B.) Continuous integration C.) Refactoring D.) Core agile development
ANS: D
Which of the following defines release testing? A. When a "user" tests the system in their environment. B. When a system is tested for bugs and errors during the development stages. C. When program units or object classes are tested D. A different testing team tests the finished product before it is released to the consumers.
ANS: D
Which of the following is NOT a benefit of test-driven development? a. Better system documentation b. Easier debugging c. Every segment of code is executed and tested before release d. Makes inspections unnecessary
ANS: D
Which of the following is NOT a byproduct of dependable software? a. More complex code b. Higher security c. Safer response to human error d. Better performance
ANS: D
Which of the following is NOT a part of the Eight Principle of software engineering? a. Self b. Colleagues c. Judgement d. Family
ANS: D
Which of the following is NOT a practice of extreme programming? a. Pair programming b. Collective ownership of code c. Incremental planning d. Mandatory overtime work
ANS: D
Which of the following is NOT a useful UML model? A. State Machine Model B. Subsystem Model C. Sequence Model D. System Model
ANS: D
Which of the following is NOT a way in which an architectural model is used? a. To encourage discussion b. To make a system easier to understand c. To document architecture d. To replace requirements engineering
ANS: D
Which of the following is NOT an essential element of a design pattern? a. Description of problem b. Meaningful name c. Consequences of pattern d. Implementation instructions
ANS: D
Which of the following is NOT an example of a general process model? a. Waterfall model b. Integration and configuration model c. Incremental development model d. Customer testing model
ANS: D
Which of the following is NOT one of the four activities in a hazard-driven safety specification process? A. Hazard assessment B. Hazard analysis C. Risk reduction D. Damage analysis
ANS: D
Which of the following is NOT one of the four key characteristics of a multi-team Scrum? A. Release alignment B. Role replication C. Product architects D. Scrum Master
ANS: D
Which of the following is NOT one of the three main activities in the requirements engineering process? A. Requirements validation B. Requirements elicitation and analysis C. Requirements specification D. Requirements configuration
ANS: D
Which of the following is NOT part of the four clusters of systems A. High quality: low business value B. Low quality: high business value C. Low quality: low business value D. High quality: no business value
ANS: D
Which of the following is NOT part of the four views? A. Development view B. Process view C. Logical view D. Open view
ANS: D
Which of the following is not a Software process activity? a. Software specification, where customers and engineers define the software that is to be produced and the constraints on its operation. b. Software development, where the software is designed and programmed. c. Software validation, where the software is checked to ensure that it is what the customer requires. d. Software protection, where the software is modified to be protected against attacks.
ANS: D
Which of the following is not a UML diagram type? a. Use case diagrams b. Class diagrams c. State diagrams d. Factorial diagrams
ANS: D
Which of the following is not a benefit of incremental development? a. More rapid delivery and deployment of useful software to the customer is possible. b. It is easier to get customer feedback on the development work that has been done. c. The cost of accommodating changing customer requirements is reduced. d. System structure tends to degrade as new increments are added.
ANS: D
Which of the following is not a fundamental step in all software processes? a. Development b. Evolution c. Specification d. Networking
ANS: D
Which of the following is not a key problem of agile maintenance? a. Lack of product documentation b. Maintaining the continuity of the development team c. Keeping customers involved in the development process d. None of the above
ANS: D
Which of the following is not a part of Gang of Four? a. A meaningful name referencing the pattern. b. A solution description of the parts of the design solution, their relationship, and responsibilities c. A description of the problem area that explains the pattern may be applied. d. The programmers and their approach throughout the process
ANS: D
Which of the following is not a subtree of a non-functional requirement? a. Product Requirements b. Organizational Requirements c. External Requirements d. Protocol Requirements
ANS: D
Which of the following is not an advantage of explicit architecture Stakeholder Communication System Analysis Large-Scale Reuse Private Development
ANS: D
Which of the following is not an advantage of the Model-View-Controller patter A) Allows the data to change independently of its representation and vice versa B) Supports presentation of the same data in different ways with changes made in one representation shown in all of them C) Used to simplify when there are multiple ways to view and interact with data. D) Can involve additional code and code complexity when the data model and interactions are simple
ANS: D
Which of the following is not an essential attribute of good software? a. Maintainablility b. Dependability and security c. Efficiency d. Efficacy
ANS: D
Which of the following is one of the stages of testing? a. Projection testing b. Buoyancy testing c. Overflow testing d. System testing
ANS: D
Which of the following is true about change? a. Business changes lead to new and changed system requirements b. New technologies open new possibilities for improving implementations c. Changing platforms require application changes d. All of the above
ANS: D
In a 24-hour period, the system is unavailable for 14.4 minutes a. 0.99 b. 0.9 c. 0.00009 c. 0.999
ANS: a
Which of the following statements is true? A. There is a method of software engineering that is absolutely better than another in all applications B. Development of software typically costs more than maintaining it C. You should never reuse software that has already been developed, and you should instead write new software D. The costs of software on a PC are often greater than the hardware cost
ANS: D
Which of these is a key issue with agile methods? A. Long-lifetime systems may require more design documentation to communicate the original intentions of the system developers, while documentation is not frequently kept up to date. B. If a system has to be approved by an external regulator, more detailed documentation may be required as part of the system safety case. C. A larger system may require a larger development team, while agile methods are most effective with smaller teams who can communicate informally. D. All of these are key issues.
ANS: D
Which one is NOT a part of static analyzers three level checking? a. Characteristics error checking b. User-defined error c. Assertion checking d. Overall checking
ANS: D
Which principle applies to all types of software systems? A. The process used to develop a system should be managed and understood well B. The software must be dependable and perform well C. One should reuse software when appropriate D. All of the above
ANS: D
Which statement is true? a. Software engineering tools are the exact same project to project b. Engineers must work as quick as possible c. If you cross some lines to make good work then its ok d. Software engineer tools change depending on what's being worked on
ANS: D
Why are software engineering principles applicable to all types of software systems? a. Because all systems are the same b. Because software engineering is a rigid field c. Because software systems have no variety d. Because fundamental ideas are universal across systems
ANS: D
Why is it essential for designers to take a holistic sociotechnical systems perspective? A) To avoid system costs B) To simplify the design process C) To reduce system speed D) To circumvent errors at system interfaces
ANS: D
Why is use case modeling important? a. To define the physical architecture of the system b. To create a visual representation of the system's data flow c. To specify the programming languages used in system development d. Each use case represents a discrete task that involves external interaction with a system
ANS: D
Why may undependable systems be rejected by users? A. Due to their high cost. B. Because they are too complex. C. Because they cause information loss. D. Because they are unreliable, unsafe, or insecure.
ANS: D
System modeling is _. a. Statements in natural language plus diagrams of the services the system provides and its operational constraints. b. Contractor managers c. Client managers d. The process of developing abstract models of a system, with each model presenting a different view or perspective of that system.
ANS: D.
Which system perspective deals with modeling the interactions between a system and its environment, or between the components of a system? a. External perspective b. Behavioral perspective c. Structural perspective d. Interaction perspective
ANS: D.
Testing of emergent properties is not particularly important. a. True b. False
ANS: False
Individual components are tested independently. a. True b. False
ANS: True
A fundamental precept of traditional software engineering is that you should design for ___. a. Change b. Difficulties c. Simplicity d. Small Releases
ANS: a
A product owner is ___. a. An individual whose job is to identify product features or requirements. b. A list of "to-do" items which must be tackled. c. A developmental iteration. d. An estimate of how much product backing effort that a team can cover in a single sprint.
ANS: a
A prototype is __. a. An initial version of a system used to demonstrate concepts and try out design options. b. A way to measure time. c. An evolution that takes place when changing existing software's. d. A bug found in the system.
ANS: a
Agile techniques such as test-driven development and automated regression testing are useful when __ are made. a. System changes b. Minor changes c. Database changes d. Hardware changes
ANS: a
An embedded system is a system where ___. a. The software controls some hardware device and is embedded in that device b. The software controls some hardware device while being embedded in a different device c. A hardware device controls the software embedded in that device d. The software remotely controls some hardware device
ANS: a
Architectural design is concerned with understanding how a __ system should be organized and designing the overall structure of that system. a. Software b. Hardware c. Basic d. Difficult
ANS: a
Class diagrams are used when developing an ___ system model to show the classes in a system and the associations between these classes. a. Object-oriented b. Basic c. Software d. Obtuse
ANS: a
How is availability different from reliability? a. Availability is the probability of failure-free system operation, while reliability is the probability that a system will be operational at a point in time. b. Reliability is expressed as a percentage, while availability is expressed as a rate of occurrence of failures. c. Availability is concerned with avoiding hazards, while reliability is concerned with detecting and removing faults. d. Reliability is the probability that a system will be operational at a point in time, while availability is the probability of failure-free system operation.
ANS: a
How is the concept of reliability different from availability? a. Reliability is the probability of failure-free operation, while availability is the probability of being operational at a specific point in time. b. Reliability is concerned with avoiding faults, while availability is concerned with detecting and removing faults. c. Reliability is measured quantitatively, while availability is measured qualitatively. d. Reliability is the probability of being operational, while availability is the probability of failure-free operation.
ANS: a
Stand-alone applications are ___. a. Systems that run on a local computer such as a PC and include all necessary functionality. b. Software control systems that control and manage hardware devices. c. Business systems that are designed to process data in large batches. d. Developed by scientists and engineers to model physical processes or situations.
ANS: a
Strategies to achieve and enhance dependability rely on both_. a. redundancy and diversity b. redundancy and reliability c. reliability and diversity d. reliability and availability
ANS: a
The __ stage in any software design process is to develop an understanding of the relationships between the software that is being designed and its external environment. a. First b. Last c. Least important d. Most important
ANS: a
The waterfall model is appropriate for _________. a. Embedded systems where the software has to interface with hardware systems b. Non-critical systems where there is no need for extensive safety and security analysis of the software specification and design c. Small software systems that are not part of broader engineering systems developed by several partner companies. d. Situations where informal team communication is possible and software requirements change quickly
ANS: a
User requirements are statements, in a ___ plus diagrams, of what services the system is expected to provide. a. Natural language b. Computer language c. Email correspondence d. Notebook
ANS: a
What are the key challenges facing software engineering today? a) Coping with increasing diversity, demands for reduced delivery times, and developing trustworthy software b) Building advanced hardware systems c) Improving theoretical foundations of programming languages d) Reducing the usage of the Internet
ANS: a
What does Product requirement do? a. Specify or contain the runtime behavior of the software. b. Make products you need. c. Check how much money will be lost and made. d. Gives you essential steps of making a product.
ANS: a
What is a software process model? a. A representation of a process from a particular perspective b. A description of the software's functionalities c. A set of instructions for coding a software d. A model used for designing user interfaces
ANS: a
What is the goal of safety requirements engineering? a. To identify protection requirements that ensure system failures do not cause injury or death. b. To specify features that enhance system reliability. c. To minimize the possibility of risk given cost and schedule constraints. d. To define situations and events that should always occur.
ANS: a
What might non-functional requirements, like security, do in relation to existing requirements? a. They may generate requirements that restrict or modify existing ones. b. They enhance the clarity of existing requirements. c. They only generate additional non-functional requirements. d. Non-functional requirements do not affect existing requirements.
ANS: a
Which of the following is NOT a reason that software systems that are reliable may not be safe? a. We can be 100% certain that a software system is fault-free and fault-tolerant b. The specification may be incomplete in that it does not describe the required behavior of the system in some critical situations c. Hardware malfunctions may cause sensors and actuators to behave in an unpredictable way d. The system operators may generate inputs that are not individually incorrect but that, in some situations, can lead to a system malfunction
ANS: a
Which of the following is NOT one of the reasons why it is expensive and risky to replace legacy systems? a. There is always a complete specification of the legacy system. b. Business processes and the ways in which legacy systems operate are often inextricably intertwined. c. Important business rules may be embedded in the software and may not be documented elsewhere. d. New software development is inherently risky.
ANS: a
Which of the following is NOT one of the three stages of development testing? a. Bug testing b. Unit testing c. Component testing d. System testing
ANS: a
Which of the following is NOT part of the Utility services? a). Resource finder b). Authentication c). User storage d). Interfacing e). Application storage
ANS: a
Which of the following is an example of a generic product? a. PC Software b. Air traffic control software c. Traffic monitoring systems d. Embedded control systems
ANS: a
__ is a runtime approach to dependability in which systems include mechanisms to continue in operation, even after a software or hardware fault has occurred and the system state is erroneous. a. Fault tolerance b. Reliability handling c. Fault handling d. Error checking
ANS: a
Which V & V (Verification and Validation) activity involves executing the system with test cases derived from the specification of the real data to be processed by the system? a. System testing b. Checking and review processes c. Verification d. Validation
ANS: a. System testing
#2. Software systems are ________. a. Tangible b. Abstract c. Concrete d. Always simple
ANS: b
(Unit testing) Why does generalization/inheritance make object class testing more complicated? a. The hierarchical structure of the classes makes the program more difficult for the human tester to follower. b. You can't test an operation and assume that it will work as expected in all subclasses that inherit it. c. It is rarely used in the software engineering field; therefore, not many people have knowledge on it. d. None of the above
ANS: b
All systems involve __ of some kind. a. Coding b. Interaction c. Diagrams d. Explanations
ANS: b
An on-site customer is ___. a. Re-organizing class hierarchy to remove duplicate code b. A representative of the end-user of the system c. Pairs of developers working together d. Large amounts of overtime
ANS: b
Define "system fault" in the context of faults, errors, and failures. a. The inclusion of the code to add 1 hour to the time of the last transmission. b. A characteristic of a software system that can lead to a system error. c. An erroneous system state that can lead to unexpected system behavior. d. An event that occurs when the system does not deliver a service as expected.
ANS: b
Define "system fault." a. A human error that leads to the introduction of faults into a system. b. A characteristic of a software system that can lead to a system error. c. An erroneous system state that can lead to system behavior unexpected by users. d. An event that occurs when the system does not deliver a service as expected by its users.
ANS: b
Dependable software processes are software processes that are designed to produce __. a. Unreliable software b. Dependable software c. Dependable hardware d. Enhanced software
ANS: b
Functional requirement define what actions system should perform. These depend on a. The expertise of the programmer, project timeline, and the budget b. The type of software being developed, the excepted users of the software, and the general approach taken by the organization when writing the requirements. c. The day, the month, and the year, d. The type of system, the budget limitation, and other constraints.
ANS: b
Give an example of a primary safety-critical system. a. Automobile control systems b. Aircraft engine components monitoring systems c. Infrastructure control systems d. Process control systems in chemical manufacture
ANS: b
Hazard analysis is the process of discovering the root causes of ______ in a safety-critical system. a. Risks b. Hazards c. Errors d. Mistakes
ANS: b
How does software engineering differ from system engineering? a) Software engineering focuses on hardware and software, while system engineering focuses on process engineering. b) Software engineering deals with software production, while system engineering covers hardware, software, and process development. c) Software engineering is only concerned with computer science theories, while system engineering focuses on practical applications. d) Software engineering and system engineering are interchangeable terms.
ANS: b
How many Ethical Principles are there? a. 3 b. 8 c. 5 d. 13
ANS: b
Process measurement is when _. a. Changes are proposed to address some of the identified process weaknesses. b. One or more attributes of the software processes are measured. c. The current process is assessed, and weaknesses are identified. d. Number of occurrences happen in a particular event.
ANS: b
Safety-critical systems are systems in which it is essential that system operation is always ______. a. Dependable b. Safe c. Focused d. Unstable
ANS: b
Software engineering is different from computer science in that it focuses on: a) Theoretical concepts b) Practical software development and delivery c) Hardware design and optimization d) Network security protocols
ANS: b
The idea of patterns as a way of presenting, sharing, and reusing knowledge about software systems has been adopted in a number of areas of __. a. Aerospace engineering b. Software engineering c. Electrical engineering d. Civil engineering
ANS: b
The level of detail that you need in a design model depends on the _ process used. a. Coding b. Design c. Logical d. Mechanical
ANS: b
What are some examples of applications with very high reliability requirements? a. Entertainment software b. Critical medical systems c. Casual mobile games d. Productivity tools
ANS: b
What are the four common generic activities in Requirements Engineering (RE)? a. Research, Development, Implementation, Maintenance b. Elicitation, Analysis, Validation, Management c. Planning, Execution, Monitoring, Closure d. Design, Coding, Testing, Deployment
ANS: b
What are the four main activities involved in software development processes? a. Specification, Design, Validation, Evolution b. Specification, Design and implementation, Validation, Evolution c. Specification, Integration, Configuration, Evolution d. Specification, Design, Validation, Configuration
ANS: b
What is a characteristic of Extreme Programming (XP)? a) Building new versions only once per day b) Delivering increments to customers every 2 weeks c) Avoiding customer engagement with the team d) Running tests only once for every build
ANS: b
What is a major challenge in legacy system change, making it expensive? a. Consistent programming style b. Use of obsolete programming languages c. Adequate system documentation d. System structure improvement
ANS: b
What is an example of external requirements? a. School Coding project b. Nuclear safety authority c. Restaurant menu d. Golf club regulations
ANS: b
What is fault avoidance? a. The use of run-time techniques to ensure that system faults do not result in system failure. b. The process of developing a system to minimize the possibility of mistakes or trap mistakes before they result in the introduction of system faults. c. The verification and validation techniques used to discover and remove faults in a system before it is deployed. d. Techniques that increase the probability of detecting and correcting errors before the system goes into service.
ANS: b
What is hazard severity? a. The probability of events occurring that create a hazard. b. An assessment of the worst possible damage that could result from a particular hazard. c. The probability that the system will cause an accident. d. A measure of the likelihood that a risk will arise.
ANS: b
What is safety in the context of a system? a. The system's ability to operate normally without causing any damage. b. The system's ability to operate abnormally without causing human injury or death. c. The system's ability to operate without any failures. d. The system's ability to deliver services as specified.
ANS: b
What is software engineering? a. The process of manufacturing computer hardware components. b. An engineering discipline that is concerned with all aspects of software production. c. A field of study focused on plant genetics. d. The art of creating digital artwork and graphic design.
ANS: b
What is software? a). Software is a discipline that is concerned with all aspects of software production from initial conception to operation and maintenance. b). Computer programs and associated documentation. Software products that may be developed for a particular customer or may be developed for a general market. c). Computer programs. d). A software is composed by one single program. e). Software is the external and internal devices that process any data.
ANS: b
What is the goal of inspections during the software testing process? a. To execute the system with test data b. To discover anomalies and defects in the static system representation c. To expose defects in the software's behavior d. To demonstrate the software meets its requirements
ANS: b
What is the primary focus of Agile development methods? a. Producing stable software requirements b. Radically reducing delivery time for working software systems c. Planning development stages in advance d. Incorporating external rules and regulations
ANS: b
What is the primary purpose of program testing? a. To execute a program using artificial data b. To discover program defects before it is put into use c. To validate the system's expected use d. To demonstrate the software meets its requirements
ANS: b
Which is NOT one of the ethical principles? a. Acting consistently with public interest b. Spreading malware c. Maintaining integrity and independence in their professional judgement d. Being fair and supportive of their colleagues
ANS: b
Which of the following is NOT a stage of the waterfall model? a. Requirements definition b. Security analysis c. System and software design d. Operation and maintenance
ANS: b
Which of the following is NOT one of the checks that may be used to validate inputs? a. Range checks b. Completeness checks c. Reasonableness checks d. Representation checks
ANS: b
Which of the following is NOT one of the four essential elements of design patterns defined by the Gang of Four in their book on patterns? a. A name that is a meaningful reference to the pattern. b. A description of the problem area that explains when the pattern cannot be applied. c. A solution description of the parts of the design solution, their relationships and their responsibilities. d. A statement of the consequences of applying the pattern.
ANS: b
Which of the following is NOT one of the four fundamental architectural views? a. Logical view b. Virtual view c. Physical view d. Development view
ANS: b
Which of the following is NOT one of the three types of abstract system model the MDA method recommends should be produced? a. Computation independent model b. Computation dependent model c. Platform-independent model d. Platform-specific models
ANS: b
Which of the following is NOT one of the ways in which quantitative reliability specification is useful? a. Deciding the required level of the reliability helps to clarify what stakeholders really need b. Provides a basis for assessing when to start testing a system c. It is a means of assessing different design strategies d. Evidence that a required reliability target has been met is important for system certification.
ANS: b
Which of the following is a classification of software system requirements? a. Semi-functional requirements b. Non-functional requirements c. Absolute-functional requirements d. Moderately-functional requirements
ANS: b
Which of the following is one of the principles of agile methods? a. Final delivery b. Maintain simplicity c. Process, not people d. Reject change
ANS: b
Which of the following is true about customized products? a. The specification of what the software should do is owned by the software developer and decisions on software change are made by the developer. b. The specification of what the software should do is owned by the customer for the software and they make decisions on software changes that are required. c. Both a and b are true. d. Neither a nor b are true.
ANS: b
Why is the integration and configuration model used? a) To develop software in a well-planned and structured manner b) To assemble a system from existing configurable components c) To validate software against customer requirements d) To respond to changing customer requirements
ANS: b
__ is the general process of changing a system after it has been delivered. a. Software development b. Software maintenance c. Software engineering d. Hardware maintenance
ANS: b
___ errors are one of the most common forms of error in complex systems. a. Coding b. Interface c. Development d. Security
ANS: b
What is one of the primary benefits of a programming team looking for possible software improvements even when there is no immediate need for them, as mentioned in the text? a. It reduces the need for documentation. b. It makes changes easier and less expensive. c. It requires frequent architecture refactoring. d. It hinders the understandability of the software.
ANS: b. It makes changes easier and less expensive.
A _ is a specialized system that is associated with some other system. a. Management system b. Software system c. Protection system d. Dependence system
ANS: c
According to Extreme Programming (XP), what is the approach to handling changes in software development? a) Anticipating changes and planning for them in advance b) Avoiding any changes in the development process c) Emphasizing constant code improvement (refactoring) d) Running all tests for every build
ANS: c
Agile methods are ___ methods in which the increments are small. a. Waterfall b. Integration and configuration c. Incremental development d. Configuration development
ANS: c
An example of computer misuse is: a. Using a personal laptop to watch a movie instead of working on homework. b. Using ChatGPT to write an essay. c. Playing video games on an employer's computer. d. Not spreading viruses to other computers.
ANS: c
For which of the following language is UML more helpful for? a. Python b. HTML c. Java d. CSS
ANS: c
How does computer science differ from software engineering? a. Computer science deals with the practicalities of developing software, whereas software engineering focuses on theory and fundamentals. b. Computer science is concerned only with writing code for programs, whereas software engineering deals with the principles of developing software. c. Computer science focuses on theory and fundamentals, whereas software engineering deals with the practicalities of developing software. d. Computer science deals only with understanding computer hardware, whereas software engineering focuses on developing software.
ANS: c
How is safety related to reliability? a. Safety and reliability are interchangeable terms. b. Reliability is sufficient for safety, but safety is not necessary for reliability. c. Reliability and availability are necessary but not sufficient conditions for system safety. d. Safety is concerned with conformance to a given specification, while reliability is concerned with avoiding hazards.
ANS: c
In the UML, you show attributes and operations by extending the simple _ that represents a class. a. Circle b. Triangle c. Rectangle d. Parallelogram
ANS: c
In the context of V & V (Verification and Validation), what does verification primarily address? a. To demonstrate the software meets its requirements b. To expose defects in the software's behavior c. "Are we building the product right?" d. "Are we building the right product?"
ANS: c
The name "pipe and filter" comes from the original __ system where it was possible to link processes using "pipes." a. Apple b. Windows c. Unix d. IBM
ANS: c
What are the costs of software engineering? a. Roughly 50% of software costs are development costs, 50% are testing costs. b. Roughly 90% of software costs are development costs, 10% are testing costs. c. Roughly 60% of software costs are development costs, 40% are testing costs. d. Roughly 10% of software costs are development costs, 90% are testing costs.
ANS: c
What are the four attributes of a good software? a). Confidentially, Competence, Utility, and Authentication. b). Efficiency, Development, Validation, and Data collection. c). Acceptability, Efficiency, Maintainability, Dependability, and security. d). Functionality, Utility, Maintainability, and Confidentially. e). Integrity, Security, Efficiency, and Flexibility.
ANS: c
What does defect testing primarily aim to achieve? a. To execute a program using artificial data b. To demonstrate the software meets its requirements c. To expose defects in the software's behavior d. To discover program defects before it is put into use
ANS: c
What is engineering discipline? a. The distribution of systems across networks that include different types of computers and mobile devices. b. Software that is commissioned by a specific customer to meet their own needs. c. The use of theories and methods to solve problems bearing in mind organizational and financial constraints. d. Systems that are primarily for personal use and entertainment.
ANS: c
What is pair programming? a. When a customer is a member of the development team. b. Large amounts of overtime and low code quality. c. Developers that work in pairs, checking each other's work and providing support to always do a good job. d. Systems that are primarily for personal use and entertainment.
ANS: c
What is the aim of requirement elicitation? a. To make a lot of money b. To find the efficient and best way to give the stakeholders what they desire ASAP. c. To understand the work that stakeholders do and how they might use a new system to help support that work. d. To ensure the stakeholders think that you completely know what they want and what you will do but you're lost and will do what is best.
ANS: c
What is the correct order of the stages of the waterfall model? a. Requirements definition -> integration and system testing -> system and software design -> implementation and unit testing -> operation and maintenance b. System and software design -> requirements definition -> integration and system testing -> implementation and unit testing -> operation and maintenance c. Requirements definition -> system and software design -> implementation and unit testing -> integration and system testing -> operation and maintenance d. Operation and maintenance -> integration and system testing -> requirements definition -> implementation and unit testing -> system and software design
ANS: c
What is the difference between computer science and software engineering? a. Software engineering focuses on theory and fundamentals; computer science is concerned with the practicalities of developing and delivering useful software. b. There is no difference between computer science and software engineering. c. Computer science focuses on theory and fundamentals; software engineering is concerned with the practicalities of developing and delivering useful software. d. None of the above are true
ANS: c
What is the primary concern of software engineering? a) Theoretical research in computer science b) Developing hardware components c) Developing and maintaining software systems d) Designing user interfaces
ANS: c
When designing a dependable system, you must consider... a. Hardware failure b. Operational failure c. All the above d. Software failure
ANS: c
When is the waterfall model mostly used? a) For small-scale software projects b) For agile development projects c) For large systems engineering projects d) For projects with frequently changing requirements
ANS: c
Which of the following is NOT a good practice guideline for dependable programming? a. Provide a handler for all exceptions b. Include timeouts when calling external components c. Do not limit the visibility of information in a program d. Check all inputs for validity
ANS: c
Which of the following is NOT an attribute of good software? a) Performance b) Maintainability c) Unpredictability d) Usability
ANS: c
Which of the following is NOT one of the four activities in a hazard-driven safety specification process? a. Hazard identification b. Hazard assessment c. Hazard reduction d. Hazard analysis
ANS: c
Which of the following is NOT one of the general process models? a. Waterfall model b. Incremental development c. Circle model d. Integration and configuration
ANS: c
Which of the following is NOT one of the layers make up the sociotechnical systems stack? a. Equipment layer b. Business process layer c. Physical layer d. Organizational layer
ANS: c
Which of the following is NOT one of the legacy system layers? a. Business processes b. Application Software c. Platform and infrastructure design d. Hardware
ANS: c
Which of the following is NOT one of the three stages of testing for commercial software? a. Development testing b. Release testing c. Practice testing d. User testing
ANS: c
What is the principal responsibility of software project managers, as described in the text? a. To solely focus on the technical aspects of software development. b. To draw up detailed project plans without considering delivery time. c. To ensure that the project is delivered on time and within the planned budget. d. To work on the development of project deliverables personally.
ANS: c. To ensure that the project is delivered on time and within the planned budget.
A software engineer must uphold a degree of professional responsibility, even if it is not necessarily bound by law; such as: a. Intellectual property rights b. Confidentiality c. Competence d. All of the above
ANS: d
How are legacy systems categorized based on quality and business value? a. Low quality, low business value b. Low-quality, high business value c. High-quality, low business value d. High-quality, high business value
ANS: d
How is fault management achieved through "fault avoidance"? a. The system is developed to minimize the possibility of mistakes and trap mistakes before introducing system faults. b. Verification and validation techniques are used to discover and remove faults before deployment. c. The system is designed to ensure that faults do not result in system failure. d. Both a and b.
ANS: d
In what type of system model are class diagrams used? a. Functional system models b. Database system models c. Procedural system models d. Object-oriented system models
ANS: d
System testing checks if components are: a. Interacting correctly. b. Compatible c. Transferring the correct data at the correct time across interfaces. d. All of the above
ANS: d
The UML supports __ different types of models. a. 5 b. 3 c. 20 d. 13
ANS: d
What UML model type is useful for adding detail to use case and architectural models? a. Subsystem models b. Sequence models c. State machine models d. All of the above
ANS: d
What are some examples of applications with very high reliability requirements? a. Medical systems b. Telecommunications and power systems c. Aerospace systems d. All of the above
ANS: d
What do all software processes involve? a. Specification b. Design and Implementation c. Validation d. All the above
ANS: d
What factors should organizations consider when choosing a strategy for evolving legacy systems? a. Scrap the system completely b. Continue maintaining the system c. Transform the system by re-engineering d. All of the above
ANS: d
What is NOT a possible strategy for risk reduction? a. Damage limitation b. Hazard avoidance c. Hazard detection d. Passive implementation
ANS: d
What is a major advantage incremental development has over the waterfall model? a. The cost of implementing requirements changes is increased. b. It is harder to get customer feedback on the development work that has been done. c. It is easier for software engineers to understand. d. Early delivery and deployment of useful software to the customer is possible.
ANS: d
What is product architect? a. Lack of product documentation b. Keeping customers involved in the development process. c. Maintaining the continuity of the development team. d. Each team having to choose a product architect which then help design and evolve the overall system architecture.
ANS: d
What is the purpose of non-functional reliability requirements? a. To specify features that enhance system reliability. b. To identify protection requirements that ensure system failures do not cause injury or death. c. To define situations and events that should never occur. d. To quantitatively specify the required reliability and availability of a system using reliability metrics.
ANS: d
When is plan-driven development considered essential? a. For small or medium-sized product development b. When there are few external rules and regulations affecting the software c. When rapid development and delivery are crucial d. For some types of systems
ANS: d
Which are included in the principles of agile methods? a. Customer involvement b. Incremental delivery c. Maintain simplicity. d. All the above
ANS: d
Which is an essential attribute of a good software? a. Acceptability b. Efficiency c. Dependability and security d. All the above
ANS: d
Which is an example of computer misuse? a. Using a software that increases functionality. b. Creating methods to solve problems. c. Advancing the integrity and reputation of the software engineering. d. Game playing on an employer's machine.
ANS: d
Which of the following is NOT a UML model type that is particularly useful for adding detail to use case and architectural models? a. Subsystem models b. Sequence models c. State machine models d. Timing models
ANS: d
Which of the following is NOT a key feature of testing in XP: a. Test-first development b. Incremental test development from scenarios c. User involvement in the test development and validation d. The use of manual testing frameworks.
ANS: d
Which of the following is NOT a type of check that should be carried out on the requirements in a requirements document? a. Consistency checks b. Realism checks c. Validity checks d. Budget checks
ANS: d
Which of the following is NOT a type of non-functional requirements? a. Product requirements b. Organizational requirements c. External requirements d. Internal requirements
ANS: d
Which of the following is NOT an example of a generic software product? a. Apps for mobile devices b. Word processors c. Drawing packages d. Air traffic control systems
ANS: d
Which of the following is NOT one of the advantages of explicitly designing and documenting software architecture? a. Stakeholder communication b. System analysis c. Large-scale reuse d. Simple code
ANS: d
Which of the following is NOT one of the hazard-driven techniques that consider the potential system accidents that may occur? a. Hazard avoidance b. Hazard detection and removal c. Damage limitation d. Incident monitoring
ANS: d
Which of the following is NOT one of the shared common characteristics that all agile methods have? a. The processes of specification, design and implementation are interleaved. b. The system is developed in a series of increments. c. Extensive tool support is used to support the development process. d. The process is inevitably code-focused.
ANS: d
Which of the following is NOT one of the steps in the emergency repair process? a. Change requests b. Analyze source code c. Modify source code d. Deliver unmodified system
ANS: d
Which of the following is NOT one of the three parts of an automated test? a. A setup part b. A call part c. An assertion part d. An iteration part
ANS: d
Which of the following is NOT part of the Insulin reservoir process? a). Pump b). Clock c). Controller d). Simulation e). Sensor
ANS: d
Which one is NOT a stage of testing? a. Component testing b. System testing c. Acceptance testing d. Incremental development
ANS: d
Which question is NOT a relevant consideration during a feasibility study for a system implementation? a. Does the system contribute to the overall objectives of the organizations? b. Can the system be implemented within schedule and budget using current technology? c. Can the system be integrated with other systems that are used? d. What is afterlife like?
ANS: d
Which stage of testing involves a separate testing team testing a complete version of the system before it is released to users? a. User testing b. Development testing c. Acceptance testing d. Release testing
ANS: d
Why do businesses often continue to use legacy systems despite their risks and expenses? a. Lack of complete system specification b. Tight integration of system and business processes c. Undocumented business rules in the legacy system d. All of the above
ANS: d
____ is a property of a system that reflects the systems ability to operate, normally or abnormally, without danger of causing human injury or death and without damage to the systems environment a. Safety critical b. Systems safety c. Control system d. Safety
ANS: d
_____ can only be defined formally with respect to a system specification i.e. a failure is a deviation from a specification. a. Availability b. Non the Above c. Error d. Reliability
ANS: d
Which phase of the software development process involves identifying the overall structure of the system, determining the principal components, specifying their relationships, and deciding how they will be distributed within the system? a. Database design b. Interface design c. Component selection and design d. Architectural design
ANS: d. Architectural design
Which of the following agile methods, developed in the late 1990s, takes an 'extreme' approach to iterative development, involving frequent building of new versions, and delivering increments to customers every 2 weeks while ensuring that all tests run successfully for each build? a. Waterfall Model b. Scrum c. Kanban d. Extreme Programming (XP)
ANS: d. Extreme Programming (XP)
Which of the following accurately describes the organization of the four basic process activities (specification, development, validation, and evolution) in the waterfall model and incremental development? a. In the waterfall model, the activities are interleaved, while in incremental development, they are organized in sequence. b. In both the waterfall model and incremental development, the activities are organized in sequence. c. In both the waterfall model and incremental development, the activities are interleaved. d. In the waterfall model, the activities are organized in sequence, while in incremental development, they are interleaved.
ANS: d. In the waterfall model, the activities are organized in sequence, while in incremental development, they are interleaved.
Which of the following statements is true regarding the development of prototypes in software engineering? a. Prototypes must always include complete functionality to be effective. b. Error checking and recovery are always included in prototypes to ensure reliability. c. Prototypes may focus on non-functional requirements, such as reliability and security. d. Prototypes may be based on rapid prototyping languages or tools.
ANS: d. Prototypes may be based on rapid prototyping languages or tools.
Which phase of the requirements engineering process involves establishing what services are required, understanding the constraints on the system's operation and development, and determining what system stakeholders expect from the system? a. Requirements specification b. Requirements validation c. Defining the requirements in detail d. Requirements elicitation and analysis
ANS: d. Requirements elicitation and analysis
What are the fundamental software engineering activities? a). Analysis, Specification, Construction, and Verification. b). Design, Evolution, Implementation, and Testing. c). Specification, Validation, Testing and Evolution. d). Planning, Communication, Development, and Validation. e). Specification, Development, Validation and Evolution.
ANS: e
The readers of the user requirements are not usually concerned with how the system will be implemented and may be managers who are not interested in the detailed facilities of the system. a. true b. false
ANSWER: a
System stakeholders include __who is affected by the system in some way and so anyone who has a legitimate interest in it. a. someone b. anyone c. one d. people
ANSWER: b
The functional requirements for a system do not describe what the system should do. a. true b. false
ANSWER: b
Non-functional requirements, as the name suggests, are __ that are not directly concerned with the specific services delivered by the system to its users. a. not requirements b. values c. requirements d. chosen data sets
ANSWER: c
Feasibility study is a short, focused study that should take place early in the RE process. It should answer key questions: a. does the system contribute to the overall objectives of the organization? b. can the system be implemented within schedule and budget using current technology? c. can the system be integrated with other systems that are used?" d. all of the above
ANSWER: d
What is the correct definition of Redundancy? a. Where availability is critical, companies normally keep backup servers and switch to these automatically if failure occurs. b. To provide resilience against external attacks, different servers may be implemented using different operating systems c. A judgment of how likely it is that the system can resist accidental or deliberate intrusions. d. A judgment of how well a system can maintain the continuity of its critical services in the presence of disruptive events such as equipment failure and cyberattacks.
Ans: A
What is the primary reason why software companies accept the presence of some residual faults in their software? A) High cost of fault removal B) To challenge software users C) To increase software complexity D) Lack of skilled developers
Ans: A
What is true about system hardware in a legacy system? a. May have been written for hardware that is no longer available b. May rely on a range of support software, which may be obsolete or unsupported c. May be based on application system that provides the business services that are no longer available d. May be reliant on data that is inconsistent duplicated or held in different databases
Ans: A
What is true for availability fractions a. A value of approximately ~1 means a miniscule amount of down time b. The value 0.998 means that software is available for 2 out of 1000 time units c. A value of approximately ~0 means a miniscule amount of down time d. None of these are true in this context
Ans: A
Which of the following is NOT one of the perspectives from which you may develop different models to represent a system? A) Historical perspective B) Structural perspective C) Behavioral perspective D) Interaction perspective
Ans: A
Which type of error causes memory to overflow as the program stack fills up? a. Recursion b. Parallelism c. Interrupts d. Inheritance
Ans: A
__ attacks on a system are intended to make it unavailable. a. Denial of service b. Gatekeep c. Blackout d. Social engineering
Ans: A
What is the primary reason for using formal verification in safety-critical software systems? A) To eliminate the need for any system testing B) To demonstrate that the software meets its specification C) To reduce the costs associated with safety engineering D) To minimize the need for safety reviews and inspections
Ans: B
Which factor plays a key role in deciding the choice of distribution architecture for a software system? A) The system's user interface design B) The system's performance and reliability requirements C) The system's documentation format D) The system's hardware requirements
Ans: B
Which of the following is NOT a type of maintenance? a. Environmental adaptation b. Synchronization c. Fault repairs d. Functionality addition and modification
Ans: B
Which of the following is not an implementation issue? a. Reuse b. Asset reconciliation c. Configuration management d. Host-target development
Ans: B
Which of the following is not one of the stages of testing? a. User testing b. Runtime testing c. Release testing d. Development testing
Ans: B
Why is there no formulaic architectural design process mentioned in the text? A) Because architectural design is not an essential step in software development B) Because it depends on various factors including the type of system and the architect's experience C) Because architects always follow predefined templates D) Because architectural design is a one-time activity
Ans: B
How does static analysis contribute to software development in terms of safety? A) By ensuring the correctness of program syntax and grammar B) By focusing on detecting errors that occur during program execution C) By identifying potential faults and anomalies in the source code D) By minimizing the need for formal verification and model checking
Ans: C
What is NOT a method of fault management? a. Fault detection b. Fault tolerance c. Fault moderation d. Fault avoidance
Ans: C
What is architectural design primarily concerned with? A) Developing detailed software specifications B) Identifying the functional requirements of a system C) Designing a system organization that satisfies requirements D) Implementing the user interface of a software system
Ans: C
What is the correct definition of Change Implementation? a. Change implementation is the initial planning phase of system development. b. Change implementation is the process of proposing modifications to the existing system. c. Change implementation is iteration of the development process where the revisions to the system are designed, implemented, and tested. d. Change implementation is understanding the original program structure before proposing any number of changes.
Ans: C
What is the primary function of the Mentcare system in the mental health care process? A) To administer treatment to patients B) To detain patients against their will C) To ensure legal safeguards are implemented and patients' rights are respected D) To collect personal information about patients
Ans: C
What is the primary purpose of safety reviews in software engineering? A) Automated detection of errors and bugs in the code B) Ensuring compliance with industry standards C) Discovering potentially hazardous conditions and ensuring system safety D) Enhancing the performance and speed of software development
Ans: C
What is the problem with redundancy and diversity? a. Increases the system complexity b. Increase the chances of error due to unanticipated interactions and dependencies c. All the other options are correct d. None of the other options are correct
Ans: C
What is the purpose of context models in system modeling? A) To describe the dynamic behavior of the system B) To document the system's structure and operation C) To define the boundaries of the system and its dependencies on its environment D) To show the interactions between different system components
Ans: C
What metric is used to define the probability that a system will be operational when a demand for service is made? A) Probability of failure on demand (POFOD) B) Rate of occurrence of failures (ROCOF) C) Availability (AVAIL) D) Mean time to failure (MTTF)
Ans: C
Which of the following is NOT an advantage of a software inspection a. Don't need to worry about interactions between errors b. Allows inspection of incomplete versions of a system c. Locate and fix issues with the hardware d. Can consider broader quality attributes of a program, like compliance with standards, portability and maintainability
Ans: C
What is the purpose of safety certification for external components in safety-critical systems? A) To ensure all components are developed to the same standard B) To identify flaws in the external components and correct them C) To maintain complete information about the development processes D) To certify that all external components are error-free
Ans: C)
Why might software developers specify different reliability requirements for various parts of a system? A) To increase development costs B) To confuse system users C) To meet regulatory standards D) To achieve uniform reliability levels
Ans: C)
Failures are usually a result of _ that are derived from faults in the system. a. Runtime errors b. Corrupt headers c. Incorrect file extensions d. System errors
Ans: D
What are some approaches to identification? a. Use a grammatical approach based on a natural language description of the system b. Use a behavioral approach and identify objects based on what participates in what behavior c. Use scenario-based analysis. The objects, attributes and methods in each scenario are identified d. All other options are correct
Ans: D
What are some common activities in the process stage? a. Develop design models b. Identify the principal system objects c. Design the system architecture d. All other options are correct
Ans: D
What does object identification NOT rely on? a. Skill b. Experience c. Domain Knowledge d. Abstraction
Ans: D
What is NOT a testing guideline for sequences? a. Use sequences of different sizes in different tests b. Test with sequences of zero length c. Derive tests so that the first, middle and last elements of the sequence are accessed d. Tests must run 'successfully' before the change is committed.
Ans: D
What is the main advantage of using structured arguments in safety cases? A) They require less evidence and documentation B) They focus only on high-level claims about system safety C) They demonstrate that the program works as intended D) They show that program execution cannot reach unsafe states
Ans: D
Which of the following is NOT a consideration when choosing an architectural style for a software system based on non-functional requirements? A) Performance B) Security C) Maintainability D) Color scheme
Ans: D
In what way is Process Metrics used to assess maintainability? a. Number of outstanding change requests b. Average time required for impact analysis c. Number of requests for corrective maintenance d. Average time take to implement a change request e. All other options are correct
Ans: E
Dependability covers the related systems attributes of___. A.) Reliability, availability and Security B.) Reflection, degree, and property C.) Formal methods, diversity, and systems D.) Non the above
Answer: A
Design or system models must be... A. Abstract B. Detailed C. Complicated D. Simple
Answer: A
In an event-driven model, a system state is represented by what? A. A rounded rectangle. B. A sharp rectangle. C. An arrow. D. A filled circle.
Answer: A
Information systems have a generic architecture that can be organized as a layered architecture such as: A.) Users Communication B.) A syntax analyzer C.) Semantic analysis D.) B and C
Answer: A
Regarding the sociotechnical systems stack, systems engineering includes all EXCEPT... A. Society B. Application system C. Equipment D. Organization
Answer: A
The choice of architectural style and structure should depend on several non-functional requirements of the system EXCEPT... A. Complexity B. Availability C. Security D. Safety
Answer: A
The stereotypical situations where the code of a program can be improve include all of the following EXCEPT... A. Too short methods. B. Long methods. C. Data clumping. D. Duplicate code.
Answer: A
The term "decorator pattern" best describes which of the following design problems? A. Allow for the possibility of extending the functionality of an existing class at runtime. B. Tidy up the interfaces to a number of related objects that have often been developed incrementally. C. Tell several objects that the state of some other object has changed. D. Provide a standard way of accessing the elements in a collection, irrespective of how that collection is implemented.
Answer: A
What are the implementation issues? A.) Reuse, Configuration management, Host-target development B.) Abstraction, objects, components C.) System failures, copyright, Compile errors D.) Non the above
Answer: A
What does MDE stand for? A.) Model-Driven Engineering B.) Model-Diagram Event C.) Model-Driven Execution D.) Answer C
Answer: A
What is System Modeling? A.) Is the process of developing abstract models of a system B.) Block chain C.) Used to illustrate the operational contest of a system D.) All the above
Answer: A
What is Validation testing? A.) To demonstrate the developer and the system customer that the software meets requirements. B.) Inputs causing anomalous behavior C.) Outputs which reveal the presence of defects D.) Non the above
Answer: A
What is a requirement? A.) It may range from a high-level abstract statement of a service B.) It is the End users C.) System owners D.) System services
Answer: A
What is the post condition for an insulin pump? A.) The Inulin reservoir contains at least the maximum allowed single dose of insulin B.) Used to supplement natural languages C.) Lack of clarity D.) All the above
Answer: A
Which of the following is NOT a possible validity check that can be used? A. Simplicity B. Reasonableness C. Representation D. Range
Answer: A
Which of the following is true about test-driven development? A. The tests act as a form of documentation that describes what the code should be doing. B. When a test fails, it can be difficult to tell where the problem lies. C. If test-driven development is used, you don't need a system testing process to validate the system. D. It increases the cost of regression testing.
Answer: A
Which of these correctly matches users of a software requirements document and how they use it? A. System test engineers use the requirements to develop validation tests for the system. B. System engineers use the requirements to understand the system and the relationship between its parts. C. System customers use the requirements document to plan a bid for the system and to plan the system development process. D. System maintenance engineers use the requirements to understand what system is to be built.
Answer: A
Within automated static analysis checks, control faults may include which of the following? A. Unreachable code and unconditional branches into loops. B. Variable used before initialization and variables declared but never used. C. Unassigned pointers, pointer arithmetic, and memory leaks. D. Parameter type mismatches and uncalled functions and procedures.
Answer: A
Which of the following is an example of a stakeholder type? A. End users B. System requirements C. User intention D. Incremental requirements
Answer: A. End users
A system context model is a model that demonstrates the other systems in the environment of the system being developed. A.) Object B.) Structural C.) Interaction D.) C or A
Answer: B
Considering how effective the use of formal methods has been in decreasing errors in delivered software, which is a reason industry has been reluctant to adopt them? A. The time needed for software development was higher than in comparable development projects. B. Tool support for formal methods is limited, as most available tools are open source and hard to use. C. There's no real benefit to using formal approaches in safety critical systems. D. The costs for development are higher than in comparable development projects.
Answer: B
How many reasons are there that dependability cost tend to increase exponentially as increasing levels of dependability are required? A.) 8 B.) 2 C.) 5 D.) 9
Answer: B
In what situation should the reliability metric ROCOF be used? A. If you are specifying the required reliability for a system with long transactions. B. When demands on systems are made regularly rather than intermittently. C. Where a failure on demand can lead to a serious system failure. D. None of these.
Answer: B
Open-source software typically have restrictions put in place dictating how the code can be used, which is described in a license. Most open-source licenses use variations of one of three models. Which of the following correctly is NOT one of those models? A. The GNU General Public License B. The GNU Greater Public License C. The GNU Lesser General Public License D. The Berkley Standard Distribution License
Answer: B
Proposed changes, including fault repair, platform adaptation, and system enhancement, are considered in which stage of a general software evolution process model? A. Change implementation. B. Release planning. C. Change requests. D. Impact analysis.
Answer: B
The safety term "risk" is best defined as... A. A measure of the loss resulting from a mishap. B. A measure of the probability that the system will cause an accident. C. The probability of the events occurring which create a hazard. D. A condition with the potential for causing or contributing to an accident.
Answer: B
There are different types of interfaces between program components that errors can occur as a result of. Which of these is not one of them? A. Shared memory interfaces B. Private memory interfaces C. Procedural interfaces D. Parameter interfaces
Answer: B
What are the Architecture and system characteristics? A.) Logical views B.) Performance C.) Language processing systems D.) Data processing application
Answer: B
What is a drawback to model-driven engineering? A. It does not allow systems to be considered at higher levels of abstraction. B. The abstractions that work for discussion may not necessarily be right for implementation. C. It doesn't save much in terms of costs from generating code. D. None of these are drawbacks.
Answer: B
What part of a software safety case is best described by "records of all design and safety reviews"? A. Safety requirements B. Review reports C. Process QA D. Hazard and risk analysis
Answer: B
Which is NOT a functional requirement? A.) Functional system requirement should describe the system services in detail B.) System prototyping C.) Functional user requirements may be high level statements of what the system should do D.) System services
Answer: B
Which is NOT one of the ways that a software developer can use models of application architecture? A. As a means of assessing components for reuse. B. As a stopping point for the architectural design process. C. As a design checklist. D. As a way of organizing the work of the development team.
Answer: B
Which is true about class diagrams? A. Class diagrams cannot be expressed at various levels of detail. B. When showing the associations between classes, you should represent said classes in the simplest way possible, rather than adding attributes or operations. C. Class diagrams cannot accurately show how many objects are involved in an association. D. None of these are true.
Answer: B
Which of these would NOT count as a system requirement? A. If drugs are available in different dose units, separate reports shall be created for each dose unit. B. The system shall generate monthly management reports showing the cost of drugs prescribed by each clinic during that month. C. Access to drug cost reports shall be restricted to authorized users as listed on a management control list. D. The system shall generate the report for printing after 17.30 on the last working day of the month.
Answer: B
Which one is NOT a usage of MDE? A.) Allows systems to be considered at higher levels of abstraction B.) Used when developing an object-oriented system model to show the classes in a system and the associations between these classes. C.) Generating code automatically means that is it cheaper to adapt systems to new platforms. D.) All the above
Answer: B
What is the main objective of change anticipation in software development? A) To eliminate the need for rework. B) To predict changes in customer requirements. C) To reduce the costs of software development. D) To ensure the system meets the initial requirements.
Answer: B) To predict changes in customer requirements.
What is a concern regarding detailed system requirements in agile methods? A. They are always up-to-date. B. They are impractical for critical systems. C. They are essential for pre-delivery analysis. D. They are easily interpreted by developers.
Answer: B. They are impractical for critical systems.
What issue can arise from ambiguous requirements? A. They are easily implemented by developers. B. They may be interpreted differently by developers and users. C. They are not relevant for business systems. D. They are not necessary for contract development.
Answer: B. They may be interpreted differently by developers and users.
A logical view of a system... A. Shows the system hardware and how software components are distributed across the processors in the system. B. Shows how the software is decomposed for development. C. Shows the key abstractions in the system as objects or object classes. D. Shows how, at runtime, the system is composed of interacting processes.
Answer: C
For programming language compilers that are in a more general programming environment, which is NOT one of the components included in the generic architecture? A. A syntax tree. B. A syntax analyzer. C. A semantic table. D. A lexical analyzer.
Answer: C
How important are redundancy and diversity in software? A. They are both important in all situations. B. Redundancy isn't important in all situations, but diversity is. C. Both redundancy and diversity can be either helpful or unnecessary, depending on the type of software. D. They aren't important, and it is actually best to avoid them.
Answer: C
How many attributes does Dependability Properties offer? A.) 3 B.) 7 C.) 5 D.) 2
Answer: C
How many common activities are there for Object-Oriented design? A.) 11 B.) 7 C.) 5 D.) 2
Answer: C
How many processes do software depend on? A.) 5 B.) 7 C.) 3 D.) 10
Answer: C
Pertaining to Application types, out of 4 which one is the first Listed A.) System analysis B.) Large-scale reuse C.) Event Processing D.) Non the above
Answer: C
Some older software systems, or legacy systems, are still in use today. Which of the following is true about them? A. It is usually very easy for a company to switch from a legacy system to a newer or more updated system. B. Business policies typically aren't based around the use of a legacy application, so this isn't usually something to worry about. C. The use of a legacy system can be integrated into how a business should be carried out and run. D. Legacy systems are limited to software systems, and don't involve sociotechnical systems.
Answer: C
The correct order for the hazard-driven safety specification process is... A. Risk reduction -> Hazard analysis -> Hazard identification -> Hazard assessment. B. Hazard identification -> Hazard analysis -> Risk reduction -> Hazard assessment. C. Hazard identification -> Hazard assessment -> Hazard analysis -> Risk reduction. D. Hazard assessment -> Hazard identification -> Hazard analysis -> Risk reduction.
Answer: C
There are six stages in the acceptance testing process. Which stage describes when tests have to be designed to check whether or not a system is acceptable? A. Define acceptance criteria. B. Negotiate test results. C. Derive acceptance tests. D. Run acceptance tests.
Answer: C
What are the included elicitation requirements? A.) Discovery B.) Domain requirements C.) Specification D.) Security requirements
Answer: C
What is done at the third stage of the statistical testing process? A. You construct a set of test data that reflects the operational profile. B. You compute the software reliability and work out the appropriate reliability metric value. C. You test the system and count the number and types of failures that occur. D. You study existing systems of the same type to understand how these are used in practice.
Answer: C
What is it called when an erroneous system state occurs during execution that can lead to unexpected system behavior? A. System failure B. System fault C. System error D. Human error
Answer: C
When designing a dependable system, you need to consider three different kinds of failures that may occur. Which of the following is NOT one of them? A. Operational failure B. Software failure C. Runtime failure D. Hardware failure
Answer: C
Which is true about interviews? A. Application specialists typically speak very clearly and avoid using jargon that requirements engineers may misunderstand during interviews. B. Effective interviewers typically should go into interviews with preconceived ideas about the requirements, and must not be so willing to change their mind if the stakeholder comes up with surprising requirements. C. Interviews are not an effective technique for eliciting knowledge about organizational requirements and constraints. D. Interviewees typically find it much easier to talk in general terms, such as being simply asked to tell the interviewer what they want, rather than in defined contexts.
Answer: C
Which of the following best describes release testing? A. Potential users of a software system test the system in their own environment. B. The software system is tested during development to discover bugs and defects. C. A separate testing team tests a complete version of a software system before its released. D. None of these describe release testing.
Answer: C
Which of the following is one of the most important implementation decisions that must be made at one of the earlier stages of a software project? A. Decide which of the customer's requirements will need the most time and effort to implement. B. Think about what errors may occur from the software later on. C. Decide whether to build or buy the application software. D. Decide how many people will be needed to work on different parts of the project.
Answer: C
Which properly matches the UML diagram type with its definition? A. Use case diagrams: Show the object classes in the system and the associations between these classes. B. Activity diagrams: Show the interactions between actors and the system and between system components. C. State diagrams: Show how the system reacts to internal and external events. D. State diagrams: Show the interactions between a system and its environment.
Answer: C
In the context of software development, what is the primary advantage of incremental delivery? A) It accelerates the development process. B) It eliminates the need for prototypes. C) It allows for the early deployment of functional increments. D) It reduces the cost of rework.
Answer: C) It allows for the early deployment of functional increments.
What is the main purpose of a software prototype? A) To develop the final software system. B) To accelerate the delivery schedule. C) To find errors and omissions in system requirements. D) To reduce the need for incremental delivery.
Answer: C) To find errors and omissions in system requirements.
How do agile methods typically express requirements? A. In mathematical functional specifications. B. As stakeholder types. C. As user stories. D. In high-level abstract statements.
Answer: C. As user stories.
What is the purpose of a requirements document that may be used as the basis for a contract? A. To be open to interpretation by the parties involved. B. To be defined in detail for clarity. C. Both A and B. D. None of the above.
Answer: C. Both A and B
An example of an activity that may be included in a dependable process may be... A. Design and program inspections. B. Formal specification. C. Static analysis. D. All of the above.
Answer: D
Denial of service attacks on a system are intended to make it__. A.) Available B.) Detectable C.) Corrupt D.) Unavailable
Answer: D
How can a company include explicit diversity policies in order to maximize the differences between system versions? A. Requiring different algorithms to be used in some parts of the implementation. B. Requiring the use of different tools and development environments. C. Including requirements that different design methods should be used. D. All of the above.
Answer: D
To provide resilience against external attacks, different servers may be implemented using different operating systems. What am I? A.) Redundancy B.) Reliability C.) Formal Methods D.) Diversity
Answer: D
What is the best way to deal with a legacy system? A. Continue with regular maintenance, but leave it mostly unchanged. B. There is no certain best way. It is dependent on the system's business value, but not necessarily its quality. C. Reengineer the system significantly. D. There is no certain best way. It is heavily dependent on the system's quality AND its business value.
Answer: D
What might be something that is focused on during release testing? A. Trying not to create tests that test the software's limits. B. Creating test cases that are basic and to-the point, rather than complex. C. Trying to develop as few tests related to a certain requirement as possible, as to not overly complicate it. D. The functionality of the software, rather than the implementation of it.
Answer: D
When you test software, you execute a program using __. A.) Blockchain B.) Testing block C.) Compiler D.) Artificial data
Answer: D
Which of the following is NOT a reason why software systems may need to be updated? A. There are bugs found in operation that need to be fixed. B. User expectations change. C. To allow for functionality on other platforms and newer devices. D. All of these are reasons.
Answer: D
Which of the following is NOT an abstract system model? A. Computation Independent Model B. Platform-Independent Model C. Platform-Specific Model D. Computation Specific Model
Answer: D
Which of the following is NOT true about the idea that a reliable system may not be safe? A. The system operators may generate inputs that are not individually incorrect, but may still lead to a software malfunction. B. Hardware malfunctions may cause sensors and actuators to behave in an unpredictable way. C. We can never be one hundred percent certain that a software system is fault-free and fault-tolerant. D. Reliable systems are always safe.
Answer: D
Which of the following properly matches the given architectural pattern with one of its advantages? A. Model-View-Controller architecture: Allows replacement of entire layers so long as the interface is maintained. B. Pipe and filter architecture: Allows the data to change independently of its representation and vice versa. C. Layered architecture: General functionality can be available to all clients and does not need to be implemented by all services. D. Repository architecture: Components can be independent, and they do not need to know of the existence of other components.
Answer: D
Which of these is NOT one of the types of checks that should be carried out during the requirements validation process? A. Realism checks B. Completeness checks C. Validity checks D. Complexity checks
Answer: D
While reusing existing software can be very beneficial for software engineering, it also comes with some downsides A. The cost of buying reusable software can be very high for off-the-shelf systems B. The cost of configuring the components or systems of reusable software to fit the needs of the system being developed C. The cost of the amount of time must be spent searching for software to reuse D. All of these are costs to reusing existing software.
Answer: D
Why can eliciting and understanding requirements from system stakeholders be such a difficult process? A. Stakeholders may find it difficult to articulate exactly what they want the system to do, and communicate in very general terms. B. The economic and business environment in which the analysis takes place inevitably changes during the analysis process. C. Different stakeholders, with diverse requirements, may express their requirements in different ways. D. All of the above.
Answer: D
When is customer testing typically conducted in the software development process? A) Before system integration testing. B) After the component testing phase. C) During the development of a prototype. D) After the software has been deployed for operational use.
Answer: D) After the software has been deployed for operational use.
In the software development process, what is the primary purpose of a prototype evaluation? A) To determine if the prototype meets all requirements. B) To assess the performance and reliability of the prototype. C) To train potential users on how to use the final system. D) To discover requirements errors and omissions.
Answer: D) To discover requirements errors and omissions.
What is the role of a ScrumMaster in a Scrum team? a) Chief product owner b) Software architect c) Ensuring the team follows agile practices d) Managing the project budget
Answer: c) Ensuring the team follows agile practices
What is the starting point for the Scrum sprint cycle? a) Detailed software requirements b) Product increment c) Product backlog d) System architecture documentation
Answer: c) Product backlog
Which factor makes large-scale software development more complex and difficult to manage than small-scale development? a) Frequent system integration b) Rapid development cycles c) Lack of product documentation d) Distributed development teams
Answer: d) Distributed development teams
Which of the following is one of the common benefits of using agile methods for software development? a) Strict adherence to detailed requirements b) Minimal need for cross-team communication c) Rapid and frequent system integration d) Improved team communication and morale
Answer: d) Improved team communication and morale
What is the primary challenge in introducing agile methods into large organizations? a) Resistance to change among team members b) Lack of software tools for agile development c) Overemphasis on documentation d) Incompatible quality procedures and standards
Answer: d) Incompatible quality procedures and standards
A key problem for all organizations is ___ and ___ change to their existing software systems. A.) Implementing, managing B.) Compiling, adding C.) Money, repairing D.) Non the above
Answers: A
Structured Object-Oriented designs requires a lot of __ for development and maintenance. A.) Effort B.) Dedication C.) Hard work D.) Non the above
Answers: A
These are the processes that are used in the business to achieve some business objective. What is this? A.) Business Processes B.) Business policies and rules C.) Application software D.) Hardware
Answers: A
What is an interface misuse? A.) A calling component that calls another component and makes an error in its use of its interface. B.) A calling component that embeds assumptions about the behavior of the called component. C.) The called and the calling component that operate at different speeds and out-of-date information is accessed. D.) All the above
Answers: A
Which one is the Advantages of explicit architecture A.) Stakeholder communication B.) Performance C.) Security D.) Maintainability
Answers: A
Legacy systems are _ systems that rely on languages and technology that are no longer used for new systems development. A.) New B.) Old C.) Supporting D.) Language
Answers: B
Unit Testing is the process of testing individual components in __. A.) Processes B.) Sections C.) Isolations D.) Interfaces
Answers: C
Which are not a System perspective? A.) External Perspective B.) Structural Perspective C.) Context Model Perspective D.) Non the above
Answers: C
How many Architectural views are there, pertaining to ONE architecture? A.) 3 B.) 5 C.) 9 D.) 1
Answers: D
The application systems that provide the business service is usually made up of a number of applications. What is this? A.) System hardware B.) Support Software C.) Application Data D.) Application software
Answers: D
Which Transfer data use-cases represents users command issued by medical receptionist? A.) Actors B.) Data C.) Response D.) Stimulus
Answers: D
Which are NOT the Ethnography and prototyping analysis requirements? A.) Debriefing meetings B.) Generic system development C.) Prototype evaluation D.) None of the above
Answers: D
__ are used to show how objects respond to different service request and the state transitions triggered by these requests A.) Systems B.) UML C.) Designers D.) State Diagrams
Answers: D
A completely incremental approach to requirements engineering is __. A: impossible B: semi possible C: possible D: common
CORRECT: A
Advantages Components can be _; they do not need to know of the existence of other components. a. independent b. dependent c. constant d. overthrown
CORRECT: A
An __ is a link between classes indicating that some relationship exists between these classes a. association b. admin right c. auto link d. reputation
CORRECT: A
Change management is the process of controlling changes to a ___, so that the impact of changes is predictable and costs are controlled. A: project B: system C: company D: industry
CORRECT: B
Class diagrams are used to define the __ structure of classes in a system and their associations a. non-static b. static c. wild d. live
CORRECT: B