Book Review:
Book Description
This book shows how a consistent set of object-oriented abstractions can be applied throughout the entire software construction process, based on three major ideas: seamlessness, reversibility, and contracting.
Seamlessness, as in the first word of the title, follows from the observation that the similarities between the tasks to be carried out at the various steps of a project far outweigh their inevitable differences, making it possible to obtain a continuous process that facilitates communication between the various actors involved, ensures a direct mapping between a problem and its software solution, and results in a high level of quality for the final product.
Reversibility means that the seamless procedure must work in both directions: if one modifies a system that has already reached the implementation phase — a frequent case in practice - it must be possible to reflect the modification back to the higher levels of design, specification, and analysis.
The contract model was introduced to a wider audience as early as 1988 by Bertrand Meyer in his introductory book Object-Oriented Software Construction (OOSC), which quickly became, and still is, the standard reference on basic object-oriented concepts. In a sense, this book is a continuation of OOSC, carrying some of its software engineering ideas to their logical conclusion in the area of analysis and design. The result is a method called BON (Business Object Notation) which contains a set of concepts and corresponding notations to support object-oriented modeling centered around the three principles of seamlessness, reversibility, and software contracting.
Intended Audience
The book is intended for software professionals as well as for students at the graduate and undergraduate levels. This book can be read by anyone who has acquired a general understanding of the problems of software engineering, and who has some inclination for abstract thinking.
add to del.icio.us
Digg Freebookzone.com!
You may use anyone of the download options
Missing Link?, Report It and try these 2 + 1 alternates...

