Skip to content

Base Concepts

Cengiz Ilerler edited this page Dec 20, 2024 · 6 revisions

Log Levels

reference

The following table lists the LogLevel values, the convenience Log{LogLevel} extension method, and the suggested usage:

LogLevel Value Description
Trace 0 Contain the most detailed messages. These messages may contain sensitive app data. These messages are disabled by default and shouldΒ notΒ be enabled in production.
Debug 1 For debugging and development. Use with caution in production due to the high volume.
Information 2 Tracks the general flow of the app. May have long-term value.
Warning 3 For abnormal or unexpected events. Typically includes errors or conditions that don't cause the app to fail.
Error 4 For errors and exceptions that cannot be handled. These messages indicate a failure in the current operation or request, not an app-wide failure.
Critical 5 For failures that require immediate attention. Examples: data loss scenarios, out of disk space.
None 6 Specifies that a logging category shouldn't write messages.

In the previous table, the LogLevel is listed from lowest to highest severity.

Issues

Format

As a [role],
I want to [do something]
so that [reason/benefit]

Acceptance Criteria:

Linking

  • relates to {repositorOwner}/{repositoryName}#{issueNumber}
  • blocks {repositorOwner}/{repositoryName}#{issueNumber}
  • is blocked by {repositorOwner}/{repositoryName}#{issueNumber}
  • duplicates {repositorOwner}/{repositoryName}#{issueNumber}
  • is duplicated by {repositorOwner}/{repositoryName}#{issueNumber}

Git Branches

⚠️ Avoid large commits, and DO NOT change any code that is irrelevant to the current task!
πŸŽ—οΈ (Remember that your PR may get reverted; do not create unnecessary dependency.)

Flow

