=Paper= {{Paper |id=None |storemode=property |title=DynaMod Project: Dynamic Analysis for Model-Driven Software Modernization |pdfUrl=https://ceur-ws.org/Vol-708/mdsm2011-vanHoorn-et-al-11-dynamod.pdf |volume=Vol-708 }} ==DynaMod Project: Dynamic Analysis for Model-Driven Software Modernization== https://ceur-ws.org/Vol-708/mdsm2011-vanHoorn-et-al-11-dynamod.pdf
               DynaMod Project: Dynamic Analysis for
                Model-Driven Software Modernization
  André van Hoorn∗ , Sören Frey∗ , Wolfgang Goerigk† , Wilhelm Hasselbring∗ , Holger Knoche† , Sönke Köster§ ,
        Harald Krause‡ , Marcus Porembski§ , Thomas Stahl† , Marcus Steinkamp§ , and Norman Wittmüss‡
                    ∗ Software Engineering Group, University of Kiel, Christian-Albrechts-Platz 4, 24098 Kiel
                                     † b+m Informatik AG, Rotenhofer Weg 20, 24109 Melsdorf
                                        ‡ Dataport, Altenholzer Straße 10-14, 24161 Altenholz
                                          § HSH Nordbank AG, Schloßgarten 14, 24103 Kiel



   Abstract—Our project DynaMod addresses model-driven mod-              further refined by manually augmenting them with information
ernization of software systems. Key characteristics of the envi-         that can only be provided by system experts, e.g., mapping
sioned approach are: (1) combining static and dynamic analysis           code fragments to architectural layers. The conceptual mod-
for extracting models of a legacy system’s architecture and
usage profile; (2) augmenting these models with information that         ernization is performed on the architectural level by defining
is relevant to the subsequent architecture-based modernization           transformations among the extracted models of the outdated
steps; and (3) automatically generating implementation artifacts         system and models of the target architecture. Established gen-
and test cases based on the information captured in the models.          erative techniques from model-driven software development
This paper provides an overview of the DynaMod project.                  (MDSD) [1] are utilized to develop the modernized system.
                        I. I NTRODUCTION                                 Test cases are generated by including the usage profile in-
                                                                         formation from the dynamic analysis. Further evolution of the
Outdated programming technologies or platforms are typical
                                                                         modernized systems is based on the MDSD paradigm, keeping
reasons for long-lived software systems to age. Continuous
                                                                         the models synchronized with the system implementation.
and sustainable modernization is required for retaining their
maintainability.                                                                          III. P ROJECT C ONSORTIUM
   In our project DynaMod, we will investigate techniques
                                                                         The DynaMod project consortium consists of the b+m Infor-
for model-driven modernization (MDM) of software systems.
                                                                         matik AG (development partner and consortium leader), the
Innovative aspects are the combination of static and dynamic
                                                                         University of Kiel (scientific partner), as well as two associated
analysis for reverse engineering architectural and usage mod-
                                                                         companies, Dataport and HSH Nordbank AG.
els, as well as its semantic augmentation by information
                                                                            • b+m Informatik AG: The b+m group offers IT solu-
supporting subsequent generative forward engineering steps,
                                                                         tions, including consultancy, software engineering, and main-
including tests. DynaMod started with the beginning of 2011
                                                                         tenance services. Being the initiator of the openArchitecture-
and has a two-year funding from the German Federal Ministry
                                                                         Ware (oAW) framework, b+m is known for its pioneering role
of Education and Research (BMBF).
                                                                         in developing and applying MDSD techniques and tools.
   The remainder of this paper provides a brief summary of
                                                                            • University of Kiel, Software Engineering Group: The
the envisioned approach (Section II), the consortial partners
                                                                         Software Engineering Group conducts research in the area
(Section III), and the working plan (Section IV).
                                                                         of software engineering for parallel and distributed systems.
           II. E NVISIONED DYNA M OD A PPROACH                           One focus is the investigation of model-driven techniques
The envisioned approach can be structured into three phases:             and methods for engineering, operating, as well as evolving
                                                                         software systems, having an emphasis on the consideration of
   1) Extracting architecture-level models from the outdated
                                                                         software quality.
       system and its usage.
                                                                            • Dataport: Dataport provides information and communi-
   2) Defining architecture-based transformations to models of
                                                                         cation technology services for the public administration in
       the desired system.
                                                                         the German federal states of Schleswig-Holstein, Hamburg,
   3) Generating implementation artifacts and tests for the
                                                                         Bremen, and for the tax administration of the federal states of
       modernized system.
                                                                         Mecklenburg-Vorpommern and Niedersachsen.
Model extraction will be achieved by combining static and
                                                                            • HSH Nordbank AG: HSH Nordbank is a leading bank for
dynamic analysis, as well as additional augmentation. Static
                                                                         corporate and private clients in northern Germany. As one of
analysis of the source code yields a mainly structural view,
                                                                         the major providers of real estate finance in Germany it focuses
e.g., including architectural entities and relations. Dynamic
                                                                         on serving commercial clients. In the regionally rooted key
analysis, comprising continuous monitoring, adds quantitative
                                                                         industries of shipping, aviation and energy & infrastructure the
runtime behavior information, such as workload characteristics
                                                                         bank also operates internationally as a top provider of finance
and execution frequencies of code fragments. The models are
                                                                         solutions.
  The DynaMod project is funded by the German Federal Ministry of Edu-
