SlideServe
Menu
Préférences
© SlideServe · v2026

Adaptive Software

donar avatar
29 diapositives · 565 Views · Sep 04, 2014

Adaptive Software. Kevin Cella Graduate Seminar 02/04/2005. Agenda. Adaptive Computing History Adaptive Software Formal Definition DemeterJ / AOP Alternate Designs Advantages/Disadvantages Applications Reactions Wrap it up!. Adaptive Computing. Hardware Fault Tolerant

Adaptive Software - slide 1
01 / 29Adaptive Software
1 / 17

Télécharger la présentation

Adaptive Software
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  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-present Demeter • 1990 Traversal Strategy • 1995 Separation of Concerns • 1996 Xerox 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