se2010

Quiz I

What is Configuration management? 

is the discipline of managing and controlling change in the evolution of software systems.

is the discipline of managing softwares

is the discipline of controlling the changes

Most errors found by users in software are the result of 

coding errors.

difficulties understanding the problem statement.

system integration errors.

errors in the design of the solution.

Mutable objects cannot be interned. 

True

False

Decentralized organization permits meetings to proceed effectively without a leader. 

True

False

A good design does not rule out any future extension to a project. 

True

False

In a well-managed large project typically the least time is spent on 

planning

coding

component testing

integration testing

Which phase of software projects is usually the most costly? 

requirements

design

implementation

testing

maintenance

During which decade was the term "software engineering" coined? 

The 1920's

The 1940's

The 1960's

The 1980's

Which of the following activities are part of the requirements phase? (Choose all that apply.) 

Clarification of the users' needs.

Development of a project plan, including the process to be followed.

Development of a verification & validation plan.

Writing a system test plan.

10 You are a software manager at a large software company. You are asked to bid on a project that would automate the air traffic control system for a large airport. The current (largely manual) system works reasonably well, but your potential client hopes to save money by automating the system. However, the client is very flexible about the terms of the contract. You realize that there are extremely high safety and reliability requirements and the corporate lawyers advise you that the company could be liable for damages if the system fails to operate properly. In addition, there are many unknowns about the feasibility of the system that may not be resolved until much later in development. Which lifecycle model would you choose? 

The waterfall model

The incremental model

The spiral model

The synchronize-and-stabilize model

11 You work for a small start-up company trying to secure venture capital funding. The product you intend to develop is mass-market consumer software for an unprecedented application; thus there are many questions about the user interface. Which lifecycle model would you choose? 

The build-and-fix model

The waterfall model

The rapid prototyping model

The incremental model

12 Which of the following are examples of nonexecution-based testing? (Choose all that apply.) 

System test plan

Walkthroughs

Inspections

Unit testing

Correctness proofs

13 Which of the following statements about software process is not true? 

The process covers all steps from initial idea and requirements to delivery, maintenance, and final retirement.

Having a good process guarantees that you will have a good product.

Different processes are needed for different kinds of software.

The process is the key factor in determining key properties or qualities of the product.

14 Which of the following principles does not directly help manage complexity? 

Rigor and formality

Separation of concerns

Modularity

Abstraction

15 Which of the following software qualities is an internal software quality? 

Correctness

Evolvability

Performance

User friendliness

16 Which of the following would not be appropriate to include in a requirements document? 

Non-functional requirements

A rough description of the user interface

Module interface specifications

A description of how the potential users do their work without the proposed system

Keys:

17 a

18 b

19 a

20 b

21 b

22 b

23 e

24 c

25 a,b,c,d

26 c

27 c

28 b,c,e

29 b

30 a

31 b

32 C

33 

Quiz II

Which question no longer concerns the modern software engineer? 

Why does computer hardware cost so much?

Why does software take a long time to finish?

Why does it cost so much to develop a piece of software?

Why can't software errors be removed from products prior to delivery?

Today the increased power of the personal computer has brought about an abandonment of the practice of team development of software. 

True

False

Software is a product and can be manufactured using the same technologies used for other engineering artifacts. 

True

False

Software deteriorates rather than wears out because 

Software suffers from exposure to hostile environments

Defects are more likely to arise after software has been used often

Multiple change requests introduce errors in component interactions

Software spare parts become harder to order

Most software continues to be custom built because 

Component reuse is common in the software world.

Reusable components are too expensive to use.

Software is easier to build without using someone else's components

Off-the-shelf software components are unavailable in many application domains.

The nature of software applications can be characterized by their information 

complexity

content

determinacy

both b and c

Modern software applications are so complex that it is hard to develop mutually exclusive category names. 

True

False

The so called "new economy" that gripped commerce and finance during the 1990s died and no longer influences decisions made by businesses and software engineers.

True

False

The functionality of most computer systems does not need to be enhanced the lifetime of the system.

True

False

10 Change cannot be easily accommodated in most software systems, unless the system was designed with change in mind. 

True

False

11 Most software development projects are initiated to try to meet some business need. 

True

False

12 In general software only succeeds if its behavior is consistent with the objectives of its designers 

True

False

13 Which of the items listed below is not one of the software engineering layers? 

Process

Manufacturing .

Methods

Tools

14 Software engineering umbrella activities are only applied during the initial phases of software development projects. 

True

False

15 Which of these are the 5 generic software engineering framework activities? 

communication, planning, modeling, construction, deployment

communication, risk management, measurement, production, reviewing

analysis, designing, programming, debugging, maintenance

analysis, planning, designing, programming, testing

16 Process models are described as agile because they 

