Although there are many different approaches,
there exists no generally accepted method for the in-
cremental transformation of software systems. An
important reason for this lies in the fact that there
are many different distributed platforms like CORBA
or EJB that cannot be combined in an arbitrary way.
Therefore, a distributed realization often requires a
new implementation of the business logics.
The Model Driven Architecture (MDA) approach
(Siegel, 2005) addresses this problem and uses a
model-based approach for the step-wise generation of
distributed, component-based software. The model-
driven development od parallel software for multicore
in the area of embedded systems is considered in (Hsi-
ung, P. et al, 2009). Support for a simplification of
the transition to parallel software is collected by the
COMPASS project (Sethumadhavan et al., 2009).
6 CONCLUSIONS
The portability and efficient execution on multicore
architectures will be an important property of all soft-
ware products, including business software. In this
article, we have proposed a hybrid task-based paral-
lel programming model in which a software system is
decomposed into tasks, which may or may not be exe-
cuted in parallel to each other and additionally have an
internal multi-threadedimplementation. The software
system can exhibit a dynamic behavior such that new
tasks can be activated during the execution of another
task. The correct and efficient execution on a mul-
ticore platform is supported by a task administration
and a scheduler at application program level. Both are
integrated into a separate runtime library which sup-
ports the execution of arbitrary task-based software
systems.
In summary, we have proposed a new hybrid
parallel programming environment which is suitable
for dynamic, long-running business software sys-
tems. A software system can be newly designed for
the proposed program environment. In addition, we
have proposed a transformation mechanism to mi-
grate legacy software into the new execution model.
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.
Akers, R., Baxter, I., Mehlich, M., Ellis, B., and Luecke, K.
(2007). Case study: Re-engineering c++ component
models via automatic program transformation. Inf.
Softw. Technol., 49(3):275–291.
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.
Brunner, R. and Weber, J. (2002). Java Web Services. Pren-
tice Hall.
Hsiung, P. et al (2009). Model-driven development of multi-
core embedded software. In IWMSE ’09: Proc. of
the 2009 ICSE Workshop on Multicore Software Engi-
neering, pages 9–16. IEEE Computer Society.
Hunold, S., Krellner, B., Rauber, T., Reichel, T., and
R¨unger, G. (2009). Pattern-based Refactoring of
Legacy Software Systems. In Proc. of the 11th
Int. Conf. on Enterprise Information Systems (ICEIS),
pages 78–89. Springer.
Isaacson, C. (2009). Software Pipelines and SOA: Releasing
the Power of Multi-Core Processing. Addison-Wesley
Professional.
Koch, G. (2005). Discovering Multi-Core:Extending the
Benefits of Moore’s Law. Intel White Paper, Technol-
ogy@Intel Magazine.
Kuck, D. (2005). Platform 2015 Software-Enabling Inno-
vation in Parallelism for the next Decade. Intel White
Paper, TechnologyIntel Magazine.
Litoiu, M. (2004). Migrating to Web Services: a perfor-
mance engineering approach. Journal of Software
Maintenance and Evolution: Research and Practice,
16:51–70.
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.
Rauber, T. and R¨unger, G. (2007). Transformation of
Legacy Business Software into Client-Server Archi-
tectures. In Proc. of the 9th Int. Conf. on Enterprise
Information Systems, pages 36–43. INSTICC.
Reinders, J. (2006). Sea Change in the Software World.
Intel Software Insight, pages 3–8.
Sethumadhavan, S., Arora, N., Ganapathi, R., Demme, J.,
and Kaiser, G. (2009). COMPASS: A Community-
driven Parallelization Advisor for Sequential Soft-
ware. In Proc. of the 2009 ICSE Workshop on Mul-
ticore Software Engineering, pages 41–48. IEEE.
Siegel, J. (2005). Why use the Model Driven Architecture to
Design and Build DistributedApplications. In Proc. of
Int.Conf.Software Engineering, page 37. ACM Press.
Sutter, H. (2005). The free lunch is over – a fundamental
turn toward concurrency in software. Dr.Dobb’s Jour-
nal, 30(3).
Sutter, H. and Larus, J. (2005). Software and the Concur-
rency Revolution. ACM Queue, 3(7):54–62.
ICEIS 2010 - 12th International Conference on Enterprise Information Systems
198