Software Engineering

Ace your homework & exams now with Quizwiz!

Software architecture is important because:

1) it constitutes a relatively small, intellectually graspable mode of how the system is structured and how its components work together 2) it enables communication between all parties (stakeholders) interested in the development of a computer-based system 3) it highlights early design decisions that will have a profound impact on all software engineering work that follows

The agile model of software development is

A good approach when a working program is required quickly

The waterfall model of software development is

A reasonable approach when requirements are well defined and fixed

Select all that apply. What are considered to be issues of concerns for software metrics

Cost of collecting metrics Selection of metrics for measurement

When doing detailed design, we will consider

Database design Class design

Non-Functional Requirement

Defines global constraints on the system

Functional Requirement ...

Defines specific behavior or features of the system

A feasibility study does not need to identify risks and alternatives.

False

It is less expensive and better to find and fix bugs later in the Software Development process

False

The output of a feasibility study should be a report that details the design of the system and the software infrastructure to use in the development of the system.

False

1. State whether the following sentence contains a functional, or nonfunctional, or both functional and nonfunctional requirements. Users must be able to select their seats

Functional

State whether the following sentence contains a functional, or nonfunctional, or both function and nonfunctional requirements. Only registered users can purchase tickets

Functional

State whether the following sentence contains a functional, or nonfunctional, or both functional and nonfunctional requirements. The system must be modifiability for future updates and enhancements

Functional

State whether the following sentence contains a functional, or nonfunctional, or both functional and nonfunctional requirements. The user must be able to save their current state in the completion of the form and return to it later.

Functional

State whether the following sentence contains a functional, or nonfunctional, or both functional and nonfunctional requirements. Users must be able to specify the number of tickets to be purchased

Functional

State whether the following sentence contains a functional, or nonfunctional, or both functional and nonfunctional requirements. Users must be able to browse for events by venue

Functional

Complexity is considered to be a major difference between writing simple program and building a system. Which are ways of handling complexity?

Have large software teams Improving technology and tools

In preparing questions to ask during Requirements Elicitation, "how" related questions include ...

How much data will be involved How will you use this feature How will we know this is complete

Select all that applies. What is WBS?

It is arranged with a hierarchical structure It is a project management technique or tool for defining and organizing the scope of a project. It is representative of work as an activity and this work has a tangible result (deliverable).

1. State whether the following sentence contains a functional, or nonfunctional, or both functional and nonfunctional requirements. Once the user enters the order and clicks purchase, the system must process the user's order in less than 150 ms.

Nonfunctional

1. State whether the following sentence contains a functional, or nonfunctional, or both functional and nonfunctional requirements. The system's clock must be within 0.05 seconds of the world time server at all times

Nonfunctional

1. State whether the following sentence contains a functional, or nonfunctional, or both functional and nonfunctional requirements: the system must be able to support 500K concurrent users

Nonfunctional

State whether the following sentence contains a functional, or nonfunctional, or both function and nonfunctional requirements. Once the user enters the order and clicks purchase, the system must process the user's order in less than 150ms.

Nonfunctional

State whether the following sentence contains a functional, or nonfunctional, or both function and nonfunctional requirements. The system must be up an available to users between 6 am and 9 pm

Nonfunctional

State whether the following sentence contains a functional, or nonfunctional, or both function and nonfunctional requirements. Tickets purchased at the kiosk should be printed within five seconds

Nonfunctional

State whether the following sentence contains a functional, or nonfunctional, or both functional and nonfunctional requirements. The system's clock must be within 0.05 seconds of the world time server at all times

Nonfunctional

Which software process model produces throwaway software

Prototyping

Check all that applies. The input to a feasibility study is

Question options: preliminary business requirements description of the system to be built How the system is intended to support business processes

Some Agile Methodologies are

Scrum Extreme Programming (XP)

A Task is an atomic unit of work that can be managed and that consumes resources.

True

