prototype versions of a transformation tool with upper
and lower level leading to a complete frame program
for parallel or distributed (sub)software, a workflow
management system for executing distributed work-
flows specified in XPDL (for the ExW mode), and a
distributed runtime system for modular applications
in distributed environments. Another important issue
is the integration of those prototype versions which is
done concurrently with testing the resulting business
software systems created by the transformation pro-
cess. Feedback loops in the implementation process
will adapt the prototype versions and its integration.
Also, the structure of the transformation, select, filter,
create, and include functions has to be refined to yield
a flexible and interactive transformation environment.
5 CONCLUSIONS
We have proposed an interactive toolset to incremen-
tally transform existing monolithic business software
into a modular system that can be distributed and
workflow-based. This leads to a flexible software sys-
tem that can be adapted to the characteristics of a spe-
cific environment and meets the needs of software de-
velopers and specific end user enterprises.
ACKNOWLEDGEMENTS
The research presented is funded by the German min-
istry BMBF 01 ISF 10 A/B/C.
REFERENCES
Akers, R., Baxter, I., and Mehlich, M. (2004). Re-
Engineering C++ Components Via Automatic Pro-
gram Transformation. In Proc. of ACM Symposium on
Partial Evaluation and Program Manipulation, pages
51–55. ACM Press.
Al-Ekram, R. and Kontogiannis, K. (2004). Source Code
Modularization Using Lattice of Concept Slices. In
Proc. of Euromicro Working Conference on Software
Maintenance and Reengineering (CSMR’04), pages
195–203.
Andritsos, P. and Tzerpos, V. (2003). Software Cluster-
ing based on Information Loss Minimization. In
Proc. of Working Conference on Reverse Engineering
(WCRE2003), pages 334–344.
Balmas, F. (2004). Displaying dependence graphs: a hi-
erarchical approach. J. of Software Maintenance and
Evolution: Research and Practice, 16(3):151–185.
Baxter, I., Pidgeon, C., and Mehlich, M. (2004). DMS: Pro-
gram Transformations for Practical Scalable Software
Evolution. In Proc. of the 26th Int. Conf. on Software
Engineering, pages 625–634. IEEE Press.
Bernstein, P. (1996). Middleware - A Model for Distributed
System Services. Commun. of the ACM, 39(2).
Brunner, R. and Weber, J. (2002). Java Web Services. Pren-
tice Hall.
Cao, F., Bryant, B., Burt, C., Raje, R., Olson, A., and
Auguston, M. (2005). A Component Assembly Ap-
proach Based On Aspect-Oriented Generative Do-
main Modeling. Electronic Notes in Theoretical Com-
puter Science, 114:119–136.
Crnkovic, I. and Larsson, M. (2002). Challenges of
component-based development. Journal of Systems
and Software, 61(3):201–212.
Czarnecki, K. and Eisenecker, U. (2000). Generative Pro-
gramming: Methods, Tools, and Applications. Addi-
son Wesley.
Emmerich, W. (2000). Engineering Distributed Objects.
John Wiley & Sons.
Emmerich, W. (2002). Distributed Component Technolo-
gies and their Software Engineering Implications. In
Proc. of Int.Conf.Software Engineering, pages 537–
546. ACM Press.
Kiczales, G., Lamping, J., A.Mendhekar, Maeda, C., Lopes,
C., Loingtier, J.-M., and Iwin, J. (1997). Aspect-
oriented programming. In Proc. Conf on Object-
Oriented Programming (ECOOP’01), LNCS 1241,
pages 327–353.
Lewandowski, S. (1998). Frameworks for component-
based client/server computing. ACM Comput. Surv.,
30(1):3–27.
Litoiu, M. (2004). Migrating to Web Services: a perfor-
mance engineering approach. Journal of Software
Maintenance and Evolution: Research and Practice,
16:51–70.
Lung, C. and Zaman, M. (2004). Applying Clustering Tech-
niques to Software Architecture Partitioning, Recov-
ery and Restructuring. Journal of Systems and Soft-
ware, 73(2):227–244.
Mehta, A. and Heineman, G. (2002). Evolving Legacy Sys-
tem Features into Fine-Grained Components. In Proc.
of Int. Conf. on Software Engineering, pages 417–427.
Menkhaus, G. and Frei, U. (2004). Legacy System Integra-
tion using a Grammar-based Transformation System.
CIT - Journal of Computing and Information Technol-
ogy, 12(2):95 – 102.
Siegel, J. (2005). Why use the Model Driven Architecture to
Design and Build Distributed Applications. In Proc. of
Int.Conf.Software Engineering, page 37. ACM Press.
Zhao, W., Bryant, B., Gray, J., Burt, C. C., Raje, R. R., Au-
guston, M., and Olson, A. (2003). A Generative and
Model Driven Framework for Automated Software
Product Generation. In Proc. 6th ICSE Workshop on
Component-Based Software Engineering: Automated
Reasoning and Prediction, pages 103–108.
TRANSFORMATION OF LEGACY BUSINESS SOFTWARE INTO CLIENT-SERVER ARCHITECTURES
43