FUCK Flashcards

1
Q

____ Software design encompasses the set of operational manuals that lead to the development of a high-quality system or product.

A

True

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

____ Design is not concerned with software quality.

A

False

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

____ A concern is always related to a maintenance architecture needed for delivery of the
developed code.

A

False

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

____ The design should implement all of the explicit requirements contained in the analysis model,
and it must accommodate all of the implicit requirements desired by the customer.

A

True

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

___________________ is the most common manifestation of separation of concerns.

A

Modularity

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

___________________ is the process of changing a software system in such a way that it does not
alter the external behavior of the code [design] yet improves its internal structure.

A

Refactoring

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

Each of the elements of the requirements model provides information that is necessary
to create the four design models required for a complete specification of design. What are those four
design models? Briefly describe each.

A

Data/Class design – transforms analysis classes into implementation classes and data
structures
Architectural design – defines relationships
among the major software structural elements
Interface design – defines how software
elements, hardware elements, and end-users
communicate
Component-level design – transforms
structural elements into procedural descriptions
of software components

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

Discuss modularity in design. What is the right or best number of modules for a specific
design and what are the trade-offs for having more or less modules than the right or best number
for a specific design.

A

Modularity is compartmentalization of data and function in Design. In almost all instances, you should break the design into many modules, hoping to make
understanding easier and as a consequence, reduce the cost required to build the software.

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

What is cohesion in design as related to Functional Independence?

A

Cohesion is an indication of the relative functional

strength of a module.

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

What is coupling in design as related to Functional Independence?

A

Coupling is an indication of the relative interdependence

among modules.

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

____ Architecture design is the process of determining the structure of each individual use case.

A

False

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

____ Architecture “constitutes a relatively small, intellectually graspable mode of how the system is
structured and how its components work together”.

A

True

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

Architecture is a representation that enables a software engineer to do what 3 things?

A

1) analyze the effectiveness of the design in
meeting its stated requirements,
2) consider architectural alternatives at a stage
when making design changes is still
relatively easy, and
3) reduce the risks associated with the
construction of the software.

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

The software that is built for computer-based systems also exhibits one of many architectural styles.
Each style describes a system category that encompasses:
1. set of components
2. set of connectors
3. constraints
4. semantic models

A
  1. that perform a function required by a system.
  2. that enable “communication,
    coordination and cooperation” among components.
  3. that define how components can be
    integrated to form the system.
  4. that enable a designer to understand the overall properties of a system by analyzing the known properties of its constituent parts.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

NEED TO DO MORE CARDS ON THIS CH.13What are the 5 Architectural Styles (as described in A Brief Taxonomy Architectural Styles)? Label each
figure with the correct style:

A

1) Data-centered architectures
2) Data flow architectures
3) Call and return architectures
4) Object-oriented architectures
5) Layered architectures

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

____ Component-level design only defines the data structures and algorithms allocated to each
software component.

17
Q

What is a component?

A

A modular, deployable, and replaceable part o a system that encapsulates implementation and exposes a set of interfaces.

18
Q

____ User interface design creates an effective communication medium between a robotic machine
and a computer

19
Q

As technologists studied human interaction, two dominant issues arose: What are the issues?

A

First, a set of golden rules were identified. These applied to all human
interaction with technology products.
Second, a set of interaction mechanisms were
defined to enable software designers to build
systems that properly implemented the golden
rules.

20
Q

What are the 3 Golden Rules for interface design? Give at least one example/application for each.

A

1) Place the user in control
2) Reduce the user’s memory load
3) Make the interface consistent

21
Q

The user interface analysis and design process encompass four distinct framework activities. What are
those four distinct framework activities?

A
  1. User model — a profile of all end users of the system.
  2. Design model — a design realization of the user model
  3. Mental model (system perception) — the user’s mental image of what
    the interface is
  4. Implementation model — the interface “look and feel” coupled with
    supporting information that describe interface syntax and semantics
22
Q

____ Pattern-based design creates a new application by finding a set of proven solutions to a clearly
delineated set of problems.

23
Q

____ A design pattern can be characterized as “a three-part rule which expresses a relation between
a certain context, a problem, and a solution”

24
Q

____ User interface design creates an effective communication medium between a human and a
computer.

25
What are the three fundamental parts of the Model View Controller pattern. Briefly explain each part.
1. Model - Data 2. View - An interface to view and modify the data 3. Controller - Operations that can be performed on the data
26
What are two advantages of MVC?
1. Separation of concerns - The advantage of the MVC pattern is a clear separation of concerns. 2. Re-usability - Whereas controllers are often not reusable, view and model objects are easy to reuse.
27
What are two disadvantages of MVC?
1. Complexity - The MVC pattern introduces new levels of indirection and therefore increases the complexity of the solution slightly. 2. Maintenance cost of frequent updates - One problem is that the user interface tends to change much more frequently than the data storage system.
28
What are design considerations that are necessary for MobileApp design but are not applicable to WebApp design? Include at least 2.
1) establishing the look and feel of the mobile application, 2) creating the aesthetic layout of the user interface
29
Web application quality: | Usability
- Global site understandability | - online feedback and help features
30
Web application quality: | Functionality
- Searching and retrieving capability | - Navigation and browsing features
31
Web application quality: | Reliability
- Correct link processing | - Error recovery
32
Web application quality: | Efficiency
- Response time performance | - Page generation speed
33
Web application quality: | Maintainability
- Ease of correction | - Adaptability