Presentation is loading. Please wait.

Presentation is loading. Please wait.

Adaptive Software Kevin Cella Graduate Seminar 02/04/2005.

Similar presentations


Presentation on theme: "Adaptive Software Kevin Cella Graduate Seminar 02/04/2005."— Presentation transcript:

1 Adaptive Software Kevin Cella Graduate Seminar 02/04/2005

2 Agenda Adaptive Computing History Adaptive Software Formal Definition DemeterJ / AOP  Alternate Designs Advantages/Disadvantages Applications Reactions Wrap it up!

3 Adaptive Computing Hardware  Fault Tolerant  CPU Architectures EDGE  Digital Filter  Robot Controller Software  Engineering  Agents  Adaptive Programming  Networking

4 Agenda Adaptive Computing History Adaptive Software Formal Definition DemeterJ / AOP  Alternate Designs Advantages/Disadvantages Applications Reactions Wrap it up!

5 History 1982 Hades 1982-1985 Zeus 1985-presentDemeter 1990 Traversal Strategy 1995Separation of Concerns 1996Xerox PARC - AOP

6 Agenda Adaptive Computing History Adaptive Software Formal Definition DemeterJ / AOP  Alternate Designs Advantages/Disadvantages Applications Reactions Wrap it up!

7 A Closer Look What is Adaptive Programming? An extension of OOP using graph theory and formal languages to further abstract collaborating classes and generate a family of programs from a common architectural graph.

8 Class Graph

9 Procedure Traversal Strategy => Propagation Pattern => Wrapper Definition => Generated Code

10 Result

11 Agenda Adaptive Computing History Adaptive Software Formal Definition DemeterJ / AOP  Alternate Designs Advantages/Disadvantages Applications Reactions Wrap it up!

12 Formal Definition Class Graph  Context-Free Grammar Traversal Strategies  Regular Expressions  NDFA Intersections Graph Theory  Construction edge  Subclass edges

13 Agenda Adaptive Computing History Adaptive Software Formal Definition DemeterJ / AOP  Alternate Designs Advantages/Disadvantages Applications Reactions Wrap it up!

14 Law of Demeter "Only talk to your immediate friends" The methods of a class should not depend in any way on the structure of any class, except the immediate top-level structure of their own class

15 Demeter Method Class Dictionary Propagation Pattern Traversal Strategy Demeter Grammar  Delayed Binding  Wrapper  Code Generation

16 AOP Join Points Pointcuts Advice Aspects Compiler - AspectJ  Weaving  Byte Code Manipulation  Observer Pattern  Java Language Extension

17 Alternate Designs Object-Oriented Databases XML/Java Data Binding Adaptable Plug and Play Components  Aspectual Collaborations  Aspectual Components DJ Java Library

18 Standardization – Design Patterns AP Patterns  Inventor’s Paradox  Structure-Shy Traversal  Structure-Shy Object  Context  Class Graph

19 Agenda Adaptive Computing History Adaptive Software Formal Definition DemeterJ / AOP  Alternate Designs Advantages/Disadvantages Applications Reactions Wrap it up!

20 Advantages Maintenance Simplified Implementation Understandability Readability Reusability Code Reduction

21 Disadvantages Security Weaving Language Extension  Grammar  Integrate into Current OO-Languages

22 Agenda Adaptive Computing History Adaptive Software  Examples Formal Definition DemeterJ / AOP  Alternate Designs Advantages/Disadvantages Applications Reactions Wrap it up!

23 Applications Hewlett-Packard  Planetary Computing  SmartFrog IBM  eLiza Testing EJB.NET

24 Agenda Adaptive Computing History Adaptive Software Formal Definition DemeterJ / AOP  Alternate Designs Advantages/Disadvantages Applications Reactions Wrap it up!

25 Reactions Lack of Standards Code Weaving Education Security Cost Analysis

26 Agenda Adaptive Computing History Adaptive Software Formal Definition DemeterJ / AOP  Alternate Designs Advantages/Disadvantages Applications  Coding Examples Thesis Wrap it up!

27 Looking Ahead AI Naturalistic Programming Tools packaged with SDK

28 Questions?

29 Discussion Topics Practicality  Large vs. Small Scale Applications New Tools Standards Education


Download ppt "Adaptive Software Kevin Cella Graduate Seminar 02/04/2005."

Similar presentations


Ads by Google