College of Computer Science - PowerPoint PPT Presentation

1 / 34
About This Presentation
Title:

College of Computer Science

Description:

Downtown Boston: Between Symphony Hall and Museum of Fine Arts. About 14000 students. College of Computer Science and College of Engineering, etc. ... – PowerPoint PPT presentation

Number of Views:27
Avg rating:3.0/5.0
Slides: 35
Provided by: karllie
Learn more at: https://www2.ccs.neu.edu
Category:

less

Transcript and Presenter's Notes

Title: College of Computer Science


1
College of Computer Science
  • Karl Lieberherr

2
Northeastern University
  • Downtown Boston Between Symphony Hall and Museum
    of Fine Arts.
  • About 14000 students.
  • College of Computer Science and College of
    Engineering, etc.
  • Focus on Practice-Oriented Education COOP program

3
Projects
  • Focus on two Projects
  • Karl Lieberherr Demeter and Aspect-Oriented
    Programming
  • Java tools
  • XML tools
  • Guevara Noubir Wireless Networks (MANET)
  • Both have connections to Switzerland.
  • There are several more we can draw upon.

4
Benefits for ABB CH
  • Technology transfer
  • Software design know-how
  • Wireless technology
  • PhD students working for ABB CH
  • in house (about 2 months)
  • in Boston (20 hours per week)
  • Access to faculty and graduate students

5
Possible Collaborations
  • Minimum
  • yearly presentation for ABB Software developers
    about trends and techniques in software
    development
  • Next level
  • send an ABB employee on Sabbatical at NEU in
    Boston. Goal learn about AOSD technology build
    prototype.

6
Possible Collaborations
  • Next level Support one or more PhD students.

7
Some of my Background
  • Dr. sc. math ETH 1977
  • Princeton, GTE, Northeastern (since 1985)
  • Demeter Project Early AOSD project
  • IBM, Mettler-Toledo, Xerox PARC, Citibank,
  • DARPA project PCES (Doug Schmidt PM)
  • Several presentations at Brown Boveri Research
    Center (Dr. Speiser)

8
AOSDAspect-Oriented Software Development
  • The job of a SOC technology is to turn a tangled
    and scattered implementation of a concern into a
    well-modularized implementation of a concern.

9
AOSDAspect-Oriented Software Development
  • The job of an AOP (Aspect-Oriented Programming)
    technology, a special case of SOC, is to turn a
    tangled and scattered implementation of a
    crosscutting concern into a well-modularized
    implementation of a concern.

10
Aspect-Oriented Programming (AOP)
  • Turn tangled and scattered implementations of a
    crosscutting concern into a well-modularized
    implementation of a concern.
  • Tools AspectJ, DJ, DemeterJ.
  • Design and implementation techniques.

11
Features of AOP languages
  • AOP languages have the following main elements
  • a join point model (JPM) wrt base PL
  • a specification language for expressing sets of
    join points (JPS)
  • a means of specifying behavior involving join
    points (BJP)
  • encapsulated units combining JPS and BJP (CSB)
  • method of attachment of units to base program (AU)

JPS and BJP are sometimes overlapping. JPS might
already define an initial behavior plus a set of
join points in that behavior.
12
Comparing
  • AspectJ
  • DemeterJ
  • DJ
  • ATC
  • AspectC
  • Aspectual Collaborations
  • D (COOL, RIDL)
  • BETA
  • RG
  • ABB Aspects

13
Applications of AOP
  • Network-aware applications
  • Resource management
  • Fault tolerance
  • Adaptive programming

14
AOP
  • Join point model
  • Express sets of join points
  • Express code to be executed at join points

15
Cross-cutting of components and aspects
better program
ordinary program
structure-shy functionality
Components
structure
Aspect 1
synchronization
Aspect 2
16
From Crista Lopes PhD thesis (NU/Xerox PARC)
Instead of writing this
17
What's the problem? TANGLING
OOAD
Collab-1
C1
C4
C2
C3
C5
Collab-4
Collab-2
Collab-3
C1
C4
C2
C3
Implementation
C5
18
Reconciliation of Both WorldsAspectual
Collaborations
19
  • Prof. Guevara Noubir, noubir_at_ccs.neu.edu
  • Background
  • 1996 PhD from ETH-Lausanne
  • 1997-2000 senior research scientist at CSEM
    (Neuchâtel)
  • Participated in main 3G-UMTS European Projects
    (FRAMES, RAINBOW, SLATS) and other projects on
    wireless networks (European Space Agency IPSAT,
    MAD Hiperlan 2, etc.)
  • Main Research Area Quality of Service for
    Wireless Systems
  • Optimal resource management
  • Reliability, fault-tolerance
  • Security

