Using aspect-oriented programming for trustworthy software development
Learn how to successfully implement trustworthy computing tasks using aspect-oriented programming This landmark publication fills a gap in the literature by not only describing the basic concepts of trustworthy computing (TWC) and aspect-oriented programming (AOP), but also exploring their critical...
Saved in:
| Main Author: | |
|---|---|
| Format: | eBook Book |
| Language: | English |
| Published: |
Hoboken, N.J.
Wiley
2008
Wiley-Interscience John Wiley & Sons, Incorporated Wiley-Blackwell |
| Edition: | 1st ed. |
| Series: | Quantitative Software Engineering Series |
| Subjects: | |
| ISBN: | 0470283106, 0470138173, 9780470283103, 9780470138175, 0470283114, 9780470283110 |
| Online Access: | Get full text |
| Tags: |
Add Tag
No Tags, Be the first to tag this record!
|
Table of Contents:
- 5.5 Teaching Trustworthy Java Technology -- 5.5.1 Structure of the Java Course -- 5.5.2 Structure of the Java Seminar -- 5.6 Teaching Trustworthy Operating Systems and Networking -- 5.6.1 Structure of the Trustworthy Operating Systems and Networking Course -- 5.7 Teaching Trustworthy Compiler Development -- 5.7.1 Structure of the Trustworthy Compiler Development Course -- 5.7.2 Structure of the Compiler Development Seminar -- 5.8 Summary -- 6. Conclusion -- 6.1 Summary of the Book -- 6.2 Perspectives: Integration of TWC, AOP, Formal Methods, and Knowledge Management -- 6.2.1 Application of Formal Methods to Trustworthy AOP -- 6.2.2 Smart Knowledge-Based AOP -- 6.2.3 AOP Specification and Design Support Tools -- 6.2.4 Trustworthy Reverse Engineering and Refactoring Tools for AOP -- 6.2.5 Aspect-Oriented Modeling on the Basis of Extended UML -- Appendix: Examples of Aspect.NET Aspects -- A.1 TestArgs Example -- A.2 RetTest Example -- A.3 RetTest2 Example -- A.4 QuickSort Example -- A.5 Matrix Example -- References -- Index
- 3.8.6 Aspect.NET.ML Metalanguage -- 3.8.7 Samples Included in the Aspect.NET 2.1 Release -- 3.8.8 Experience of Aspect.NET Use and User Feedback -- 3.9 Summary -- 3.9.1 AOP -- 3.9.2 Aspect.NET -- 4. Principles and Application of AOP in TWC -- 4.1 AOP and TWC: Cooperation Rather Than Violation -- 4.2 AOP for Security -- 4.3 AOP for Error Handling -- 4.4 AOP for Synchronization -- 4.5 AOP for Trustworthy Multithreading- and Multicore-Based Applications -- 4.6 AOP for Privacy -- 4.7 AOP for Reliability -- 4.7.1 Using AOP to Make Implementation Reliable -- 4.7.2 Using AOP for Software Testing -- 4.7.3 Using AOP to Support Formal Specification and Verification Methods -- 4.8 AOP for Business Integrity -- 4.9 AOP for Design by Contract -- 4.10 Using AOP via Aspect.NET to Improve Productivity and Reliability -- 4.10.1 Effort Estimation Using the COCOMO Model -- 4.10.2 Assessment of Aspect.NET Using the ICED-T Model -- 4.10.3 Assessment of Requirements of Aspect.NET Using the SQFD Model -- 4.11 Application Efficiency and Performance Using AOP -- 4.11.1 Performance Measurement -- 4.11.2 Implementation Details and the Woven IL Code -- 4.11.3 Another Performance Measurement Example -- 4.12 AOP and Agile Programming Approaches -- 4.13 Summary -- 5. Teaching TWC and AOP -- 5.1 The ERATO Teaching Paradigm and the SPBU.NET Project -- 5.1.1 The ERATO Teaching Paradigm -- 5.1.2 The SPBU.NET Project -- 5.2 The T-ERATO Teaching Paradigm and the TrustSPBU.NET Project -- 5.2.1 The T-ERATO Teaching Paradigm -- 5.2.2 The TrustSPBU.NET Project -- 5.3 Teaching Trustworthy Software Engineering, Including AOP -- 5.3.1 Structure of the Secure Software Engineering Course -- 5.4 Teaching Trustworthy .NET and C# Programming -- 5.4.1 Structure of the Trustworthy .NET and C# Programming Course -- 5.4.2 Structure of the .NET and C# Programming Seminar
- Intro -- Using Aspect-Oriented Programming for Trustworthy Software Development -- Contents -- Preface -- ACKNOWLEDGMENTS -- 1. Introduction -- 1.1 The Role of Aspect-Oriented Programming in Trustworthiness -- 1.2 Historical Background and Personal Experience -- 1.3 Organization of the Book -- 2. Trustworthy Computing, Software Engineering, and Computer Science -- 2.1 History of and Growing Need for TWC -- 2.2 Microsoft's TWC Initiative -- 2.3 The Four Pillars of TWC -- 2.3.1 Security -- 2.3.2 Privacy -- 2.3.3 Reliability -- 2.3.4 Business Integrity -- 2.4 Software Engineering Technologies and Tools for TWC -- 2.5 TWC and .NET -- 2.5.1 .NET Overview -- 2.5.2 .NET Security -- 2.5.3 .NET and Reliability -- 2.5.4 .NET TWC Tools FxCop and Spec# -- 2.6 TWC and Java -- 2.6.1 Java Overview -- 2.6.2 Java Security -- 2.6.3 Java and Reliability -- 2.6.4 Java TWC Tools -- 2.7 Summary -- 3. Aspect-Oriented Programming and Aspect.NET -- 3.1 History of AOP -- 3.2 AOP Basics -- 3.3 AOP and Related Technologies and Tools -- 3.3.1 AspectJ and AspectWerkz -- 3.3.2 Other AOP Tools and Approaches to Separation of Concerns -- 3.4. Pitfalls of AOP -- 3.5 AOP for Java -- 3.6 AOP for .NET -- 3.7 Aspect.NET Principles and Architecture -- 3.7.1 Motivation and Key Ideas -- 3.7.2 Basic Concepts of AOP -- 3.7.3 Example -- 3.7.4 Representing Aspects by Custom Attributes -- 3.7.5 Example in Terms of Custom Attributes -- 3.7.6 Summary of Our Approach to AOP -- 3.7.7 Aspect.NET Architectural Principles -- 3.7.8 Syntax of AOP Metalanguage (Version 1.0) -- 3.7.9 Another Example -- 3.8 Features and Use of Aspect.NET -- 3.8.1 Prerequisites for Using Aspect.NET 2.1 -- 3.8.2 Previous Releases of Aspect.NET and the Compatibility Mode -- 3.8.3 Aspect.NET Architecture -- 3.8.4 Case Study: Using the Aspect.NET Framework -- 3.8.5 Aspect.NET Framework Options

