seminar aosd modellierung von aspekten

Click here to load reader

Download Seminar AOSD Modellierung von Aspekten

Post on 21-Jan-2016

30 views

Category:

Documents

0 download

Embed Size (px)

DESCRIPTION

Seminar AOSD Modellierung von Aspekten. Miao Tang Betreuer: Dipl.-Inform. Dirk Wischermann. Agenda. Einführung Erweiterung der UML UML Erweiterung Mechanismus Ein UML Profil für ASOD Modellierung von Aspekten Überlappen, Sub-Aspekt Konzept, Aspekt Architektur, Concern Diagramm - PowerPoint PPT Presentation

TRANSCRIPT

  • Seminar AOSD

    Modellierung von AspektenMiao Tang

    Betreuer: Dipl.-Inform. Dirk Wischermann

    Modellierung von Aspekte

  • AgendaEinfhrungErweiterung der UMLUML Erweiterung MechanismusEin UML Profil fr ASODModellierung von Aspektenberlappen, Sub-Aspekt Konzept, Aspekt Architektur, Concern DiagrammBeispiel Digital Sound RecorderZusammenfassung

    Modellierung von Aspekte

  • 1. EinfhrungTypischer Prozess der AOSD

    Modellierung von Aspekte

  • Vorteile der Betrachtung der Aspekte in der Designphase Dokumentation und Lernenfrhere Erkennung und gesamte Vorstellung intuitiver verstehen und dokumentierenWiederverwendung von AspekteWiederverwendung der Informationen von Aspekten enfacherauch die automatische Codeerzeugung mglichRoundtrip-Entwicklungschrittweise und iterative Entwicklung mglich

    Modellierung von Aspekte

  • UMLWikipedia:Die UML( Unified Modeling Language) ist eine von der Object Management Group (OMG) entwickelte und standardisierte Sprache fr die Modellierung von Software und anderen Systemen.

    6 Strukturdiagramme und 7 Verhaltensdiagramme

    4 Schichten Architektur: Meta-Metamodell, Metamodell, Modell und Benutzer Objekte

    Zur Beschreibung der Semantik von UML wird ein Metamodell benutzt.

    Modellierung von Aspekte

  • 2. Erweiterung der UML fr AOSDUML ErweiterungsmechanismenHilfsmittel zur Erweiterung der UML fr spezielle Anwendungsgebiete

    Stereotypes

    Tagged Values

    Constraints

    Modellierung von Aspekte

  • Stereotypesabgeleitet von Elementen des UML Meta-Modells oder Standardelementen

    definieren neue Typen von Modellelementen

    Notation: MyStereotype

    Modellierung von Aspekte

  • Tagged ValuesKombination aus Tag und Valuespeichern Informationen ber Modellelemente

    Modellierung von Aspekte

  • Constraintswolldefinierte Regeln

    in informeller Sprache, Pseudo-Code, OCL

    drcken neue Semantik aus

    Modellierung von Aspekte

  • Eine Methode fr AOSDAspekt Classifier

    Modellierung von Aspekte

  • Eine Methode fr AOSDBeziehungen Abstraction Dependency

    Modellierung von Aspekte

  • Eine Methode fr AOSDWoven Klassen neue Stereotyp des Modellelementes Class

    Entsteht aus Aspekte und Klassen durch Aspekt-WeaverQuelle-Klasse und Aspekt werden spezifiziert

    Noch systematischer: UML Profil fr AOSD

    Modellierung von Aspekte

  • UML ProfilA UML Profile is a predefined set of Stereotypes, TaggedValues, Constraints, and notation icons that collectively specialize and tailor the UML for a specific domain or process (e.g., Unified Process profile). A profile does not extend UML by adding any new basic concepts. Instead, it provides conventions for applying and specializing standard UML to a particular environment or domain.

    als Paket mit dem Schlsselwort profile dargestellt,im allgemein auf Pakete angewendet.

    Modellierung von Aspekte

  • UML Profil fr AOSDsoll die Fhigkeit haben, Aspekte, kernfunktionale Klassen und die Assoziationen dazwischen zu prsentieren

    soll die Struktur und das Verhalten von dieser Elementen beschreiben knnen

    Modellierung von Aspekte

  • AOSD Profile Aspekte als Stereotyp von dem Classifier definiert

    Klassifizierung:asynchron: keine Wirkung auf Kernklasse synchron: beeinflussen normaleweise das Verhalten der Kernklassen mit tagged value { synchronous }Operationen Preactivation und Postactivation mssen definiert werden

    Modellierung von Aspekte

  • AOSD Profile Crosscutting-Konzept

    Stereotyp fr Assoziation

    modelliert cross-cutting Beziehung, wo der Aspektcode die kern Komponenten cross cuts

    nur gltig zwischen Aspekte bzw. Aspekt und Klassen

    Modellierung von Aspekte

  • AOSD Profil Beispiel Bounded Buffer Der Puffer hat eine begrenzte Kapazitt, kann mehrere Lesen-Operationen handeln, whrend alle Schreiben-Operationen in der Warteschlange stehen

    Bei einer Schreiben-Operation werden alle andere Operationen blockiert, bis die Schreiben-Operation fertig ist.

    Der Service Synchronisation kontrolliert den Zugang zu dem Puffer, z.B. eine Put- Methode ist nur erlaubt wenn der Puffer im Zstand EMPTY ist.

    Der Service Scheduling fhrt bestimmte Zugangsanforderung durch, z.B. nur ein Schreiber hat zu einem bestimmten Zeitpunkt den Zugang zu dem Puffer.

    Synchronisation und Scheduling sind die croscutting Anforderungen und knnen als Aspekte modelliert werden.

    Modellierung von Aspekte

  • AOSD Profil Beispiel Bounded Buffer

    Modellierung von Aspekte

  • AOSD Profile Dynamische Beschreibung mit UML Verhaltenspacket

    Modellierung von Aspekte

  • 3. Modellierung von AspektenWie Aspekte selbe modularisiert werden knnen?

    Ein System hat zwei Concerns: Sicherheit der Key-Variablen: verschlsselt und entschlsselt einige Variabelenwerte an den empfindlichen PunktenVerhindern des berlaufs der Variablenwerte: berprft im voraus, ob die erforderlichen Datenmanipulationen innerhalb eines festgelegten Bereiches bleiben. berlappen

    Aspekte in feinere Granularitten zerlegen und frei kombinieren.

    Modellierung von Aspekte

  • Sub-Aspekt, Aspekt ArchitekturConcern: matter of interest ,kann durch einen oder mehrere Aspekte behandelt werden. Sub-Aspektemehr als ein Aspekt ein Concern realisierennormaleweise von mehr als einem Concern benutzt knnen unter Umstnde zusammen einen zusammengesetzten Aspekt bauen, der zu einem einzigen Concern passt

    Aspekt Architekturentsteht durch die Komposition und gemeinsame Benutzung von Sub-Aspekten

    Modellierung von Aspekte

  • Concern DiagrammEine Erweiterung des UML Komponentendiagrammsstellt Aspekt Architektur wird graphisch dar besteht aus Aspekte, Dependencies und Kollektionen von Concerns

    Modellierung von Aspekte

  • Beispiel Digital Sound Recorderein kleines eingebettetes Gertmit Funktionen Aufnahme, Wiedergebe und Lschen von Messages und als AlarmuhrDie Hardware setzt sich zusammen aus Mikrofon, Lautsprecher, Display, einfache Tastatur, Uhr und Batterie.

    Modellierung von Aspekte

  • Beispiel Digital Sound Recorder

    Modellierung von Aspekte

  • Beispiel Digital Sound Recorder

    Modellierung von Aspekte

  • Beispiel Digital Sound Recorderberlappen :

    Die Subsysteme, die die Speicherung und das Aufruf der der Messages erledigen, verwenden die gleiche Klasse aber die unterschiedliche Operationen in der Klasse.

    In dem Subsystem Userinterface, nicht nur die gleiche Klasse, sondern auch die gleiche Operationen werden benutzt.

    In der beiden Zustandsdiagramme fr AudioController Klasse gibt es den gleichen Zustand Idle.

    Modellierung von Aspekte

  • Beispiel Digital Sound RecorderRemodularisierung

    bottom-up: Einige fundamentale Klassen knnen identifiziert werden, z.B. Userinterface und AudioController

    top-down: Offensichtlich gibt es drei Concerns: Recording, Playing, und Alarmclock

    Modellierung von Aspekte

  • Beispiel Digital Sound Recorder

    Modellierung von Aspekte

  • Beispiel Digital Sound Recorder

    Modellierung von Aspekte

  • Modellierung von Aspekte

  • Beispiel Digital Sound Recorder

    Modellierung von Aspekte

  • Beispiel Digital Sound RecorderDas Design des kompletten Systems wird erhalten, indem man alle Aspekte Concern-entsprechend komponiert.

    Modellierung von Aspekte

  • Vorteile des Aspekt Architektur ModellsEs ist einfach, Anforderungen im Design zu verfolgen

    gemeinsame Sub-Aspekte von verschiedenen Cross-cutting Concerns explizit dargestelltbei der nderung die Auswirkung besser erkennbar

    Mix-and-match von Eigenschaften, um unterschiedlichen Members der Softwarefamilie anzupassen, ist realisierbar

    Das Concern Diagramm kann benutzt werden, um Teams, die an unterschiedlichen Concerns arbeiten, zu koordinieren.

    Modellierung von Aspekte

  • ZusammenfassungQuellen

    [1] Junichi Suzuki, Yoshikazu Yamamoto: Extending UML with Aspects: Aspect Support in the Design Phase [2] Omar Aldawud, Tzilla Elrad, Atef Bader: UML Profile for aspect-oriented software development [3] Mika Katara, Shmuel Katz : Architectural Views of Aspects [4] http://de.wikipedia.org/wiki/[5] Das UML Meta-modell: http://www.iwr.uni-heidelberg.de/groups/comopt/teaching/uml/html/kapitel_4_800x600/sld001.htm[6] Profile und Erweiterungsmechanismen: www3.informatik.uni-erlangen.de/Lehre/UML-Seminar/SS2003/vortrag6.pdf

    Modellierung von Aspekte

  • Danke!

    Modellierung von Aspekte

View more