eliminate the need for cumbersome documentation

emphasize maneuverability and adaptability

do not waste development time on planning activities

make extensive use of prototype creation

17 Which of these terms are level names in the Capability Maturity Model? ? 

Performed

Repeated

Reused

Optimized

both a and d

18 Software processes can be constructed out of pre-existing software patterns to best meet the needs of a software project. 

True

False

19 Which of these are standards for assessing software processes? 

SEI

SPICE

ISO 19002

ISO 9001

both b and d

20 The best software process model is one that has been created by the people who will actually be doing the work. 

True

False

21 Which of these is not a characteristic of Personal Software Process? 

Emphasizes personal measurement of work product

Practitioner requires careful supervision by the project manager

Individual practitioner is responsible for estimating and scheduling

Practitioner is empowered to control quality of software work products

22 Which of these are objectives of Team Software Process? 

Accelerate software process improvement

Allow better time management by highly trained professionals

Build self-directed software teams

Show managers how to reduce costs and sustain quality

both b and c

23 Process technology tools allow software organizations to compress schedules by skipping unimportant activities. 

True

False

24 It is generally accepted that one cannot have weak software processes and create high quality end products. 

True

False

Keys:

25 a

26 b

27 b

28 c

29 d

30 d

31 a

32 b

33 b

34 a

35 a

36 b

37 b

38 b

39 a

40 b

41 e

42 a

43 e

44 a

45 b

46 e

47 b

48 a

Quiz III

The linear sequential model of software development is 

A reasonable approach when requirements are well defined.

A good approach when a working program is required quickly.

The best approach to use for projects with large development teams

An old fashioned model that cannot be used in a modern context.

The linear sequential model of software development is also known as the 

Classical life cycle model

Fountain model

Spiral model

Waterfall model

both a and d

The incremental model of software development is 

A reasonable approach when requirements are well defined.

A good approach when a working core product is required quickly

The best approach to use for projects with large development teams

A revolutionary model that is not used for commercial products.

The rapid application development model is 

Another name for component-based development

A useful approach when a customer cannot define requirements clearly

A high speed adaptation of the linear sequential model

All of the above.

Evolutionary software process models 

Are iterative in nature .

Can easily accommodate product requirements changes

Do not generally produce throwaway systems

All of the above

The prototyping model of software development is 

A reasonable approach when requirements are well defined

A useful approach when a customer cannot define requirements clearly.

The best approach to use for projects with large development teams

A risky model that rarely produces a meaningful product.

The spiral model of software development 

Ends with the delivery of the software product

Is more chaotic than the incremental model

Includes project risks evaluation during each iteration

All of the above

The concurrent development model is 

Another name for the rapid application development model.

Often used for the development of client/server applications

Only used for development of parallel or distributed systems.

Used whenever a large number of change requests are anticipated.

The component-based development model is . 

Only appropriate for computer hardware design.

Not able to support the development of reusable components.

Works best when object technologies are available for support

Not cost effective by known quantifiable software metrics

10 The formal methods model of software development makes use of mathematical methods to 

Define the specification for computer-based systems

Develop defect free computer-based systems

Verify the correctness of computer-based systems

All of the above

11 Which of these is not one of the phase names defined by the Unified Process model for software development? 

Inception phase

Elaboration phase

Construction phase

Validation phase

12 In the Unified Process model requirements are determined iteratively and may span more than one phase of the process 

True

False

13 Agility is nothing more than the ability of a project team to respond rapidly to change 

True

False

14 Which of the following is not necessary to apply agility to a software process? 

Eliminate the use of project planning and testing

Only essential work products are produced

Process allows team to streamline tasks

Uses incremental product delivery strategy

15 How do you create agile processes to manage unpredictability? 

Requirements gathering must be conducted very carefully

Risk analysis must be conducted before planning takes place

Software increments must be delivered in short time periods

Software processes must adapt to changes incrementally

both c and d

16 In agile software processes the highest priority is to satisfy the customer through early and continuous delivery of valuable software 

True

False

17 It is not possible to build software that meets the customers' needs today and exhibits the quality characteristics that will enable it to be extended tomorrow 

True

False

18 Which of the following traits need to exist among the members of an agile software team? 

Competence

Decision-making ability

Mutual trust and respect

All of the above

19 All agile process models conform to a greater or lesser degree to the principles stated in the "Manifesto for Agile Software Development" 

True

False

20 What are the four framework activities found in the Extreme Programming (XP) process model? 

analysis, design, coding, testing

planning, analysis, design, coding

planning, analysis, coding, testing

planning, design, coding, testing

21 What are the three framework activities for the Adaptive Software Development (ASD) process model? 

analysis, design, coding

feasibility study, functional model iteration, implementation

requirements gathering, adaptive cycle planning, iterative development

