CIS 350 Final

¡Supera tus tareas y exámenes ahora con Quizwiz!

Composition in UML Class Diagrams

Represented by a closed diamond, shows when an object is dependent on the existence of a super object

Dependency in UML Class Diagrams

Represented by a dashed arrow. Shows some sort of relationship between the two, like how one uses methods from another.

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

Iterative Process Flow

Take steps back during Definition, Development, and Verification steps to make sure software meets expectations

Slack Time

Available time subtracted by the real time(actual time)

Three Strategies for Risk Reduction

- Avoiding the Risk: Change requirements for performance or functionality - Transference of Risk: Transfer to other system or buy insurance - Assuming the risk: accept and control it

Capabilities of Traceability

- Create/delete links between requirements - Perform analysis in both directions, show impacted requirements, and show original requirements

Software Development Phases

- Definition - Development - Verification - Maintenance - Umbrella Activities

Reasons for Inaccurate Estimates

- Frequent changes by users - Overlooked tasks - User's lack of understanding of requirements - Insufficient analysis - Lack coordination

Three ways to incorporate quality into Software Engineering

- Quality of the product - Quality of the process - Quality of the product in a business enviornment

Problems of Software Engineering

- Software is difficult to maintain - Schedule and cost estimation is difficult - Many projects fail - Issues can lead to project cancellation

Types of Estimation Costs

-Facilities: hardware, space, furniture, telephone, ect - Software tools for designing software - Staff (effort): bulk of cost

Rich Traceability

???

*Mis*use case

A Use Case from the point of view of an Actor hostile to the system under design. They can *threaten* use-cases, and others can *mitigate* them

Failure

A departure from the system's required behavior

Agile Model

A development model that emphasizes continuous feedback, speed, and cross-functional teamwork.

Traceability Matrix

A matrix of high level requirements and detailed requirements showing the relationship between the two

Actor

A role with three traits: - External to the system - Interacts with the system - Achieves some goal

Process

A series of steps involving activities, constrains, and resources that produce an intended output of some kind

Use Case *Extends*

A use case similar to another but does a little more

UML Object Diagram

An object diagram shows a set of objects and their relationships at a point in time.

Parallel Process Flow

Be Maintaining software as you go through from Communication to Deployment

Development Synthesis

Build (compose) a software from smaller building blocks

Use Case

Captures some visible function and achieves a discrete goal for the user. Examples: -"Close out loan" - "Generate late notice"

Evolutionary Process Flow

Circle thought from Communication to Deployment until it meets expectations, then move to Maintenance

Shaw's Model of Engineering Evolution

Craft and Production lead to Commercial, Commercial and Science lead to Engineering

Development Analysis

Decompose a larger problem into smaller understandable pieces using abstraction

Phased Model

Evolutionary model which builds smaller releases which eventually make the final product

Textual Traceability Representation

First list all higher level requirements followed by modifying system level requirements in parentheses. Then describe all system level requirements.

Use Case Description

Formatted as follows: Actors: Type: (primary, includes, extends) Description: Cross Refs: Use Cases: (example: pre existing requirements)

Linear Process Flow

Go straight through from Communication to Maintenance

Requirements Elicitation

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

Work Breakdown Structure

Project development can be separated into a succession of phases which are composed of steps, which are composed of activities

Spiral Model

Iterative model which loops through planning, modeling, construction, deployment, and communication stages continuously until product is finished

Waterfall Model

Linear model which travels from Definition to Maintenance

Most expensive/time consuming Engineering phase

Maintenance

Earned Value Analysis

Measure of the progress in a project

Critical Path Method

Minimum amount of time it takes to complete a project

UML Class Diagram

Notation for describing a class graphically. contains 3 parts: 1) class name at top 2) member variables and their data types 3) member functions and their parameters

Fault

Occurs when a human makes a mistake, called an error, in performing some software activities

*Non* Functional Requirements

Overall qualities or attributes of the resulting system, can be viewed as restrictions or constraints placed on a service offered by the system. Another way to think about it: specifics criteria *about* the system

V Model

Parallel model which travels in a V; tests form the second part of the V and verify the left parts of the development cycle

System Context

Part of the system environment that is relevant for the definition (and understanding) of the requirements of a system. Modeled by *Use Case* diagram

Use Case *Includes*

Piece of behavior shared among multiple use cases, so there are related

UML Class Diagram Visibility Modifiers

Private: - Public: + Protected: # Package: ~

Realization Relationship in UML Class Diagrams

Represented by a dashed line with an open arrowhead. A realization is a relationship between two things where one thing (an interface) specifies a contract that another thing (a class) guarantees to carry out by implementing the operations specified in that contract

Multiplicity of UML Class Diagrams

Represented by a number next to whatever relationship you are describing, it shows the amount of that object you can have with regards to its' parent. Examples: Zero to one: 0..1 Specific number: n Zero to many: 0..n One to many: 1..n Range: n..m

Association in UML Class Diagrams

Represented by a simple line connecting two class with a label, it shows a simple relationship with no actual dependency

Inheritance in UML Class Diagrams

Represented by an arrow with an open, white tip pointing at the superclass

Aggregation in UML Class Diagrams

Represented by an open diamond. Shows that a class could be part of another class, but doesn't have to be

Context Boundary

Separates the relevant part of the environment of a system to be developed from the irrelevant part, i.e., the part that does not influence the system to be developed and, thus, does not have to be considered during requirements engineering

System Boundary

Separates the system to be developed from its environment, or it separates the part of the reality that can be modified or altered by the development process from aspects of the environment that cannot be changed or modified by the development process

Functional Requirements

Specific services that an actor can accomplish using the application, the main product features/services. Another way to think about it: specifies what the system *is*

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

Budgeted Cost of Work Scheduled (BCWS)

Sum of the cost budgeted for each work task scheduled for completion by a point in time

Traceability

The ability to link product requirements back to stakeholders' rationales and forward to corresponding design artifacts, code, and test cases. In other words, user requirements are decomposed into system requirements

Ethics

The discipline dealing with what is good and bad and with moral duty and obligation

Software Engineering

The study of systematic and effective processes and technologies for supporting all software lifecycle activities in order to support improved quality and reduced cost

Risk

Unwanted event that has negative consequences

Symbolic Execution

Using symbols as inputs of a function to see the ranges of values that can be returned for each input

Activity Graph

Work breakdown structure that shows dependency among activities with nodes to show milestones and line to show involved activities


Conjuntos de estudio relacionados

Fundamentals PrepU Chapter 35: Nutrition

View Set

Applied Animal Nutrition - Quiz 4 Part 1

View Set

L19 Placenta and Trophoblastic disease

View Set

ANTH 2012 MIDTERM (DEFINITIONS & Concepts)

View Set

mylab stats 6.4 basic prob and stats

View Set

Chapter 7 Life Span Development Homework

View Set