Similar Book titles in Other Programming section: Ada 95: The Craft of Object-Oriented Programming Object Oriented Software in Ada 95, Second Edition Ada for Software Engineers Ada and Beyond: Software Policies for the Department of Defense Building Expert Systems in Prolog Prolog and Natural Language Analysis A Functional Pattern System for Object-Oriented Design Type Systems for Programming Languages Building Skills in Object-Oriented Design Introduction to Programming for Image Analysis with VTK
Similar Book titles in Other sections:
Section: Bio-Chemistry Protein sequence analysis - A practical guide, University of Manchester Data Analysis and Visualization in Genomics and Proteomics Systems Biology in Practice Systems Biology: Properties of Reconstructed Networks
Section: CS -> Compilers and Languages Working with Objects: The Ooram Software Engineering method Advanced Programming Language Design Advanced Programming Language Features for Executable Design Patterns -Better Patterns Through Reflection The Design of Functional Programs - A Calculational Approach Basics of Compiler Design Show all..
Section: Data Structures and Algorithms Data Structures and Algorithm with Object-Oriented Design Patterns in Java Data Structure and Algorithm with Object-Oriented Design Patterns in Cpp Data Structure and Algorithm with Object-Oriented Design Patterns in CSharp Algorithm Design - Foundations, Analysis & Internet Examples Design and Analysis of Computer Algorithms Show all..
Section: Multimedia & Game Development Macromedia Flash MX Game Design Demystified Advanced Flash Interface Design
Section: CS -> Hardware Designing Computers and Digital Systems
Section: Parallel Computing Handbook of Applied Expert Systems Designing and Building Parallel Programs Developing Component Software with CORBA
Section: CS -> Theory Computer Organization and Design Fundamentals Lecture Notes on Algorithm Analysis and Computational Complexity (4th Edition) Quantitative System Performance - Computer System Analysis Using Queueing Network Models Capability-Based Computer Systems Discovering Information Systems An Exploratory Approach Show all..
Section: DB -> Datawarehousing Database Systems: Concepts, Languages and Architectures
Section: DB -> Oracle Database Systems: The Complete Book Oracle8 Distributed Database Systems Release 8.0 Oracle8 Black Book: The Oracle Professional's Guide to Implementing the Object-Oriented Features of Oracle8
Section: DB -> Others The Object-Oriented Database System Manifesto Object-Oriented Database Management Systems Revisited Relational Database Design - Structures and Terminology Relational Database Index Design and the Optimizers Concurrency Control And Recovery in Database Systems Show all..
Section: Computer Hardware Hardware Design Guide for Microsoft Windows NT Server Hardware Design Guide for Microsoft Windows 2000 Server
Section: Device Drivers An I/O Device Driver Model and Framework for Embedded Systems Device Driver Hardening Design Specification
Section: Logic Design and Architecture Computer Aids for VLSI Design, Second Edition A primer on noise in VLSI systems Bit-Slice Design: Controllers and ALUs Contemporary Logic Design DESIGN AND ANALYSIS OF FAST LOW POWER SRAMs Show all..
Section: Microprocessor IA-32 Intel Architecture Software Developer's Manual Volume 2: Instruction Set Reference IA-32 Intel Architecture Software Developer's Manual Volume 3: System Programming Guide IA-64 Software Conventions and Runtime Architecture Guide Low Power System Design Considerations Embedded Internet for Embedded Systems Professionals Show all..
Section: Peripherals PCI Audio Design Guide for Embedded Systems Plug and Play Design Specification for IEEE 1394
Section: Internet Software Engineering for Internet Applications (Workbook)
Section: Advanced Java Java Au Naturel - Guide to Object Oriented Design, 4th Edition Java Thin Client Systems with VisualAge Generator Principles of Object-Oriented Programming in Java Java Design Pattern: A Tutorial Interface Design: Best Practices in Object-Oriented API Design in Java Show all..
Section: Java Enterprise Edition Designing Enterprise Applications with J2EE EJB Design Patterns: Advanced Patterns, Processes, and Idioms Designing Enterprise Applications with the J2EE Platform
Section: Java User Interface Java Look and Feel Design Guidelines: Advanced Topics
Section: Java Language The Design Patterns: Java Companion Java Look and Feel Design Guidelines, Second Edition
Section: Mathematics Lapack Users' Guide (Software, Environments and Tools, 9) Templates for the Solution of Linear Systems: Building Blocks for the Iterative Methods Mathematical Analysis I Mathematics for Algorithm and Systems Analysis Fundamental Numerical Methods and Data Analysis Show all..
Section: Miscellaneous Guide to Software Engineering Body of Knowledge The Art of Computer Game Design Statistical Software Engineering Software Project Management, 2nd Ed. Methods of Cryptanalysis Show all..
Section: Sales, Marketing & Trading Software Product Management: Managing Software Development from Idea to Product to Marketing to Sales Intermarket Technical Analysis: Trading Strategies for the Global Stock, Bond, Commodity, and Currency Markets
Section: Microsoft Certifications MCSE Training Guide - Active Directory Design - Exam 70-219 MCSE Training - 70-221 - Networking Infrastructure Design (New Riders)
Section: Microsoft C Sharp (C#) Data Structures and Algorithms with Object-Oriented Design Patterns in C#
Section: Microsoft .(dot) net Application Architecture for .NET: Designing Applications and Services
Section: Microsoft Windows Servers Microsoft Systems Management Server 2.0 Training Kit Designing & Implementing Microsoft Proxy Server Designing & Implementing Microsoft Index Server Designing and Implementing Microsoft Internet Information Server
Section: Microsoft Visual Basic Visual Basic Design Patterns Microsoft Visual Basic Design Patterns
Section: MS Web Technologies Designing Secure Web Based Applications For Microsoft Windows 2000
Section: Networking Introduction to Computer, Internet & Network Systems Security Simulation of Communication Systems Open Distributed Systems Internetworking Design Guide Cisco CCIE Fundamentals: Network Design Show all..
Section: Other Engineering Modern Antenna Design 2nd Edition Design for Construction Marine Structural Design Structural Engineering, Analysis and Design
Section: GNU/Linux OS Security in Open Systems Integration and Automation of Manufacturing Systems Practical File System Design - with the BE File System
Section: Embedded and RTOS Building Embedded Linux Systems Real-time Systems Specification, Verification and Analysis Programming Embedded Systems in C and C++ Embedded Systems Dictionary Embedded System Design: A Unified Hardware/Software Approach Show all..
Section: OS Theory The Common Man's Guide to Operating System Design Operating Systems: Internals and Design Principles, Fourth Edition EW Dijkstra Archive: My recollections of operating system design Operating Systems Research and Experimental Operating Systems Show all..
Section: Unix OS Nextstep Programming: Step One : Object-Oriented Applications/Book and Disk
Section: Assembly Language Windows Assembly Language & Systems Programming: 16- And 32-Bit Low-Level Programming for the PC and Windows Intel Architecture Software Developer’s Manual Introduction to Reverse Engineering Software
Section: C Language Object-Oriented Programming with ANSI C Object-Oriented Programming And The Objective-C Language
Section: C++ Language Data Structures and Algorithms with Object-Oriented Design Patterns in C++ Introduction to Object-Oriented Programming Using C++ Software Engineering using C++ Applied C++: Techniques for Building Better Software Software Design Using C++ Show all..
Section: Perl Scripting Learning Perl on Win32 Systems Perl Design Patterns
Section: Scripting Thinking in Python: Design Patterns and Problem-Solving Techniques Building Skills in Programming - How To Write Your Own Software Using Python
Section: Smalltalk Smalltalk, Objects, and Design Squeak: Object-Oriented Design with Multimedia Applications
Section: Redbooks Draft IBM System i5, eServer i5, and iSeries Systems Builder, i5/OS Version 5 Release 4 Certification Guide Series: IBM Tivoli Provisioning Manager Express for Software Distribution Version 4.1 A Systems Management Guide to Performance Management for i5 and p5 systems Certification Guide Series: Certification Guide Series: IBM Tivoli Provisioning Manager Express for Software Distribution Version 4.1 Understanding SOA Security Design and Implementation Show all..
Section: Redbooks IBM eServer pSeries Systems Handbook 2003 Edition Deployment Guide Series: IBM Tivoli Provisioning Manager Express V4.1 for Software Distribution Systems Programmer's Guide to: z/OS System Logger Using Discontiguous Shared Segments and XIP2 Filesystems With Oracle Database 10g on Linux for IBM System z Blue Gene/L: Performance Analysis Tools Show all..
Section: IBM Technotes Deployment Considerations for Tivoli Provisioning Manager Express for Software Distribution Content Manager Server Log Utilities for Performance-Related Troubleshooting and Analysis Best Practices for OnDemand Application Design and Configuration Migrating from Hierarchical File Systems to zSeries File Systems
Section: Redpapers Installing and Using MPICH, MPICH-GM, and MPICH-MX on Linux Systems IBM Software Express Buying and Selling Guide The Role of IBM System z in the design of a Service Oriented Architecture Deploying Linux Systems with Tivoli Provisioning Manager for OS Deployment Auditing UNIX/Linux System Use with Tivoli Access Manager for Operating Systems and Tivoli Compliance Insight Manager Show all..
Section: Redpapers Draft Joining IBM System Storage N series Systems to Microsoft Active Directory IBM Power Systems 520 Technical Overview and Introduction Virtualization on the IBM Systems Family of Servers, Software and Storage IBM Systems Virtualization: Servers, Storage and Software Deploying Linux Systems with Tivoli Provisioning Manager for OS Deployment Show all..
Section: Software Engineering Software Development Guidelines Understanding Open Source and Free Software Licensing How to Design Programs: An Introduction to Programming and Computing Reusable Software Components: Object-Oriented Embedded Systems Programming in C Adaptive Object-Oriented Software Show all..
Section: Telecommunication RF CIrcuit Design
Section: Software Testing Practical Software Testing: A Process-Oriented Approach Systematic Software Testing Testing and Quality Assurance for Component-Based Software Effective software testing: 50 specific ways to improve your testing A Practitioner's Guide to Software Test Design Show all..
Section: Web Programming Web Design in a Nutshell Ajax Design Patterns
Section: Web Technology The Web Design CD Bookshelf Introduction to Web Design Web Style Guide: Basic Design Principles for Creating Web Sites Introduction to Web Design Designing Web Audio Show all..
Similar Books from Amazon :
|

|