Wiki

Version 40 (Matthieu Decorde, 18/11/2014 16:07)

1 38 Serge Heiden
*TXM FORGE PRINCIPLES AND PROCEDURES*
2 13 Serge Heiden
3 37 Serge Heiden
{{>toc}}
4 37 Serge Heiden
5 38 Serge Heiden
h1. Tickets Creation
6 13 Serge Heiden
7 14 Serge Heiden
General principles are described in the txm-info wiki: https://groupes.renater.fr/wiki/txm-info/public/transition_wiki_tickets
8 1 Serge Heiden
9 38 Serge Heiden
h2. Ticket description and txm-info wiki page complementary description
10 8 Serge Heiden
11 15 Serge Heiden
If a txm-info wiki page is created to put more details about the ticket, the description must contain a direct link to that page. Use the *@page_name* syntax to refer to the page.
12 11 Nils Kredens
13 20 Matthieu Decorde
Squelette de page : 
14 19 Matthieu Decorde
15 19 Matthieu Decorde
<pre>
16 19 Matthieu Decorde
====== Titre ======
17 19 Matthieu Decorde
18 19 Matthieu Decorde
===== Objectif =====
19 19 Matthieu Decorde
20 1 Serge Heiden
===== Méthode =====
21 21 Matthieu Decorde
Description de la méthode de travail pour atteindre l'objectif
22 35 Matthieu Decorde
23 21 Matthieu Decorde
==== État de la plateforme ====
24 35 Matthieu Decorde
25 21 Matthieu Decorde
==== Avancement dans l'élaboration de la solution ====
26 35 Matthieu Decorde
27 1 Serge Heiden
===== Solution =====
28 35 Matthieu Decorde
29 21 Matthieu Decorde
==== État de l'art ====
30 21 Matthieu Decorde
Éléments de solution
31 35 Matthieu Decorde
32 21 Matthieu Decorde
==== Prototypes ====
33 21 Matthieu Decorde
==== Version finale ====
34 35 Matthieu Decorde
35 33 Matthieu Decorde
===== Documentation =====
36 33 Matthieu Decorde
==== Utilisateur ====
37 33 Matthieu Decorde
==== Développeur ====
38 35 Matthieu Decorde
39 19 Matthieu Decorde
===== Recette =====
40 21 Matthieu Decorde
==== Protocole de test ====
41 21 Matthieu Decorde
=== Alpha ===
42 21 Matthieu Decorde
=== Beta ===
43 35 Matthieu Decorde
44 21 Matthieu Decorde
==== État courant ====
45 22 Matthieu Decorde
Qui Quand Quoi
46 19 Matthieu Decorde
</pre>
47 19 Matthieu Decorde
48 38 Serge Heiden
h2. Ticket template
49 36 Serge Heiden
50 38 Serge Heiden
h3. Feature ticket
51 36 Serge Heiden
52 36 Serge Heiden
<pre>
53 36 Serge Heiden
Description of the objective and the context.
54 36 Serge Heiden
55 36 Serge Heiden
Link to the wiki specification page (if available).
56 36 Serge Heiden
57 36 Serge Heiden
h3. Solution
58 36 Serge Heiden
59 36 Serge Heiden
Steps and means to implement the ticket.
60 36 Serge Heiden
61 36 Serge Heiden
*Step 1*
62 36 Serge Heiden
63 36 Serge Heiden
*Step 2*
64 36 Serge Heiden
65 36 Serge Heiden
*Step 3*
66 36 Serge Heiden
67 36 Serge Heiden
h3. Validation Test
68 36 Serge Heiden
69 36 Serge Heiden
Procedure to follow to validate the implementation of the ticket.
70 36 Serge Heiden
71 36 Serge Heiden
* action 1
72 36 Serge Heiden
* action 2
73 36 Serge Heiden
* action 3
74 36 Serge Heiden
</pre>
75 36 Serge Heiden
76 38 Serge Heiden
h3. Bug and Support ticket
77 36 Serge Heiden
78 36 Serge Heiden
<pre>
79 36 Serge Heiden
Context and origin of the bug description (mail, TXM version, OS, etc.).
80 36 Serge Heiden
81 36 Serge Heiden
h3. Diagnostic
82 36 Serge Heiden
83 36 Serge Heiden
h4. Diagnostic 1
84 36 Serge Heiden
85 36 Serge Heiden
* Hypothesis
86 36 Serge Heiden
* Observation
87 36 Serge Heiden
* Conclusion
88 36 Serge Heiden
** the bug is reproduced
89 36 Serge Heiden
** the bug is not reproduced by this hypothesis
90 36 Serge Heiden
91 36 Serge Heiden
h4. Diagnostic 2
92 36 Serge Heiden
93 36 Serge Heiden
* Hypothesis
94 36 Serge Heiden
* Observation
95 36 Serge Heiden
* Conclusion
96 36 Serge Heiden
** the bug is reproduced
97 36 Serge Heiden
** the bug is not reproduced by this hypothesis
98 36 Serge Heiden
99 36 Serge Heiden
h3. Solution / Resolution
100 36 Serge Heiden
101 36 Serge Heiden
Steps and means to resolve the ticket.
102 36 Serge Heiden
103 36 Serge Heiden
*Step 1*
104 36 Serge Heiden
105 36 Serge Heiden
*Step 2*
106 36 Serge Heiden
107 36 Serge Heiden
*Step 3*
108 36 Serge Heiden
109 36 Serge Heiden
h3. Validation Test
110 36 Serge Heiden
111 36 Serge Heiden
Procedure to follow to validate the resolution of the ticket.
112 36 Serge Heiden
113 36 Serge Heiden
* action 1
114 36 Serge Heiden
* action 2
115 36 Serge Heiden
* action 3
116 36 Serge Heiden
</pre>
117 36 Serge Heiden
118 38 Serge Heiden
h2. Ticket categories definitions
119 8 Serge Heiden
120 10 Serge Heiden
Available ticket categories:
121 10 Serge Heiden
122 6 Matthieu Decorde
* Development : development tasks
123 4 Serge Heiden
* Administration: portal administration interface and tools (Portal project)
124 4 Serge Heiden
* Commands: any command related issue (all projects)
125 4 Serge Heiden
* Conventions:  algorithms and terminology conventions (all projects)
126 4 Serge Heiden
* Documentation: any documentation issue (manuals, wikis, web pages...) (SH: Javadoc?)
127 4 Serge Heiden
* Import: any import module issue
128 4 Serge Heiden
* Preferences: RCP preferences issues
129 4 Serge Heiden
* Setup: desktop RCP setup issues
130 4 Serge Heiden
* Stats: statistic models issues
131 4 Serge Heiden
** Stats / R: R related statistic models issues
132 4 Serge Heiden
* Toolbox: any issue related to the Toolbox project
133 4 Serge Heiden
* UI: User Interface issues in the RCP project (SH: and GWT project?)
134 4 Serge Heiden
** UI / Interaction: user interface behavior issues
135 1 Serge Heiden
** UI / Link / Command: user interface hypertextual command behavior issues
136 3 Matthieu Decorde
137 38 Serge Heiden
h2. Ticket hierarchy policy
138 1 Serge Heiden
139 26 Matthieu Decorde
There are 2 usages:
140 26 Matthieu Decorde
* Grouping tasks
141 26 Matthieu Decorde
* Phasing tasks: children are steps and are ordered
142 26 Matthieu Decorde
143 38 Serge Heiden
h2. Ticket life cycle
144 26 Matthieu Decorde
145 9 Serge Heiden
Ticket status follow this cycle:
146 7 Nils Kredens
147 17 Matthieu Decorde
New -> In Progress -> Resolved -> Feedback -> Closed
148 7 Nils Kredens
149 40 Matthieu Decorde
-* +New:+ the ticket concerns a demand not yet handled
150 16 Matthieu Decorde
* +In Progress:+ the demand is currently being handled
151 16 Matthieu Decorde
* +Resolved:+ : the solution is developed
152 39 Matthieu Decorde
* +Feedback:+ tested during the *Alpha step* by the other users and developers and waiting for feedback from testers
153 16 Matthieu Decorde
* +Closed:+ the solution is approved and is deployed throughout *Beta Step*.
154 40 Matthieu Decorde
-
155 7 Nils Kredens
Other status that can occur at any time in the development:
156 1 Serge Heiden
157 1 Serge Heiden
*  +Rejected:+ the demand is not to be handled
158 1 Serge Heiden
159 26 Matthieu Decorde
Ticket percent follow this cycle:
160 40 Matthieu Decorde
* In progress + 0-79: the ticket is being handled by the developer
161 40 Matthieu Decorde
* Feedback + 0-79: the ticket has been downgraded by the tester from the  80 status
162 40 Matthieu Decorde
* Feedback + 80: the ticket has been implemented and is proposed to be tested by someone else
163 40 Matthieu Decorde
* Resolved + 90: the ticket has been validated on "test" portal
164 40 Matthieu Decorde
* Closed + 100: the ticket has been validated on production portal = the ticket is closed
165 26 Matthieu Decorde
166 26 Matthieu Decorde
Warning: parent tickets don't follow that policy (percent is computed)
167 1 Serge Heiden
168 38 Serge Heiden
h2. Ticket and documentation
169 23 Matthieu Decorde
170 23 Matthieu Decorde
If a ticket may impact the documentation, add a line such as :
171 23 Matthieu Decorde
DOC: fix section x.x.x
172 23 Matthieu Decorde
173 38 Serge Heiden
h1. Sourceforge SVN Usage
174 8 Serge Heiden
175 38 Serge Heiden
h2. SVN folders structure
176 29 Matthieu Decorde
177 29 Matthieu Decorde
* copyright: contains copyright files
178 29 Matthieu Decorde
* corpora: contains  samples binary corpus (deprecated)
179 29 Matthieu Decorde
* CWB: contains modified CWB sources (fix error logs, jni code)
180 29 Matthieu Decorde
* doc: contains all kind of TXM documentation
181 29 Matthieu Decorde
* groovy-all: contains a RCP dependency project to enable Groovy scripting in TXM
182 30 Matthieu Decorde
* Eclipse : contains the modified Eclipse project (p2 and workbench)
183 29 Matthieu Decorde
* installers : contains a linux environment to build TXM for all supported architectures (Debian, Windows and Mac OS X)
184 29 Matthieu Decorde
* libs: contains dependency projects (mandatory ones) of the TBX (and RCP ?) (groovy-all should be moved here)
185 29 Matthieu Decorde
* plugins: contains plugins for TXM (optional ones)
186 29 Matthieu Decorde
* RCP: contains the TXM RCP project
187 29 Matthieu Decorde
* sdk: contains environment to build TXM SDK
188 29 Matthieu Decorde
* textometry: contains the "textometry" R package sources
189 29 Matthieu Decorde
* Toolbox: contains the Toolbox main dependency of the RCP project
190 29 Matthieu Decorde
* translation: contains tools to translate TXM manual
191 29 Matthieu Decorde
* WEB: contains TXM portal sources
192 29 Matthieu Decorde
193 38 Serge Heiden
h2. SVN commit messages
194 1 Serge Heiden
195 28 Matthieu Decorde
*content*
196 1 Serge Heiden
Each commit message must follow the syntax :
197 28 Matthieu Decorde
* prefix with *SOMETHING: *(space char)
198 28 Matthieu Decorde
* then insert the nature of the commit for example : *add*, *fix*...
199 1 Serge Heiden
* then insert the message content and details
200 1 Serge Heiden
* if you need more than one line to describe the entry, prefix the following lines with "#"
201 1 Serge Heiden
202 28 Matthieu Decorde
*Prefixes*
203 28 Matthieu Decorde
Prefixes are :
204 28 Matthieu Decorde
* *RCP:*  the TXM desktop (RCP) project
205 28 Matthieu Decorde
* *TBX:*  the Toolbox (TBX) project
206 28 Matthieu Decorde
* *WEB:*  the TXM portal project
207 28 Matthieu Decorde
* *DOC:*  the documentation of any project
208 31 Serge Heiden
* *SETUP:* the project that contains scripts to build TXM setups
209 31 Serge Heiden
* *EXT-<PLUGINNAME>:*  The extensions of TXM
210 31 Serge Heiden
* *LIB-<TECHNOLOGY>:*  Third party library plugins used by the TBX or the RCP
211 32 Serge Heiden
** *LIB-GROOVY:*  the Groovy-all plugin
212 32 Serge Heiden
** *LIB-JFC:*  the JFreeChart plugin
213 34 Matthieu Decorde
* *R-<package>:* R Packages
214 34 Matthieu Decorde
** *R-textometry:* the 'textometry' package sources
215 31 Serge Heiden
* *PLUGIN-<PLUGINNAME>:*  _obsolete_ (See EXT-<PLUGINNAME>)
216 31 Serge Heiden
* *GROOVYALL:* _obsolete_ (See LIB-GROOVY)
217 31 Serge Heiden
* *SETUPS:* _obsolete_ (See SETUP)
218 31 Serge Heiden
* *LIBS:*  _obsolete_ (See LIB-<TECHNOLOGY>)
219 34 Matthieu Decorde
220 28 Matthieu Decorde
221 28 Matthieu Decorde
*Example*
222 3 Matthieu Decorde
<pre>
223 5 Nils Kredens
TBX: add an awesome new functionnality
224 5 Nils Kredens
TBX: fix the XXX import module
225 1 Serge Heiden
# the flow was not Groovy enough
226 1 Serge Heiden
# end of this entry
227 5 Nils Kredens
DOC: add documentation of the new functionnality
228 1 Serge Heiden
</pre>
229 5 Nils Kredens
230 10 Serge Heiden
For further details about commit message syntax, follow those principles:
231 5 Nils Kredens
232 5 Nils Kredens
https://github.com/erlang/otp/wiki/Writing-good-commit-messages
233 24 Alexey Lavrentev
234 24 Alexey Lavrentev
h1. Related projects
235 24 Alexey Lavrentev
236 24 Alexey Lavrentev
# [[TXM for Oriflamms]]