Incorporating Aspects into the UML - PowerPoint PPT Presentation

1 / 21
About This Presentation
Title:

Incorporating Aspects into the UML

Description:

We considered where aspects can be unveiled in the software development ... Use of procedures outlined in OMG's specifications for UML 1.4, and the ... ( OMG) ... – PowerPoint PPT presentation

Number of Views:42
Avg rating:3.0/5.0
Slides: 22
Provided by: asan2
Category:

less

Transcript and Presenter's Notes

Title: Incorporating Aspects into the UML


1
Incorporating Aspectsinto the UML
  • Mark Basch
  • Arturo Sánchez
  • CIS Department
  • University of North Florida
  • Jacksonville, FL

2
Affiliations
  • Arturo Sánchez Assistant Professor, Coordinator
    of the Graduate Software Engineering Track, CIS
    Department.
  • Mark Basch Recent MS Graduate.

3
Context - I
  • We considered where aspects can be unveiled in
    the software development process, and
  • How can developers express them as they are
    elicited by using UML.
  • Process
  • Unified.
  • Extreme Programming.

4
Context - II
  • The working example is the real estate problem in
    the book by Kulak and Guiney Use Cases
    Requirements in Context, Addison-Wesley, 2000.
    Appendix B.
  • a real estate agency application that acts
    as a mediator between the buyer and the seller.
    The agency provides expertise through its agents
    and also links customers with other institutions,
    such as lenders,as required.

5
This Paper - I
  • Summary of the elements we propose to add to UML
    for modeling aspects in
  • Packages.
  • Class diagrams.
  • Interaction diagrams.
  • Statechart diagrams.
  • Other UML diagrams.

6
This Paper - II
  • Related Work.
  • Conclusions and Future Work.

7
Few Definitions
system
aspects
Point Cuts for Aspect A
components
  • Module
  • Component
  • Aspect
  • Advise Code of Aspect
  • before()
  • after ()

Joint Points for Component C
8
Guiding Principles - I
  • Each aspect will be considered as its own
    encapsulated module separated by the system as a
    whole, and also separated from other aspects.
  • A key goal is to show where aspects crosscut the
    components of the system.

9
Guiding Principles - II
  • Multiple views are encouraged.
  • Use of procedures outlined in OMGs
    specifications for UML 1.4, and the Reference
    Manual by Rumbaugh, Jacobson, and Booch.
  • Various stages across the whole development were
    considered.

10
Aspect Packages
11
Aspect Packages
Stereotype
Component Package
Joint point icon
Joint point pattern
12
Aspects and Classes
public static void A
13
Sequence DiagramsComponent View
14
Sequence DiagramsComponent View
15
Sequence DiagramsAspect View
Agent
Flashes a warning to users who attempt to make a
transaction without an agent.
16
Statechart Diagrams
17
Other Diagrams - I
  • Use Case used to elicit requirements,useful to
    elicit aspects as well at early stages of
    development.
  • Detailed Use Cases some organizations use this
    as their functional specifications. In this case,
    aspects should probably be mentioned.

18
Other Diagrams - II
  • Activity primary focus is on the sequence and
    conditions for the actions that are taken, rather
    than on which classifiers perform those actions.
    (OMG)
  • Could be used for eliciting aspects, but probably
    not for expressing component-to-aspect
    relationships.

19
Related Work
  • First International Conference on AOSD (Workshop
    on Aspects and UML The Netherlands).
  • Fifth International Conference on the UML
    (Germany).

20
Conclusions
  • Aspects could be modeled across the entire
    software life cycle.
  • UML needs to be extended so aspects are modeled
    as a separate concern.
  • Multiple views are encouraged.
  • Notation needs to be language-independent and yet
    be useful to guide implementations.
  • Case tools need to support new notation.

21
Future Work
  • A language-independent model for aspects is
    needed. This will define semantic terms that are
    added to UML.
  • Aspect-UML Syntax (UML and Aspect)
  • Semantics (UML and Aspects)
  • Relationships component-aspect, aspect-aspect.
  • Language-neutral representation so CASE tools can
    generate specific code from some UML artifacts.
  • Relationship to Model-Driven Development.
Write a Comment
User Comments (0)
About PowerShow.com