Using Aspect-Oriented Programming for Trustworthy Software Development

by
Format: eBook
Pub. Date: 2008-06-01
Publisher(s): Wiley-Interscience
Availability: This title is currently not available.
List Price: $118.77

Rent Textbook

Select for Price
There was a problem. Please try again later.

New Textbook

We're Sorry
Sold Out

Used Textbook

We're Sorry
Sold Out

eTextbook

We're Sorry
Not Available

Summary

Understand how Aspect-Oriented Programming (AOP) can be applied to enable Trustworthy Computing (TWC), including security, MT-safety, and error handling with the information in Using Aspect-Oriented Programming for Trustworthy Software Development. You will find not only a description of the basic concepts of TWC and AOP but also an exploration of their critical interrelationships. Learn how typical TWC tasks like security checks, in-and-out condition and multi-threaded safety can be implemented using AOP and discover the basics of Aspect.NET architecture, its advantages, and its functionality through practical examples and case studies.

Table of Contents

Preface.
Introduction.
The Role of Aspect-Oriented Programming in Trustworthiness
Historical Background and Personal Experience
Organization of the Book
Trustworthy Computing, Software Engineering, and Computer Science.
History of and Growing Need for TWC
MicrosoftÆs TWC Initiative
The Four Pillars of TWC
Software Engineering Technologies and Tools for TWC
TWC and .NET
.NET Overview
.NET Security
.NET and Reliability
.NET TWC Tools FxCop and Spec#
TWC and Java
Java Overview
Java Security
Java and Reliability
Java TWC Tools
Summary
Aspect-Oriented Programming and Aspect.NET.
History of AOP
AOP Basics
AOP and Related Technologies and Tools
AspectJ and AspectWerkz
Other AOP Tools and Approaches to Separation of Concerns
Pitfalls of AOP
AOP for Java
AOP for .NET
Aspect.NET Principles and Architecture
Motivation and Key Ideas
Basic Concepts of AOP
Example
Representing Aspects by Custom Attributes
Example in Terms of Custom Attributes
Summary of Our Approach to AOP
Aspect.NET Architectural Principles
Syntax of AOP Metalanguage (Version 1.0)
Another Example
Features and Use of Aspect.NET
Prerequisites for Using Aspect.NET 2.1
Previous Releases of Aspect.NET and the Compatibility Mode
Aspect.NET Architecture
Case Study: Using the Aspect.NET Framework
Aspect.NET Framework Options
Aspect.NET.ML Metalanguage
Samples Included in the Aspect.NET 2.1 Release
Experience of Aspect.NET Use and User Feedback
Summary
AOP
Aspect.NET
Principles and Application of AOP in TWC.
AOP and TWC: Cooperation Rather Than Violation
AOP for Security
AOP for Error Handling
AOP for Synchronization
AOP for Trustworthy Multithreading- and Multicore-Based Applications
AOP for Privacy
AOP for Reliability
Using AOP to Make Implementation Reliable
Using AOP for Software Testing
Using AOP to Support Formal Specification and Verification Methods
AOP for Business Integrity
AOP for Design by Contract
Using AOP via Aspect.NET to Improve Productivity and Reliability
Effort Estimation Using the COCOMO Model
Assessment of Aspect.NET Using the ICED-T Model
Assessment of Requirements of Aspect.NET Using the SQFD Model
Application Effi ciency and Performance Using AOP
Performance Measurement
Implementation Details and the Woven IL Code
Another Performance Measurement Example
AOP and Agile Programming Approaches
Summary
Teaching TWC and AOP.
The ERATO Teaching Paradigm and the SPBU.NET Project
The ERATO Teaching Paradigm
The SPBU.NET Project
The T-ERATO Teaching Paradigm and the TrustSPBU.NET Project
The T-ERATO Teaching Paradigm
The TrustSPBU.NET Project
Teaching Trustworthy Software Engineering, Including AOP
Structure of the Secure Software Engineering Course
Teaching Trustworthy .NET and C# Programming
Structure of the Trustworthy .NET and C# Programming Course
Structure of the .NET and C# Programming Seminar
Teaching Trustworthy Java Technology
Structure of the Java Course
Structure of the Java Seminar
Teaching Trustworthy Operating Systems and Networking
Structure of the Trustworthy Operating Systems and Networking Course
Teaching Trustworthy Compiler Development
Structure of the Trustworthy Compiler Development Course
Structure of the Compiler Development Seminar
Summary
Conclusion.
Summary of the Book
Perspectives: Integration of TWC, AOP, Formal Methods, and Knowledge Management
Application of Formal Methods to Trustworthy AOP
Smart Knowledge-Based AOP
AOP Specification and Design Support Tools
Trustworthy Reverse Engineering and Refactoring Tools for AOP
Aspect-Oriented Modeling on the Basis of Extended UML
Appendix: Examples of Aspect.NET Aspects.
TestArgs Example
RetTest Example
RetTest2 Example
QuickSort Example
Matrix Example
References.
Index.
Table of Contents provided by Publisher. All Rights Reserved.

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.