A model is an abstract representation of a system that enables us to answer questions about the system.

True

The aims of a feasibility study are to find out whether the system is worth implementing and if it can be implemented, given the existing budget and schedule.

True

The output of a feasibility study should be a report that recommends wether or not it is worth carrying on with the system development process.

True

The term "software engineering" was coined in 1968

True

Use case diagrams are used to gather the requirements of a system

True

Which software process model produce documentation at each phase

Waterfall

In preparing questions to ask during Requirements Elicitation, "when" related questions include ...

When will we be ready to start When will the feature fail When will this feature be used

This process model's key practices include a 40 hours work week.

XP

Match the project estimation term to it's correct definition. 1. LOC approach 2. FP approach

__1__ estimate the number of lines of code that will be written, multiply that by the cost to write one line of code __2__ estimate the number of function points needed for the application, multiply that by the cost to produce one function point

Place the type of coupling in order of strength from lowest coupling to highest coupling

__4__ common __5__ content __1__ data __2__ stamp __3__ control

Place the phases of the Software Development Process in the correct order

__5__Software evolution __3__Software Implementation __1__Software specification __2__Software design __4__Software Testing

Select all that applies. Completion of the elicitation stage should produce

a statement of need a statement of scope for the system

What is the McCabe Complexity of the following control flow graph? Start Is Leap Year

a) 4

The four P's of Project management are

a) People, Product, Process, Project

Using the risk management paradigm, Track means to

a) monitor risk indicators

In software design concepts, we use _____ as the solution to recurring problems.

a) patterns

Which architectural style is best suited for a relational database management system?

a) repository

These are for solving smaller, specific problems

a. Architectural tactics

A ________________ is a clear and concise description of an opportunity.

business concept

___________ is a description of how entrepreneurs plan to make money with their business concept.

business model

Chose all that applies. When doing detailed requirement elicitation, we must consider the following dimensions:

constraints on performance, security user interfaces the business flow

Using Equivalence Class, what are correct input set to test all three partitions Invalid too low | valid | invalid too high -100 | -99 -0.01 | .01 999.99 | 1000

d) -250.99, 0.00, 1111.11

For McCabe's Cyclomatic Complexity, the formula is

d) E - N + 2p

What is the product of the probability of incurring a loss due to the risk and the potential magnitude of that loss?

d) Risk exposure

Requirement Engineering:

d) The set of activities related to the defining, development, and documenting of the set of systems requirements

___________ is the process that tests a business concept.

feasibility analysis

User must be able to save their current state in the completion of the form and return to it later

functional

User should be able to specify the number of tickets purchased

functional

Software Engineering Project involves: Working with limited time and resources Satisfying a customer Managing risk Teamwork and communication All the above

All the above

UML is proprietary

False

A software process model is an abstract representation of a software process.

True

A test case is a set of conditions or variables under which a tester will determine whether a system under test is verified and validated to be correct.

True

A test suite is a collection of related test cases

True

Architectural tactics are for solving smaller, specific problems.

True

EEE defines testing as - A process of analyzing a software item to detect the differences between existing and required conditions (i.e., defects) and to evaluate the features of the software item.

True

ISO 31000 defines risk as the effect of uncertainty on the possibility of achieving the organization's objectives

True

Identifying object classes is often a difficult part of object oriented design

True

Many of the same metrics apply to both the process and project domains

True

Metrics are defined as a method of measuring something, or the results obtained from this

True

PEMBOK defines a project as a temporary endeavor undertaken to create a unique project service or result

True

Projects are a balance of three dimensions, with the goal of producing a successful software deliverables.

True

Sequence models show the sequence of object interactions that takes place.

True

Software design encompasses the set of principles, concepts, and practices that lead to the development of a high quality system or product

True

Software project management is the task of planning, directing, motivating, and coordinating a team through the stages of software development.

True

One reason why software development is considered to be difficult is the solution domain is difficult. Which statement best describes this.

