Software components are “binary units of independent production, acquisition, and deployment that interact to form a functioning system.”1 In basic terms, software components are pieces of software ...