phase of the make vs. acquire decision and the developers’ familiarity with the OTS candidates.
5.1. Scenarios of planned OTS-based software development
In these scenarios (see Figure 4), project members prefer to evaluate the possibility of using OTS components right from the start. Due to the time-to-market, cost, or capac- ity issues, project managers realize that it is difficult, impossible, or not cost-effective to make everything from scratch. In these scenarios, the first step is to do a make vs. acquire decision (see step A in Figure 4). In case project members decide not to use OTS components, the development process will be the same as the non-COTS based development. If project members decide to use OTS components, they then need to decide the main development process (see step B in Figure 4). To decide the main development process, main issues are the traditional risks in a project, such as the stability of the requirements. One of the other issues is their familiarity with possible OTS candidates. According to the project members’ familiarity with the OTS candi- dates, we define three scenarios from scenario 1 to 3.
Scenario 1 – planned OTS-based project with unfamiliar OTS candidates. In this scenario, the project members prefer to use OTS component to provide certain functionalities of the system. However, they are not familiar with the OTS candidate at all. To decide the main development process, the OTS rele- vant risks, such as the quality of OTS components and the vendor’s support, should be seriously considered. In addition, project members should pay atten- tion to other risks, which are not relevant to an OTS component but the overall project (e.g., which process is more suitable for projects with unclear or un- stable requirements? Waterfall or an incremental with prototyping’ model?).
Scenario 2 – planned OTS-based project with some familiar OTS candidates: In this scenario, the project members have a certain experience on some of the possible OTS candidates. However, there are still certain candidates that they have never used before. In order to decide the main development process, the issues are similar with those of the scenario 1.
Scenario 3 – planned OTS-based project with familiar OTS candidates: In this scenario, the project members are familiar with all possible candidate compo- nents. When deciding the main development process the OTS relevant risks are not as critical as in scenario 1 or 2. Other non-OTS relevant factors, such as company rules or requirement flexibility may be used to decide the main development process. In this scenario, the main development process can be any, such as waterfall, incremental, or XP. It may not need to be changed because the project members are very familiar with the OTS component can- didates.
In our investigated projects, only 25% can be classified into scenario 1 to 3, be- cause they decided their main development processes after they decided to use OTS components. In these projects, 67% can be put into scenario 3, because they used familiar OTS components.