You can change almost anything you design in software. ??? (not 100% He changed answers based on quiz)

Match the sentence to the correct term. 1. Kanban 2. Scrum

__2__ Timeboxed iterations required __1__ Timeboxed iteration optional __1__ WIP limited directly as policy __2__ WIP limited indirectly per sprint.

Match the POMA terms to the correct definition. 1. Planning 2. Organizing 3. Monitoring 4. Adjusting

__2__ coordinating activities and resources __1__ establish a pragmatic strategy for controlling, tracking, and monitoring a complex technical project. __4__ making changes if the project status suggests potential problem __3__ regular tracking to ensure that it is headed in the right direction

Using Boundary Value Analysis, what are correct input set to test all three partitions Invalid too low | valid | invalid too high -100 | -99 -0.01 | .01 999.99 | 1000

b) -100.00, -99.99, 999.99, 1000.00

A stakeholder is

b) any person or group who will be affected by the system, directly or indirectly

__________ answers the question, should we build this product?

b) economic feasibility

When problem solving, we search for multiple solutions

b) so we can assess the trade off of each solution and select the most appropriate.

For Halstead metrics, a volume greater that 1000 means

b) the function probably does too many things

We engineer software so we can

d) produce better software on time and on budget

For Halstead metrics, a volume less that 20 means

the function is too trivial

A software requirement is

A constraint that the system must satisfy to be accepted by the client A feature that the system must have to be accepted by the client

UML stands for Unified Modeling Language

True

Requirements form a set of statements that describes the clients' needs and desires for the system.

True

Exhaustive testing is easily achievable for large complex systems

False

For McCabe complexity metric, the higher the value of this number, the better

False

cohesion is the strength of the connection between modules

False

coupling is the glue that keeps a module together

False

State whether the following sentence contains a functional, or nonfunctional, or both functional and nonfunctional requirements. The system must be up and available to users between 6 am and 9 pm.

Nonfunctional

The prototype model of software development is

The best approach to use for projects when the customer is unclear as to what they want so throwaway products are developed to help them get a better understanding.

"Software Engineering is the application of a systematic, disciplined, quantifiable approach to the development, operation and maintenance of software; that is, the application of engineering to software." - IEEE

True

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

True

When designing software, we strive for strong cohesion and weak coupling

True

Match the term to the correct description. 1. Use case diagrams 2. Class diagrams 3. Sequence diagrams 4. Statechart diagrams 5. Activity diagrams

__1__ Describe the functional behavior of the system as seen by the user __5__ Describe the dynamic behavior of a system, in particular the workflow __2__ Describe the static structure of the system: Objects, attributes, associations __4__ Describe the dynamic behavior of an individual object __3__ Describe the dynamic behavior between objects of the system

Place the stages of the requirement engineer in the correct order.

__1__ Feasibility Study __2__ Requirements Elicitation and Analysis __4__ Requirement Validation __3__ Requirement Specification

Match the measure to its correct classification as either direct or indirect 1. Direct metrics 2. Indirect metrics

__1__ LOC __1__ number of bugs found per month __2__ testability __2__ readability

Place the type of cohesion in order of strength from weakest cohesion to strongest cohesion

__1__ coincidental __7__ functional __4__ procedural __3__ temporal __2__ logical __5__ communicational __6__ sequential

Match the sentence to the correct term. 1. Waterfall 2. Incremental 3. Spiral 4. Agile

__1__ earliest process and coping with no process __4__ coping with unpredictability and changes __3__ coping with risk management __2__ coping with decomposing the large systems

The correct order of steps in problem solving:

__1__ formulate the problem __2__analyze the problem __4__decide on the appropriate solution __3__search for solutions __5__specify the solution

Match the sentence about a pro to the pattern 1. Pipe and filter 2. client-server 3. layered

__1__ incremental transformation of data based on streams __2__ centralization of control __3__ separation of concerns

