CS 2340 Exam 1

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/81

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

82 Terms

1
New cards

Fault (bug)

Related to the code.

Necessary (not sufficient!) condition for the occurrence of a failure

2
New cards

Use Cases

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

Types: brief, casual, fully-dressed

3
New cards

UP iteration length

The UP recommends that an iteration should be 2 to 6 weeks

4
New cards

Inspection (Verification)

systematic group review of program text to detect faults

5
New cards

Testing Granularity

Unit Testing

Integration Testing

System Testing

Acceptance Testing

Regression Testing

6
New cards

Scenario (Use Cases)

specific sequence of actions and interactions between actors and the system under discussion

7
New cards

Supporting Actor

provides a service to the system under discussion

8
New cards

Offstage actor

has an interest in the behavior of the use case

9
New cards

Entity Class (robustness diagram)

a class from the domain model

10
New cards

Controller Class (robustness diagram)

a class representing business logic

11
New cards

Unified Modeling Language (UML)

A language based on object-oriented concepts that provides tools such as diagrams and symbols to graphically model a system. Helps create software "blue-prints"

12
New cards

Object Oriented Analysis

Focus on the problem and finding and describing objects in the problem domain

13
New cards

Object Oriented Design

Focus on finding a conceptual solution that fulfills the requirements - define software objects and how they collab to fufill requirements

Designs are implemented in a programming language

14
New cards

Unified Process (UP)

An object-oriented system development methodology

goal: enable the production of software that meets user needs within predictable schedules and budgets

15
New cards

software development process

an approach to building, deploying, and maintaining software

16
New cards

iterative development

Development is organized into a series of short fixed-length mini-projects called iterations

17
New cards

iteration

represents a complete development cycle; includes its own treatment of requirements, analysis, design, implementation and testing activities.

The outcome of each iteration is a tested, integrated and executable system

18
New cards

Embracing change

Stakeholders have changing requirements.

Iterations lead to rapid feedback and an opportunity to modify design.

19
New cards

Timeboxing

Iterations are fixed in length

20
New cards

Phases of the Unified Process

Inception, Elaboration, Construction, Transition

21
New cards

Inception

Define the scope of the project

determine initial vision & feasibility

22
New cards

What happens in Inception?

requirements workshop, most actors, goals, and use cases named, and plan for first iterations, etc.

23
New cards

Artifacts started in inception

vision, business case, Use Case model, supplementary specification, glossary, risk management plan, proof-of-concept

24
New cards

Use Case model

describes functional requirements and related non-functional requirements, set of typical scenarios of using a system

25
New cards

Black-box use cases

describe system responsibilities - i.e. what the system must do

26
New cards

Use case formality types

Brief (one paragraph summary), Casual (informal paragraph), Fully dressed (elaborate, detailed)

27
New cards

Supporting actors (use cases)

they provide a service

28
New cards

Primary actors (use cases)

have user goals

29
New cards

Elaboration

Plan project, specify features, baseline/risky architecture

30
New cards

What happens during elaboration?

core, risky architecture is programmed, majority of requirements are discovered, major risks are mitigated

31
New cards

Construction

Build the product

32
New cards

Transition

Transition the product into end user community

33
New cards

Milestone

Each phase and iteration concludes with a well-defined milestone

34
New cards

The UP Disciplines (process)

Business modeling, requirement, analysis & design, implementation, test, and deployment

35
New cards

The UP Disciplines (supporting)

Configuration management, management, environment

36
New cards

Disciplines

In an iteration, you will walk through all disciplines - relative effort and emphasis changes over time

37
New cards

Advantages of an iterative process

reduce risks, get a robust architecture, handling evolving requirements, allows for changes, attain early learning

38
New cards

System Sequence Diagram (SSD)

a picture that shows, for a particular scenario of a use case, the events that external actors generate, their order, and possible inter-system events

39
New cards

System behavior

All systems are treated as a black box; the diagram places emphasis on events that cross the system boundary from actors to systems

40
New cards

Domain Models

illustrates meaningful concepts in a problem domain.

It is a representation of real-world things, not software components.

has conceptual classes in UML, associations, and attributes

41
New cards

Conceptual Classes (Domain models)

has a symbol, intention, and extension

42
New cards

