SlideShare une entreprise Scribd logo
1  sur  25
ECARES-Projekt: Kombination von
graphbasierten Redesign-Analysen

   10. Workshop Software-Reengineering
            Bad Honnef, 2008


     Tobias Walter, Christof Mosler

               05.05.2008
Kombination von graphbasierten Redesign-Analysen                           Tobias Walter

 Überblick
 • Das E-CARES Projekt
 • Reengineering von Telekommunikationssystemen
 • Analysen
    • Datenorientierte Analyse
    • Funktionsorientierte Analyse
    • Anwendungsspezifische Analyse
 • Kombination der Analysen
 • Zusammenfassung



E-CARES Projekt   Reengineering   Analysen   Kombination Zusammenfassung          2/17
Kombination von graphbasierten Redesign-Analysen                           Tobias Walter

 Das E-CARES Projekt
 • Ericsson Communication ARchitecture for Embedded
   Systems
 • Kooperation seit 1999 zwischen
    • Lehrstuhl für Informatik 3 (Softwaretechnik) der RWTH
    • Ericsson Eurolab GmbH

 • Ziele der Kooperation
      • Methoden, Konzepte und Werkzeuge
      • zur Unterstützung der Verständlichkeit und
        Restrukturierung von Software
      • unter Beachtung der Komplexität des Legacy
        Telekommunikationssystems

E-CARES Projekt   Reengineering   Analysen   Kombination Zusammenfassung          3/17
Kombination von graphbasierten Redesign-Analysen                           Tobias Walter

Reengineering von Telekommunikationssystemen
 • Telekommunikationssystem
      • GSM-Infrastruktur                              DOCUMENT Block_A;

      • Kernstück ist das Mobile                       DECLARE;
                                                          VARIABLE NAME;
        Switching Center                                  VARIABLE BNUMBER;
      • Stetige Erweiterung des Systems                END DECLARE;

        (SMS, GPRS etc.)                               PROGRAM ;
                                                          ENTER DIAL WITH BNUMBER;
      • Degenerieren der Software                         GOTO DIAL01;



 • Implementierung                                     DIAL01);
                                                          NAME = „AXE10“

      •   Blöcke als Softwareeinheit
                                                          SEND SIGNAL
                                                            WITH NUMBER, NAME;
      •   Programmiersprache PLEX                      EXIT;


      •   Signalorientiertes Paradigma                 ...

      •   Bis zu 80.000 LoC pro Block

E-CARES Projekt   Reengineering   Analysen   Kombination Zusammenfassung          4/17
Kombination von graphbasierten Redesign-Analysen                                              Tobias Walter

Reengineering Ansatz
                                               Modification



                                                 re-think
                                  Concept                     Concept            Forward
        Reverse                                                                 Engineering
       Engineering                              re-specifiy                    (Refinement)
                              Specification                   Specification
      (Abstraction)

                                                 re-design
                                      Design                  Design

                                                 re-code
                            Implementation                    Implementation




                              Structure                           new
                              Graph                            Structure
                                                                 Graph



     PLEX Code                                                                  new PLEX Code

E-CARES Projekt       Reengineering     Analysen       Kombination Zusammenfassung                   5/17
Kombination von graphbasierten Redesign-Analysen                           Tobias Walter

 Szenario: Blockdekomposition
 • Problem: Beschränkte Blockgröße durch Hardware
   vorgegeben
 • Lösung: Dekomposition von Blöcken
    • Minimale Kopplung zwischen Teilblöcken
    • Maximale Bindung innerhalb eines Blockes

 • Verschiedene Analysen zur Dekomposition
      • Datenorientiert
      • Funktionsorientiert
      • Anwendungsspezifisch

 • Ergebnis:
      • Nicht immer optimale Ergebnisse beim Anwenden einzelner
        Analysen
      • Daher: Kombination der Analysen
E-CARES Projekt   Reengineering   Analysen   Kombination Zusammenfassung          6/17
Kombination von graphbasierten Redesign-Analysen                                                                                  Tobias Walter

 Beispiel eines Strukturgraphen
                                                                                  Block
                                                                                 TRACON

                                             Contains
                                                          Contains                    Contains
     Signal Entry
     CALLABORT                                                                                         Contains
                                                                           Contains
                              Signal Entry                                              Signal Entry
                                 MSG                                                  STARTPREANA
         Goto
                    Goto                                                                   Goto
                                  Goto
    Statem. Sequ.
   NOTCONNECTED                                                                        Statem. Sequ.
                                                                                         ANAIDLE
                             Statem. Sequ.                    Record                                                                      Record
                             CONNECTED                     TRACONDATA                                                                    ECDATA

                                                   Contains                                  Call              Call
                                                                Contains
                                                         Contains                                                             Contains
                                                                                        Subroutine             Subroutine                  Contains
                                                                                       INITECDATA           READGLOROUTE
                Modifies
    Modifies
                              Modifies                                                              Reads
                                                                     Modifies                                     Reads       Modifies
                                                         Reads
       Variable
    FLCONNFIDEC                                                                                     Modifies
                             Symbol Variable                                                                                          Variable
                                STATE                                                                                                INCOMEC
                                                              Variable                                             Variable
                                                              IECLINK                                             ANASTATE




E-CARES Projekt            Reengineering                Analysen         Kombination Zusammenfassung                                           7/17
Kombination von graphbasierten Redesign-Analysen                                                                                  Tobias Walter

 Beispiel eines Strukturgraphen
                                                                                  Block
                                                                                 TRACON

  Main Module                                Contains                                                                           EC Module
                                                          Contains                    Contains
     Signal Entry
     CALLABORT                                                                                         Contains
                                                                           Contains
                              Signal Entry                                              Signal Entry
                                 MSG                                                  STARTPREANA
         Goto
                    Goto                                                                   Goto
                                  Goto
    Statem. Sequ.
   NOTCONNECTED                                                                        Statem. Sequ.
                                                                                         ANAIDLE
                             Statem. Sequ.                    Record                                                                      Record
                             CONNECTED                     TRACONDATA                                                                    ECDATA

                                                   Contains                                  Call              Call
                                                                Contains
                                                         Contains                                                             Contains
                                                                                        Subroutine             Subroutine                  Contains
                                                                                       INITECDATA           READGLOROUTE
                Modifies
    Modifies
                              Modifies                                                              Reads
                                                                     Modifies                                     Reads       Modifies
                                                         Reads
       Variable
    FLCONNFIDEC                                                                                     Modifies
                             Symbol Variable                                                                                          Variable
                                STATE                                                                                                INCOMEC
                                                              Variable                                             Variable
                                                              IECLINK                                             ANASTATE




 2 Module im Block TRACON
