Skip to content

Commit 8f581d8

Browse files
melchalovro-bikic
authored andcommitted
Rewrite architecture review
1 parent c06d80e commit 8f581d8

File tree

1 file changed

+26
-5
lines changed

1 file changed

+26
-5
lines changed

Workflows/Architecture review.md

Lines changed: 26 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
## The reason behind it
1+
# The reasons behind it
22

33
Before you start programming, your application should go through an architecture review.
44
When we say architecture review, we mostly have the database design and API in mind.
@@ -10,9 +10,9 @@ We do architecture planning and review in order to:
1010
* prevent scope creep
1111
* have better architecture
1212

13-
**Database design is by far the most important part of a web application.**
13+
**Database design is by far the most important part of the web application development process.**
1414

15-
## Architecture review timeline
15+
# Architecture review timeline
1616

1717
Please follow this timeline:
1818

@@ -26,9 +26,30 @@ Please follow this timeline:
2626
8. Once you've finished the database design, it has to be approved by someone from the management.
2727
9. Once your architecture has been approved, you can generate a new Rails project. Read more about that on the next page.
2828

29+
Ask the project manager to give you the project specification.
30+
31+
## Database design & discuss major implementation details
32+
Once you're done with the initial project meeting and have the specification, you can start designing the database. Use an online tool so you can easily present the diagram later on the review, such as [dbdiagram](https://dbdiagram.io/home) or [SqlDBM](https://sqldbm.com/Home/), or some other.
33+
34+
Consult the project manager at anytime and add new discoveries to the specification if you find that something's missing. Don't hesitate to involve other team members since this is the most important part of the app.
35+
36+
When you're done with the database diagram, sit down with the member of your team that was at the meeting with you and go through:
37+
* the database diagram
38+
* authentication
39+
- what gems will be used
40+
- API authentication - cookies (web frontend) or jwt/custom tokens (mobile frontend), or both
41+
* admin UI setup
42+
* emails - templates (preferred) or custom design (rarely a good use of time for MVP)
43+
* any 3rd party services
44+
* any other project specific problems
45+
46+
## The review meeting
47+
Once you've finished the database design and discussed other major implementation details with the team member, it has to be approved by the project sponsor. The next step is to ping the project sponsor to organise the review meeting. At the meeting the main focus will be on the database design. Standard implementation details will be covered briefly. This meeting is a good place to dicuss any other uncertainties or problems.
48+
49+
## Start coding
50+
Once your architecture has been approved, you can generate a new Rails project.
2951
In order to start coding, the whole project must go through an architecture review.
30-
If this is not possible for any reason, the project should be split into phases. In that case, each phase needs to go through an architecture review before coding can begin.
3152

32-
Sometimes, you will notice some obvious mistakes you couldn't have seen when you started the project. If these make a large architecture overturn, go back to step 8.
53+
Sometimes, you will notice some obvious mistakes you couldn't have seen when you started the project. If these make a large architecture overturn, notify the project sponsor to agree on the next steps.
3354

3455
**Think of this as a never bending rule.**

0 commit comments

Comments
 (0)