Midterm 1 Flashcards

1
Q

What does “agile approach” mean?

A

light/flexible

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

What is a simple definition of “Use Case”?

A

written stories

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

What needs to be defined in a “Domain Model”?

A

concepts, attributes, and associations that are considered noteworthy

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

What do “Interaction Diagrams” show?

A

the flow of messages between software objects, and thus invocation methods

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

What does a “Design Class Diagram” show?

A

a static view of the class definitions

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

What is “Inception”?

A

initial short step at the start of a project that establishes a common vision and the basic scope which the project should cover. Includes analysis of 10% of the use cases.

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

What are some “Inception: pitfalls”?

A

Takes a long time, plans are expected to be reliable, there is an attempt to define most requirements

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

Define “Waterfall” requirements.

A

collect all requirements before starting any implementation

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

Define “Evolutionary” requirements.

A

iterative methodology, tests/implement as you plan.

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

What are pitfalls from “Waterfall” and “Evolutionary” requirements.

A

Waterfall: 45% of planned features are never used, studies show waterfall is strongly associated with the highest failure rates.

Evolutionary: Could run into an unexpected roadblock that prevents you from continuing.

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

Give examples of “Functional vs Non-Functional” requirements.

A

Functional (behavioral): display, choosing shipping methods (What does the system need to perform)

Non-Functional (everything else): documentation, price (What does the system need in order to work)

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

What is an activity diagram?

A

Flowchart

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

In a Use-Case what is an “Actor vs Scenario”?

A

Actor: something with behavior, person, computer system, organization.

Scenario: specific sequence of actions and interactions between actors and the system, successfully purchasing an item with cash

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

What is a “Use-Case”?

A

a collection of related success and failure scenarios that describe an actor using a system to support a goal

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

What are the three types of actors?

A

Primary Actor: has user goals fulfilled through their services

Supporting Actor: provides a service

Offstage Actor: has an interest in the behavior of the use case, but is not primary or supporting

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

Give an example of the three types of actors.

A

Primary: Cashier
Secondary: automated payment authorization service
Offstage: government tax agency

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

Name all sections of a fully dressed use case table as well as come up with an example. (see lab 03)

A

Use Case Name:
Scope:
Level:
Primary Actor:
Stakeholders and Interests:
Preconditions:
Success Guarantee:
Main Success Scenario:
Extensions:
Special Requirements:
Frequency of Occurrence:

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

What is a use case diagram

A

see lab 02

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

What is generalization?

A

Identifying commonality among concepts (subclass)

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

Explain Is-a Test.

A

Helps identify child classes. Credit payment is-a payment

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

Explain 100% rule.

A

100% of the conceptual parents definition should be applicable to the subclass

20
Q

Explain Object vs Class

A

Class is a template and a Object is the instance of the template

21
Q

Explain has-a test.

A

helps identify attributes of a class

22
Q

Explain an Abstract class.

A

empty method in the parent acts as a template to force sub-classes to implement the method

23
Q

Generalization vs Specialization

A

Attributes of a parent class vs Attributes of a child class.

24
Q

What does Aggregation look like in UML

A

Either a filled (only 1) or hollow diamond (multiple)

25
Q

How to know if a relationship is aggregation

A

Is-a/Has-a Test

26
Q

What is a derived element?

A

an attribute that is calculated with a method

27
Q

What is Qualified Association?

A

It distinguishes the set of objects at the far end of the association based on the qualifier value. (Smaller box used in a association

28
Q

What is a Reflexive Association?

A

A concept that has an association with itself

29
Q

Sequential vs Iterave
- 5 Differences
- 3 Potential Problems with Sequential

A

1) Waterfall defines all requirements before development.

2) Waterfall has a strict schedule/budget while iterave has a more flexible approach

3) Waterfall follows a sequential, linear process where each phase is completed before the next one while iterative allows overlap and working on multiple phases at once

4) Waterfall takes longer to be deployed but is deployed in a more complete state, while iterative is deployed sooner in a more beta phase that is meant to improve the project from feedback

5) Waterfall is less adaptable to change because everything is planned before starting while iterative is more flexible to change during the development of a project

30
Q

What are the 3 UP: characteristics

A

Iterative and incremental, Architecture Centric, Risk Focused

31
Q

Define Iterative and Incremental

A

phases are divided into a series of timeboxed iterations

32
Q

Define Architecture Centric

A

insists that architecture is at the heart of the projects team’s efforts to shape the system

33
Q

Define Risk Focused

A

requires the project team to focus on addressing the most critical risks early in the project life cycle

34
Q

What is UP

A

Unified Process, a combination of waterfall and evolutionary

35
Q

What does timeboxed mean?

A

iterations that are fixed in length.

36
Q

What are good practices for agile methods?

A

apply timeboxed iterative and evolutionary deployment. employ adaptive planning. promote incremental delivery.

37
Q

Why do companies like agile?

A

Part of the products are ready after three or four weeks.

38
Q

What are the 4 UP phases

A

Inception, Elaboration, Construction, Transition

39
Q

What are the four design phases of a project?

A

Use cases, domain model, interaction diagrams, design class diagrams

40
Q

What is the difference between domain model and design class diagram?

A

design class diagram is more detailed with behaviors/methods/features

41
Q

What is the main purpose of a domain model?

A

Help visualize the problem

42
Q

What is association in OOP?

A

Inheritance

43
Q

What is an attribute in a domain model?

A

a variable in a class

44
Q

In a domain model, how do you distinguish between private and public?

A
  • private
    + public
45
Q

In UML what is “Sale”?

A

Class

46
Q

In UML what is “:Sale” (Underlined)

A

Instance of the class (Object)

47
Q

In UML what is “S1:Sale” (Underlined)

A

Named Instance

48
Q

What does a double box mean in UML?

A

multiple objects

49
Q

What is a static attribute?

A

use the name of the class to change the attribute (math.pi)

50
Q

What is a Static method?

A

A Method used to change the value of a static attribute