E-CARES Projekt            Reengineering                Analysen         Kombination Zusammenfassung                                           7/17
Kombination von graphbasierten Redesign-Analysen                           Tobias Walter

 Redesign-Analysen
 • Bestimmung eines Zusammenhangsmaß Sim(a,b)
      • Beschreibt Bindung zweier Knoten a und b
      • Gewichtung der semantischen Kanten im Strukturgraph
      • Wert: Rationale Zahl zwischen 0 und 1

 • Nach den Redesign-Analysen:
      • Verbindungsbasiertes Clustering
      • Dekomposition durch Restrukturierung des
         Strukturgraphen




E-CARES Projekt   Reengineering   Analysen   Kombination Zusammenfassung          8/17
Kombination von graphbasierten Redesign-Analysen                           Tobias Walter

 Datenorientierte Analyse
 • Ziele
      • Programmelemente mit starker datenorientierter
        Bindung zusammenhalten
      • Vermeiden von blockübergreifenden Datenzugriffen
        nach einem Split
 • Berechnungsvorschrift:


 • Hilfsfunktion data(a):
      • Liefert Menge von Datenelementen, auf die im Laufe
        aller Kontrollflüsse ausgehend von a zugegriffen wird

E-CARES Projekt   Reengineering   Analysen   Kombination Zusammenfassung          9/17
Kombination von graphbasierten Redesign-Analysen                                                                                        Tobias Walter

 Datenorientierte Analyse
                                                                                        Block
                                                                                       TRACON

                                                 Contains
                                                               Contains                    Contains
      Signal Entry
      CALLABORT                                                                                              Contains
                                                                                Contains
                                  Signal Entry                                               Signal Entry
                                     MSG                                                   STARTPREANA
       Goto (1/4)
                     Goto (1)                                                                  Goto (1)
                                    Goto (1)
    Statem. Sequ.
   NOTCONNECTED                                                                             Statem. Sequ.
                                                                                              ANAIDLE
                                 Statem. Sequ.                      Record                                                                     Record
                                 CONNECTED                       TRACONDATA                                                                   ECDATA

                                                       Contains                                 Call (1/3)        Call (2/3)
                                                                     Contains
                                                              Contains                                                                Contains
                                                                                             Subroutine              Subroutine                    Contains
                                                                                            INITECDATA            READGLOROUTE
                Modifies (1/2)
  Modifies (1/2)
                                 Modifies (1)                                                         Reads (1/3)
                                                                          Modifies (1/2)                            Reads (1/3)     Modifies (1)
                                                            Reads (1/2)
       Variable
    FLCONNFIDEC                                                                                       Modifies (1/3)
                                 Symbol Variable                                                                                              Variable
                                    STATE                                                                                                    INCOMEC
                                                                    Variable                                             Variable
                                                                    IECLINK                                             ANASTATE




E-CARES Projekt              Reengineering                  Analysen           Kombination Zusammenfassung                                          10/17
Kombination von graphbasierten Redesign-Analysen                                                                                        Tobias Walter

 Datenorientierte Analyse
                                                                                        Block
                                                                                       TRACON

                                                 Contains
                                                               Contains                    Contains
      Signal Entry
      CALLABORT                                                                                              Contains
                                                                                Contains
                                  Signal Entry                                               Signal Entry
                                     MSG                                                   STARTPREANA
       Goto (1/4)
                     Goto (1)                                                                  Goto (1)
                                    Goto (1)
    Statem. Sequ.
   NOTCONNECTED                                                                             Statem. Sequ.
                                                                                              ANAIDLE
                                 Statem. Sequ.                      Record                                                                     Record
                                 CONNECTED                       TRACONDATA                                                                   ECDATA

                                                       Contains
                                                                     Contains                   Call (1/3)      Call (2/3)
                                                              Contains                                                                Contains
                                                                                             Subroutine              Subroutine                    Contains
                                                                                            INITECDATA            READGLOROUTE
                Modifies (1/2)
  Modifies (1/2)
                                 Modifies (1)                                                         Reads (1/3)
                                                                          Modifies (1/2)                            Reads (1/3)     Modifies (1)
                                                            Reads (1/2)
       Variable
    FLCONNFIDEC                                                                                       Modifies (1/3)
                                 Symbol Variable                                                                                              Variable
                                    STATE                                                                                                    INCOMEC
                                                                    Variable                                             Variable
                                                                    IECLINK                                             ANASTATE




E-CARES Projekt              Reengineering                  Analysen           Kombination Zusammenfassung                                          10/17
Kombination von graphbasierten Redesign-Analysen                                                                                        Tobias Walter

 Datenorientierte Analyse
                                                                                       Block
                                                                                      TRACON

                                                 Contains
                                                               Contains                    Contains
      Signal Entry
      CALLABORT                                                                                              Contains
                                                                                Contains
                                  Signal Entry                                               Signal Entry
                                     MSG                                                   STARTPREANA
       Goto (1/4)
                     Goto (1)                                                                  Goto (1)
                                    Goto (1)
    Statem. Sequ.
   NOTCONNECTED                                                                             Statem. Sequ.
                                                                                              ANAIDLE
                                 Statem. Sequ.                      Record                                                                     Record
                                 CONNECTED                       TRACONDATA                                                                   ECDATA

                                                       Contains                                 Call (1/3)        Call (2/3)
                                                                     Contains
                                                              Contains                                                                Contains
                                                                                             Subroutine              Subroutine                    Contains
                                                                                            INITECDATA            READGLOROUTE
                Modifies (1/2)
  Modifies (1/2)
                                 Modifies (1)                                                         Reads (1/3)
                                                            Reads (1/2)
                                                                          Modifies (1/2)                            Reads (1/3)     Modifies (1)
       Variable
    FLCONNFIDEC                                                                                       Modifies (1/3)
                                 Symbol Variable                                                                                              Variable
                                    STATE                                                                                                    INCOMEC
                                                                    Variable                                             Variable
                                                                    IECLINK                                             ANASTATE




 • Mögliches Zerlegen von zusammenhängenden Funktionen
