LEADER 05590nam 2200697 a 450 001 9910826375903321 005 20240418065318.0 010 $a1-281-38149-7 010 $a9786611381493 010 $a0-470-28311-4 010 $a0-470-28310-6 035 $a(CKB)1000000000535824 035 $a(EBL)353413 035 $a(OCoLC)476174763 035 $a(SSID)ssj0000266088 035 $a(PQKBManifestationID)11194594 035 $a(PQKBTitleCode)TC0000266088 035 $a(PQKBWorkID)10301491 035 $a(PQKB)11571988 035 $a(MiAaPQ)EBC353413 035 $a(Au-PeEL)EBL353413 035 $a(CaPaEBR)ebr10296752 035 $a(CaONFJC)MIL138149 035 $a(EXLCZ)991000000000535824 100 $a20071005d2008 uy 0 101 0 $aeng 135 $aur|n|---||||| 181 $ctxt 182 $cc 183 $acr 200 10$aUsing aspect-oriented programming for trustworthy software development$b[electronic resource] /$fVladimir O. Safonov 205 $a1st ed. 210 $aHoboken, N.J. $cWiley-Interscience$dc2008 215 $a1 online resource (352 p.) 225 1 $aQuantitative Software Engineering Series ;$vv.5 300 $aDescription based upon print version of record. 311 $a0-470-13817-3 320 $aIncludes bibliographical references (p. 321-328) and index. 327 $aUsing 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 327 $a2.5.1 .NET Overview2.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 327 $a3.7.2 Basic Concepts of AOP3.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; 3.8.6 Aspect.NET.ML Metalanguage 327 $a3.8.7 Samples Included in the Aspect.NET 2.1 Release3.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 327 $a4.7.3 Using AOP to Support Formal Specification and Verification Methods4.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 327 $a4.12 AOP and Agile Programming Approaches 330 $aLearn 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 interrelationships. The author clearly demonstrates how typical TWC tasks such as security checks, in-and-out conditions, and multi-threaded safety can be implemented using AOP. Following an introduction, the book covers: Trustworthy computing, software engineering, and computer scienc 410 0$aQuantitative Software Engineering Series 606 $aAspect-oriented programming 606 $aComputer software$xDevelopment 606 $aComputer software$xReliability 615 0$aAspect-oriented programming. 615 0$aComputer software$xDevelopment. 615 0$aComputer software$xReliability. 676 $a005.1 700 $aSafonov$b V. O$g(Vladimir Olegovich)$0521573 801 0$bMiAaPQ 801 1$bMiAaPQ 801 2$bMiAaPQ 906 $aBOOK 912 $a9910826375903321 996 $aUsing aspect-oriented programming for trustworthy software development$94069850 997 $aUNINA