This diploma thesis evaluates various plug-in architectures for a Test Suite application. The Test Suite is a Windows-based application which is used for test procedures in the field of electrical power systems. The plug-in concept is widely used according to Mayer et al. [MMS02]. The concept can be found in many applications where it enables customers and third party manufacturers to extend the functionality of the application. A special adoption of the plug-in concept is to use it for building complex applications. In this case the separation of the code into manageable small plug-ins can increase the modularity of the application.
The evaluation of the plug-in architectures is highly influenced by the requirements for a Test Suite application. These requirements are defined by the company OMICRON electronics GmbH. Most of the requirements are also adaptable to other projects, even though they might be of other domains.
Three suitable solutions are chosen for the evaluation. One of the requirements defines that the Test Suite has to be a .NET application. Therefore, all solutions are based on the .NET Framework. Evaluated are the Composite UI Application Block (CAB) with the Smart Client Software Factory (SCSF) extensions, the Spring .NET framework and the SharpDevelop application.
These solutions all have different strengths and weaknesses which are discussed in the evaluation chapter. The thesis shows that the Composite UI Application Block is the most applicable solution for the requirements of the Test Suite and therefore it is further investigated in this thesis. Reasons for using CAB are the good UI integration for the modules and the support for loosely coupled components.
Because the framework does not support all requirements out of the box, a prototype implementation was created to show a possible way to fulfill all defined requirements. The prototype consists of an infrastructure part and several plug-ins. The infrastructure provides common services which are needed by the plug-ins e.g. the UI integration. The plug-ins show how the different requirements can be fulfilled. This diploma thesis shows that CAB can reduce the effort for developing a Test Suite.