Integration of Reusable Software Components and frameworks into a visual software construction approach
Software reuse is an effective means of improving software productivity and software quality. Reusable Software Components (RSCs) are the basic building components for software programs constructed using the software reuse approach. The object-oriented approach is used to design and implement our RSCs. Our laboratory has already implemented more than 300 reusable software components, including design-level frameworks in various application domains and approximately 200,000 lines of code in our library. These components and frameworks have been accumulated in the course of designing and implementing strategy-based game systems, multimedia authoring systems (2-D and 3-D), multimedia playback systems, and other application systems. Multimedia software plays an important role in the software industry. In contrast to traditional software, multimedia software provides users with visual and audio effects through their interfaces and can more accurately model the real world. A media component may contain various elements, such as text descriptions, voice narration, and animation sequences, which more closely present the subject to be modeled. Such a reusable media component is commonly referred to as a Multimedia Reusable Component(MRC). Using RSCs, frameworks, and MRCs, our laboratory has successfully designed and implemented a commercial product called DIY Magic Cartoon World for use in making subject-based cartoons. The RSCs and frameworks can be visualized as icons for a visual programming model. Reuse-in-large practice is, therefore, achieved using visual programming techniques based on these visualized components. In this study, we introduce design principles and implementation techniques for our RSCs, frameworks, and MRCs. RSCs, frameworks, and MRCs are integrated into a visual software construction approach. More specifically, the design concept and implementation of an approachfor visual software construction are described. In addition to discussing the advantages of the proposed construction approach, this work also presents examples which illustrate how the visual programming environment is used.
software component framework software reuse object-oriented multimedia visual programming