COTS-based systems (CBS) include commercial-off-the-shelf (COTS) products
besides newly written (in-house) software. The most important features of COTS
products are their suitability for integration into different systems and
commercial availability. These aspects allow COTS products to provide high
quality prepackaged functionality. Therefore, the use of COTS products as
components of a new system can reduce development effort and increase system
quality. As a result, CBS development can significantly aid developers in
building a better product in a shorter time.
However, CBS development may introduce
specific problems such as
-
Evaluation: COTS products must be evaluated to decide
whether or not they should be used during development;
-
Integration: in-house software and COTS products have their
own assumptions regarding interfaces, packaging, functionality, etc.; if these
assumptions are different, integration work will be necessary to make COTS
products work in the system;
-
Security: COTS can provide a source of a security hazard,
permitting a dangerous behavior due to a Trojan horse or just an accidental
failure;
-
Maintenance: since COTS
products are subject to frequent updates by their vendors, inconsistent version
incompatibilities can result in serious maintenance problems.
Software developers should
know how to overcome these problems in order to use COTS products successfully.
Although many useful COTS-related works have been published, more research
still needs to be completed to make CBS profitable.
Meanwhile, these problems
can hinder CBS development, creating the potential for schedule overrun or for
product quality to deteriorate. Therefore, a practical approach to evaluation
and integration of COTS software would help software developers to solve the
problems and reduce related risks, thus allowing the developers to benefit
considerably from using COTS products.
One of CeBASE goals is the
investigation of problems concerning the CBS and the development of descriptive
and prescriptive models of COTS integration processes that can help software
developers use COTS products. Specifically, we are going to use empirical data
to design and validate the models.
Successful research should result in the
development of CBS models that will help software developers evaluate and
integrate COTS products into their systems and to solve other COTS-related
problems. In addition, these models could be helpful for other researchers as a
reference point for their work.