Exam 2 Review-Software Architecture & Design

0.0(0)
studied byStudied by 0 people
0.0(0)
full-widthCall Kai
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/46

encourage image

There's no tags or description

Looks like no tags are added yet.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

47 Terms

1
New cards

Architecture Artifacts

Documents or tools that provide insight into the architecture of a software system.

2
New cards

4+1 View Model

A model that describes a system from five viewpoints: logical, development, process, physical, and scenarios.

3
New cards

Architecture Decisions

Key decisions that define the structure and behavior of a system.

4
New cards

What is the primary purpose of good architecture artifacts?

To educate new team members, verify and validate solutions before building, and explain how solutions meet business and engineering goals.

5
New cards

Describe the Use Case view in the 4+1 View Model.

The Use Case view focuses on understand-ability, providing a perspective on how the system will be used.

6
New cards

What is included in architecture decisions documentation?

It typically includes system structure, identification of middle ware components, allocation of functions, adherence to standards, and technology choices.

7
New cards

ATAM (Architectural Tradeoff Analysis Method)

A method used to evaluate software architectures in terms of quality attributes.

8
New cards

Scenario

A short statement describing an interaction of stakeholders with the system.

9
New cards

Sensitivity Points

Parameters in the architecture to which some quality attribute is highly correlated.

10
New cards

What is the primary purpose of ATAM?

To assess the consequences of architectural decisions in light of quality attribute requirements and to identify potential risks.

11
New cards

How does ATAM help in the evaluation of software architectures?

ATAM evaluates the architecture's fitness with respect to multiple competing quality attributes and helps to reason about architectural decisions affecting these attributes.

12
New cards

What role do sensitivity points play in ATAM?

Sensitivity points are parameters in the architecture that are closely tied to a measurable quality attribute, impacting how the architecture responds to changes in these points.

13
New cards

Cohesion

A measure of how strongly-related and focused the various elements of a module are.

14
New cards

Coupling

The degree of interdependence between software modules.

15
New cards

MVC (Model-View-Controller) Pattern

A design pattern that separates application functionality into three interconnected components.

16
New cards

What is the main goal of the 'Divide and Conquer' design principle?

To handle complex problems by breaking them into smaller, more manageable parts, allowing for easier understanding and independent modification.

17
New cards

How does reducing coupling impact software design?

Reducing coupling decreases the interdependencies between modules, making the system easier to modify and understand.

18
New cards

Describe the MVC pattern.

The MVC pattern divides application functionality into three parts: the Model (manages data), the View (displays data), and the Controller (handles input and updates the Model or View).

19
New cards

Model 1 Web Architecture

A web application design where each page integrates presentation, business logic, and controller functionality.

20
New cards

Model 2 Web Architecture

A web application design that separates the presentation from business logic, typically using a centralized controller for managing the flow.

21
New cards

What is the main characteristic of Model 1 Web Architecture?

Each executable page combines presentation, business logic, and controller functionality, making it suitable for smaller applications.

22
New cards

How does Model 2 Web Architecture differ from Model 1?

Model 2 separates the presentation layer from business logic, using a centralized controller for the application's page flow, which enhances maintainability and scalability compared to Model 1.

23
New cards

Why might a developer choose Model 2 Web Architecture over Model 1?

A developer might choose Model 2 for its better scalability and maintainability, especially in larger and more complex applications, due to its clear separation of concerns.

24
New cards

Symmetric Encryption

An encryption method where the same key is used for both encryption and decryption.

25
New cards

SSL (Secure Socket Layer)

A security technology that creates an encrypted link between a web server and a browser.

26
New cards

Firewall

A network security device that monitors and filters incoming and outgoing network traffic based on an organization's previously established security policies.

27
New cards

What is the main purpose of SSL in web communication?

SSL provides a secure, encrypted two-way channel between a client and a server, ensuring that third parties cannot read the contents of the communication.

28
New cards

How does a firewall contribute to network security?

A firewall acts as a barrier between a private network or computer and the internet, filtering packets to prevent unauthorized access.

29
New cards

What is the difference between symmetric and asymmetric encryption?

Symmetric encryption uses the same key for both encryption and decryption, while asymmetric encryption uses a public key for encryption and a private key for decryption.

30
New cards

Reverse Engineering

The process of analyzing a system to identify the system's components and their interrelationships.

31
New cards

View Fusion

The process of combining different architectural views to form a more comprehensive understanding of the system.

32
New cards

Architecture Analysis

The process of examining the fused views to validate hypotheses about the system's architecture.

33
New cards

What is the first phase in the architecture reconstruction process?

The first phase is Raw View Extraction, which involves analyzing existing design and implementation artifacts to construct models of the system.

34
New cards

How does View Fusion contribute to the reconstruction process?

View Fusion combines information from various extracted views, improving overall accuracy by filling gaps and providing a more holistic understanding of the system.

35
New cards

What is the goal of Architecture Analysis in the reconstruction process?

The goal is to test and validate the hypotheses formed during View Fusion about architectural elements, constraints, and relationships.

36
New cards

Quality Attribute Checklist

A tool used to ensure that all aspects of a particular quality attribute are considered in the requirements and design.

37
New cards

Thought Experiment

A process of mentally simulating a scenario to explore architectural decisions and their implications.

38
New cards

Prototype

A preliminary version of a system used to demonstrate concepts, test design choices, and explore solutions.

39
New cards

What is the purpose of a Quality Attribute Checklist in software design?

It is used to verify that requirements capture all nuances of a particular quality attribute and to audit designs for certification processes.

40
New cards

How are Thought Experiments beneficial in architectural design?

They allow architects to explore alternatives, identify potential problems, and confirm the absence of issues, aiding in decision-making and design rationale.

41
New cards

What role do prototypes play in analyzing software architecture?

Prototypes help in exploring design trade-offs, testing how design decisions play out in practice, and providing a basis for further analysis and refinement.

42
New cards

Fishbone Diagram (Ishikawa Diagram)

A visual tool used for root cause analysis, which helps in identifying, sorting, and displaying possible causes of a specific problem.

43
New cards

Root Cause Analysis

A method of problem-solving that tries to identify the primary causes of faults or problems.

44
New cards

Effect Box

The starting point in a Fishbone Diagram, representing the problem or effect to be analyzed.

45
New cards

What is the primary use of a Fishbone Diagram in problem-solving?

It helps in determining the root causes of a problem, encouraging group participation and providing a clear, easy-to-read analysis format.

46
New cards

What are the initial steps in creating a Fishbone Diagram?

The first steps include identifying and defining the effect or outcome, filling in the effect box, and drawing the spine of the diagram.

47
New cards

How is the Fishbone Diagram analyzed to identify root causes?

The diagram is analyzed by eliminating non-causes, assessing the likelihood of each potential cause, and determining the ease of verification for each cause.