Difference between revisions of "CI/HANtune Development Procedures"
(→Tooling) |
(→HANtune Release Strategy) |
||
Line 10: | Line 10: | ||
== HANtune Release Strategy == | == HANtune Release Strategy == | ||
− | + | The HANtune releases can be subdivided into the public releases and the internal releases. The public releases of HANtune are indicated with a two digit number, seperated by a dot. (e.g. "HANtune 2.1). The internal releases are only to be distributed to users who have been contacted personally, are willing to work with a potentially unstable version of HANtune and are willing to provide feedback in case of any bugs, enhancements or feature requests. These internal releases are indicated by Alpha, Beta, and potentially Gamma. | |
+ | |||
+ | '''Alpha Stage:''' | ||
+ | |||
+ | In this stage all the new features which are planned for the public release have been added to HANtune and have been tested by the developers. It is now sent to the users who are willing to cooperate with the development of HANtune by providing early feedback. After the Alpha stage no new featers are going to be added and code-changes are to be kept to a minimum. Only bug fixes are allowed at this stage. | ||
+ | |||
+ | |||
+ | '''Beta Stage:''' | ||
+ | |||
+ | In the Beta Stage all the know bugs should have been fixed, so this is actually the "Final Rehersal" before for the public release. To keep risks to a minimum all the bugs found in Beta stage are not going to be fixed but will clearly be documented in the "ChangelogKnownIssues.txt" file, which is provided with each HANtune release. | ||
+ | If severe bugs did get discovered, a Gamma release is scheduled, allowing to fix these bugs and verify the fix during the Gamma stage. | ||
+ | |||
+ | |||
+ | '''Gamma Stage:''' | ||
+ | |||
+ | It shouldn't have come this far, but clearly it has. Known bugs are reported in the "ChangelogKnownIssues.txt" file. After all the feedback has been collected and processed, the public release can be released. | ||
+ | |||
+ | |||
+ | |||
+ | Alpha, Beta and Gamma versions are only published in a disclosed group via a private mailing list. | ||
== SCRUM Methodology == | == SCRUM Methodology == |
Revision as of 12:40, 31 May 2018
This page contains information about the development procedures which are used by the developers of HANtune.
Contents
Project Management
During the development of HANtune also our development procedures have evolved. However the usage of Trac has been adopted from a very early stage. Trac is an online environment which provides an online Wiki, ticketing system, code repositories and more. It hosts all the basic needs for a software development team. We are using repositoryhosting.com to host the repositories of HANtune, HANcoder and various other projects.
HANtune Release Strategy
The HANtune releases can be subdivided into the public releases and the internal releases. The public releases of HANtune are indicated with a two digit number, seperated by a dot. (e.g. "HANtune 2.1). The internal releases are only to be distributed to users who have been contacted personally, are willing to work with a potentially unstable version of HANtune and are willing to provide feedback in case of any bugs, enhancements or feature requests. These internal releases are indicated by Alpha, Beta, and potentially Gamma.
Alpha Stage:
In this stage all the new features which are planned for the public release have been added to HANtune and have been tested by the developers. It is now sent to the users who are willing to cooperate with the development of HANtune by providing early feedback. After the Alpha stage no new featers are going to be added and code-changes are to be kept to a minimum. Only bug fixes are allowed at this stage.
Beta Stage:
In the Beta Stage all the know bugs should have been fixed, so this is actually the "Final Rehersal" before for the public release. To keep risks to a minimum all the bugs found in Beta stage are not going to be fixed but will clearly be documented in the "ChangelogKnownIssues.txt" file, which is provided with each HANtune release. If severe bugs did get discovered, a Gamma release is scheduled, allowing to fix these bugs and verify the fix during the Gamma stage.
Gamma Stage:
It shouldn't have come this far, but clearly it has. Known bugs are reported in the "ChangelogKnownIssues.txt" file. After all the feedback has been collected and processed, the public release can be released.
Alpha, Beta and Gamma versions are only published in a disclosed group via a private mailing list.
SCRUM Methodology
More info will follow shortly...
Ticket Flow
The HANtune ticketflow is dedicated to the environment in which HANtune is being developed. It can be modified in the HANtune project which can be found in Trac. Open the HANtune project, klick on "Admin" and click on "Ticket flow".
Below a visual representation can be found for the HANtune ticketflow. For exact details, please refer to the textual version under the following picture.
The current configuration in text looks like the textbox below:
leave = new,assigned,accepted,reopened,closed,needs work,implementing,automating tests,testing -> * leave.name = Leave (does not change ticket resolution) leave.default = 11 leave.operations = leave_status leave.permissions = TICKET_MODIFY accept = new,assigned,reopened -> accepted accept.name = Accept and take ownership of this ticket accept.default = 10 accept.operations = set_owner_to_self accept.permissions = TICKET_MODIFY implement = accepted,needs work -> implementing implement.name = Ready to start implementing implement.default = 9 implement.permissions = TICKET_MODIFY test = implementing -> testing test.name = Implemented, ready for testing test.default = 8 test.permissions = TICKET_MODIFY pass = testing -> automating tests pass.name = Passed Testing, start automation of test pass.default = 7 pass.permissions = TICKET_MODIFY fail = testing -> needs work fail.name = Failed Testing, return to developer fail.default = 6 fail.permissions = TICKET_MODIFY reassign = new,assigned,accepted,reopened,closed,needs work,implementing,automating tests,testing -> * reassign.name = Assign reassign.default = 5 reassign.operations = set_owner reassign.permissions = TICKET_MODIFY reopen = closed -> reopened reopen.name = Reopen this ticket reopen.default = 4 reopen.operations = del_resolution reopen.permissions = TICKET_CREATE close = automating tests -> closed close.name = Automated tests work and are verified, close ticket close.default = 3 close.permissions = TICKET_MODIFY discard = new,assigned,accepted,reopened,closed,needs work,implementing,automating tests,testing -> closed discard.name = Discard ticket (mention reason in comments!!) discard.default = 2 discard.permissions = TICKET_CREATE reject = accepted -> new reject.name = Reject (Reject ownership) reject.default = 1 reject.permissions = TICKET_MODIFY
Tooling
During the development of HANtune several tools are used.
Netbeans
Netbeans is an Integrated Development Environment (IDE) which is used to write the source code of HANtune. Please download the latest version here: netbeans.org/
TortoiseSVN
To be able to use an SVN repository an SVN Client is needed. TortoiseSVN is an SVN client which can be used to commit and update your changes to and from the code repository. For more info on where to download and how to work with TortoiseSVN, please go to their website.