E-CARES Projekt              Reengineering                  Analysen           Kombination Zusammenfassung                                          10/17
Kombination von graphbasierten Redesign-Analysen                           Tobias Walter

 Funktionsorientierte Analyse
 • Ziele
      • Programmelemente mit starker funktionsorientierter
        Bindung zusammenhalten
      • Erkennen von funktionalen Bereichen im Block
 • Berechnungsvorschrift:


 • Hilfsfunktion signal(a):
      • Liefert Menge von Signaleingängen, von denen
        Kontrollflüsse zum Knoten a führen


E-CARES Projekt   Reengineering   Analysen   Kombination Zusammenfassung         11/17
Kombination von graphbasierten Redesign-Analysen                                                                                          Tobias Walter

 Funktionsorientierte Analyse
                                                                                           Block
                                                                                          TRACON

                                                    Contains
                                                                  Contains                    Contains
      Signal Entry
      CALLABORT                                                                                                Contains
                                                                                   Contains
                                     Signal Entry                                               Signal Entry
                                        MSG                                                   STARTPREANA
       Goto (1/2)
                      Goto (1/2)                                                                  Goto (1)
                                       Goto (1)
    Statem. Sequ.
   NOTCONNECTED                                                                                Statem. Sequ.
                                                                                                 ANAIDLE
                                    Statem. Sequ.                      Record                                                                    Record
                                    CONNECTED                       TRACONDATA                                                                  ECDATA

                                                          Contains                                  Call (1)         Call (1)
                                                                        Contains
                                                                 Contains                                                               Contains
                                                                                                Subroutine             Subroutine                    Contains
                                                                                               INITECDATA           READGLOROUTE
                   Modifies (1)
  Modifies (1/2)
                                    Modifies (1)                                                          Reads (1/3)
                                                                             Modifies (1/3)                           Reads (1/3)     Modifies (1)
                                                               Reads (2/3)
       Variable                                                                                          Modifies (2/3)
    FLCONNFIDEC
                                    Symbol Variable                                                                                             Variable
                                       STATE                                                                                                   INCOMEC
                                                                       Variable                                            Variable
                                                                       IECLINK                                            ANASTATE




E-CARES Projekt                   Reengineering                Analysen           Kombination Zusammenfassung                                         12/17
Kombination von graphbasierten Redesign-Analysen                                                                                      Tobias Walter

 Funktionsorientierte Analyse
                                                                                       Block
                                                                                      TRACON

                                                Contains
                                                              Contains                    Contains
     Signal Entry
     CALLABORT                                                                                             Contains
                                                                               Contains
                                 Signal Entry                                               Signal Entry
                                    MSG                                                   STARTPREANA
      Goto (1/2)
                   Goto (1/2)                                                                 Goto (1)
                                   Goto (1)
    Statem. Sequ.
   NOTCONNECTED                                                                            Statem. Sequ.
                                                                                             ANAIDLE
                                Statem. Sequ.                      Record                                                                    Record
                                CONNECTED                       TRACONDATA                                                                  ECDATA

                                                      Contains                                  Call (1)         Call (1)
                                                                    Contains
                                                             Contains                                                               Contains
  Modifies (1/2)                                                                            Subroutine             Subroutine                    Contains
                                                                                           INITECDATA           READGLOROUTE
              Modifies (1)

                                Modifies (1)                                                          Reads (1/3)
                                                                         Modifies (1/3)                           Reads (1/3)     Modifies (1)
                                                           Reads (2/3)
       Variable                                                                                      Modifies (2/3)
    FLCONNFIDEC
                                Symbol Variable                                                                                             Variable
                                   STATE                                                                                                   INCOMEC
                                                                   Variable                                            Variable
                                                                   IECLINK                                            ANASTATE




E-CARES Projekt              Reengineering                 Analysen           Kombination Zusammenfassung                                         12/17
Kombination von graphbasierten Redesign-Analysen                                                                                          Tobias Walter

 Funktionsorientierte Analyse
                                                                                           Block
                                                                                          TRACON

                                                    Contains
                                                                  Contains                    Contains
      Signal Entry
      CALLABORT                                                                                                Contains
                                                                                   Contains
                                     Signal Entry                                               Signal Entry
                                        MSG                                                   STARTPREANA
       Goto (1/2)
                      Goto (1/2)                                                                  Goto (1)
                                       Goto (1)
    Statem. Sequ.
   NOTCONNECTED                                                                                Statem. Sequ.
                                                                                                 ANAIDLE
                                    Statem. Sequ.                      Record                                                                    Record
                                    CONNECTED                       TRACONDATA                                                                  ECDATA

                                                          Contains                                  Call (1)        Call (1)
                                                                        Contains
                                                                 Contains                                                               Contains
                                                                                                Subroutine             Subroutine                    Contains
                                                                                               INITECDATA           READGLOROUTE
                   Modifies (1)
  Modifies (1/2)
                                    Modifies (1)                                                         Reads (1/3)
                                                                             Modifies (1/3)                         Reads (1/3)       Modifies (1)
                                                               Reads (2/3)
       Variable                                                                               Modifies (2/3)
    FLCONNFIDEC
                                    Symbol Variable                                                                                             Variable
                                       STATE                                                                                                   INCOMEC
                                                                       Variable                                            Variable
                                                                       IECLINK                                            ANASTATE



 • Zerlegen von zusammenhängenden Datenstrukturen
E-CARES Projekt                   Reengineering                Analysen           Kombination Zusammenfassung                                         12/17
Kombination von graphbasierten Redesign-Analysen                           Tobias Walter

 Anwendungsspezifische Analyse
 • Basiert auf anwendungsspezifischen Wissen in Form
   von Mustern im Strukturgraph
 • Restrukturierung von Mustern
    • teilweise technisch nicht möglich
    • hat Verschlechterung der Performance zur Folge
 • Ziel:
    • Muster mit Hilfe von Pattern Matching im
        Strukturgraph erkennen
      • Bindung der Muster stärken
 • Gewichtung aller semantischen Kanten eines Musters
     mit Wert 1