Attribute (Domain models)

Logical data value of an object

If we do not think of some conceptual class as a number or text in the real world, it is probably a conceptual class (else an attribute)

43
New cards

Description Classes (Domain models)

contains information that describes something else

added when there needs to be some description about an item independent of the current existence of those items

44
New cards

Association (Domain models)

a relationship between classes that indicates some meaningful and interesting connection

45
New cards

Naming Associations (Domain Models)

ClassName-VerbPhrase-ClassName

46
New cards

Association Roles and Multiplicity (Domain Models)

Each end of an association is called a role.

Roles may have multiplicity, name, and navigability

47
New cards

Multiple association

Two classes may have multiple associations between them in UML class diagrams

48
New cards

What happens during the construction phase?

Builds the remainder of the system

testing during constructions is referred to as "alpha testing" - performed at developer's site

49
New cards

What happens during the transition phase?

purpose is to put the system into production use

testing during transition is referred to as "beta testing" - performed at a client's site

50
New cards

Waterfall lifecycle

Sequential stages, each stage must be completed for the next to follow

51
New cards

Problems with waterfall lifecycle

tackling high-risk or difficult problems late, requirement inflexibility

52
New cards

What are requirements?

System capabilities and condition to which the system must conform

53
New cards

Functional require

Features and capabilities, recorded in Use Case model

54
New cards

Non-functional requirements

Usability, Reliability, Performance, Supportability, recorded in the Use Case model or in the Supplementary Specifications

55
New cards

How are requirements organized in the UP artifacts?

Use Case Model, Supplementary Specification, Vision, Business rules, and Glossary

56
New cards

Where do requirements come from?

Stakeholders, application domain, documentation

57
New cards

requirement elicitation

Thin spread of domain knowledge, knowledge is tacit, limited observability, bias

58
New cards

Traditional techniques for finding requirements

background reading, hard data and samples, interviews, surveys, and meetings

59
New cards

Analyzing Requirements

Verification, validation, and risk analysis

60
New cards

Requirements prioritization

limited resources, inability to satisfy all the requirements, need to prioritize them

61
New cards

Requirements engineering iterative process

elicitation, negotiation, modeling, and analysis

62
New cards

Failure

Observable incorrect behavior of a program.

Conceptually related to the behavior of the program, rather than its code.

63
New cards

Error

Cause of a fault.

Usually a human error (conceptual, typo, etc.)

64
New cards

Testing (Verification)

exercising software to try and generate failures

65
New cards

Static verification (Verification)

identify (specific) problems statically, that is, considering all possible execution

66
New cards

Formal proof (verification)

proving that the program text implements the program specification

67
New cards

Testing

To execute a program with a sample of the input data

68
New cards

Alpha v. Beta testing

Alpha testing happens with in the organization and Beta testing is outside of the organization

69
New cards

TDD

Write test code, write functional code, and refactor

70
New cards

Structure of tests

Set fixture, invoke, check, and cleanup

71
New cards

Actor (Use Cases)

something with behavior

72
New cards

Use Case Model

set of all written use cases

includes the optional Use Case Diagram

73
New cards

Primary Actor

has user goals fulfilled through using services of the system under discussion (SuD)

74
New cards

Elementary Business Processes (EBPs)

a task performed by one person in one place at one time which adds measurable business value and leaves the data in the consistent state

Focus on the use cases at the level of EBP

75
New cards

Essential Style (Use Cases)

Focus is on intent; avoid making UI decisions

76
New cards

Concrete Style (Use Cases)

UI decisions are embedded in the use case text

77
New cards

Robustness diagram

bridge the "What/How" gap

78
New cards

Boundary Class (robustness diagram)

a user interface or API class to external system

represent potential screens

79
New cards

UI Designers

UI designers create prototypes of potential screens

create flow diagram to show how screens flow in application

80
New cards

When are Sequence scenario diagrams created?

Most created during elaboration

81
New cards

Sequence Diagrams

Can manage complex interactions with sequence fragments - loop (iteration), alt (alternatives), opt (option), and ref (reference)

82
New cards

Robustness object interactions

Entity, Boundary - nouns; Controller - verb

1. Nouns & Verbs can talk

2. Verbs & Verbs can talk

3. Nouns & Nouns cannot talk