Midterm Flashcards

1
Q

What are activity graphs?

A

They depict the dependencies among activities
Node: project milestones
Lines: activities involved

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the critical path in a project?

A

Minimum amount of time to complete a project - aka choose the longest path

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is slack time?

A

The difference between the available time and real time for that activity

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

What is a Gantt Chart?

A

Gantt Charts are bar charts with time on the horizontal axis and tasks on the vertical access. A bar on the chart indicates the duration a task is worked on.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

What is a system?

A

The part of reality that can be modified or altered by the development process

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

What is the system boundary?

A

Separates the system from the environment

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

What is the environment?

A

What cannot be changed or modified by the development process

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is a context boundary?

A

Separates the relevant part from the irrelevant part of the environment

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Relevant environment

A

The part that does influence the system to be developed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Relevant environment

A

Part that does not influence the system to be developed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is a goal?

A

Something the user wants to achieve

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What is an interaction?

A

Something the user does to the system to achieve the goal

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Actors

A

A role external to the system, interacts with a system, tries to achieve a goal

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Use-cases

A

one way to use the system, centered around a goal, yields a result to an actor. Verb noun combo, describes interaction, reflects actors goal

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Connections

A

Between use-cases and actors (and sometimes between use-cases)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Includes

A

You have a piece of behavior that is similar across many use cases, break this out as a separate use case and let the other ones “includes” it. Refund a purchased item INCLUDES check receipt, arrow pointing at check receipt

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Extends

A

A use case similar to another but does a little bit more. Put the normal behavior in the use case and the exceptional behavior somewhere else. Buy Item EXTENDS Buy Alcohol, arrow pointing at buy item

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

How should use-cases be identified?

A

Verb-noun combination, describe an interaction, reflect the actors goal

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Define Elicitation in RE

A

Identifiying requirements or obtaining requirements from stakeholders and other sources. Typically includes refining the requirements into additional detail

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Define Documentation in RE

A

Recording requirements based on some standard. Typically either in natural language or a conceptual model

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Define Validation & Negotiation in RE

A

Ensure the correctness and applicability of what we intend to build, while maintaining agreement across stakeholders

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Define Management in RE

A

Occurs continuously throughout RE process (i.e. not a single step) to ensure consistency and correctness throughout

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

What is traceability?

A

Connection of requirements to related requirements. Can be represented via graph, matrix, and text. You have user requirements and system requirements and arrows pointing showing relationships to each

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
24
Q

How can you represent traceability as a graph in the form of a matrix?

A

User requirements go on y axis, system requirements would go on x-axis, and you check boxes where there are relationships

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
25
Q

Traceability Matrix Pros/Cons

A

Pros - Clear which links are impacted when a requirement is removed
Cons-Large tables, Wasted Space, Difficult to Follow, Separated

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
26
Q

Traceability Text Pros/Cons

A

Pros - Large numbers of requirements result in small increases, requirements and traceability info are together

Cons- Must search for and follow the textual links to identify traceability
Not clear which links are impacted when a requirement is removed

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
27
Q

How would you represent Traceability as graph to text?

A

UR21: The driver shall be able to deploy the vehicle over terrain type 4A (SR15, ST32, etc)

SR15: The vehicle shall transmit power to all wheels
SR32: ….

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
28
Q

What can you use traceability for other than requirements?

A

Other artifacts - test cases/procedures, implementation, deisgn documents, qualification support

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
29
Q

What are risks in requirements engineering?

A

-Insufficient customer/user involvement
-Overlooked user classes
-Vague and ambiguous requirements
-Unprioritized requirements
-Analysis paralysis
-Building functionality no one uses
etc

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
30
Q

What is risk impact?

A

the loss associated with the event

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
31
Q

What is risk probablity?

A

The likelihood that the event will occur

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
32
Q

What is risk exposure?

A

It quantifies the effect of risks
risk exposure = risk probability x risk impact

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
33
Q

What are the three methods of risk reduction?

A

Accept/ignore - accept and/or control it

Avoid - change requirements for performance or functionality

Mitigate: Reduce likelihood or impact (or both)

Transfer: to another system or buy insurance

34
Q

What is the cost of reducing risk?

A

Risk leverage = (risk exposure before reduction - risk exposure after reduction) / cost of risk reduction

35
Q

What is Earned Value Analysis?

A

A quantifiable measure of progress in a project

36
Q

What are BCWS, BCWP, BAC, ACWP?

A

