Position - Fusion Method Needed

Reuse is a hot topic in the worldwide software engineering community. Many efforts are under way to improve both the state-of-the-art and state-of-the-practice because of the potential benefits. Many of these efforts are focused on exploiting domain specific architectures where the knowledge base of experience in the applications domain is used to create an architectural framework for building systems [#!Braun92!#,#!Mettala92!#]. However, the methods being used for domain engineering activities are not being integrated with those being used to perform other critical engineering tasks pertinent to the architecture. An integrated or combined methodology is needed to provide those developing systems with guidance on what activities to do when and how to know when they are done.

A method is defined in this context as consisting of [#!Kronlof93!#]:

The purpose of this paper is to discuss a proposed integration or fusion method from these four points of view. This will be accomplished in the next Section. The concepts in this paper are still in the formative stages. Plans to take these concepts and refine them will be discussed in Section III.

A proposed methodology fusion concept which addresses the problem noted above is shown in Figure 1. Problem space modeling techniques are ordered and put together using the process shown in Figure 2. The approach taken is to consider solution space constrains as problem space objects are identified, fused together and evaluated using an iterative refinement process. The ultimate product of this method is a set of requirements for a project or product which is bounded within a domain by a number of constraints.

Figure: Methodology Fusion Concept
\begin{figure}\centering
\leavevmode\hbox{ \epsfbox{reifer-fig1.ps}}\end{figure}

The object model seems suitable to serve as the underlying model for the proposed method because it permits classes to be specified and analyzed in a manner consistent with most of the popular domain and information engineering approaches. An object model is powerful enough to permit the constraints being placed on problem space representations by solution space objects to be traded off and fully addressed.

A hybrid object-oriented notation seems appropriate because none of those analyzed seem to have the power to express the structure, associations and behavior of systems modeled using the fusion of techniques. Most of the weaknesses observed to date have been in the area of performance. To solve this problem, elements of Rumbaugh [#!Rumbaugh91!#] and Booch [#!Booch91!#] could be coupled with specialized notations based upon my experience on the Space Station Simulator project [#!Wessale92!#].

As illustrated in Figure 2, the process advanced is one of constrained optimization. First, a problem space model is developed free of constrains. Then, constrains are systematically added in step by step so that tradeoffs can be made and the resulting model optimized. The key concept to realize is that problem space models cannot be unconstrained when reusable assets and domain-specific architectures are being considered. Design requirements need to be specified to bound the problem space so that it can be easily mapped to solution space realizations.

Figure: Modified Analysis Process
\begin{figure}\centering
\leavevmode\hbox{ \epsfbox{reifer-fig2.ps}}\end{figure}

Pilot programs will be used once the fusion method is specified to provide examples and develop the rules which will govern what to do when. This ``do-a-little, learn-a-lot'' philosophy has been used very effectively by many research programs to provide practical guidance to those actually trying to do the work.

Most of what has been proposed is nothing more than a paper tiger. The problem has been identified and an approach advanced to attack it. Within the next few months, we will mount a coordinated effort to put the method on paper.

Once specified, we will try it on one or more pilots to refine it based upon operational feedback. Examples will be developed along with rules. Assuming things work out, a fusion method handbook and training courses will be produced and the methodology will be transitioned into use via a defined and disciplined technology transfer process.

My purpose for discussing the proposed fusion method at the workshop is to get feedback. I am particularly interested in related work.