Name Convention (*) Branch off from Merge back into
main
develop main release-* (if it doesn’t exist, then main)
support-* [A-Za-z0-9_]* main no merge back into anything
hotfix-* [A-Za-z0-9_]* main main, then cherry-pick into release-*, develop
release-* [A-Za-z0-9_]* main main
feature/* (repositoryName)(issueNumber)-[A-Za-z0-9_]* develop develop
bug/* (repositoryName)(issueNumber)-[A-Za-z0-9_]* develop develop
cleanup/* (repositoryName)(issueNumber)-[A-Za-z0-9_]* develop develop
optimization/* (repositoryName)(issueNumber)-[A-Za-z0-9_]* develop develop
enhancement/* (repositoryName)(issueNumber)-[A-Za-z0-9_]* develop develop
task/* (repositoryName)(issueNumber)-[A-Za-z0-9_]* develop develop

Graph πŸ”—

   gitGraph
      commit type: NORMAL id: "initial" tag: "0.0.1"

      branch develop order: 6
      checkout develop
      commit type: HIGHLIGHT

      checkout develop
      branch feature/issue1-Az_09 order: 7
      checkout feature/issue1-Az_09
      commit type: HIGHLIGHT
      commit type: REVERSE
      commit
      
      checkout develop
      branch bug/issue2-Az_09 order: 8
      checkout bug/issue2-Az_09
      commit type: HIGHLIGHT
      commit

      checkout develop
      merge bug/issue2-Az_09
      commit

      checkout feature/issue1-Az_09
      commit

      checkout develop
      branch optimization/issue3-Az_09 order: 9
      checkout optimization/issue3-Az_09
      commit type: HIGHLIGHT

      checkout develop
      merge feature/issue1-Az_09
      commit

      checkout main
      merge develop
      commit

      branch hotfix-Az_09 order: 2
      commit type: HIGHLIGHT
      commit

      checkout main
      merge hotfix-Az_09
      commit

      checkout develop
      merge hotfix-Az_09
      commit

      checkout optimization/issue3-Az_09
      commit

      checkout develop
      branch enhancement/issue4-Az_09 order: 10
      checkout enhancement/issue4-Az_09
      commit type: HIGHLIGHT
      commit

      checkout develop
      branch task/issue5-Az_09 order: 11
      checkout task/issue5-Az_09
      commit type: HIGHLIGHT
      commit

      checkout main
      branch support-Az_09 order: 1
      commit type: HIGHLIGHT
      commit

      checkout develop
      branch release-Az_09 order: 3
      checkout release-Az_09
      commit type: HIGHLIGHT
      commit

      checkout develop
      branch release-qa order: 4
      checkout release-qa
      commit type: HIGHLIGHT
      commit

      checkout develop
      branch release-preview order: 5
      checkout release-preview
      commit type: HIGHLIGHT

      checkout develop
      merge optimization/issue3-Az_09

      checkout release-qa
      commit

      checkout develop
      merge release-qa
      commit

      checkout main
      merge release-qa
      commit

      checkout release-preview
      commit

      checkout develop
      merge release-preview
      commit

      checkout main
      merge release-preview
      commit

      checkout develop
      merge release-Az_09
      commit

      checkout main
      merge release-Az_09
      commit

      checkout develop
      merge enhancement/issue4-Az_09

      checkout develop
      merge task/issue5-Az_09
Loading

Environments

environment branch
development local
integration develop
testing qa
staging preview
production main

GitHub Projects Template

  1. go to BluePrint
  2. click on ... next to BluePrint
  3. click on Make a copy
  4. change the Owner as your account
  5. click on Copy project

GitHub Fields

Field definitions

Status

πŸ“₯    No-status : Backlog
πŸ“¬          New : The status for freshly received requests. These tasks are not yet reviewed or processed.
πŸ“ Requirements : The status when tasks have been reviewed by the product owner to define requirements, ensure completeness, and determine feasibility.
πŸ”¬      Analyze : The status for tasks being evaluated by developers for missing information, initial research, and providing estimates on effort, costs, and concerns.
πŸ“    Detailing : The status for tasks where implementation details are being worked out, including diagrams, payload details, and refining estimates of effort and difficulty.
🚦   Assessment : The status when tasks are waiting for evaluation from the product owner to decide if they should be put back into the backlog or continue in the workflow.
⏹️      On Hold : The status when tasks are waiting for attention or an action from someone other than the assignee, or when something is not under the assignee's control.
⏸️      Pending : The status when tasks are waiting for the assignee's attention or an action that is under the assignee's control.
πŸ“Œ         Todo : The status when the task is ready to be worked on and is approved.
πŸ—οΈ      Develop : The status when the assigned developer has started actively working on the task.
πŸ‘“       Review : The status for tasks undergoing a code review by other developers.
πŸ§ͺ         Test : The status for tasks currently undergoing testing in Quality Assurance and/or User Acceptance Test environments.
πŸš€       Deploy : The status when the code is ready and waiting to be deployed to production.
🏁         Done : The status when tasks have been verified in the production environment.

Type

πŸͺ²          Bug : An unexpected problem or behavior
πŸš€         Epic : A large body of work that can be broken down into smaller features
πŸ€–      Feature : A request, idea, or new functionality
πŸ› οΈ  Enhancement : Improvements to performance or efficiency without altering functionality
πŸ”§ Optimization : Improving code readability and structure through refactoring or renaming without altering functionality
🧹      Cleanup : Tidy comments, rename variables, and refine formatting for clarity.
βœ”οΈ         Task : A specific piece of work

Estimate

  • number

Effort

  • 🐜 XXXXXS (0.5)
  • 🐝 XXXXS (1)
  • 🦐 XXXS (2)
  • 🐟 XXS (4)
  • πŸ“ XS (8)
  • 🐱 S (16)
  • 🐢 SM (24)
  • 🐐 M (32)
  • πŸ‘ L (40)
  • πŸƒ XL (80)
  • πŸ„ XXL (120)
  • 🦍 XXXL (160)

Priority

  • πŸ”΄ Urgent (1)
  • 🟑 High (2)
  • 🟒 Medium (3)
  • πŸ”΅ Low (4)

Level

  • πŸ₯· Master (1)
  • πŸ§‘β€πŸ”¬ Advanced (2)
  • πŸ§‘β€πŸ’» Intermediate (3)
  • πŸ§‘β€πŸŽ“ Beginner (4)

Value

  • πŸͺ¨ Platinum (1)
  • πŸ₯‡ Gold (2)
  • πŸ₯ˆ Silver (3)
  • πŸ₯‰ Bronze (4)

Value Area

  • πŸ‘· Architecture
  • πŸ§‘β€πŸ’Ό Business

Iteration

  • Iteration

Swimlane

  • Expedite

GitHub Filters

        Board : -no:status -status:"πŸ“¬ New","πŸ“ Requirements""πŸ”¬ Analyze","πŸ“ Detailing","🚦 Assessment","⏹️ On Hold","⏸️ Pending","πŸ“Œ To Do","πŸ—οΈ Develop","πŸ‘“ Review","πŸ§ͺ Test","πŸš€ Deploy","🏁 Done" -value-area:"πŸ‘· Architecture" value-area:"πŸ§‘β€πŸ’Ό Business"
      Roadmap : -no:status -value-area:"πŸ‘· Architecture"
Sprint Review : status:"πŸš€ Deploy","🏁 Done" -value-area:"πŸ‘· Architecture"
       Sprint : status:"πŸ”¬ Analyze","πŸ“ Detailing","🚦 Assessment","⏹️ On Hold","⏸️ Pending","πŸ“Œ To Do","πŸ—οΈ Develop","πŸ‘“ Review","πŸ§ͺ Test" -value-area:"πŸ‘· Architecture"
     Planning : status: "🚦 Assessment" -value-area:"πŸ‘· Architecture"
     Grooming : -status:"πŸ”¬ Analyze","πŸ“ Detailing","⏹️ On Hold","⏸️ Pending","πŸ“Œ To Do","πŸ—οΈ Develop","πŸ‘“ Review","πŸ§ͺ Test","πŸš€ Deploy","🏁 Done" -value-area:"πŸ‘· Architecture"
          New : status:"πŸ“¬ New" -value-area:"πŸ‘· Architecture"

Labels

Default

Label Color
bug #d73a4a
documentation #0075ca
duplicate #cfd3d7
enhancement #a2eeef
good first issue #7057ff
help wanted #008672
invalid #e4e669
question #d876e3
wontfix #ffffff

Custom

Label Color
Status: Backlog #BBDEFB
Status: New #BBDEFB
Status: Requirements #BBDEFB
Status: Analyze #BBDEFB
Status: Detailing #BBDEFB
Status: Assessment #1976D2
Status: Waiting #1976D2
Status: Blocked #BBDEFB
Status: Accepted #BBDEFB
Status: In-progress #BBDEFB
Status: Under-review #BBDEFB
Status: Test #BBDEFB
Status: Deploy #BBDEFB
Status: Resolved #BBDEFB
Status: Closed #BBDEFB
Status: Rejected #1976D2
Status: Deferred #1976D2
Priority: Urgent #d32f2f
Priority: High #ef5350
Priority: Normal #ffcdd2
Priority: Medium #ffcdd2
Priority: Low #ffcdd2
Level: Master #0097A7
Level: Advanced #0097A7
Level: Intermediate #B2EBF2
Level: Beginner #B2EBF2
Effort: 0.05 #E1BEE7
Effort: 1 #E1BEE7
Effort: 2 #E1BEE7
Effort: 4 #E1BEE7
Effort: 8 #E1BEE7
Effort: 16 #E1BEE7
Effort: 24 #E1BEE7
Effort: 32 #E1BEE7
Effort: 40 #E1BEE7
Effort: 80 #7B1FA2
Effort: 120 #E1BEE7
Effort: 160 #7B1FA2
Effort: TBD #7B1FA2
BusinessValue: 1 #D1C4E9
BusinessValue: 2 #D1C4E9
BusinessValue: 3 #D1C4E9
BusinessValue: 4 #512DA8
BusinessValue: TBD #512DA8
ValueArea: Architecture #F8BBD0
ValueArea: Business #C2185B
Type: Bug #FBC02D
Type: Epic #FFF9C4
Type: Feature #FFF9C4
Type: Enhancement #FFF9C4
Type: Optimization #FFF9C4
Type: Task #FFF9C4
Type: Backlog #FFF9C4
Type: Impediment #FFF9C4
Type: Test Case #FFF9C4
Type: Invalid #FBC02D
Type: Documentation #FFF9C4
Type: Discussion #FFF9C4
Type: Question #FFF9C4
Type: Support #FFF9C4
Impact: User Interface #006B75
Impact: Functionality #006B75
Impact: Performance #006B75
Info: External-library #C8E6C9
Info: Feedback-needed #388E3C
Info: Help-needed #388E3C
Info: Review-needed #388E3C
Info: Discussion-needed #388E3C
Info: Can't-reproduce #388E3C
Info: Won't-fix-it #388E3C
Info: Research-needed #C8E6C9
Info: Confirmed #C8E6C9
Info: Root-cause-found #C8E6C9
Info: Committed #C8E6C9
Info: Incomplete #C8E6C9
Info: Duplicate #C8E6C9
Info: Another-issue #388E3C
Info: Quality-Assurance-test #C8E6C9
Info: Deployment #C8E6C9
Changelog: Added #CFD8DC
Changelog: Changed #CFD8DC
Changelog: Deprecated #CFD8DC
Changelog: Removed #CFD8DC
Changelog: Fixed #CFD8DC
Changelog: Security #455A64
Area: Infrastructure #303F9F
Area: Build & Deploy #303F9F
Area: Test #303F9F
Area: Logging #C5CAE9
Area: Exception-handling #C5CAE9
Area: Database & Queue #C5CAE9
Area: Data #C5CAE9
Area: User-interface #C5CAE9
Activity: Requirements #FFE0B2
Activity: Design #FFE0B2
Activity: Architecture #F57C00
Activity: Development #F57C00
Activity: Documentation #FFE0B2
Activity: Testing #FFE0B2
Activity: Deployment #F57C00
Technology: csharp & linq #D7CCC8
Technology: razor & blazor #D7CCC8
Technology: odata & restier #D7CCC8
Technology: entity-framework #D7CCC8
Technology: ms-sql #D7CCC8
Technology: typescript #D7CCC8
Technology: xamarin & maui #D7CCC8
Technology: dapr #D7CCC8
Technology: powershell #D7CCC8
Technology: rabbitmq #5D4037
Technology: redis #5D4037
Technology: prometheus #5D4037
Technology: zipkin #5D4037
Technology: docker & k8s & helm #5D4037
Technology: grafana #5D4037
Technology: plantuml #5D4037
Technology: mongodb #5D4037
Technology: elastic-search #5D4037
Group: Data-Engineering #E64A19
Group: Product-Management #E64A19
Group: Marketing #FFCCBC
Group: Customer-Service #FFCCBC
Group: Sales #FFCCBC
Version: Next #616161
Version: 0.0.1 #616161
Version: 0.0.1-alpha #F5F5F5
Component: Processor #0288D1
Component: Uploader #B3E5FC
Module: Google Cloud #00796B
Module: Microsoft Azure #B2DFDB
Unit: #AFB42B
Unit: #F0F4C3
Meta: #FFA000
Meta: #FFECB3