Software Engineering Practice Questions Part 1
Which of the following is not part of a formal/tabular use case description? a. actor b. scenario c. exception d. stakeholders
stakeholders
Give two of the most representative characteristics of agile process in comparison to traditional process models.
Examples: customer being part of the team; quick response to changes; emphasis on customer communication; frequent delivery of product; trustworthy customers; senior development team, etc
The goal of software process is high quality. Why does better quality imply better timeliness?
In short, the reason is that lower quality usually leads to rework. Higer quality implies less rework then better timeliness.
Is quality assurance an umbrella activity or framework activity?
It is an umbrella activity as it applies throughout software process
What are the major differences between the incremental model and the spiral model?
Structure/process flow: evolutionary versus incremental Deliverable: partial versus early Focus: risk reduction/quality control versus delivery of operational product
Compared to sequential process, all iterative process models have a common strength concerning risk. What is it and why do all iterative models have this strength?
The strength is risk reduction, because an iterative process allows iterations hence enabling adoption of feedbacks and revisions/corrections. As such, errors can be discovered and fixed earlier thus risk can be reduced
Which of the following UML diagrams are used in scenario-based modeling? a. class diagrams b. state diagrams c. activity diagrams d. swimlane diagrams e. state diagrams and activity diagrams f. activity diagrams and swimlane diagrams
activity diagrams and swimlane diagrams
A swimlane diagram can be used to describe a. a use case b. an analysis class c. a set of actors d. relationships between customers and software engineers
a use case
The incremental process model: a. adopts a waterfall model for developing each increment b. is one of the specialized process models c. is best suited for software projects where requirements are clear at beginning d. is basically the same as the V model
adopts a waterfull model for developing each increment
The composition relationship between classes is a special form of: a. dependency relationship b. collaboration relationship c. aggregation relationship d. generalization relationship
aggregation relationship
Evolutionary software process models: a. are featured with the evolutionary process flow b. has better risk management than sequential models c. may use prototyping as an assistive technique (e.g., for eliciting requirements) d. all of the above
all of the above
Which are all umbrella activities of the generic software process? a. project tracking, planning, measurement, configuration management, deployment b. measurement, technical review, quality assurance, risk management, production c. communication, risk management, measurement, production, reviewing d. analysis, designing, programming, debugging, maintenance
measurement, technical review, quality assurance, risk management, production
Which is NOT an umbrella activity in software process? a. risk management b. quality assurance c. technical review d. planning
planning
Which are the four framework activities in an XP process? a. planning, design, coding, and testing b. communication, planning, modeling, construction c. analysis, coding, testing, deployment d. planning, modeling, construction, validation
planning, design, coding, and testing
Which of the following must appear on a CRC index card? a. data objects b. attributes c. responsibilities d. operations
responsibilites
A requirements model typically includes a. scenario elements b. flow elements c. class (data) elements d. state-based elements e. scenario elements and flow elements and class (data) elements f. all of above
scenario elements and flow elements and class (data) elements
Examples of an agile process include a. scrum b. extreme programming (XP) c. sprint d. scrum and extreme programming (XP) e. none of the above
scrum and extreme programming (XP)
Examples of a traditional process model include a. the XP (eXtreme Programming) process model b. waterfall model c. spiral model d. component-based development model e. waterfall model and spiral model
waterfall model and spiral model
A class diagram that describes an analysis class consists of a. a set of attributes that describe the properties of the class b. a set of use cases that are related to the class c. a set of operations that represent the functions of the class d. a detailed description of how the class interacts with users e. a set of attributes that describe the properties of the class and a set of operations that represent the functions of the class f. all of above
A set of attributes that describe the properties of the class and a set of operations that represent the functions of the class
Which of the following is correct about analysis classes? a. interface is a special kind of class that does not have operations b. abstract class is a special kind of class that cannot be instantiated c. the realization relationship is typically between an ordinary class and an interface d. Abstract class is a special kind of class that cannot be instantiated and The realization relationship is typically between an ordinary class and an interface
Abstract class is a special kind of class that cannot be instantiated and The realization relationship is typically between an ordinary class and an interface
Which of the following describes software process incorrectly? a. the iterative process flow generalizes the evolutionary process flow. b. all umbrella activities are always evenly applied across software process. c. in the spiral model, each iteration (cycle) must end up with working software. d. all umbrella activities are always evenly applied across software process and in the spiral model, each iteration (cycle) must end up with working software e. all umbrella activities are always evenly applied across software process, in the spiral model, each iteration (cycle) must end up with working software and in the spiral model, each iteration (cycle) must end up with working software.
all umbrella activities are always evenly applied across software process and in the spiral model, each iteration (cycle) must end up with working software.
Which of the following describes software correctly? a. software deteriorates over years and eventually wears out. b. computer software includes not only programs and data but also documentation. c. software deteriorates mainly because of its changing nature. d. Software deteriorates over years and eventually wears out and computer software includes not only programs and data but also documentation. e. computer software includes not only programs and data but also documentation. and software deteriorates mainly because of its changing nature
computer software includes not only programs and data but also documentation. and software deteriorates mainly because of its changing nature
Which statement below is not an objective for building a requirements model? a. define set of software requirements that can be validated b. describe customer requirements c. develop an abbreviated solution for the problem d. establish basis for software design
develop an abbreviated solution for the problem
Which of the following describes about use case correctly? a. usually each use case is described in one use case diagram b. each use case can be described in detail through a tabular representation c. all use cases of entire software system can be described in one use case diagram d. each use case can be described in detail through a tabular representation and all use cases of entire software system can be described in one use case diagram e. usually each use case is described in one use case diagram and each use case can be described in detail through a tabular representation
each use case can be described in detail through a tabular representation and all use cases of entire software system can be described in one use case diagram
Which of the following may NOT be an appropriate name for a use case? a. email notification b. make a purchase c. view items d. check out
email notification
Which below is NOT one of the seven requirement engineering steps? a. elicitation b. specification c. implementation d. negotiation
implementation
Possible relationships between use cases include a. specialization b. inclusion c. inheritance d. dependence
inclusion
The purpose of surrounding attributes with methods as a 'wall' in a class is: a. better reusability b. clear representation of class hierarchy c. easier testing d. information hiding
information hiding
Possible relationships between actors include a. extension b. inclusion c. inheritance d. dependence
inheritance
The four major types of process flows are: a. linear, iterative, parallel, and evolutionary b. waterfall, spiral, V, and prototyping c. sequential, incremental, iterative, and concurrent d. none of the above
linear, iterative, parallel, and evolutionary