Stages of development

It is the job of the release management to ensure that the project is kept running smoothly. A well organised project progression plan, with clear objectives for each step is vital; otherwise chaos can break loose. Therefore, it is important to clarify which stage of the system with which functions is to be achieved and when.

Projects that are more complex are strictly separated into single units. The first version that can be tested (alpha stage) already contains all of the essential functions. Since functional tests are executed before and during the process of programming, only a minimum of Black Box Tests of real users are necessary at this stage. As a result, the testing phase progresses quickly. Having tested the program extensively and having identified its deficiencies, the bugfixing can be carried out. For this it makes sense to use a Wiki or a GroupWare (eGroupWare, Trac). This way the users and/or the purchaser can note all deficiencies. Based on their lists, the coder is then again able to fix and eliminate any bugs to be found. During the critical stages, we guarantee a response time within an hour in order to execute the second stage of software development (beta stage) as quickly as possible.

Release and Perpetual Beta

At this stage, when all the beta stage bugs are fixed and the system is up and running, the Roll Out can be undertaken. After ironing out any kinks, the release candidate will be presented to its users where it will undergo a mass testing phase.

To an experienced software developer it is clear that despite intensive quality controlling measures, bugs might and will occur. For this reason a debugging phase is added to the procedure before the final productive system is released and considered complete. Even when the project is considered to be finished, huge systems continue to develop constantly. Indeed one could say that a true release no longer exists. Rather, the development of software today should be seen as a constant developmental process and the aforementioned procedure as one that has to be repeated continuously. Figuratively speaking, web development has transformed from a set process to a complex one (Perpetual Beta) – a development that we feel is in the interest of the user. To keep in step with this development, the employment of a “version management” SVN is also useful at this point. This way different developmental stages can be recorded and if necessary can be reconstructed.