Summary: | 碩士 === 逢甲大學 === 資訊工程學系 === 88 === How to rapidly establish a high quality software product is more and more important when more and more people computerizes their systems and their demand for software products is increasing. Component-Based Software Engineering (CBSE) and software reuse technology both bring benefits for software development in the system level, design level, and implementation level. But there are still some lacks of these two technologies. For example, there are insufficiently various software components, or higher-level software components, such as components that provide specific functions, to support CBSE. The software designers have to develop most of the software components from scratch. Another example is that when the software designers decide to construct new software applications by reusing COTS software, they always need to take extra efforts, such as modify the COTS software.
This thesis proposes an approach to reuse COTS software products to construct software components. The contribution of this approach is to obtain the advantages of both CBSE and software reuse technology, i.e. rapidly develop software components by reusing COTS software products under a uniform software component model. This will lower the development costs and time of software components substantially. Also, the software components themselves will benefit from those higher-level and specific functions of the reused COTS software products. For the reused COTS software products, they will be more reusable since they had been re-engineered as standard software components. The deliberation begins from the definition of COTSB software components, i.e. the software components constructed by reusing COTS software products. An open software component specification will be defined to support COTSB software components. It can be applied on cross platforms. There is another important issue that how to re-engineer COTS software products as COTSB software components. A technique named wrapping will be proposed to deal with this problem. Besides the definition, the specification, and the related implementation techniques of COTSB software components, a systematic design approach to design and implement COTSB software components is also important. In the thesis, we will adopt two existed design patterns — Adapter and Abstract Factory, and modify and glue them as a new pattern — COTSB Component Construction, for assisting in designing COTSB software components. It can be as a design blueprint for the COTSB software component designers. Final, we will implement one aided design tool — COTSB CFG. It can be used to support designers to generate the code frameworks of COTSB software components with simple descriptions.
|