Skip to content

Latest commit

 

History

History
31 lines (27 loc) · 1.96 KB

improve-development-quality.md

File metadata and controls

31 lines (27 loc) · 1.96 KB

Title

Improve development quality

Context

We need to improve the trust of the different stakeholder. Therefore, we must provide a list of good practices to keep in mind in our development journeys.

Decision

We agreed to introduce:

Global

  • every work MUST be reviewed by, at least, one other developer that the one that produced the work
  • you MUST cover your code with tests but not be too much focus on it
  • main branch on GIT MUST be protected and CAN NOT be deleted
  • build & unit tests pipeline must be triggered in opened pull requests
  • build & unit tests & integration tests (if existing) must be triggered for every commits on main
  • nobody SHOULD push on main branch (some exceptions could be tolerated if everyone is agreed)
  • you SHOULD apply SOLID principle
  • anyone MUST try to keep things KISS
  • You Ain't Gonna Need It principle SHOULD be kept in mind BUT not too strictly apply
  • Do not Repeat Yourself principle SHOULD be followed BUT not too strictly apply
  • you SHOULD try to embrace Clean Architecture (Hexagonal or Oignon Architecture)
  • you SHOULD keep in mind DDD concepts
  • avoid usage of acronyms as much as possible
  • usage of business/functional wording as much as possible
  • you SHOULD focus you code on business rules, not technical choices to support them
  • you SHOULD try to drive your code by test cases if provided
  • you SHOULD apply the famous boy scout rule : you SHOULD leave the code cleaner than you found it

C# Ecosystem

  • when using LINQ, you MUST NOT use one letter within the lambda, you MUST use a word that describe what you are manipulating