speculation, collaboration, learning

22 The Dynamic Systems Development Method (DSDM) suggests a philosophy that is based on the Pareto principle (80% of the application can be delivered in 20% of the time required to build the complete application). 

True

False

23 Which is not one of the key questions that is answered by each team member at each daily Scrum meeting? 

What did you do since the last meeting?

What obstacles are you encountering?

What is the cause of the problems you are encountering?

What do you plan to accomplish at the next team meeting?

24 In Feature Driven Development (FDD) a "feature" is a client-valued function that can be delivered in two months or less 

True

False

25 Agile Modeling (AM) provides guidance to practitioner during which of these software tasks? 

Analysis

Design

Coding

Testing

both a and b

 

Keys:

26 a

27 e

28 b

29 c

30 d

31 b

32 c

33 b

34 c

35 d

36 d

37 a

38 b

39 a

40 e

41 a

42 b

43 d

44 a

45 d

46 d

47 a

48 c

49 b

50 e

Quiz IV

The essence of software engineering practice might be described as understand the problem, plan a solution, carry out the plan, and examine the result for accuracy. 

True

False

Which of the following is not one of Hooker's core principles of software engineering practice? 

All design should be as simple as possible, but no simpler

A software system exists only to provide value to its users

Pareto principle (20% of any product requires 80% of the effort)

Remember that you produce others will consume

Every communication activity should have a facilitator to make sure that the customer is not allowed to dominate the proceedings. 

True

False

The agile view of iterative customer communication and collaboration is applicable to all software engineering practice.

True

False

Software engineers collaborate with customers to define which of the following? 

Customer visible usage scenarios .

Important software features

System inputs and outputs

All of the above

Everyone on the software team should be involved in the planning activity so that we can 

reduce the granularity of the plan

analyze requirements in depth

get all team members to "sign up" to the plan

begin design

What role(s) do user stories play in agile planning? 

Define useful software features and functions delivered to end-users

Determine a schedule used to deliver each software increment

Provide a substitute to performing detailed scheduling of activities

Used to estimate the effort required build the current increment

both a and d

Which of the following activities is not one of the four things that need to be accomplished by the generic planning task set? 

Develop overall project strategy

Identify the functionality to deliver in each software increment

Create a detailed schedule for the complete software project .

Devise a means of tracking progress on a regular basis

Analysis models depict software in which three representations? 

architecture, interface, component .

cost, risk, schedule

information, function, behavior

None of the above

10 The customer can directly observe both the difference between the internal quality of a design and its external quality?

True

False

11 Teams using agile software practices never create models. 

True

False

12 Many of the tasks from the generic task sets for analysis modeling and design can be conducted in parallel with one another. 

True

False

13 Which of the following is not one of the principles of good coding? 

Create unit tests before you begin coding

Create a visual layout that aids understanding

Keep variable names short so that code is compact

Write self-documenting code, not program documentation

14 A successful test is one that discovers at least one as-yet undiscovered error. 

True

False

15 Which of the following are tasks in the generic task set for construction? 

Build a software component

Create a user interface

Unit test the component

Assess the quality of the component

both a and c

16 Which of the following are valid reasons for collecting customer feedback concerning delivered software? 

Allows developers to make changes to the delivered increment

Delivery schedule can be revised to reflect changes

Developers can identify changes to incorporate into next increment

All of the above

 

Keys:

17 a

18 c

19 b

20 a

21 d

22 c

23 d

24 c

25 c

26 b

27 b

28 a

29 c

30 a

31 e

32 d

Quiz V

Software engineers do not need to consider hardware when designing a computer-based system . 

True

False

Which of the following can be elements of computer-based systems? 

documentation

software

people

hardware

all of the above

The system engineering process usually begins with the 

detailed view

domain view

element view

world view

To construct a system model the engineer should consider which of the following restraining factors? 

assumptions

budget

constraints

schedule

both a and c

By following modern system engineering practices simulation of reactive systems is no longer necessary 

True

False

During business process engineering, three different architectures are examined. 

applications, data, technology infrastructure

communications, organization, financial infrastructure

network, database, reporting structure

systems, requirements, data structure

Which elements of business processing engineering are the responsibilities of the software engineer? 

business area analysis

business system design

construction and integration

information strategy planning

both b and c

The goal of product engineering is to translate the customer's desire for a set of defined capabilities into a working product. 

True

False

The architecture components for product engineering are 

data, hardware, software, people

data, documentation, hardware, software

data, hardware, software, procedures

documentation, hardware, people, procedures

10 The top level of the hierarchical model of a system is known as the 

AFD

DFD

SCD

SFD

11 The system model template contains which of the following elements 

input

output

user interface

all of the above

12 UML notations that can be used to model the hardware and software elements of a system are 

Activity diagrams