E-CARES Projekt   Reengineering   Analysen   Kombination Zusammenfassung         13/17
Kombination von graphbasierten Redesign-Analysen                           Tobias Walter

 Kombination der Analysen
 • Ziel: Ausnutzen der Vorteile aller Analysen
 • Kombination durch Verknüpfung der Ergebnisse
 • Überlagerung der Gewichtung mit Hilfe eines Operators
     zur Komposition
      • Eingabe:
           • 2 Zusammenhangsmaße, die die direkte Verbindung zwischen
             Entitäten a und b beschreiben
           • natürliche Zahl n, in der die Anzahl der Überlagerungen
              gespeichert ist
      • Ausgabe:
           • Neues Zusammenhangsmaße für zwei Entitäten a und b
 • Formal:




E-CARES Projekt   Reengineering   Analysen   Kombination Zusammenfassung         14/17
Kombination von graphbasierten Redesign-Analysen                               Tobias Walter

 Kombination der Analysen
 Gewichtung 1 (datenorientiert):                 Gewichtung 2 (funktionsorientiert):
                  Statem. Sequ.                                Statem. Sequ.
                    ANAIDLE                                      ANAIDLE



                      Call (1/3)                                    Call (1)

                   Subroutine                                   Subroutine
                  INITECDATA                                   INITECDATA




E-CARES Projekt   Reengineering    Analysen   Kombination Zusammenfassung            15/17
Kombination von graphbasierten Redesign-Analysen                                      Tobias Walter

 Kombination der Analysen
 Gewichtung 1 (datenorientiert):                         Gewichtung 2 (funktionsorientiert):
                  Statem. Sequ.                                       Statem. Sequ.
                    ANAIDLE                                             ANAIDLE



                      Call (1/3)                                           Call (1)

                   Subroutine                                          Subroutine
                  INITECDATA                                          INITECDATA




                                   Kombinierte Gewichtung

                                           Statem. Sequ.
                                             ANAIDLE



                                                Call (2/3)

                                             Subroutine
                                            INITECDATA



E-CARES Projekt   Reengineering      Analysen     Kombination Zusammenfassung               15/17
Kombination von graphbasierten Redesign-Analysen                                                                                          Tobias Walter

 Kombination der Analysen
                                                                                        Block
                                                                                       TRACON

                                                 Contains
                                                                Contains                    Contains
     Signal Entry
     CALLABORT                                                                                                Contains
                                                                                 Contains
                                  Signal Entry                                                Signal Entry
                                     MSG                                                    STARTPREANA
      Goto (3/8)
                   Goto (3/4)                                                                   Goto (1)
                                    Goto (1)
   Statem. Sequ.
  NOTCONNECTED                                                                               Statem. Sequ.
                                                                                               ANAIDLE
                                  Statem. Sequ.                     Record                                                                      Record
                                  CONNECTED                      TRACONDATA                                                                    ECDATA

                                                       Contains                                  Call (2/3)        Call (5/6)
                                                                      Contains
                                                               Contains                                                                Contains
                                                                                              Subroutine              Subroutine                    Contains
                                                                                             INITECDATA            READGLOROUTE
               Modifies (3/4)
 Modifies (1/2)
                                 Modifies (1)                                                          Reads (1/3)
                                                                                                                     Reads (1/3)     Modifies (1)
                                                            Reads (7/12) Modifies (5/12)
      Variable
   FLCONNFIDEC                                                                                         Modifies (1/2)
                                 Symbol Variable                                                                                               Variable
                                    STATE                                                                                                     INCOMEC
                                                                     Variable                                             Variable
                                                                     IECLINK                                             ANASTATE



 • Überlagerung der daten- und funktionsorientierten Gewichtung
E-CARES Projekt                 Reengineering               Analysen            Kombination Zusammenfassung                                           16/17
Kombination von graphbasierten Redesign-Analysen                                                                                          Tobias Walter

 Kombination der Analysen
                                                                                        Block
                                                                                       TRACON

                                                 Contains
                                                                Contains                    Contains
     Signal Entry
     CALLABORT                                                                                                Contains
                                                                                 Contains
                                  Signal Entry                                                Signal Entry
                                     MSG                                                    STARTPREANA
      Goto (3/8)
                   Goto (3/4)                                                                   Goto (1)
                                    Goto (1)
   Statem. Sequ.
  NOTCONNECTED                                                                               Statem. Sequ.
                                                                                               ANAIDLE
                                  Statem. Sequ.                     Record                                                                      Record
                                  CONNECTED                      TRACONDATA                                                                    ECDATA

                                                       Contains                                  Call (2/3)        Call (5/6)
                                                                      Contains
                                                               Contains                                                                Contains
                                                                                              Subroutine              Subroutine                    Contains
                                                                                             INITECDATA            READGLOROUTE
               Modifies (3/4)
 Modifies (1/2)
                                 Modifies (1)                                                          Reads (1/3)
                                                                                                                     Reads (1/3)     Modifies (1)
                                                            Reads (7/12) Modifies (5/12)
      Variable
   FLCONNFIDEC                                                                                         Modifies (1/2)
                                 Symbol Variable                                                                                               Variable
                                    STATE                                                                                                     INCOMEC
                                                                     Variable                                             Variable
                                                                     IECLINK                                             ANASTATE




 • Herabgewichtung der kritischen Kanten
E-CARES Projekt                 Reengineering               Analysen            Kombination Zusammenfassung                                           16/17
Kombination von graphbasierten Redesign-Analysen                                                                                          Tobias Walter

 Kombination der Analysen
                                                                                        Block                     Cluster 2
                                                                                       TRACON
              Cluster 1
                                                 Contains
                                                                Contains                    Contains
     Signal Entry
     CALLABORT                                                                                                Contains
                                                                                 Contains
                                  Signal Entry                                                Signal Entry
                                     MSG                                                    STARTPREANA
      Goto (3/8)
                   Goto (3/4)                                                                   Goto (1)
                                    Goto (1)
   Statem. Sequ.
  NOTCONNECTED                                                                               Statem. Sequ.
                                                                                               ANAIDLE
                                  Statem. Sequ.                     Record                                                                      Record
                                  CONNECTED                      TRACONDATA                                                                    ECDATA

                                                       Contains                                  Call (2/3)        Call (5/6)
                                                                      Contains
                                                               Contains                                                                Contains
                                                                                              Subroutine              Subroutine                    Contains
                                                                                             INITECDATA            READGLOROUTE
               Modifies (3/4)
 Modifies (1/2)
                                 Modifies (1)                                                          Reads (1/3)
                                                                                                                     Reads (1/3)     Modifies (1)
                                                            Reads (7/12) Modifies (5/12)
      Variable
   FLCONNFIDEC                                                                                         Modifies (1/2)
                                 Symbol Variable                                                                                               Variable
                                    STATE                                                                                                     INCOMEC
                                                                     Variable                                             Variable
                                                                     IECLINK                                             ANASTATE



 • Mögliches Ergebnis zur Dekomposition nach dem Clustering
