SPACots: A Software Tool for Selecting COTS Components

SPACots: A Software Tool for Selecting COTS Components

Asmaa Alsumait (Kuwait University, Kuwait) and Sami J. Habib (Kuwait University, Kuwait)
DOI: 10.4018/978-1-4666-0023-2.ch014
OnDemand PDF Download:
List Price: $37.50


This paper presents a software tool for integrating a child-friendly computer system based on commercial off-the-shelf (COTS) components. The effective selection of COTS components, which meet a child’s requirements and expectations, is a non-trivial and challenging optimization problem. However, many published papers consider the functional requirements while ignoring usability requirements. The functional requirements are concerned with what the computer should be able to do, whereas the usability requirements are concerned with the extent to which the child is able to learn effectively and efficiently throughout the COTS based computer. In this paper, the authors propose an iterative five-task selection and integration of COTS process, including both hardware devices and software modules, to be automated. The core of the automated tool is employing Simulated Annealing (SA) to search the design space to match, select, and integrate COTS components with a maximal satisfaction while neither exceeding a given budget nor violating child and performance constraints. A Monte Carlo simulator was utilized to evaluate the goodness of the COTS based computer design. Computational results based on building a computer for a child handwriting e-learning application show feasibility of SPACots in finding a solution satisfying all constraints while reducing the cost by 58%.
Chapter Preview


There is growing interest in the notion of software development through the planned selection and integration of commercial off-the-shelf (COTS) components. The potential advantages of this integration centric approach are shorter development time and reduced cost. Often a COTS based development process consists of selection, integration, evaluation, adaptation and evolution of components obtained from external vendors. However, most methods focus on system adaptation and integration but many methods neglect the processes of evaluation and selection of COTS with respect to the usability requirements, especially when the intended user is a child. A child has different prospective from an adult, especially when it comes to the usage of computers.

There are several design challenges, which arise during the production of COTS based computer. The first-level is requiring the designers to understand the child's interests and requirements. The second-level is selecting the proper system's (hardware and software) components that can match both the child's physical abilities (e.g., level of eye-hand coordination, keyboard within icons), the child's style of play, and child's cognitive capacity. The third-level is observing and documenting the learning-curve between a child and computer. The fourth-level is reflecting the outcomes of the learning-curve on enhancing the computers to become more user-friendly for a child. The first two-level represents the design prospective, where the last two-level represents the long-term educational effectiveness of COTS based computer.

In this paper, we are presenting a new approach to synthesizing COTS based computer and it is called selection process approach (SPA). SPA focuses on the design prospective (first two-level for the production of COTS based computer) by glancing at the COTS selection and integration from the child-computer interaction point-of-view, where the child’s needs are considered early in the requirement phase (Alsumait & Habib, 2009).

SPA comprises of five tasks: defining the user's goals the COTS based computer, defining main software application(s) to be executed on the COTS based computer, formulating and validating the correctness and completeness of all functional and usability requirements, searching for optimal COTS based computer, and reviewing the COTS based computer by the Requirement Engineer (RE) and the stakeholder for final certification. Then, we have developed a software automated tool (SPACots), which assists the (RE) with the challenging tasks of matching and selecting potential hardware and software components, and negotiating changes to the hardware and software components while neither exceeding a given budget nor violating design and performance constraints of the COTS based computer. SPACots focuses on the user-usability requirements, which are ignored by many other COTS selection approaches. Also, SPACots bridges the gap between user-usability requirements, components requirements (hardware and software requirements) and the specifications of COTS products. The contributions of SPACots are:

  • Supporting the selection of multiple COTS components in COTS intensive systems.

  • Addressing the user-usability requirements during the requirements phase.

  • Searching the design space based on a clear formal evaluation method.

Complete Chapter List

Search this Book: