Shared Flashcard Set

Details

comp211 test2 2007 2006
hkust comp211 terms
23
Computer Science
Undergraduate 3
11/06/2007

Additional Computer Science Flashcards

 


 

Cards

Term
For the system requirements capture and system analysis engineering workflows, in which phase of the Unified Software Development Process does the majority of their effort occur?
Definition
For both workflows, the majority of their effort occurs during the Elaboration Phase.
Term

Which of these reasons could failing to do system requirements capture well result in a failure?

 

System no longer needed, Lack of hardware resources, Unrealistic user expectation, lack of user involvement, high personnel turnover? &

Definition

System no longer needed

 

Unrealistic user expectations

 

Lack of user involvement

 

Term

In domain modeling, which of the following UML concepts can appear as nouns in a problem statement?

 

class, association, generalization, attribute, role? 

Definition

class

 

attribute

 

role 

Term

Indicate whether concept is a classifier or an instance.

 

external system,  scenario, actor

Definition

external system - instance  

scenario - instance  / use case - classifier

actor - classifier 

Term
In a use-case model, what does an <<extend>> use case represent?
Definition

represents a conditional addition to a use case's flow of events

represents optional behavior that is only executed when some condition is true. 

Term
Each analysis class encapsulates and isolates changes to some aspect of a system.  Indicate what Boundary, Entity, and Control class encapsulates and isolates.
Definition

Boundary - system's interface

Entity - system's information (data)

Control - The system's control logic 

Term
One of the best practices for analysis class interaction states that entity classes should not interact with other entity classes.  Why do you think that this a good practice to follow?
Definition
The primary reason is to minimize the coupling among the entity classes.  By not allowing entity to entity class interactions, entity classes do not know about any other classes in the system( note that the interaction between control and entity classes is one way from control to entity class).  Therefore, it is easy to restructure the data of the system without affecting many other classes.  Thus, maintenance of the data and access to it is made much easier.
Term

Give two system requirements capture problems that could lead to the failure of a software development project and for each problem give one reason why this problem might arise.

 

The developers fail to capture all of the requirements:

Definition

The developers do not understand what the user wants due to lack of domain knowledge.

The developers do not know what the user wants due to the lack of communication with the user.

 

The developers have not obtained feedback from the users. 

Term

Give two system requirements capture problems that could lead to the failure of a software development project and for each problem give one reason why this problem might arise.

 

Users are not involved in requirements capture. &l

Definition

The developers think they know what the users want; therefore, they do not involve users.

The developers do not want to talk to the users.

 

The users are not motivated of interested in developing the system (maybe it is being imposed on them). 

Term

Give two system requirements capture problems that could lead to the failure of a software development project and for each problem give one reason why this problem might arise.

 

Users have unrealistic expectations of what the systems

Definition

 

 

The developers have promised more than they can deliver.

The developers have not explained clearly to the users what is and what is not possible to implement. 

Term

Give two system requirements capture problems that could lead to the failure of a software development project and for each problem give one reason why this problem might arise.

 

The requirements and specifications constantly change.&

Definition

Users do not have a clear idea of what they want

Developers do not understand what the user wants.

Developers have not established control procedures for making changes to the requirements.. 

Term

Give two kinds of risk taht can arise in a software development project and for each risk briefly state one way in which it could affect a project.

 

economic risks 

Definition
The costs of developing the system may be greater than the benefit that is derived from the system resulting in the project being cancelled before it is completed.
Term

Give two kinds of risk taht can arise in a software development project and for each risk briefly state one way in which it could affect a project.

 

Technical Risks 

Definition

The required technology may not be available to implement the required functionality.

 

We may not know how to use new technology and thus are unable to implement the system. 

Term

Give two kinds of risk taht can arise in a software development project and for each risk briefly state one way in which it could affect a project.

 

operation risks 

Definition

We may not have people with the required skills to operate the system.

 

The system may not fit with current work practices, which may require work practices to be redesigned. 

Term

Give two kinds of risk taht can arise in a software development project and for each risk briefly state one way in which it could affect a project.

 

organizational risks 

Definition

The users may not accept the system if there is a loss of jobs leading to its failure.

 

We may not be able to get the training required for users.

 

Politics in the organization may cause opposition to the project leading to its failure. 

Term

Give two kinds of risk taht can arise in a software development project and for each risk briefly state one way in which it could affect a project.

 

legal risks 

Definition

There may be liability issues if a business looses data/money due to system problems.

 

There may be copyright infringement issues.

 

There may be patient infringement issues. 

Term
All verbs/verb phrases in a problem statement do no represent associations for the following reasons:
Definition

In domain modeling, we want to identify relevant associations, that is, those associations that represent relationships about which the application wants to keep information.

 

Verb/verb phrases in a problem statement can also represent concepts other than associations.  For example, some verbs may represent operations while other verbs may describe implementation constructs

Term

Classifier

 

Actor

 

Use Case 

Definition

Instance

 

user or system

 

scenario 

Term

Use-case model

 

Uses client's language

 

External View of system

 

Used primarily as a contract between client/developer to agree on system functionality 

Definition

Analysis Model

 

Uses developer's language

 

Analysis calsses and packages structure the internal view

 

Used primarily by developers to understand how to design and implement the system. 

Term

Use-case Model

 

May contain ambiguities, redundancies, inconsistencies, etc.

 

Captures system functionality

 

Defines use cases 

Definition

Analysis Model

 

Contains no ambiguities, redundancies, inconsistencies, etc.

 

Outlines system realizations

 

Defines use-case realizations. 

Term
When we do class analysis, a rule of thumb is that a class should have at most 3-5 responsibilities.  why is this a good rule to follow?
Definition
This is a good rule to follow because we want a class to have high cohesion.  However, if a class has too many responsibilities it is likely to have low cohesion (i.e. it is doing too many things, which may not be all that related to each other).  A class is more likely to be highly cohesive if it has few responsibilities.
Term
What can an action node on an activity diagram represent?
Definition

An action node on an activity diagram can represent either

 

1. the execution of a statement in a procedure (i.e, a state of a computation)

2. the performance of a step in a workflow(i.e, a state of a workflow) 

Supporting users have an ad free experience!