Budgeted cost of work scheduled (BCWS): sum of the cost budgeted for each work task scheduled for completion by a point in time (PV - Planned Value)
* Budget at completion (BAC): sum of BCWS values for all work tasks in a project
* Budgeted cost of work performed (BCWP): sum of the BCWS values for all work tasks that have actually been completed by a point in
time on the project schedule (i.e., Earned Value (EV))
* Actual cost of work performed (ACWP): sum of the effort actually expended on work tasks that have been completed by a point in time on the project schedule (i.e., Actual Cost (AC))

37
Q

How would you track schedule and budget using EVA?

A

Schedule:
SPI < 1 behind schedule
SV < 0 behind schedule

Budget
CPI < 1 over budget
CV < 0 over budget

38
Q

What is a misuse case?

A

Harmful uses of the system

39
Q

What is a misuser?

A

Actor that uses the misuse cases

40
Q

What is the mitigate relationship in a use-case diagram?

A

Prevents a misuse case from being entirely successful

41
Q

What is the threatens relationship in a use-case diagram?

A

Prevents a use case from being entirely successful

42
Q

What is the relation of the system boundary to requirements (and testing)?

A

Requirements definition is the toughest part of software development and can have the largest impact when done incorrectly. Use cases is a powerful tool to understand who your users are, including interacting syste

43
Q

Define Estimation by Guesstimation

A

Guessing how much it will take, picking numbers out of the air

44
Q

Define Expert Judgement

A

Solicit estimates from multiple experts in software application domain, arrive at agreed estimate. Often uses a work breakdown structure of tasks that are decomposed until they can reasonably be estimated

45
Q

Define Estimation by Analogy

A

Using costs of similar completed projects

46
Q

Define Parkinson’s Law

A

Work expands so as to fill the time available for its completion

47
Q

Define Pricing to Win

A

Cost is determined by customer’s available budget

48
Q

Define Schedule-driven budget estimation

A

Based on resources allocated to tasks in the baseline schedule. The software is estimated to be the cost of the supplied resources over the course of the schedule.

49
Q

Define Algorithmic Cost Estimation

A

Estimate the size of a problem, use an empirically obtained algorithm/model that relates size to effort/cost. COCOMO is popular model, collects data from large number of projects

50
Q

What is a Work Breakdown Structure?

A

A project management tool that provides a hierarchical structure that acts as a bridge or link between the projects scope and the detailed project plan that will be created.

51
Q

What is the Triple Constraint?

A

The Budget Scope, Schedule triangle, the project is balanced or “in harmony” when the schedule and budget support the project’s scope in order to achieve the MOV. The project becomes imbalanced when the scope increases without adjusting schedule and budget accordingly.

52
Q

What is scope?

A

Defines the work boundaries and deliverables of a project so what needs to get done, gets done. And only what needs to get done, gets done. It’s determined by project’s MOV

53
Q

What is Measurable Organizational Value (MOV)?

A

Must be measurable, provide value, be agreed upon, be verifiable. Project objectives support the MOV and include the scope (the project work to be completed), schedule (time), money (budget), quality (conformance or fitness for use)

Ex: Increase awareness for healthy living (vision, mission, strategy) by having 250 new subscribers sign up (scope) for a weekly (quality) newsletter within 6 months (schedule)

54
Q

What is Shaw’s Model of Engineering Evolution?

A

Craft, Production, Commercial, Science, Engineering is the order. Looks like two backward Cs connected and then a line. Craft goes first in the bottom part of the C, production above it. Commercial goes in the bottom of the next C, Science above it. Engineering goes on that line connecting to the C on the right.

55
Q

Why is software development/engineering hard?

A

Growth in number of features, inputs, outputs. A single increase can cause dimensional growth

56
Q

What is a fault?

A

When a human makes a mistake

57
Q

What are the 5 SE PHASES?

A

Definition - What are we building?
Development - How are we building it
Verification - Did we build it right?
Maintenance - Managing change and errors
Umbrella activities - Common across phases (reviews, documentation, version control)

58
Q

What portion of SE costs are attributed to the phases?

A

MAINTENANCE has majority, then development and verification, then definition having the smallest cost

59
Q

What is the relationship between the costs of hardware and software?

A

Software - Linear graph, starts out being inexpensive and increasing over time
Hardware - Exponential graph, starts out being most expensive in the beginning and decreasing over time

60
Q

What is analysis?

A

Decompose a larger problem into smaller understandable pieces using abstraction