Class diagrams

Deployment diagrams

Use-case diagrams

a, b, and c

13 Requirements engineering is a generic process that does not vary from one software project to another. 

True

False

14 During project inception the intent of the of the tasks are to determine 

basic problem understanding

nature of the solution needed

people who want a solution

none of the above

a, b and c

15 Three things that make requirements elicitation difficult are problems of 

budgeting

scope

understanding

volatility

b, c and d

16 The result of the requirements engineering elaboration task is an analysis model that defines which of the following problem domain(s)? 

information

functional

behavioral

all of the above

17 It is relatively common for different customers to propose conflicting requirements, each arguing that his or her version is the right one. 

True

False

18 The system specification describes the 

Function, performance and constraints of a computer-based system

implementation of each allocated system

element software architecture

time required for system simulation

19 The best way to conduct a requirements validation review is to 

examine the system model for errors

have the customer look over the requirements

send them to the design team and see if they have any concerns

use a checklist of questions to examine each requirement

20 The use of traceability tables helps to 

debug programs following the detection of run-time errors

determine the performance of algorithm implementations

identify, control, and track requirements changes

none of the above

21 A stakeholder is anyone who will purchase the completed software system under development 

True

False

22 The job of the requirements engineer is to categorize all stakeholder information in a way that allows decision makers to choose an internally consistent set of requirements 

True

False

23 The nature of collaboration is such that all system requirements are defined by consensus of a committee of customers and developers 

True

False

24 Which of the following is not one of the context-free questions that would be used during project inception? 

What will be the economic benefit from a good solution?

Who is against this project?

Who will pay for the work?

Who will use the solution?

25 In collaborative requirements gathering, the facilitator 

cannot be a member of the software team

cannot be a customer

controls and facilitates the process

must be an outsider

26 Which of the following is not one of the requirement classifications used in Quality Function Deployment (QFD)? 

exciting

expected

mandatory

normal

27 Developers and customers create use-cases to help the software team understand how different classes of end-users will use functions. 

True

False

28 The work products produced during requirement elicitation will vary depending on the 

size of the budget

size of the product being built

software process being used

stakeholders needs

29 Use-case actors are always people, never system devices 

True

False

30 Which of following is not a UML diagram used creating a system analysis model? 

activity diagram

class diagram

dataflow diagram

state diagram

31 Analysis patterns facilitate the transformation of the analysis model into a design model by suggesting reliable solutions to common problems 

True

False

32 n win-win negotiation, the customer's needs are met even though the developer's need may not be. 

True

False

33 In requirements validation the requirements model is reviewed to ensure its technical feasibility 

True

False

 

 

Keys:

34 b

35 e

36 d

37 e

38 b

39 a

40 e

41 a

42 a

43 c

44 d

45 e

46 a

47 e

48 e

49 d

50 a

51 a

52 d

53 c

54 b

55 a

56 b

57 b

58 c

59 c

60 a

61 b

62 b

63 c

64 b

65 b

66 b

Quiz VI

Which of the following is not an objective for building an analysis model? 

define set of software requirements that can be validated

describe customer requirements

develop an abbreviated solution for the problem

establish basis for software design

Object-oriented domain analysis is concerned with the identification and specification of reusable classes within an application domain. 

True

False

The data dictionary contains descriptions of each software 

control item

data object

diagram

notation

both a and b

Which of these is not an element of an object-oriented analysis model? 

Behavioral elements

Class-based elements

Data elements

Scenario-based elements

In analysis models the only data objects that need representation are those that will be implemented using software classes. 

True

False

The values that are assigned to an object's attributes make that object unique 

True

False

The relationships shown in a data model must be classified to show their . 

cardinality

directionality

modality

probability

both a and c

The entity relationship diagram 

depicts relationships between data objects

depicts functions that transform the data flow

indicates how data are transformed by the system

indicates system reactions to external events

A generalized description of a collection of similar objects is a 

class

instance

subclas

super class

10 Operations are object procedures that are invoked when an object receives a message. 

True

False

11 In many cases there is no need to create a graphical representation of a usage scenario. 

True

False

12 UML activity diagrams are useful in representing which analysis model elements? 

Behavioral elements

Class-based elements

Flow-based elements

Scenario-based elements

13 The data flow diagram 

depicts relationships between data objects

depicts functions that transform the data flow

indicates how data are transformed by the system

indicates system reactions to external events

both b and c

14 Control flow diagrams are . 

needed to model event driven systems

required for all systems

used in place of data flow diagrams

useful for modeling real-time systems

both a and d

15 The data flow diagram must be augmented by descriptive text in order to describe the functional requirements for a software product 

True

False

16 Which of the following should be considered as candidate objects in a problem space? 

events

people

structures

all of the above