E-CARES Projekt                 Reengineering               Analysen            Kombination Zusammenfassung                                           16/17
Kombination von graphbasierten Redesign-Analysen                           Tobias Walter

 Zusammenfassung
 • ECARES-Projekt
    • Reengineering des Telekommunikationssystems AXE10
 • Szenario: Blockdekomposition
    • Daten-, funktionsorientiert und anwendungsspezifische
         Gewichtungen
 • Kombination der Analysen
      • Kompositionsoperator zur Überlagerung der
         Gewichtungen
 • Fallstudie Block TRACON
      • Validierung durch
           • Erfahrung der Designern bei Ericsson
           • Testen der Blockdekomposition im Simulator
E-CARES Projekt   Reengineering   Analysen   Kombination Zusammenfassung         17/17

Contenu connexe

En vedette

Spm tema karangan berdasarkan tema buku teks
Spm tema karangan berdasarkan tema buku teksSpm tema karangan berdasarkan tema buku teks
Spm tema karangan berdasarkan tema buku teksWong Fangmin
 
Pulmonary hypertension dr md toufiqur rahman dm fcps frcp fesc faha fscai fapsic
Pulmonary hypertension dr md toufiqur rahman dm fcps frcp fesc faha fscai fapsicPulmonary hypertension dr md toufiqur rahman dm fcps frcp fesc faha fscai fapsic
Pulmonary hypertension dr md toufiqur rahman dm fcps frcp fesc faha fscai fapsicPROFESSOR DR. MD. TOUFIQUR RAHMAN
 
Panduan contoh karangan dalam pelbagai format upsr sjk 2015
Panduan contoh karangan dalam pelbagai format upsr sjk 2015Panduan contoh karangan dalam pelbagai format upsr sjk 2015
Panduan contoh karangan dalam pelbagai format upsr sjk 2015thuvas27
 
INFLAMMATORY BOWEL DISEASE IMAGING(RADIOLOGY)
INFLAMMATORY BOWEL DISEASE IMAGING(RADIOLOGY)INFLAMMATORY BOWEL DISEASE IMAGING(RADIOLOGY)
INFLAMMATORY BOWEL DISEASE IMAGING(RADIOLOGY)Khyati Vadera
 
Teknik menjawab-ulasan-upsr
Teknik menjawab-ulasan-upsrTeknik menjawab-ulasan-upsr
Teknik menjawab-ulasan-upsrDaddyCool Junior
 

En vedette (7)

Spm tema karangan berdasarkan tema buku teks
Spm tema karangan berdasarkan tema buku teksSpm tema karangan berdasarkan tema buku teks
Spm tema karangan berdasarkan tema buku teks
 
delitos informaticos
delitos informaticosdelitos informaticos
delitos informaticos
 
Pulmonary hypertension dr md toufiqur rahman dm fcps frcp fesc faha fscai fapsic
Pulmonary hypertension dr md toufiqur rahman dm fcps frcp fesc faha fscai fapsicPulmonary hypertension dr md toufiqur rahman dm fcps frcp fesc faha fscai fapsic
Pulmonary hypertension dr md toufiqur rahman dm fcps frcp fesc faha fscai fapsic
 
Ikatan krs
Ikatan krsIkatan krs
Ikatan krs
 
Panduan contoh karangan dalam pelbagai format upsr sjk 2015
Panduan contoh karangan dalam pelbagai format upsr sjk 2015Panduan contoh karangan dalam pelbagai format upsr sjk 2015
Panduan contoh karangan dalam pelbagai format upsr sjk 2015
 
INFLAMMATORY BOWEL DISEASE IMAGING(RADIOLOGY)
INFLAMMATORY BOWEL DISEASE IMAGING(RADIOLOGY)INFLAMMATORY BOWEL DISEASE IMAGING(RADIOLOGY)
INFLAMMATORY BOWEL DISEASE IMAGING(RADIOLOGY)
 
Teknik menjawab-ulasan-upsr
Teknik menjawab-ulasan-upsrTeknik menjawab-ulasan-upsr
Teknik menjawab-ulasan-upsr
 

Plus de Tobias Walter

Establishing a Bridge from Graph-based Modeling Languages to Ontology Languages
 Establishing a Bridge from Graph-based Modeling Languages to Ontology Languages Establishing a Bridge from Graph-based Modeling Languages to Ontology Languages
Establishing a Bridge from Graph-based Modeling Languages to Ontology LanguagesTobias Walter
 
Joint Language and Domain Engineering
Joint Language and Domain EngineeringJoint Language and Domain Engineering
Joint Language and Domain EngineeringTobias Walter
 
OntoDSL: An Ontology-Based Framework for Domain-Specific Languages
OntoDSL: An Ontology-Based Framework for Domain-Specific LanguagesOntoDSL: An Ontology-Based Framework for Domain-Specific Languages
OntoDSL: An Ontology-Based Framework for Domain-Specific LanguagesTobias Walter
 
Combining ontology-enriched Domain-Specific Languages
Combining ontology-enriched Domain-Specific LanguagesCombining ontology-enriched Domain-Specific Languages
Combining ontology-enriched Domain-Specific LanguagesTobias Walter
 
Towards Semantic Modeling of Network Physical Devices
Towards Semantic Modeling of Network Physical DevicesTowards Semantic Modeling of Network Physical Devices
Towards Semantic Modeling of Network Physical DevicesTobias Walter
 
Combining DSLs and Ontologies Using Metamodel Integration
Combining DSLs and Ontologies Using Metamodel IntegrationCombining DSLs and Ontologies Using Metamodel Integration
Combining DSLs and Ontologies Using Metamodel IntegrationTobias Walter
 

