Feature Matching (ESSCaSS03)


    Today the business processes become more and more dependent on the software, and must change very rapidly in response to the market changes. Initial results from software development should be delivered with a very short delay, and have to be deployable with minimal costs. When the business volume grows, or the business processes change, supporting software systems must be able to grow and change along, without impeding the business process, and without a major reimplementaion effort. The achievement of different non-functional requirements (e.g. qualities of service), required for business information systems, requires different implementation technologies, which themselves are rapidly evolving, to be used and combined.

    As a result, there is a growing need to make business information systems development cycle shorter, and independent of underlying technologies, which themselves often evolve without offering backward compatibility. Therefore main body of reusable software assets of an enterprise should be independent of implementation technologies, and from them the implementation artifacts should be automatically synthesised.

    Model driven synthesis of software (e.g. OMG MDA), where main developed artifacts are the implementation technology independent models of required software, deals with these problems.

    In the article we describe a method, applicable for synthesising business software implementations from technology independent business models. This method is based on establishing a common feature space for problem and solution domains for the business information systems, and on the extended meta-models and separate step of solution domain analysis, described in the previous articles. In the proposed method synthesis of business software implementation from the technology independent business analysis model is performed in two steps.

    First a solution domain or software architecture style is selected by matching the explicitly required features of given software system and implicitly required features of given problem domain to the features provided by the software architecture style.

    Next all the elements of given business analysis model are transformed into elements or sets of interconnected elements of selected architecture style, by matching their required features to the features provided by the elements of selected architecture style. During this step the structure of common feature model drives the decomposition of implementation.

    In both steps it is possible to define the cost functions for selecting between different alternatives, which provide same features.

    Presented method is applicable to OMG MDA for transformation or mapping of platform independent model (PIM) to platform specific models (PSMs). The difference of our method from other domain specific and model-based methods is the separate step of solution domain analysis, and using common feature space to select architecture style and specific implementations.