17 Attributes cannot be defined for a class until design has been completed. . 

True

False

18 Which of the following is not one of the broad categories used to classify operations? 

computation

data manipulation

event monitors

transformers

19 Which of the following items does not appear on a CRC card? 

class collaborators

class name

class reliability

class responsibilities

20 Class responsibilities are defined by 

its attributes only

its collaborators

its operations only

both its attributes and operations

21 An analysis package involves the categorization of analysis model elements into useful groupings 

True

False

22 Events occur whenever a(n) 

actor and the OO system exchange information

class operation is invoked

messages are passed between objects

all of the above

23 The state diagram . 

depicts relationships between data objects

depicts functions that transform the data flow

indicates how data are transformed by the system

indicates system reactions to external events

24 For purposes of behavior modeling a state is any 

consumer or producer of data.

data object hierarchy.

observable mode of behavior.

well defined process.

 

Keys:

25 c

26 a

27 e

28 c

29 b

30 a

31 e

32 a

33 a

34 a

35 a

36 d

37 e

38 e

39 a

40 d

41 b

42 d

43 c

44 d

45 a

46 a

47 d

48 c

Quiz VII

Which of the following are areas of concern in the design model? 

architecture

data

interfaces

project scope

a, b and c

The importance of software design can be summarized in a single word 

accuracy

complexity

efficiency

quality

Which of these are characteristics of a good design? 

exhibits strong coupling between its modules

implements all requirements in the analysis model

includes test cases for all components

provides a complete picture of the software

both b and d

Which of the following is not a characteristic common to all design methods? 

configuration management

functional component

notation quality assessment

guidelines refinement heuristics

Software design is an iterative generic process that may be applied without modification to any software project 

True

False

What types of abstraction are used in software design? 

control

data

environmental

procedural

a, b and d

Which of the following models can be used to represent the architectural design of a piece of software. 

Dynamic models

Functional models

Structural models

All of the above

Design patterns are not applicable to the design of object-oriented software? 

True

False

Since modularity is an important design goal it is not possible to have too many modules in a proposed design. 

True

False

10 Information hiding makes program maintenance easier by hiding data and procedure from unaffected parts of the program. 

True

False

11 Cohesion is a qualitative indication of the degree to which a module 

can be written more compactly.

focuses on just one thing.

is able to complete its function in a timely manner.

is connected to other modules and the outside world.

12 Coupling is a qualitative indication of the degree to which a module 

can be written more compactly.

focuses on just one thing.

is able to complete its function in a timely manner.

is connected to other modules and the outside world.

13 When using structured design methodologies the process of stepwise refinement is unnecessary. 

True

False

14 Software designs are refactored to allow the creation of software that is easier to integrate, easier to test, and easier to maintain. 

True

False

15 Inheritance provides a mechanism by which changes to lower level classes can be propagated to all super classes quickly. 

True

False

16 Polymorphism reduces the effort required to extend an object system by 

coupling objects together more tightly.

enabling a number of different operations to share the same name.

making objects more dependent on one another.

removing the barriers imposed by encapsulation.

17 Which of the following is not one of the five design class types 

Business domain classes

Entity classes

Process classes

User interface classes

18 Which design model elements are used to depict a model of information represented from the user's view? 

Architectural design elements

Component-level design elements

Data design elements

Interface design elements

19 Which design is analogous to the floor plan of a house? 

Architectural design

Component-level design

Data design

Interface design

20 Which design model is analogous to the detailed drawings of the access points and external utilities for a house?

Architectural design

Component-level design

Data design

Interface design

21 Which design model is analogous to a set of detailed drawings for each room in a house? 

Architectural design

Component-level design

Data design

Interface design

22 The deployment design elements specify the build order for the software components 

True

False

23 One of the key problems in software reuse is the inability to find existing reusable design patterns when hundreds of candidates exist 

True

False

24 Design patterns are best thought of as coding patterns 

True

False

25 Frameworks and design patterns are the same thing as far as designers are concerned. 

True

False

 

 

Keys:

26 e

27 d

28 e

29 a

30 b

31 e

32 d

33 b

34 b

35 a

36 b

37 d

38 b

39 a

40 b

41 b

42 b

43 c

44 a

45 d

46 b

47 b

48 a

49 b

50 b

Quiz VIII

The best representation of system architecture is an operational software prototype 

True

False

The architectural representations can be an enabler for communication among project stakeholders 

True

False

Which of these characteristics are true of a data warehouse, but not a typical data base? 

business level orientation

currency of information

integration

nonvolatility

both c and d

Data design actually begins during the creation of the analysis model, not the architectural model. 

True

False

An architectural style encompasses which of the following elements? 

constraints

set of components

semantic models

syntactic models

a, b and c

To determine the architectural style or combination of styles that best fits the proposed system, requirements engineering is used to uncover 