Plus de Tobias Walter (6)

Establishing a Bridge from Graph-based Modeling Languages to Ontology Languages
 Establishing a Bridge from Graph-based Modeling Languages to Ontology Languages Establishing a Bridge from Graph-based Modeling Languages to Ontology Languages
Establishing a Bridge from Graph-based Modeling Languages to Ontology Languages
 
Joint Language and Domain Engineering
Joint Language and Domain EngineeringJoint Language and Domain Engineering
Joint Language and Domain Engineering
 
OntoDSL: An Ontology-Based Framework for Domain-Specific Languages
OntoDSL: An Ontology-Based Framework for Domain-Specific LanguagesOntoDSL: An Ontology-Based Framework for Domain-Specific Languages
OntoDSL: An Ontology-Based Framework for Domain-Specific Languages
 
Combining ontology-enriched Domain-Specific Languages
Combining ontology-enriched Domain-Specific LanguagesCombining ontology-enriched Domain-Specific Languages
Combining ontology-enriched Domain-Specific Languages
 
Towards Semantic Modeling of Network Physical Devices
Towards Semantic Modeling of Network Physical DevicesTowards Semantic Modeling of Network Physical Devices
Towards Semantic Modeling of Network Physical Devices
 
Combining DSLs and Ontologies Using Metamodel Integration
Combining DSLs and Ontologies Using Metamodel IntegrationCombining DSLs and Ontologies Using Metamodel Integration
Combining DSLs and Ontologies Using Metamodel Integration
 

