CEN5087 Midterm Study Guide

studied byStudied by 7 people
5.0(1)
Get a hint
Hint

What is Software?

1 / 40

flashcard set

Earn XP

Description and Tags

41 Terms

1

What is Software?

  • Models, Design, Tests

  • A set of instructions (Programs)

New cards
2

What are characteristics of software?

Invisible Complexity - size Changeability - bugs, adding functionality, adapting

New cards
3

What is software crisis?

Low productivity Poor quality High Cost High Demand

New cards
4

What is software engineering?

Process Products Management Methods

New cards
5

What is software modeling?

Complexity - Abstraction (vertical) Divide & Conquer (Horizontal) Behavior Functionality Structure

New cards
6

Water Fall

System Engineering Software Requirements Analysis Software Design Coding & Unit Testing Integration & Integration testing Acceptance Testing Maintenance (Can't go back up past Maintenance)

New cards
7

Water Fall Pros and Cons

+Simple, Straight sequence of phases

+It supports function-oriented project organization

-Inflexible to requirement change

-The system is outdated when delivered from long development duration

-No early feedback from the users

-May lose entire investment from customer if the project fails.

New cards
8

Rational Unified Process (RUP)

Inception: 1-2 iterations, produces a simplified use case model, a tentative architecture, and a project plan. Elaboration: Produces the most critical use cases and architectural design Construction: remaining use cases are implemented into the system Transition: System is deployed, users are trained, and bugs are fixed

<p>Inception: 1-2 iterations, produces a simplified use case model, a tentative architecture, and a project plan. Elaboration: Produces the most critical use cases and architectural design Construction: remaining use cases are implemented into the system Transition: System is deployed, users are trained, and bugs are fixed</p>
New cards
9

Agile Process Models

+Flexibility

+Immediate feedback

-Scope creep

-Time

-Lack of predicitability

<p>+Flexibility</p><p>+Immediate feedback</p><p>-Scope creep</p><p>-Time</p><p>-Lack of predicitability</p>
New cards
10

Functional Requirements

Statements of services the system should provide, how the system should react to particular inputs and how the system should behave in particular situations.

New cards
11

Non-functional requirements

Performance, reliability, usability, security, maintainability, quality.

New cards
12

Requirements Elicitation Approaches

Identifying problems and needs Constructing analysis models to help understanding Formulating system/software requirements Conducting feasibility study Checking the requirements and models for desired properties such as correctness, and consistency Specifying acceptance tests Formulating an iterative development plan

New cards
13

Use Cases

A business process that begins with an actor, ends with the actor, and accomplishes a business task useful for the actor.

Usually a circle.

New cards
14

Actors

Played by and on behalf of a set of business entities or stakeholders that are external to the system and interact with the system.

Usually a stick figure

New cards
15

System Boundary

It encloses the use cases and show the capabilities of the system.

Usually a box.

New cards
16

Inheritance

Indicates that one use case is more general/specialized than the other.

Notation: -

New cards
17

Extension

Indicates that one use case can optionally continue the process of another use case.

Notation ----> <<extend>>

New cards
18

Inclusion

Indicates that one use case includes another use case as part of its business process

----> <<include>>

New cards
19

What is actor-system interaction modeling?

The modeling and design of how the system interacts with the actors to carry out the use cases. A two-column table that describes each interaction (actor input and system response)

New cards
20

Abstract Use Case

using a verb or noun phrase

New cards
21

High Level Use Case

stating exactly when and where the use case begins and when it ends. (This use case begins with, This use case ends with)

New cards
22

Expanded Use Case

describing step by step how the actor and system interact to accomplish the business task using a two-column table

New cards
23

Precondition

use case assumes that the actor has already taken action that does not directly interact with this use case

New cards
24

Postcondition

system changes based on the completion of use case

New cards
25

What are activity diagrams?

Diagrams that are a more understandable visual representation than textual description. Show use cases with multiple scenarios and use cases with concurrent activities.

New cards
26

What is a class?

An abstraction of objects with similar properties and behavior. A collection of objects.

New cards
27

Association Class

defines properties and operations for an association between two classes

New cards
28

What are the different type of class relationships?

Inheritance, Aggregation, Association

New cards
29

Inheritance Class Relationship

expresses the generalization/specialization relations between concepts. One concept is more general/specialized than the other. IS-A relationship

Example: Vehicle is a generalization of car, car is specialization of vehicle

New cards
30

Aggregation Class Relationship

expresses the fact that one object is part of another object. Also called PART-OF relationship

Example: engine is part of a car

New cards
31

Association Class Relationship

expresses general relationship other than inheritance and aggregation. Can be application specific relationships between two concepts

Example: instructor teach course, user has account

New cards
32

What is software architecture?

High-level system structural organization that consists of a collection of components, their interactions (connectors), and constraints.

New cards
33

Benefits of software architecture

Important because it helps with better understanding of the system and enables as early system level analysis. The "blueprint." Facilitates maintenances and future system evolutions

New cards
34

What are the major types of software systems?

Interactive, event-driven, transformational, object-persistence

New cards
35

Interactive System

interaction between system and actor consists of a relatively fixed sequence of actor requests and system responses.

Actor and system have a "client-server" relationship.

System has to process and respond to each request.

New cards
36

Event-Driven System

interacts with more than one external entity at the same time.

Receives events from, and controls external entities

Does not need to respond to every incoming event. Its response is state dependent - the same event may result in different responses depending on system state

New cards
37

Transformational System

consist of a network of information-processing activities, transforming activity input to activity output

Activities may involve control flows that exhibit sequencing, conditional branching, parallel threads, synchronous and asynchronous behavior

systems may perform number crunching or computation intensive algorithms

New cards
38

Object-Persistence

Provides object storage and retrieval capabilities to other subsystems

Responsible only for storing and retrieving objects, and does little or no business processing except performance considerations

Hides implementation from the rest of system

New cards
39

Components

o define the computation logic and data organization: objects, databases, filters, clients, and servers

New cards
40

Connectors

define the interactions among components: procedure call, access protocol, and pipers

New cards
41

Constraints

define system level properties: pre-post conditions, safety properties, liveness properties

New cards

Explore top notes

note Note
studied byStudied by 112 people
... ago
5.0(2)
note Note
studied byStudied by 11 people
... ago
4.0(2)
note Note
studied byStudied by 13 people
... ago
5.0(1)
note Note
studied byStudied by 110 people
... ago
5.0(1)
note Note
studied byStudied by 15 people
... ago
5.0(1)
note Note
studied byStudied by 32 people
... ago
5.0(1)
note Note
studied byStudied by 26 people
... ago
5.0(1)
note Note
studied byStudied by 4 people
... ago
5.0(1)

Explore top flashcards

flashcards Flashcard (46)
studied byStudied by 26 people
... ago
5.0(1)
flashcards Flashcard (164)
studied byStudied by 56 people
... ago
5.0(1)
flashcards Flashcard (35)
studied byStudied by 9 people
... ago
5.0(1)
flashcards Flashcard (61)
studied byStudied by 2 people
... ago
5.0(1)
flashcards Flashcard (41)
studied byStudied by 1 person
... ago
5.0(1)
flashcards Flashcard (25)
studied byStudied by 13 people
... ago
5.0(1)
flashcards Flashcard (277)
studied byStudied by 12 people
... ago
5.0(2)
flashcards Flashcard (44)
studied byStudied by 34 people
... ago
5.0(3)
robot