blob: 8b2a8c0f9e0ba7f09fd94cd437f546a03221ff30 [file] [log] [blame] [view]
Edwin Kempinc68ebd02019-08-07 11:56:21 +02001---
2title: "Design Doc - ${title} - Solution - ${solution-name}"
3sidebar: gerritdoc_sidebar
4permalink: design-doc-${folder-name}-solution-${solution-name}.html
5hide_sidebar: true
6hide_navtoggle: true
7toc: false
8folder: design-docs/${folder-name}
9---
10
Edwin Kempin78ae6852019-08-01 15:27:44 +020011# Solution - ${solution-name}
12
13## <a id="overview"> Overview
14
15High-level overview; put details in the next section and background in
16the 'Background' section (see dev-design-doc-use-cases-template.txt).
17
18Should be understandable by engineers that are not working on Gerrit.
19
20If a solution is a variant of another solution, that other solution
21should be linked here.
22
23## <a id="detailed-design"> Detailed Design
24
25How does the overall design work? Details about the algorithms,
26storage format, APIs, etc., should be included here.
27
28For the initial review, it is ok for this to lack implementation
29details of minor importance.
30
31### <a id="scalability"> Scalability
32
Edwin Kempin663ac682019-08-07 11:47:29 +020033How does the solution scale?
34
35If applicable, consider:
36
37* data size increase
38* traffic increase
Han-Wen Nienhuys348a6032019-09-24 19:44:57 +020039* effects on replication across sites (master-replica and master-master)
Edwin Kempin78ae6852019-08-01 15:27:44 +020040
41## <a id="alternatives-considered"> Alternatives Considered
42
43Within the scope of this solution you may need to describe what you did
44not do or why simpler approaches don't work. Mention other things to
45watch out for (if any).
46
47Do not describe alternative solutions in this section, as each solution
48should be described in a separate file.
49
50## <a id="pros-and-cons"> Pros and Cons
51
52Objectively list all points that speak in favor/against this solution.
53
54## <a id="implementation-plan"> Implementation Plan
55
56If known, say who would be willing to drive the implementation.
57
58It is possible to contribute solutions without having resources to do
59the implementation. In this case, say so here.
60
61If mentor support is desired, say so here. Also briefly describe any
62circumstances that can help with finding a suitable mentor.
63
64## <a id="time-estimation"> Time Estimation
65
66A rough itemized estimation of how much time it takes to implement this
67feature. Break down the feature into work items and estimate each item
68separately.
69
70If a mentor is assigned, this section must define a maximum time frame
71after which the mentorship automatically ends even if the feature isn't
72fully done yet.