Kombination von graphbasierten Redesign-Analysen

  • 1. ECARES-Projekt: Kombination von graphbasierten Redesign-Analysen 10. Workshop Software-Reengineering Bad Honnef, 2008 Tobias Walter, Christof Mosler 05.05.2008
  • 2. Kombination von graphbasierten Redesign-Analysen Tobias Walter Überblick • Das E-CARES Projekt • Reengineering von Telekommunikationssystemen • Analysen • Datenorientierte Analyse • Funktionsorientierte Analyse • Anwendungsspezifische Analyse • Kombination der Analysen • Zusammenfassung E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 2/17
  • 3. Kombination von graphbasierten Redesign-Analysen Tobias Walter Das E-CARES Projekt • Ericsson Communication ARchitecture for Embedded Systems • Kooperation seit 1999 zwischen • Lehrstuhl für Informatik 3 (Softwaretechnik) der RWTH • Ericsson Eurolab GmbH • Ziele der Kooperation • Methoden, Konzepte und Werkzeuge • zur Unterstützung der Verständlichkeit und Restrukturierung von Software • unter Beachtung der Komplexität des Legacy Telekommunikationssystems E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 3/17
  • 4. Kombination von graphbasierten Redesign-Analysen Tobias Walter Reengineering von Telekommunikationssystemen • Telekommunikationssystem • GSM-Infrastruktur DOCUMENT Block_A; • Kernstück ist das Mobile DECLARE; VARIABLE NAME; Switching Center VARIABLE BNUMBER; • Stetige Erweiterung des Systems END DECLARE; (SMS, GPRS etc.) PROGRAM ; ENTER DIAL WITH BNUMBER; • Degenerieren der Software GOTO DIAL01; • Implementierung DIAL01); NAME = „AXE10“ • Blöcke als Softwareeinheit SEND SIGNAL WITH NUMBER, NAME; • Programmiersprache PLEX EXIT; • Signalorientiertes Paradigma ... • Bis zu 80.000 LoC pro Block E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 4/17
  • 5. Kombination von graphbasierten Redesign-Analysen Tobias Walter Reengineering Ansatz Modification re-think Concept Concept Forward Reverse Engineering Engineering re-specifiy (Refinement) Specification Specification (Abstraction) re-design Design Design re-code Implementation Implementation Structure new Graph Structure Graph PLEX Code new PLEX Code E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 5/17
  • 6. Kombination von graphbasierten Redesign-Analysen Tobias Walter Szenario: Blockdekomposition • Problem: Beschränkte Blockgröße durch Hardware vorgegeben • Lösung: Dekomposition von Blöcken • Minimale Kopplung zwischen Teilblöcken • Maximale Bindung innerhalb eines Blockes • Verschiedene Analysen zur Dekomposition • Datenorientiert • Funktionsorientiert • Anwendungsspezifisch • Ergebnis: • Nicht immer optimale Ergebnisse beim Anwenden einzelner Analysen • Daher: Kombination der Analysen E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 6/17
  • 7. Kombination von graphbasierten Redesign-Analysen Tobias Walter Beispiel eines Strukturgraphen Block TRACON Contains Contains Contains Signal Entry CALLABORT Contains Contains Signal Entry Signal Entry MSG STARTPREANA Goto Goto Goto Goto Statem. Sequ. NOTCONNECTED Statem. Sequ. ANAIDLE Statem. Sequ. Record Record CONNECTED TRACONDATA ECDATA Contains Call Call Contains Contains Contains Subroutine Subroutine Contains INITECDATA READGLOROUTE Modifies Modifies Modifies Reads Modifies Reads Modifies Reads Variable FLCONNFIDEC Modifies Symbol Variable Variable STATE INCOMEC Variable Variable IECLINK ANASTATE E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 7/17
  • 8. Kombination von graphbasierten Redesign-Analysen Tobias Walter Beispiel eines Strukturgraphen Block TRACON Main Module Contains EC Module Contains Contains Signal Entry CALLABORT Contains Contains Signal Entry Signal Entry MSG STARTPREANA Goto Goto Goto Goto Statem. Sequ. NOTCONNECTED Statem. Sequ. ANAIDLE Statem. Sequ. Record Record CONNECTED TRACONDATA ECDATA Contains Call Call Contains Contains Contains Subroutine Subroutine Contains INITECDATA READGLOROUTE Modifies Modifies Modifies Reads Modifies Reads Modifies Reads Variable FLCONNFIDEC Modifies Symbol Variable Variable STATE INCOMEC Variable Variable IECLINK ANASTATE 2 Module im Block TRACON E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 7/17
  • 9. Kombination von graphbasierten Redesign-Analysen Tobias Walter Redesign-Analysen • Bestimmung eines Zusammenhangsmaß Sim(a,b) • Beschreibt Bindung zweier Knoten a und b • Gewichtung der semantischen Kanten im Strukturgraph • Wert: Rationale Zahl zwischen 0 und 1 • Nach den Redesign-Analysen: • Verbindungsbasiertes Clustering • Dekomposition durch Restrukturierung des Strukturgraphen E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 8/17
  • 10. Kombination von graphbasierten Redesign-Analysen Tobias Walter Datenorientierte Analyse • Ziele • Programmelemente mit starker datenorientierter Bindung zusammenhalten • Vermeiden von blockübergreifenden Datenzugriffen nach einem Split • Berechnungsvorschrift: • Hilfsfunktion data(a): • Liefert Menge von Datenelementen, auf die im Laufe aller Kontrollflüsse ausgehend von a zugegriffen wird E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 9/17
  • 11. Kombination von graphbasierten Redesign-Analysen Tobias Walter Datenorientierte Analyse Block TRACON Contains Contains Contains Signal Entry CALLABORT Contains Contains Signal Entry Signal Entry MSG STARTPREANA Goto (1/4) Goto (1) Goto (1) Goto (1) Statem. Sequ. NOTCONNECTED Statem. Sequ. ANAIDLE Statem. Sequ. Record Record CONNECTED TRACONDATA ECDATA Contains Call (1/3) Call (2/3) Contains Contains Contains Subroutine Subroutine Contains INITECDATA READGLOROUTE Modifies (1/2) Modifies (1/2) Modifies (1) Reads (1/3) Modifies (1/2) Reads (1/3) Modifies (1) Reads (1/2) Variable FLCONNFIDEC Modifies (1/3) Symbol Variable Variable STATE INCOMEC Variable Variable IECLINK ANASTATE E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 10/17
  • 12. Kombination von graphbasierten Redesign-Analysen Tobias Walter Datenorientierte Analyse Block TRACON Contains Contains Contains Signal Entry CALLABORT Contains Contains Signal Entry Signal Entry MSG STARTPREANA Goto (1/4) Goto (1) Goto (1) Goto (1) Statem. Sequ. NOTCONNECTED Statem. Sequ. ANAIDLE Statem. Sequ. Record Record CONNECTED TRACONDATA ECDATA Contains Contains Call (1/3) Call (2/3) Contains Contains Subroutine Subroutine Contains INITECDATA READGLOROUTE Modifies (1/2) Modifies (1/2) Modifies (1) Reads (1/3) Modifies (1/2) Reads (1/3) Modifies (1) Reads (1/2) Variable FLCONNFIDEC Modifies (1/3) Symbol Variable Variable STATE INCOMEC Variable Variable IECLINK ANASTATE E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 10/17
  • 13. Kombination von graphbasierten Redesign-Analysen Tobias Walter Datenorientierte Analyse Block TRACON Contains Contains Contains Signal Entry CALLABORT Contains Contains Signal Entry Signal Entry MSG STARTPREANA Goto (1/4) Goto (1) Goto (1) Goto (1) Statem. Sequ. NOTCONNECTED Statem. Sequ. ANAIDLE Statem. Sequ. Record Record CONNECTED TRACONDATA ECDATA Contains Call (1/3) Call (2/3) Contains Contains Contains Subroutine Subroutine Contains INITECDATA READGLOROUTE Modifies (1/2) Modifies (1/2) Modifies (1) Reads (1/3) Reads (1/2) Modifies (1/2) Reads (1/3) Modifies (1) Variable FLCONNFIDEC Modifies (1/3) Symbol Variable Variable STATE INCOMEC Variable Variable IECLINK ANASTATE • Mögliches Zerlegen von zusammenhängenden Funktionen E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 10/17
  • 14. Kombination von graphbasierten Redesign-Analysen Tobias Walter Funktionsorientierte Analyse • Ziele • Programmelemente mit starker funktionsorientierter Bindung zusammenhalten • Erkennen von funktionalen Bereichen im Block • Berechnungsvorschrift: • Hilfsfunktion signal(a): • Liefert Menge von Signaleingängen, von denen Kontrollflüsse zum Knoten a führen E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 11/17
  • 15. Kombination von graphbasierten Redesign-Analysen Tobias Walter Funktionsorientierte Analyse Block TRACON Contains Contains Contains Signal Entry CALLABORT Contains Contains Signal Entry Signal Entry MSG STARTPREANA Goto (1/2) Goto (1/2) Goto (1) Goto (1) Statem. Sequ. NOTCONNECTED Statem. Sequ. ANAIDLE Statem. Sequ. Record Record CONNECTED TRACONDATA ECDATA Contains Call (1) Call (1) Contains Contains Contains Subroutine Subroutine Contains INITECDATA READGLOROUTE Modifies (1) Modifies (1/2) Modifies (1) Reads (1/3) Modifies (1/3) Reads (1/3) Modifies (1) Reads (2/3) Variable Modifies (2/3) FLCONNFIDEC Symbol Variable Variable STATE INCOMEC Variable Variable IECLINK ANASTATE E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 12/17
  • 16. Kombination von graphbasierten Redesign-Analysen Tobias Walter Funktionsorientierte Analyse Block TRACON Contains Contains Contains Signal Entry CALLABORT Contains Contains Signal Entry Signal Entry MSG STARTPREANA Goto (1/2) Goto (1/2) Goto (1) Goto (1) Statem. Sequ. NOTCONNECTED Statem. Sequ. ANAIDLE Statem. Sequ. Record Record CONNECTED TRACONDATA ECDATA Contains Call (1) Call (1) Contains Contains Contains Modifies (1/2) Subroutine Subroutine Contains INITECDATA READGLOROUTE Modifies (1) Modifies (1) Reads (1/3) Modifies (1/3) Reads (1/3) Modifies (1) Reads (2/3) Variable Modifies (2/3) FLCONNFIDEC Symbol Variable Variable STATE INCOMEC Variable Variable IECLINK ANASTATE E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 12/17
  • 17. Kombination von graphbasierten Redesign-Analysen Tobias Walter Funktionsorientierte Analyse Block TRACON Contains Contains Contains Signal Entry CALLABORT Contains Contains Signal Entry Signal Entry MSG STARTPREANA Goto (1/2) Goto (1/2) Goto (1) Goto (1) Statem. Sequ. NOTCONNECTED Statem. Sequ. ANAIDLE Statem. Sequ. Record Record CONNECTED TRACONDATA ECDATA Contains Call (1) Call (1) Contains Contains Contains Subroutine Subroutine Contains INITECDATA READGLOROUTE Modifies (1) Modifies (1/2) Modifies (1) Reads (1/3) Modifies (1/3) Reads (1/3) Modifies (1) Reads (2/3) Variable Modifies (2/3) FLCONNFIDEC Symbol Variable Variable STATE INCOMEC Variable Variable IECLINK ANASTATE • Zerlegen von zusammenhängenden Datenstrukturen E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 12/17
  • 18. Kombination von graphbasierten Redesign-Analysen Tobias Walter Anwendungsspezifische Analyse • Basiert auf anwendungsspezifischen Wissen in Form von Mustern im Strukturgraph • Restrukturierung von Mustern • teilweise technisch nicht möglich • hat Verschlechterung der Performance zur Folge • Ziel: • Muster mit Hilfe von Pattern Matching im Strukturgraph erkennen • Bindung der Muster stärken • Gewichtung aller semantischen Kanten eines Musters mit Wert 1 E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 13/17
  • 19. Kombination von graphbasierten Redesign-Analysen Tobias Walter Kombination der Analysen • Ziel: Ausnutzen der Vorteile aller Analysen • Kombination durch Verknüpfung der Ergebnisse • Überlagerung der Gewichtung mit Hilfe eines Operators zur Komposition • Eingabe: • 2 Zusammenhangsmaße, die die direkte Verbindung zwischen Entitäten a und b beschreiben • natürliche Zahl n, in der die Anzahl der Überlagerungen gespeichert ist • Ausgabe: • Neues Zusammenhangsmaße für zwei Entitäten a und b • Formal: E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 14/17
  • 20. Kombination von graphbasierten Redesign-Analysen Tobias Walter Kombination der Analysen Gewichtung 1 (datenorientiert): Gewichtung 2 (funktionsorientiert): Statem. Sequ. Statem. Sequ. ANAIDLE ANAIDLE Call (1/3) Call (1) Subroutine Subroutine INITECDATA INITECDATA E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 15/17
  • 21. Kombination von graphbasierten Redesign-Analysen Tobias Walter Kombination der Analysen Gewichtung 1 (datenorientiert): Gewichtung 2 (funktionsorientiert): Statem. Sequ. Statem. Sequ. ANAIDLE ANAIDLE Call (1/3) Call (1) Subroutine Subroutine INITECDATA INITECDATA Kombinierte Gewichtung Statem. Sequ. ANAIDLE Call (2/3) Subroutine INITECDATA E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 15/17
  • 22. Kombination von graphbasierten Redesign-Analysen Tobias Walter Kombination der Analysen Block TRACON Contains Contains Contains Signal Entry CALLABORT Contains Contains Signal Entry Signal Entry MSG STARTPREANA Goto (3/8) Goto (3/4) Goto (1) Goto (1) Statem. Sequ. NOTCONNECTED Statem. Sequ. ANAIDLE Statem. Sequ. Record Record CONNECTED TRACONDATA ECDATA Contains Call (2/3) Call (5/6) Contains Contains Contains Subroutine Subroutine Contains INITECDATA READGLOROUTE Modifies (3/4) Modifies (1/2) Modifies (1) Reads (1/3) Reads (1/3) Modifies (1) Reads (7/12) Modifies (5/12) Variable FLCONNFIDEC Modifies (1/2) Symbol Variable Variable STATE INCOMEC Variable Variable IECLINK ANASTATE • Überlagerung der daten- und funktionsorientierten Gewichtung E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 16/17
  • 23. Kombination von graphbasierten Redesign-Analysen Tobias Walter Kombination der Analysen Block TRACON Contains Contains Contains Signal Entry CALLABORT Contains Contains Signal Entry Signal Entry MSG STARTPREANA Goto (3/8) Goto (3/4) Goto (1) Goto (1) Statem. Sequ. NOTCONNECTED Statem. Sequ. ANAIDLE Statem. Sequ. Record Record CONNECTED TRACONDATA ECDATA Contains Call (2/3) Call (5/6) Contains Contains Contains Subroutine Subroutine Contains INITECDATA READGLOROUTE Modifies (3/4) Modifies (1/2) Modifies (1) Reads (1/3) Reads (1/3) Modifies (1) Reads (7/12) Modifies (5/12) Variable FLCONNFIDEC Modifies (1/2) Symbol Variable Variable STATE INCOMEC Variable Variable IECLINK ANASTATE • Herabgewichtung der kritischen Kanten E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 16/17
  • 24. Kombination von graphbasierten Redesign-Analysen Tobias Walter Kombination der Analysen Block Cluster 2 TRACON Cluster 1 Contains Contains Contains Signal Entry CALLABORT Contains Contains Signal Entry Signal Entry MSG STARTPREANA Goto (3/8) Goto (3/4) Goto (1) Goto (1) Statem. Sequ. NOTCONNECTED Statem. Sequ. ANAIDLE Statem. Sequ. Record Record CONNECTED TRACONDATA ECDATA Contains Call (2/3) Call (5/6) Contains Contains Contains Subroutine Subroutine Contains INITECDATA READGLOROUTE Modifies (3/4) Modifies (1/2) Modifies (1) Reads (1/3) Reads (1/3) Modifies (1) Reads (7/12) Modifies (5/12) Variable FLCONNFIDEC Modifies (1/2) Symbol Variable Variable STATE INCOMEC Variable Variable IECLINK ANASTATE • Mögliches Ergebnis zur Dekomposition nach dem Clustering E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 16/17
  • 25. Kombination von graphbasierten Redesign-Analysen Tobias Walter Zusammenfassung • ECARES-Projekt • Reengineering des Telekommunikationssystems AXE10 • Szenario: Blockdekomposition • Daten-, funktionsorientiert und anwendungsspezifische Gewichtungen • Kombination der Analysen • Kompositionsoperator zur Überlagerung der Gewichtungen • Fallstudie Block TRACON • Validierung durch • Erfahrung der Designern bei Ericsson • Testen der Blockdekomposition im Simulator E-CARES Projekt Reengineering Analysen Kombination Zusammenfassung 17/17