Solutions Architect specific Flashcards

1
Q

What is ”the stability trilemma”?

A

Kind of like a blockchain law of physics!

What that means is, given the same level of security, if you want to increase a blockchain’s scalability, you must sacrifice its decentralization.

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

Name the 6 steps of dApp design

A
Guiding principles
Personas
User stories
Functional requirements
Technical requirements
Tasks
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is a persona?

A

A person in a certain circumstance, particular environment doing something specific

One person can have multiple personas

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

What should you include when creating a persona?

A

About the persona and their problem they face (that your solution intends to solve)

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

What are user stories based on?

A

Personas

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

What do you include in user stories?

A

One or two sentences that capture:

WHO the user is
WHAT they want
WHY they want it

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

………….. are extracted from user stories.

A

Functional requirements

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

What is contained in a functional requirement?

A

1 or more functional requirement per user story

E.g.

  • View all submitted expenses from previous day
  • Approve or deny with one click
  • Approved expenses to be sent to accounting for payout
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Give an example of user story format

A

As a ____, I want to achieve ____ so that I realize the following benefit of ____.

Example:

As a user, I want to be able to reset my password so I can get back into the system if I forget it.

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

…………… describe how a user interacts with your solution in a particular use case

A

User stories

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

What are functional requirements

A

Tend to be very detailed and take a longer time to write.
These often go into specific detail on how the software should work.
Those details then guide the development team on how to build a new feature or functionality.

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

Give an example of a functional recruitment.

A

The user is allowed to reset their password once they have received a password reset email.

The email should contain a unique link for resetting the password and that link should expire after two hours.

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

Summarise the following:
Personas
User stories
Functional requirements

A

Personas - circumstance, desired interaction
User stories - WHAT the USER wants in a particular use case (step by step)
Functional requirement - WHAT the SOFTWARE should do (to allow the user to do what they want)

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

What are tasks?

A

Steps to be taken in sequence to fulfil each technical requirement

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

How should you format your tasks?

A
Title
Owner
Description
Time estimate
Resource req.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Who should write user stories?

A

Anyone close to the software — developers raising issues, a QA tester who discovers a flaw in the UX — as long as it represents the end user’s perspective.

17
Q

Who should maintain the backlog of user stories?

A

The product manager or owner

18
Q

Who should write the functional and technical requirements?

A
product manager (or)
product owner (or)
business analyst
19
Q

Aside from the usual people, who else might be involved in functional and technical requirements?

A

Technical leads as well as the engineers who will be responsible for working on the features or improvements.

20
Q

When are user stories written?

A

Throughout the building of a product

21
Q

Where are user stories kept until they are worked on?

A

In the product backlog

This serves as a prioritized list of the functionality that needs to be developed

22
Q

What is the top priority when writing user stories or requirements?

A

To describe the desired outcome for the customer

Giving development the information they need to build it successfully.

23
Q

Are user stories always needed?

24
Q

How do you decide if a user story is needed?

A

If what you are requesting to build has a direct benefit to your end users, write a user story.

If it is more central to the core of a product or infrastructure, jump to defining requirements.

25
What are the two things that should be included in acceptance testing?
Does it meet: Function requirements - does it work Non-functional requirements - how well does it work
26
In agile when is the best time to write requirements from user stories?
Just BEFORE development begins to define most (if not all) the acceptance criteria. This assures that the large majority of the higher-effort complete requirements (user story + acceptance criteria) are likely to be used and not wasted (which can happen if the user story changes/discarded as often happens in agile)
27
What is the official definition of solution architecture?
The practice of defining and describing an architecture of a system delivered in context of a specific solution and as such it may encompass description of: an entire system or only its specific parts
28
How can you use Agile in blockchain development?
Pre-release to production environment (release cannot be part of the sprint process)
29
What stages of an Agile sprint should be used when developing a dApp?
Plan Develop Test [NOT release]
30
What method is best to use after release?
Waterfall
31
Why is it best not to include a release as part of a dApp Agile sprint?
- expensive to continually release smart Contracts | - messy and even dangerous to have multiple versions
32
How should you decide on a technology to build your dApp on?
Based on the platforms ability to provide the requirements for your solution
33
Monolithic design is more ............
Secure
34
Modular design is more ...........
Efficient
35
What are the advantage of using pull payments?
Allows you to verify identity in 2 places If the wallet connected to the payment is lost or compromised money is lost User can choose which wallet to put the money into