Requirements, Design, Architecture Flashcards

1
Q

7 activities for requirements gathering

A

inception

elicitation

elaboration

specification

validation

negotiation

management

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

what is requirements inception?

A

identify the client’s problem, users, and needs

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

what is requirements elicitation?

A

to figure out what the user wants in a software system

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

what is requirements elaboration?

A

to refine and get more detailed wants/needs from the clients/users

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

what is requirements specification?

A

a formalization of the wants

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

what is requirements validation?

A

figure out the metrics for customer approval

how can we show that we have built something to the customers liking

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

what is requirements negotiation?

A

resolves conflicts over cost, time and scope and find an appropriate balance

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

what is requirements management?

A

determine who is tracking the requirements, and the people responsible for certain requirements

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

8 requirements modeling approaches

A

scenario approach (paragraph based)

class approach

event-state behavior approach

data approach (db and functions acting on it)

data flow architecture (like assembly line)

OO analysis

Reusable focus

UML

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

What are CRC cards?

A

Class responsibility collaboration cards. They detail the functionality of a class and everything that class interacts with

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

3 types of classes

A

entity classes

boundary classes

controller classes

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

what is an entity class?

A

a class that acts a wrapper for data

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

what is a boundary class?

A

a class that manages communication with the outside

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

what is a controller class?

A

a class that performs actions and tasks

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

describe an a sequence or poll diagram

A

each pole is a class and the lines between them represent communication between the design classes

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

whats does FURPS stand for?

A
functionality
usability
reliability
performance 
support
17
Q

5 design class types

A

UI class (front end)

business class (user domain classes)

process class (CS level classes that support business classes)

persistent class (like a database)

system class (things like logging, networking etc.)

18
Q

8 Architectural Styles

A

data centered (use DB)

data flow (sequential)

call & return (function calls)

RPC (remote procedure call)

OO (with agents, data, and methods)

layered (embedded systems)

MVC (model view controller)

others

19
Q

what is SOLID

A

single responsibility

open-closed principle

Liskov substitution principle

interface segregation

dependency inversion

20
Q

What is S in SOLID

A

single responsibility

a given function/class/module whatever has a single overall functionality

21
Q

What is O in SOLID

A

open-closed principle

code is open to extension but closed to modification

22
Q

What is L in SOLID

A

liskov substitution principle

any derived class instance should be able to be used in place of a parent class instance. When so, the derived class should act as a parent class

23
Q

What is I in SOLID

A

interface segregation

when a module interacts with a helper, the helper should have a wrapper API for these interactions that only exposes the information the module needs while hiding any other information that it doesn’t

24
Q

What is D in SOLID

A

dependency inversion

any interactions or dependencies that a module has with a helper should be through a helper API (or abstraction) and not the helper itself

“depend on abstractions not concretions”

25
Q

4 UI rules

A

don’t make the user work hard

use user domain concepts and names

similar things should look the same throughout

always show system progress

26
Q

6 UI design issues

A
response time
user help
error handling
command labeling
accessibility
internalization
27
Q

Coplein definition of design pattern

A

a pattern that solves a problem, its a proven concept, the solution to the problem is not inherently obvious, shows the structure between the parts, simple to understand

28
Q

3 types of design patterns

A

creational (to make things)

structural (to help simplify relationships)

behavioral (to with responsibilities)