Which of the following are sources of risks important for a software feasibility study and which are not. Match the source of risks to valid and not valid. 1. Valid 2. Not Valid

__1__ lack of familiarity with the technology __2__ the server will not fit under the desk __2__ company will have to borrow at high interest rate __1__ compatibility with existing systems __1__ lack of familiarity with business application area __1__ size of the project __2__ company is unable to repay loans __2__ coffee will be spilt in the server

Match the definition to the correct term. 1.Product metrics 2.Process metrics

__1__ quantify characteristics of the product being developed __2__ quantify characteristics of the process being used to develop the software

Match the statements to the correct category of blackbox or whitebox testing. 1. Blackbox 2. Whitebox

__2__ Examines source code __1__ Examines the program that is accessible from outside __2__ Structural testing __1__ Functional testing

Match the statements to the correct category. 1. Static Analysis 2. Dynamic Analysis

__2__ Execute the program to see if failures occur __1__ Code inspection __2__ Unit tests __1__ Review the code and reason over behaviors that might occur when the program runs.

Match the sentence to the correct term. 1. Feasibility Study 2. Requirement Elicitation 3. Requirement Analysis 4. Requirement Specification 5. Requirement Validation

__2__ The activity of requirements discovery __1__ A short focused study that answers the questions of can we build it and is it economically feasible __3__ The activity of organizing, prioritizing and formalizing the requirements __5__ The activity of checking the requirements for errors. __4__ The activity of formally documenting the requirements

Match the definition to the correct term 1. cohesion 2. coupling

__2__ The measure of the degree of interdependence or interaction between two modules __1__ The measure of the strength of functional relatedness of elements within a module

Match the sentence to the correct term. 1. functional requirement 2. methodology 3. notation

__2__ a collection of methods for solving a class of problems __3__ a graphical or textual set of rules representing a model __1__ an area of functionality that the system must have

Match the sentence to the correct term. 1. system 2. model 3. activity

__2__ abstraction of the reality __1__ underlying reality __3__ a set of tasks performed toward a specific purpose

Match the statement to the correct term. 1.Fault 2.Error 3.Failure

__2__ an incorrect state of the system __1__ the adjudged cause of an error __3__ the external behavior of a system does not conform to that prescribed in the system specification

Match the term to the correct description. 1. Associations 2. Aggregation 3. Composition

__2__ denote a "consists-of" hierarchy __3__ denote the life time of the component instances is controlled by the aggregate. __1__ denote relationships between classes

Match the term to the correct description. 1. Sequence diagrams 2. Statechart

__2__ represent behavior of a single object with interesting dynamic behavior __1__ represent the behavior of a systemas messages ("interactions") between different objects

Match the term to the correct description 1. Actor 2. use case

__2__ represents a class of functionality provided by the system __1__ represents a role, that is, a type of user of the system

Match the correct sentence to the term for Krutchen's 4+1 views 1. Logical 2. Process 3. Subsystem 4. Physical

__2__ shows how, at run-time, the system is composed of interacting processes. __4__ shows the system hardware and how software components are distributed across the processors in the system __3__ shows how the software is decomposed for development __1__ shows the key abstractions in the system as objects or object classes

Match the sentences to the correct terms. 1. Software specification 2. Software design 3. Software implementation 4. Software validation 5. Software evolution

__3__ Translate this structure into an executable program __1__ The process of establishing what services are required and the constraints on the system's operation and development __5__ As requirements change through changing business circumstances, the software that supports the business must also evolve and change __2__ Design a software structure that realizes the specification __4__ demonstrate that a system conforms to its specification and meets the requirements of the customer

Match the correct term to its definition. 1. Participant 2. Role 3. Work product 4. Deliverable

__3__ an artifact produced duringdevelopment __4__ work product for client __2__ associated with a set of tasks assigned to a participant __1__ all persons involved in a project

Match the sentences to the correct terms 1. Design principles 2. Design concepts 3. Design practices