TOP DOWN

61
Q

What is synthesis?

A

Build (compose) a sofware from smaller building blocks (Note: composition is challenging)

BOTTOM UP

62
Q

Define the Iterative Process Model

A

Each stage is repeating in cyclic order during the lifetime of the project, has the ability to revisit previous phases. Allows client feedback and changing the system as per client’s feedback

Example - Spiral model

63
Q

Define the Linear Process Model

A

Completing phases one by one. After completing one phase, you move on to the next. Suitable for projects with little or no feedback or refinement. No way to go back to the previous phase when you’ve moved on

Examples: Waterfall

64
Q

Define the Evolutionary Process Model

A

Software is broken down into modules that can be incrementally constructed and delivered.

65
Q

Define the Parallel Process Model

A

Products are build in iterative format, allows more concurrency of events and activities.

66
Q

What is V model?

A

Variation of the waterfall model, use unit testing throughout, if problems are found during verification and validation, the left side of the V can be re-executed before testing on the right side is enacted

IT IS ITERATIVE, WAY TO GO BACK
IT’S ALSO PARALLEL, CAN DO MORE THAN ONE THING AT A TIME

67
Q

What is Waterfall?

A

Linear, can’t go back once you’ve completed a step. Lots of up front work.

68
Q

What is the Prototype Model?

A

Let’s build something, even if it’s not right. Then the customer can tell us which bits aren’t right and we can specify them and fully redo them.

Process of developing a working replication of a product or system that has to be engineered. Offers small scale of the end product and is used for obtaining customer feedback

69
Q

What are the Phased Development: incremental and iterative models?

A

Shorter cycle time, system delivered in pieces, enables customers to have some functionality while the rest is being developed
Allows two systems functioning in parallel

SOME OF IT IS PARALLEL, EACH INCREMENT IS LINEAR. No iteration, can’t go back. Some evolutionary

Incremental - small functionality and develops from there, Iterative - starts with full system and changes from there

70
Q

What is the spiral model?

A

Similar to iterative model but with thought given to which areas have the most risk, allowing the customer to abort if the risk becomes too great at any stage

The radius of the spiral represent the expenses(cost) of the project so far and the angular represents the progress made so far in the current phase

Evolutionary process model

71
Q

What is the Agile method?

A

Large teams working together with guidelines for how the teams and individuals should work together. Iterative. Minimal focus on documentation and planning, favoring frequent collaboration between the dev team and client as well as within the team.

72
Q

What is the difference between incremental and iterative models?

A

Incremental - let’s build the most important bit as quickly as we can and deliver to customer, then we’ll add from there

Iterative - let’s build something even if it’s not quite right then we can show to customer and continue changing as needed

73
Q

What are hybrid methods and how do they fit in?

A

Waterfall with prototype - a prototype is partially developmed product, useful for verification and validation, assess design strategies, users understand what system will be like. Waterfall with prototype is linear and iterative and a little parallel.

Waterfall-agile uses waterfall at first and then agile later

Allows localized benefits of different process models, does not require updating high level processes if they are used in company policies, old docs, etc

74
Q

Define Determine the Obligation in Construction with Templates

A

Shall, Should, Will, May

75
Q

Define The Requirement Core in Construction with Templates

A

The core of a requirement is the functionality that is required, typically the process verb that the system must adhere to

76
Q

Define Characterize The Activity of a System in Construction with Templates

A

Requirements may be classified as one of three types -
autonomous: performed w/o additional interaction
user interaction: performed to support need of specific actor
interface requirement: reactive requirement dependent on an external system

77
Q

Define Insert Objects in Construction with Templates

A

Additional objects may be necessary to fully specifiy the process verb

78
Q

Define Determine Logical and Temporal Conditions in Construction with Templates

A

Finally there are likely conditions about when either temporally or logically a process verb should be executed

79
Q

Construction with Templates Order

A

Determine the Obligation
The Requirement Core
Characterize the activity of a system
Insert Objects
Determine Logical and Temporal Conditions

The phone SHALL BE ABLE TO receive a call when a call is incoming.

80
Q

What is a functional requirement?

A

Behavior requirements, specific services that an actor can accomplish using the app.

Ex: Display name, total size, available space, and format of a flash drive connected to USB port.

81
Q

What is a non-functional requiremnet?

A

Specifies something about service, overall qualities or attributes, restrictions or contrains placed on service offered by system, often more critical than individual functional requirements