@inproceedings{deline2001avoiding, author = {DeLIne, Robert}, title = {Avoiding packaging mismatch with Flexible Packaging}, booktitle = {IEEE Transactions on Software Engineering}, year = {2001}, month = {February}, abstract = {To integrate a software component into a system, it must interact properly with the system's other components. Unfortunately, the decisions about how a component is to interact with other components are typically committed long before the moment of integration and are difficult to change. This paper introduces the Flexible Packaging method, which allows a component developer to defer some decisions about component interaction until system integration time. The method divides the component's source into two pieces: the ware, which encapsulates the component's functionality; and the packager, which encapsulates the details of interaction. Both the ware and the packager are independently reusable. A ware, as a reusable part, allows a given piece of functionality to be employed in systems in different architectural styles. A packager, as a reusable part, encapsulates conformance to a component standard, like an ActiveX control or an ODBC database accessor. Because the packager's source code is often formulaic, a tool is provided to generate the packager's source from a high-level description of the intended interaction, a description written in the architectural description language UniCon. The method and tools are evaluated with two case studies, an image viewer and a database updater.}, publisher = {IEEE}, url = {http://approjects.co.za/?big=en-us/research/publication/avoiding-packaging-mismatch-with-flexible-packaging/}, pages = {124-143}, volume = {27}, edition = {IEEE Transactions on Software Engineering}, }