algorithmic complexity

characteristics and constraints

control and data

design patterns

Before an architectural pattern can be chosen for use in a specific system it must have a code implementation to facilitate its reuse 

True

False

The criteria used to assess the quality of an architectural design should be based on system 

accessibility

control

data

implementation

both b and c

During the process of modeling the system in context, systems that interact with the target system are represented as 

Peer-level systems

Subordinate systems

Superordinate systems

Working systems

a, b and c

10 Once selected, archetypes always need to be refined further as architectural design proceeds. 

True

False

11 Which of the following is not an example of infrastructure components that may need to be integrated into the software architecture? 

Communications components

Database components

Interface components

Memory management components

12 In the architecture trade-off analysis method the architectural style should be described using the 

data flow view

module view

process view

user view

a, b and c

13 Quantitative methods for assessing the quality of proposed architectural designs are readily available 

True

False

14 A useful technique for evaluating the overall complexity of a proposed architecture is to look at the component 

cohesion flow

dependencies

sharing dependencies

size

both b and c

15 When the overall flow in a segment of a data flow diagram is largely sequential and follows straight-line paths, _________ is present. 

low coupling

good modularity

transaction flow

transform flow

16 When a single item that triggers other data flow along one of many paths of a data flow diagram, ________ characterizes the information flow. 

high coupling

poor modularity

transaction flow

transform flow

17 When you encounter both transform flow and transaction flow in the same DFD the flow is partitioned and the appropriate mapping technique is used on each part of the DFD. 

True

False

18 In transaction mapping the first level factoring results in the 

creation of a CFD

derivation of the control hierarchy

distribution of worker modules

refinement of the module view

19 A successful application of transform or transaction mapping to create an architectural design is supplemented by 

entity relationship diagrams

module interface descriptions

processing narratives for each module

test cases for each module

both b and c

 

 

Keys:

20 b

21 a

22 e

23 a

24 e

25 b

26 b

27 e

28 e

29 a

30 c

31 e

32 b

33 e

34 d

35 c

36 a

37 b

38 e

Quiz IX

In the most general sense a component is a modular building block for computer software. 

True

False

In the context of object-oriented software engineering a component contains 

attributes and operations

instances of each class

roles for each actor (device or user)

a set of collaborating classes

In traditional software engineering, modules must serve in which of the following roles? 

Control component

Infrastructure component

Problem domain component

All of the above

Software engineers always need to create components from scratch in order to meet customer expectations fully. 

True

False

Which of the following is not one of the four principles used to guide component-level design? 

Dependency Inversion Principle

) Interface Segregation Principle

Open-Closed Principle

Parsimonious Complexity Principle

During component-level design it is customary to ignore organization issues like subsystem membership or packaging. 

True

False

The use of stereotypes can help identify the nature of components at the detailed design level. 

True

False

Classes and components that exhibit functional, layer, or communicational cohesion are relatively easy to implement, test, and maintain. 

True

False

Software coupling is a sign of poor architectural design and can always be avoided in every system. 

True

False

10 In component design, elaboration requires which of the following elements to be described in detail? 

Source code

Attributes

Interfaces

Operations

b, c and d

11 In component-level design "persistent data sources" refer to 

Component libraries

Databases

Files

All of the above

both b and c

12 The object constraint language (OCL) complements UML by allowing a software engineer to use a formal grammar to construct unambiguous statements about design model elements. 

True

False

13 OCL is not strong enough to be used to describe pre- or post conditions for design actions. 

True

False

14 Which of these constructs is used in structured programming? 

branching

condition

repetition

sequence

b, c, and d

15 Which of these is a graphical notation for depicting procedural detail? 

process diagram

decision table

ER diagram

flowchart

16 A decision table should be used 

to document all conditional statements

to guide the development of the project management plan

only when building an expert system

when a complex set of conditions and actions appears in a component

17 A program design language (PDL) is often a 

combination of programming constructs and narrative text

legitimate programming language in its own right

machine readable software development language

useful way to represent software architecture

18 Which of these criteria are useful in assessing the effectiveness of a particular design notation? 

maintainability

modularity

simplicity

size

a, b, and c

 

 

Keys:

19 a

20 d

21 d

22 b

23 d

24 b

25 a

26 a

27 b

28 e

29 e

30 a

31 b

32 e

33 d

34 d

35 a

36 e

Quiz X

Which of the following interface design principles does not allow the user to remain in control of the interaction with a computer? 

allow interaction to interruptible

allow interaction to be undoable

hide technical internals from casual users

only provide one defined method for accomplishing a task

Which of the following interface design principles reduces the user's memory load? 

define intuitive shortcuts

disclose information in a progressive fashion

establish meaningful defaults

provide an on-line tutorial

answers a, b and c

