-
Notifications
You must be signed in to change notification settings - Fork 133
Rewrite Architecture review #122
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
bjosip
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
All looks good to me.
57a39f5 to
8f581d8
Compare
| 5. Once you're done with the initial project meeting and have the specification, sit down with the member of your team that was at the meeting with you and design the database. You can do this on a whiteboard or a piece of paper, or use a tool, such as [Gliffy](https://www.gliffy.com/) or [MySQL Workbench](https://dev.mysql.com/downloads/workbench/). If you need to draw a sequence diagram, use [Web Sequence Diagram](https://www.websequencediagrams.com/). | ||
| 6. Consult the project manager at will and add new discoveries to the specification if you find that something's missing. | ||
| 7. Don't hesitate to involve other team members since this is the most important part of the app. | ||
| 8. Once you've finished the database design, it has to be approved by someone from the management. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why management specifically? I'd say this should probably be the system architect?
| 8. Once you've finished the database design, it has to be approved by someone from the management. | ||
| 9. Once your architecture has been approved, you can generate a new Rails project. Read more about that on the next page. | ||
|
|
||
| Ask the project manager to give you the project specification. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This seems out of place
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should have been handed down way before this 😄 Just ✂️ it
| Ask the project manager to give you the project specification. | ||
|
|
||
| ## Database design & discuss major implementation details | ||
| 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. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We mention tooling above as well, we should probably only do it once
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also mention that the login credentials for sqldbm can be found on 1pass
| ## Database design & discuss major implementation details | ||
| 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. | ||
|
|
||
| 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. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we would benefit from doing this in pairs for both a better outcome and sharing of the domain/requirement knowledge
|
|
||
| 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. | ||
|
|
||
| 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: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Shouldn't this include the infrastructure parts as well?
| - API authentication - cookies (web frontend) or jwt/custom tokens (mobile frontend), or both | ||
| * admin UI setup | ||
| * emails - templates (preferred) or custom design (rarely a good use of time for MVP) | ||
| * any 3rd party services |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We go in depth for some points (e.g. JWT/cookies), but we cast a very wide net here. I think we should be more specific - decide/reference decisions about APM, performance budgets, team collaboration, client AWS accounts, etc
| * any other project specific problems | ||
|
|
||
| ## The review meeting | ||
| 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. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure of the sponsor role here, shouldn't the technical part be signed of by the system/solutions architect?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@d4be4st what do you think?
| ## The reason behind it | ||
| # The reasons behind it | ||
|
|
||
| Before you start programming, your application should go through an architecture review. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I wouldn't use "programming" here. It feels too narrow minded.
Projects are usually grown and the code is one component of the whole. I'd write this maybe as:
An architecture review is required before the team starts implementing the system.
| 8. Once you've finished the database design, it has to be approved by someone from the management. | ||
| 9. Once your architecture has been approved, you can generate a new Rails project. Read more about that on the next page. | ||
|
|
||
| Ask the project manager to give you the project specification. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should have been handed down way before this 😄 Just ✂️ it
| Ask the project manager to give you the project specification. | ||
|
|
||
| ## Database design & discuss major implementation details | ||
| 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. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Also mention that the login credentials for sqldbm can be found on 1pass
|
I feel like we have a lot of duplicated content here 🤷♀️ We have architecture review timeline and then later explain everything in a bit more detail, but most stuff is basically just a c/p |
|
Sorry all I havent read the conversation above, but here is what I know: So there will be a chain of approvals going on. currenly the approvals stand on Sol/Sys architects as they are slowly becoming these "sponsors". I sugest we pause this chapter for now until we have a definitive and clear picture of what we need in it (it is possible it will be moved to another handbook altoghether) |
Task: #285