cation and Research under the grant numbers 01IS10051A and 01IS10051B.
                          WP 3 Definition of Transformations
                                                                                  WP 4—Code Generation: Based on MDSD model-to-
                                                                            code transformation techniques, we will use templates to
             WP 2                                                WP 4       generate implementation artifacts, e.g., SOA wrappers and
            Dynamic                                              Code
            Analysis                                           Generation
                                                                            connectors, from the models of the target architecture (WP 3).
                                                                            The tooling infrastructure will be based on the Eclipse Model-
                                                                            ing Project (EMP) which includes the former oAW framework.
                WP 1                                         WP 5           In this work package, we will focus on the code generation
                Static                                    Model-Based
               Analysis                                     Testing
                                                                            for the case study scenarios (WP 6).
                                                                                  WP 5—Model-Based Testing: Usage models extracted
                                  WP 6 Evaluation
                                                                            from the legacy system under production workload (WP 2)
  Fig. 1.   DynaMod work packages—aligned with the horseshoe model
                                                                            will be used to generate representative test cases which can
                                                                            be executed automatically by appropriate testing tools. We will
                                                                            focus on tests based on workload generation, allowing to com-
                                                                            pare quality properties, such as performance and reliability,
                           IV. W ORKING P LAN
                                                                            among the modernized and the outdated system. It is intended
                                                                            to develop transformations from models to test plans to be
Based on the envisioned approach outlined in Section II,
                                                                            executed by the load test tool Apache JMeter as well as the
some more details about our working plan, including involved
                                                                            extension Markov4JMeter, supporting probabilistic models.
technologies and desired results, are described in this section.                  WP 6—Evaluation: In addition to lab studies, the devel-
The working plan is structured into six technical work pack-                oped methodology and tooling infrastructure will be evaluated
ages (WPs) which are aligned with the horseshoe model for                   based on the three below-described case study systems from
re-engineering, as depicted in Figure 1.                                    the associated partners. Most likely, these systems will not
      WP1—Static Analysis: This work package investigates                   be completely modernized during the DynaMod project. We
methods for the extraction of architectural models utilizing                consider them to be benchmark examples and representatives
static analysis techniques. Therefore, we will define appro-                of modernization projects pending in practice.
priate meta-models on the basis of the OMG’s Architecture-                     • AIDA-SH (Dataport) is an information management and
Driven Modernization (ADM) standards, e.g., KDM and                         retrieval system for inventory data of historical archives. The
SMM. A specific challenge can be seen in providing an ade-                  system conforms to a client/server architectural style, largely
quate representation, abstraction level, and semantic meta-data             based on Microsoft technology: database management systems
describing the outdated system to enable smooth integration                 (DBMSs) based on MS SQL Server (7.0, 2000, and 2003) as
with information obtained from dynamic analysis (see WP 2).                 well as MS SQL Desktop Engine (MSDE), and a user interface
Parsers are required to extract the models from the source                  implemented with Visual Basic 6 (VB 6). The major impulse
code. We will limit ourselves to the programming platforms                  for modernization is the outdated technology.
emerging from our case study scenarios (WP 6).                                 • Nordic Analytics (HSH Nordbank) is a function library for
      WP 2—Dynamic Analysis: This work package is con-                      the assessment and risk control of finance products. The library
cerned with the dynamic analysis of a legacy system’s internal              is used in desktop installations (from an Excel front-end), and,
behavior and external usage profile while being deployed in                 deployed to a grid infrastructure, by online trading and batch
its production environment. The instrumentation of systems                  processing systems. Nordic Analytics is implemented using
relying on legacy technology constitutes a technical challenge              C#. A modernization will focus on architectural restructuring.
to be tackled. We plan to extend our monitoring analysis                       • Permis-B (Dataport) is a mainframe system for managing
framework Kieker [2], currently restricted to Java-based sys-               health care allowance. The technical platform consists of
tems, to support additional programming platforms introduced                z/OS (mainframe operating system), ADABAS-C (DBMS),
by the case studies (WP 6). An interesting research question to             COMPLETE (transaction processing monitor), as well as the
be addressed here is to identify which information is relevant              programming environments NATURAL and COBOL. User
to the MDM process.                                                         interfaces are provided by an EskerTun/HobLink terminal
      WP 3—Definition of Transformations: The enriched                      emulation and a Web interface (supporting only MS IE 7)
architecture-level models describing the existing system are                based on VB 6 and MS SQL Server 2003. Desire for modern-
being translated towards a target architecture employing                    ization is pushed by the outdated technology and an eroded
model-based transformation techniques. Therefore, the corre-                architecture, making it difficult to fulfill additional or changed
sponding transformation rules are created in this work pack-                functional requirements in the future.
age. Regarding a first transformation type, KDM may serve                                                R EFERENCES
as a meta-model for both the source and the target models.                  [1] T. Stahl and M. Völter, Model-Driven Software Development – Technol-
A second type transforms these architecture models in code-                     ogy, Engineering, Management. Wiley & Sons, 2006.
centric instances. Here, classifying the transformations and                [2] A. van Hoorn, M. Rohr, W. Hasselbring, J. Waller, J. Ehlers, S. Frey, and
                                                                                D. Kieselhorst, “Continuous Monitoring of Software Services: Design
exploring transformation patterns can improve the efficiency                    and Application of the Kieker Framework,” Dept. Comp. Sc., Univ. Kiel,
of the modernization process.                                                   Germany, Tech. Rep. TR-0921, 2009.