The reason for reducing the user's memory load is make his or her interaction with the computer quicker to complete. 

True

False

Interface consistency implies that 

each application should have its own distinctive look and feel

input mechanisms remain the same throughout the application

navigational methods are context sensitive

visual information is organized according to a design standard

both b and d

If past interactive models have created certain user expectations it is not generally good to make changes to the model. 

True

False

Which model depicts the profile of the end users of a computer system? 

design model

implementation model

user model

user's model

Which model depicts the image of a system that an end user creates in his or her head? 

design model

user model

system model

system perception

Which model depicts the look and feel of the user interface along with all supporting information? 

Implementation model

user model

user's model

system perception

Which of these framework activities is not normally associated with the user interface design processes? 

cost estimation

interface construction

interface validation

user and task analysis

10 Which approach(es) to user task analysis can be useful in user interface design? 

have users indicate their preferences on questionnaires

rely on the judgement of experienced programmers

study existing computer-based solutions

observe users performing tasks manually

both c and d

11 Object-oriented analysis techniques can be used to identify and refine user task objects and actions without any need to refer to the user voice. 

True

False

12 The computer's display capabilities are the primary determinant of the order in which user interface design activities are completed. 

True

False

13 It is sometimes possible that the interface designer is constrained by environmental factors that mitigate against ease of use for many users. 

True

False

14 One means of defining user interface objects and actions is to conduct a grammatical parse of the user scenario. 

True

) False

15 Interface design patterns typically include a complete component-level design (design classes, attributes, operations, and interfaces). 

True

False

16 Several common design issues surface for almost every user interface including 

adaptive user profiles

error handling resolution of graphics

displays system

response time

both b and d

17 Add-on help facilities are almost always better received by users than integrated help facilities. 

True

False

18 User interface development systems typically provide several mechanisms for building interface prototypes including 

code generation

drawing tools

input validation

windows handlers

both c and d

19 Usability questionnaires are most meaningful to the interface designers when completed by 

customers

experienced programmers

product users

project managers

20 Several usability measures can be collected while observing users interacting with a computer system including 

down time for the application

number of user errors

software reliability

time spent looking at help materials

both b and d

 

 

Keys:

21 d

22 e

23 b

24 e

25 a

26 c

27 d

28 a

29 a

30 e

31 b

32 b

33 a

34 a

35 a

36 e

37 b

38 e

39 c

40 e

Quiz XI

In software quality assurance work there is no difference between software verification and software validation. 

True

False

The best reason for using Independent software test teams is that 

software developers do not need to do any testing

a test team will test the software more thoroughly

testers do not get involved with the project until testing begins

arguments between developers and testers are reduced

What is the normal order of activities in which traditional software testing is organized? a. integration testing b. system testing c. unit testing d.validation testing 

a, d, c, b

b, d, a, c

c, a, d, b

d, b, c, a

Class testing of object-oriented software is equivalent to unit testing for traditional software. 

True

False

By collecting software metrics and making use of existing software reliability models it is possible to develop meaningful guidelines for determining when software testing is finished. 

True

False

Which of the following strategic issues needs to be addressed in a successful software testing process? 

conduct formal technical reviews prior to testing

specify requirements in a quantifiable manner

use independent test teams

wait till code is written prior to writing the test plan

both a and b

Which of the following need to be assessed during unit testing? 

algorithmic performance

code stability

error handling

execution paths

both c and d

Drivers and stubs are not needed for unit testing because the modules are tested independently of one another. 

True

False

Top-down integration testing has as it's major advantage(s) that 

low level modules never need testing

major decision points are tested early

no drivers need to be written

no stubs need to be written

both b and c

10 Bottom-up integration testing has as it's major advantage(s) that 

major decision points are tested early

no drivers need to be written

no stubs need to be written

regression testing is not required

11 Regression testing should be a normal part of integration testing because as a new module is added to the system new 

control logic is invoked

data flow paths are established

drivers require testing

all of the above

both a and b

12 Smoke testing might best be described as 

bulletproofing shrink-wrapped software

rolling integration testing

testing that hides implementation errors

unit testing for small programs

13 When testing object-oriented software it is important to test each class operation separately as part of the unit testing process. 

True

False

14 The OO testing integration strategy involves testing 

groups of classes that collaborate or communicate in some way

single operations as they are added to the evolving class implementation

operator programs derived from use-case scenarios

none of the above

15 The focus of validation testing is to uncover places that a user will be able to observe failure of the software to conform to its requirements. 

True

False

16 Software validation is achieved through a series of tests performed by the user once the software is deployed in his or her work environment. 

True

False

17 Configuration reviews are not needed if regression testing has been rigorously applied during software integration. 

True

False

18 Acceptance tests are normally conducted by the 

developer

end users

test team