__3__ change continuously as new methods, better analysis, and broader understanding evolve __2__ must be understood before the mechanics of design practice are applied __1__ establish an overriding philosophy that guides the designer as the work is performed

Match the sentence to the correct term for design model elements 1. Data 2. Architectural 3. Interface

__3__ describes the externally observable behavior of a class and provides access to its public operations __2__ describes the views, models, and structure of the system __1__ describes the structure, manipulation and integrity aspects of the data

Match the scheduling principle to it's correct definition. 1. defined outcomes 2. effort validation 3. interdependency 4. defined responsibilities 5. defined milestones 6. compartmentalization

__3__ indicate task interrelationship __5__ review for quality __4__ people must be assigned __2__ be sure resources are available __1__ each task must have an output __6__ define distinct tasks

Match the software metrics definition to the correct term 1. measure 2. measurement 3. indicator 4. process indicators 5. metric

__3__ provides insight into the software development process or project __2__ the act of determining a measure __4__ allow assessment of process in terms of what works and what doesn't __5__ quantitative measure of the degree to which a system, component or process possesses an attribute __1__ quantitative expression of an attribute of a product or process

Match the sentence about a pro to the pattern 1. Repository 2. Three-Tier Style 3. Model-View-Control

__3__ separation of responsibilities means future development or modification is easier __1__ the code to query and fetch data from data source(s) is not repeated __2__ client can access the data layer only through the logical layer, so data better secured

Match the sentence to the correct term. 1. Architectural design 2. Interface design 3. Data/Class design 4. Component-level design

__3__ transforms analysis classes into implementation classes and data structures __4__ transforms structural elements into procedural descriptions of software components __1__ defines relationships among the major software structural elements __2__ defines how software elements, hardware elements, and end-users communicate

With respect to the seven principles of risk management, match the term to the definition. 1. Encourage teamwork 2. Emphasize a continuous process 3. Integrate 4. Encourage open communication

__4__ if someone states a potential risk, don't discount it. __1__ the talents, skills and knowledge of all stakeholder should be pooled __2__ the team must be vigilant throughout the software process, modifying identified risks as more information is known and adding new ones as better insight is achieved. __3__ a consideration of risk must be integrated into the software process

A model of a system allows (multiselect)

better visualization easier comprehension

___________ is a document that describes a new business and a strategy to launch that business.

business plan

Using the risk management paradigm, Identify means to

c) search for an locate risks before they become a problem

The architecture is a representation that enables a software engineer to:

consider architectural alternatives at a stage when making design changes is still relatively easy analyze the effectiveness of the design in meeting its stated requirements reduce the risks associated with the construction of the software

Compute the risk exposure for the case below: •Risk identification. Company ABC planned on integrating 100 reusable software components. However, only 60 percent of the software components scheduled for reuse will, in fact, be integrated into the application. The remaining functionality will have to be custom developed. It will cost $1000.00 to custom develop one component. •Risk probability. 80%.

d) .80 x 40 x 1000

Select the correct types of feasibility analysis that are combined for a feasibility study. (multiselect)

organizational feasibility economic feasibility technical feasibility

Select all that apply. Software metrics are concerned with

product quality development team's productivity

A feasibility analysis is a detailed business case for the project. Select all the items that are outlined in a feasibility analysis.

risks costs benefits

Check all that applies. Requirement elicitation is hard because

stakeholders often don't know what they want from the system stakeholders express requirements in their own domain specific terms different stakeholders have different requirements

Select all that apply. Complete testing is near impossible for most of the system because

the domain of possible inputs of a program is too large it may not be possible to create all possible execution environments of the system the design issues may be too complex to completely test


Related study sets

6. Stakeholder Analysis and Management

View Set

Mexico (most are true/false questions)

View Set

Ch.1 Business and Its Legal Environment

View Set

2.1 The Classified Balance Sheet

View Set