Aspect-Oriented Software Development

Aspect-Oriented Software Development

3.83 (6 ratings by Goodreads)
By (author)  , By (author)  , By (author)  , By (author) 

Free delivery worldwide

Available. Dispatched from the UK in 4 business days
When will my order arrive?


Aspect-oriented Software Development (AOSD) is receiving considerableattention in the software engineering and programming language communities.Since 1997, there have been several successful workshops on AOSD at theleading software engineering conferences. Many have felt that AOSD may havebeen ahead of its time, but the practicality and promise of this paradigm iscatching up with the theory. This new book offers the definitve look at AOSDfrom the movers and shakers behind this concept. Just as object-orientedprogramming was a radical departure from structured programming, AOSD isa departure from the OO concept. AOSD offers increased flexibility and abetter way to develop complex systems without sacrificing scalability, security,and other important concerns. In this book, readers will learn the state-of-theartbest practices in AOSD, and will be able to help their organizations savetime and money by developing complex software systems more efficiently.
show more

Product details

  • Paperback | 800 pages
  • 176 x 230 x 38mm | 1,161.21g
  • Addison-Wesley Educational Publishers Inc
  • New Jersey, United States
  • English
  • 0321219767
  • 9780321219763
  • 956,242

Back cover copy

Aspect-Oriented Software DevelopementBack Cover CopyCoverage includesUsing AOSD to streamline complex systems development without sacrificing flexibility or scalabilityHow AOSD builds on the object-oriented paradigm--and how it's differentState-of-the-art best practices for the AOSD development processLanguages and foundations: separating concerns, filter technologies, improving modularity, integrating new features, and moreUsing key AOSD tools, including AspectJ, Hyper/J, JMangler, and Java Aspect ComponentsEngineering aspect-oriented systems: UML, concern modeling and elaboration, dependency management, and aspect composition Developing more secure applications with AOSD techniquesApplying aspect-oriented programming to database systemsBuilding dynamic aspect-oriented infrastructureThe definitive aspect-oriented software development reference: Practical solutions for the challenge of software complexityToday, software engineers must build systems that address an increasingly wide range of technical, business, and performance concerns. Doing so using conventional object-oriented techniques, they often find themselves producing tangled, incorrect, difficult-to-maintain code. Aspect-oriented software development (AOSD) overcomes this problem by enabling them to express concerns separately, and then compose modularized expressions into reliable, effective systems. In this book, four leaders in AOSD development bring together today's most significant advances. Drawing on contributions from the field's leading researchers, they introduce fundamental AOSD concepts, present new technologies for AOSD engineering and programming, and detail early application experiences with AOSD methods. Aspect-oriented development has come of age. If you're an experienced software engineer or architect, this foundation reference is all you need to start applying it in real-world systems.
(c) Copyright Pearson Education. All rights reserved.
show more

Table of contents

1. Introduction.


2. Aspect-Oriented Programming Is Quantification and Obliviousness.

3. N Degrees of Separation: Multi-Dimensional Separation of Concerns.

4. Principles and Design Rationale of Composition Filters.

5. AOP: A Historical Perspective (What's in a Name?).

6. AspectJ.

7. Coupling Aspect-Oriented and Adaptive Programming.

8. Untangling Crosscutting Models with Caesar.

9. Trace-Based Aspects.

10. Using Mixin Technology to Improve Modularity.

11. Separating Concerns with First-Class Namespaces.

12. Supporting AOP Using Reflection.

13. Inserting Ilities by Controlling Communications.

14. Using Bytecode Transformation to Integrate New Features.

15. JMangler-A Powerful Back-End for Aspect-Oriented Programming.

16. Aspect-Oriented Software Development with Java Aspect Components.


17. Engineering Aspect-Oriented Systems.

18. Aspect-Orientation in the Software Lifecycle: Fact and Fiction.

19. Generic Aspect-Oriented Design with Theme/UML.

20. Expressing Aspects Using UML Behavioral and Structural Diagrams.

21. Concern Modeling for Aspect-Oriented Software Development.

22. Design Recommendations for Concern Elaboration Tools.

23. An Initial Assessment of Aspect-Oriented Programming.

24. Aspect-Oriented Dependency Management.

25. Developing Software Components with Aspects: Some Issues and Experiences.

26. Smartweaver: A Knowledge-Driven Approach for Aspect Composition.


27. Developing Secure Applications Through Aspect-Oriented Programming.

28. Structuring Operating System Aspects.

29. Aspect-Oriented Programming for Database Systems.

30. Two-Level Aspect Weaving to Support Evolution in Model-Driven Synthesis.

31. Dynamic Aspect-Oriented Infrastructure.



show more

About Siobhan Clarke

Aspect-Oriented Software DevelopmentAbout the Editors

Robert E. Filman is a senior scientist at the Research Institute for Advanced Computer Science at NASA Ames Research Center, working on frameworks for distributed applications. He has worked and published in the areas of software engineering, distributed computing, network security, programming languages, artificial intelligence, algorithms, and human-machine interface. He received his Ph.D. in Computer Science in 1979 from Stanford University.

Tzilla Elrad is a research professor in the Department of Computer Science at Illinois Institute of Technology, where she heads the Concurrent Software Systems research group. She received her B.S. in mathematics and physics from the Hebrew University and her M.S. and Ph.D. in Computer Science from Syracuse University, NY and the Technion, Israel, respectively. Her research interests include concurrent programming languages design, adaptive software systems development, and formal reasoning.

Siobhan Clarke is a lecturer in the Department of Computer Science at Trinity College, Dublin. Her research interests include aspect-oriented software development, context-aware computing and programming models for mobile, sentient, context-aware systems. She received her B.S. and Ph.D. degrees from Dublin City University. Prior to her career in research, she worked as a software engineer with IBM for 11 years.

Mehmet Aksit holds an M.S. from the Eindhoven University of Technology and a Ph.D. from the University of Twente. He is a professor in the Department of Computer Science, University of Twente, and he is also affiliated with the Centre for Telematics and Information Technology. He (and his group) have developed the composition filters aspect-oriented programming technique, synthesis-based architecture/software design, and techniques to synthesize architectures from solution domains for creating stable software systems, have applied fuzzy-logic to software design, and have created design formalisms such as Design Algebra for balancing various quality factors at different stages of software development.

(c) Copyright Pearson Education. All rights reserved.
show more

Rating details

6 ratings
3.83 out of 5 stars
5 0% (0)
4 83% (5)
3 17% (1)
2 0% (0)
1 0% (0)
Book ratings by Goodreads
Goodreads is the world's largest site for readers with over 50 million reviews. We're featuring millions of their reader ratings on our book pages to help you find your new favourite book. Close X