systems engineers

19 Recovery testing is a system test that forces the software to fail in a variety of ways and verifies that software is able to continue execution without interruption. 

True

False

20 Security testing attempts to verify that protection mechanisms built into a system protect it from improper penetration. 

True

False

21 Stress testing examines the pressures placed on the user during system use in extreme environments. 

True

False

22 Performance testing is only important for real-time or embedded systems. 

True

False

23 Debugging is not testing, but always occurs as a consequence of testing. 

True

False

Keys:

24 b

25 b

26 c

27 a

28 a

29 e

30 e

31 b

32 e

33 c

34 e

35 b

36 b

37 a

38 a

39 b

40 b

41 b

42 b

43 a

44 b

45 b

46 a

  

Quiz XII

With thorough testing it is possible to remove all defects from a program prior to delivery to the customer. 

True

False

Which of the following are characteristics of testable software? 

observability

simplicity

stability

all of the above

The testing technique that requires devising test cases to demonstrate that each program function is operational is called 

black-box testing

glass-box testing

grey-box testing

white-box testing

The testing technique that requires devising test cases to exercise the internal logic of a software module is called 

behavioral testing

black-box testing

grey-box testing

white-box testing

What types of errors are missed by black-box testing and can be uncovered by white-box testing? 

behavioral errors

logic errors

performance errors

typographical errors

both b and d

Program flow graphs are identical to program flowcharts. 

True

False

The cyclomatic complexity metric provides the designer with information regarding the number of 

cycles in the program

errors in the program

independent logic paths in the program

statements in the program

The cyclomatic complexity of a program can be computed directly from a PDL representation of an algorithm without drawing a program flow graph. 

True

False

Condition testing is a control structure testing technique where the criteria used to design test cases is that they 

rely on basis path testing

exercise the logical conditions in a program module

select test paths based on the locations and uses of variables

focus on testing the validity of loop constructs

10 Data flow testing is a control structure testing technique where the criteria used to design test cases is that they 

rely on basis path testing

exercise the logical conditions in a program module

select test paths based on the locations and uses of variables

focus on testing the validity of loop constructs

11 Loop testing is a control structure testing technique where the criteria used to design test cases is that they 

rely basis path testing

exercise the logical conditions in a program module

select test paths based on the locations and uses of variables

focus on testing the validity of loop constructs

12 Black-box testing attempts to find errors in which of the following categories 

incorrect or missing functions

interface errors

performance errors

all of the above

none of the above

13 Graph-based testing methods can only be used for object-oriented systems 

True

False

14 Equivalence testing divides the input domain into classes of data from which test cases can be derived to reduce the total number of test cases that must be developed. 

True

False

15 Boundary value analysis can only be used to do white-box testing. 

True

False

16 Comparison testing is typically done to test two competing products as part of customer market analysis prior to product release. 

True

False

17 Orthogonal array testing enables the test designer to maximize the coverage of the test cases devised for relatively small input domains. 

True

False

18 Test case design "in the small" for OO software is driven by the algorithmic detail of the individual operations. 

True

False

19 Encapsulation of attributes and operations inside objects makes it easy to obtain object state information during testing. 

True

False

20 Use-cases can provide useful input into the design of black-box and state-based tests of OO software. 

True

False

21 Fault-based testing is best reserved for 

conventional software testing

operations and classes that are critical or suspect

use-case validation

white-box testing of operator algorithms

22 Testing OO class operations is made more difficult by 

encapsulation

inheritance

polymorphism

both b and c

23 Scenario-based testing 

concentrates on actor and software interaction

misses errors in specifications

misses errors in subsystem interactions

both a and b

24 Deep structure testing is not designed to 

examine object behaviors

exercise communication mechanisms

exercise object dependencies

exercise structure observable by the user

25 Random order tests are conducted to exercise different class instance life histories. 

True

False

26 Which of these techniques is not useful for partition testing at the class level 

attribute-based partitioning

category-based partitioning

equivalence class partitioning

state-based partitioning

27 Multiple class testing is too complex to be tested using random test cases. 

True

False

28 Tests derived from behavioral class models should be based on the 

data flow diagram

object-relation diagram

state diagram

use-case diagram

29 Client/server architectures cannot be properly tested because network load is highly variable. 

True

False

30 Real-time applications add a new and potentially difficult element to the testing mix 

performance

reliability

security

time

Keys:

31 b

32 d

33 a

34 d

35 e

36 b

37 c

38 a

39 b

40 c

41 d

42 d

43 b

44 a

45 b

46 b

47 a

48 a

49 b

50 a

51 b

52 d

53 a

54 d

55 a

56 c

57 b

58 c

59 b

60 d


转载于:https://www.cnblogs.com/wanghongyuan/archive/2010/07/06/1771976.html

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值