The choice of it mostly depends on the existing habits, experience, traditions, tools that the development team has. Sometimes the software product being developed is so complicated that different paradigms are used to solve some problems in various components of the system. It should be noted that the choice of this or that approach imposes restrictions on the means that will be applied at the stage of implementing the program code. The result of solving this problem depending on the method can be (in brackets is the software that can be used to obtain them):
Class diagram, etc. (Ration Rose, Sybase, and many others).
A description of the structure modules and their programming interface (for example, Sybase power designer and many others).
Development of user interface layouts involves creating a visual representation of how certain video forms and windows will look in the application being developed. The solution of this task is based on the use of designer tools, which will not be considered in this article.
Tools For Implementing Code
At the stage of implementing the program code, the individual components of the program are coded by the developed technical design. The means that can be applied depend to a large extent on what approaches were used during the design and, besides, on the degree of thoroughness of the technical plan. Nevertheless, among the tools for the development of the program code, the following main types of means need to be distinguished (in brackets examples of devices are given): • methods and algorithms.
Programming languages (C ++, C, Java, C #, PHP and many others);
Means to create a user interface (MFC, WPF, QT, GTK +, etc.)
Code version control tools (CVS, svn, VSS).
Means of obtaining executable code (MS Visual Studio, GCC, and many others).
Database management tools (Oracle, MS SQL, Firebird, MySQL and many others).
Debuggers (MS Visual Studio, gdb, etc.).
The main tasks of testing are checking whether the functionality of the developed program meets the initial requirements, as well as identifying errors that manifest themselves explicitly or implicitly during the program. Among the principal works on executing compatibility tests can be defined as follows:
- Failover and recovery testing.
- Functional testing.
- Security testing.
- Interoperability testing.
- Test the installation process.
- Usability testing.
- Configuration testing.
- Stress Testing.