Architecture characteristics Flashcards

1
Q

What part of defining a system is a key responsibility for architects?

A

Architects may collaborate on defining the domain or business requirements, but one key responsibility entails defining, discovering, and otherwise analyzing all the things the software must do that isn’t directly related to the domain functionality: architectural characteristics.

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

Name three typical ways of uncovering architecture characteristics

A

Extracting from domain concerns, requirements, and implicit domain knowledge.

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

What is meant by Availability?

A

Structural. How long the system will need to be available (if 24/7, steps need to be in place to allow the system to be up and running quickly in case of any failure).

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

What is meant by Continuity?

A

Structural. Disaster recovery capability.

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

What is meant by Performance?

A

Structural. Includes stress testing, peak analysis, analysis of the frequency of functions used, capacity required, and response times. Performance acceptance sometimes requires an exercise of its own, taking months to complete.

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

What is meant by Recoverability?

A

Structural. Business continuity requirements (e.g., in case of a disaster, how quickly is the system required to be on-line again?). This will affect the backup strategy and requirements for duplicated hardware.

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

What is meant by Reliability/Safety?

A

Structural. Assess if the system needs to be fail-safe, or if it is mission critical in a way that affects lives. If it fails, will it cost the company large sums of money?

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

What is meant by Robustness?

A

Structural. Ability to handle error and boundary conditions while running if the internet connection goes down or if there’s a power outage or hardware failure.

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

What is meant by Scalability?

A

Structural. Ability for the system to perform and operate as the number of users or requests increases.

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

What is meant by Configurability?

A

Structural. Ability for the end users to easily change aspects of the software’s configuration (through usable interfaces).

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

What is meant by Extensibility?

A

Structural. How important it is to plug new pieces of functionality in.

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

What is meant by Installability?

A

Structural. Ease of system installation on all necessary platforms.

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

What is meant by Leverageability/reuse?

A

Structural. Ability to leverage common components across multiple products.

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

What is meant by Localization?

A

Structural. Support for multiple languages on entry/query screens in data fields; on reports, multibyte character requirements and units of measure or currencies.

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

What is meant by Maintainability?

A

Structural. How easy it is to apply changes and enhance the system?

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

What is meant by Portability?

A

Structural. Does the system need to run on more than one platform? (For example, does the frontend need to run against Oracle as well as SAP DB?

17
Q

What is meant by Supportability?

A

Structural. What level of technical support is needed by the application? What level of logging and other facilities are required to debug errors in the system?

18
Q

What is meant by Upgradeability?

A

Structural. Ability to easily/quickly upgrade from a previous version of this application/solution to a newer version on servers and clients.

19
Q

What is meant by Accessibility?

A

Cross-Cutting. Access to all your users, including those with disabilities like colorblindness or hearing loss.

20
Q

What is meant by Archivability?

A

Cross-Cutting. Will the data need to be archived or deleted after a period of time? (For example, customer accounts are to be deleted after three months or marked as obsolete and archived to a secondary database for future access.)

21
Q

What is meant by Authentication?

A

Cross-Cutting. Security requirements to ensure users are who they say they are.

22
Q

What is meant by Authorization?

A

Cross-Cutting. Security requirements to ensure users can access only certain functions within the application (by use case, subsystem, webpage, business rule, field level, etc.).

23
Q

What is meant by Legal?

A

Cross-Cutting. What legislative constraints is the system operating in (data protection, Sarbanes Oxley, GDPR, etc.)? What reservation rights does the company require? Any regulations regarding the way the application is to be built or deployed?

24
Q

What is meant by Privacy?

A

Cross-Cutting. Ability to hide transactions from internal company employees (encrypted transactions so even DBAs and network architects cannot see them).

25
Q

What is meant by Security?

A

Cross-Cutting. Does the data need to be encrypted in the database? Encrypted for network communication between internal systems? What type of authentication needs to be in place for remote user access?

26
Q

What is meant by Supportability?

A

Cross-Cutting. What level of technical support is needed by the application? What level of logging and other facilities are required to debug errors in the system?

27
Q

What is meant by Usability/Achievability?

A

Cross-Cutting. Level of training required for users to achieve their goals with the application/solution. Usability requirements need to be treated as seriously as any other architectural issue.

28
Q

What is an alternative set of definitions for architectural characteristics?

A

ISO/IEC 25010

https://iso25000.com/index.php/en/iso-25000-standards/iso-25010