20
Current Research
  • Development of adaptive schemes for optimal
    resource management in wireless systems with
    applications in multi-hop wireless ad-hoc
    networks and cellular wireless communication
    systems
  • Underlying technology IEEE802.11, Bluetooth
    (scatternets), home built low-power wireless
    interfaces

21
Constraints in Wireless Multi-Hop Ad Hoc
Networks (MANET)
  • Limited radio spectrum
  • Broadcast Medium (resulting in collisions and
    interference)
  • Limited power available at the nodes (i.e.,
    energy, computation)
  • Limited storage memory
  • Connection QoS requirements (e.g., delay, packet
    loss)
  • Unreliable network connectivity (depends on the
    channel)
  • Dynamic topology (i.e., mobility of nodes gt
    variable density)
  • Need to provide a full coverage
  • Need to enforce fairness

22
Parameters Available to System Designer in MANET
  • Use of various coding/modulation schemes
  • Use of packets fragmentation
  • Use of various transmission power level
  • Use of a single hop or multiple hops
  • Use of multiple RF interfaces (multiple IF
    characteristics)
  • Clustering and backbone formation
  • Planning of the fixed nodes location
  • Packets scheduling schemes
  • Application adaptivity

23
Approach Adaptivity and Cooperation
  • Classical networking stacks have only minimum
    interaction between adjacent layers
  • Multi-hop wireless ad hoc networks require more
    cooperation between layers because
  • Channel variation and network topology changes
    affect the application
  • Routing versus single hop communication
    considerably affects the medium access control
    (MAC) performance and physical layer interference
  • Collisions versus channel fading affects both the
    physical layer and the MAC
  • Battery power has implications on all layers

24
ABB versus AOSD view of aspects
  • Compare ABB view of aspects with views of AOSD
    community.
  • I am on the steering committee for the new series
    of conferences on AOSD.

25
ABB Aspects
  • page 4 Each aspect is modeled separately. AOSD
    Each aspect needs its own class graph and
    behavior expressed for classes in class graph.
  • page 5, figure 4 need to customize an aspect.
    page 19 Many aspects provide some degree of
    configurability AOSD adapters.

26
ABB Aspects
  • page 4 an aspect object is a container of
    references to implementations of different
    aspects. AOSD an object may play multiple roles.
  • page 5 An aspect is implemented by an aspect
    system which stores, manages and presents its
    information in an optimal way. AOSD different
    implementations s/d

27
Comparison
  • ABB aspect
  • aspect adds data members or methods to an object
  • AOSD aspect
  • aspect adds data members or methods to an object
  • enhances existing methods of an object

28
What is Aspect-Oriented Software Development
  • Covers analysis, design and implementation of
    software
  • Maintains separation of crosscutting concerns
    down to implementation level.
  • Turn tangled and scattered implementations of a
    crosscutting concern into a well-modularized
    implementation of a concern.

29
Object exists in many structures
  • ABB from page 6 Depending on what aspect we
    look at, the same entity fits naturally in
    several different structures.
  • AOSD Object plays several roles
  • each role playing places object in structure of
    corresponding collaboration

30
Object exists in many structures
  • ABB Example (from page 7)
  • functional structure
  • location structure
  • batch structure
  • AOSD Object plays several roles
  • each role playing places object in structure of
    corresponding collaboration

31
Perspectives/Views/Aspects
  • Aspect a well modularized cross-cutting concern
  • Perspective/view a special kind of aspect that
    adds members to a group of objects
  • page 4 each object can be described from several
    different perspectives

32
Attach aspects dynamically
  • page 8 when an instance of an object type is
    created, it inherits the aspects that are
    defined in the object type. You can add aspects
    to a specific instance.
  • AOSD composite aspects dynamically add aspects
    to an object.

33
How ABB aspects fit inan open object model
  • Join point model
  • dynamic objects
  • Express sets of join points
  • enumerate objects
  • Express code to be added at join points
  • members

open objects
34
ABB implementation
  • Aspect Framework (Afw)
Write a Comment
User Comments (0)
About PowerShow.com