software architecture - quiz 1

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/24

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.

25 Terms

1
New cards
What is UML?
A general-purpose modeling language, standard for the software industry, used for specifying, visualizing, constructing, and documenting systems.
2
New cards
What are the two types of UML diagrams?
1. Structure diagrams 2. Behavior diagrams (e.g., use case, sequence)
3
New cards
What is a Use Case Diagram?
Summarizes the details of a system's user and their interaction with the system.
4
New cards
What are the three major components of a Use Case Diagram?
1. System 2. Actor 3. Use Case
5
New cards
What is the "System" in a Use Case Diagram?
What one is developing (e.g., website, software), represented as a rectangular box.
6
New cards
Who is an Actor in a Use Case Diagram?
Someone or something that uses the system to achieve a goal. Types: Primary actor (initiates use) and Secondary actor (reacts).
7
New cards
What does a "Use Case" represent in a Use Case Diagram?
Represents a function or action within the system, drawn as an oval inside the system box.
8
New cards
What does a Sequence Diagram depict?
It shows interaction between objects in sequential order, useful for modeling complex procedures and use case behavior.
9
New cards
What is Requirements Analysis?
Identifying the problems that need to be solved, also known as the problem space.
10
New cards
Where do requirements come from?
Users and stakeholders with demands/needs, elicited, analyzed, and validated by a requirements engineer.
11
New cards
What are the types of requirements?
1. Functional Requirements: specify system functions 2. Non-functional Requirements: define quality attributes like performance, usability, maintainability
12
New cards
What are the quality criteria for a good specification?
Correct, Complete, Unambiguous, Consistent, Ranked for importance, Modifiable, Verifiable, Traceable, Necessary, Feasible.
13
New cards
What are Non-functional Requirements (NFRs)?
Often called quality attributes, NFRs define how well the system performs (e.g., performance, security, maintainability).
14
New cards
How are functional vs. non-functional requirements expressed?
Functional are expressed as use cases
15
New cards
NFRs are difficult to express this way and require clear, concise, measurable statements.
16
New cards
What is the effect of NFRs on system architecture?
NFRs require special consideration in high-level design and affect multiple subsystems. They are hard to modify after the architecture phase.
17
New cards
What are Quality Attributes (QAs)?
Also called -ilities, these include reliability, availability, portability, scalability, and performance, describing how the system achieves its functional goals.
18
New cards
How is performance measured in a system?
By throughput (work done per time unit) and response time (latency of processing requests).
19
New cards
What is Scalability?
How well a solution works as the size of the problem grows. Key issues: request load, connections, data size, and deployments.
20
New cards
What is Modifiability in a software system?
The ease of modifying a system throughout its lifetime. Over-engineering should be avoided, and dependencies should be minimized.
21
New cards
What are the key aspects of Security in a system?
Authentication, Authorization, Encryption, Integrity, and Non-repudiation.
22
New cards
What is Availability?
The proportion of time a system is usable, often tied to reliability. Strategies include failover, replication, and automatic restart.
23
New cards
What are Integration strategies for a system?
Data integration and programmatic APIs for easy incorporation into broader application contexts.
24
New cards
What is Portability in software?
The ease with which an application can be executed on different hardware or software platforms.
25
New cards
What are some common designer trade-offs between quality attributes?
Quality attributes interact and affect each other, like high security affecting ease of integration or high availability reducing performance.