Before starting with the system creation and implementation, a specific set of requirements must be met. These requirements include qualitative and qualitative characteristics that describe the demands that a software system must meet. The requirements are defined to satisfy the needs of different user groups, to solve problems and cover functional and non-functional criteria to meet standards and other conditions. To formulate appropriate requirements, the following points should be taken into consideration. The requirements should be complete (describe all needs of the client), distinct (leaving no room for misinterpretation), up-to-date (valid) and comprehensible (for all parties) as well as precise, documented and consistent. They should contain appraisable, testable (Does the system meet the requirements?) and verifiable descriptions to confirm the functionalities. To allow the adaption of the system to the client’s preferences, it is necessary to conduct an analysis of the requirements. On one hand, this means to support the system or software in development with qualitative requirements. On the other hand, this means to make sure the client has a full grasp of these requirements. In the best case, all requirements are worded in a way that they leave no room for doubt about the point in which the system meets the client’s needs. The goal of this approach is to minimize the risk of developing products which are not in concordance with the customer’s expectations and preferences. As an example, thanks to a requirement analysis (system specification and specification sheet) precise requirements can be collected, analyzed, specified and verified. Furthermore, traceable and specific characteristics and functions can be worded according to the projects goals. It is essential to understand the customer preferences and problems for this approach to work. Since the concept is used to determine a target state, the definition of the current state is indispensable. The challenges that arise are one reason why the requirements are seen in a critical light and why the collection of requirements is an arduous process. The analysis of the requirements plays an important role in the success of a project. Therefore, all errors that result in not attaining the customer preferences should be avoided. Most errors that are discovered during the process of the project result in considerable costs. Another aspect for taking into account the customer preferences is to prevent the client's dissatisfaction with the result when expectations are not met.
There are different types of requirements which can apply to a project. Three are listed below:
•Quality requirements: Quality requirements describe the quality criteria of the provided functions. In addition, qualitative characteristics or special system functions are included in this type.
•Functional requirements: Functional requirements describe the functions of the component or system to be provided.
•Frame conditions: Frame conditions describe the organizational and technical requirements as well as the limitations of the system. Furthermore, the obligations, preferences and limitations of customer and contractor are defined.