Rating:  Summary: best book on computing I've *ever* read, a masterpiece Review: What an incredibly brilliant book! I'm afraid my words here cannot possibly convey the genius of this work. If you've ever wondered why most software is late, over budget, full of bugs, full of security holes, difficult to understand and use, and even harder to maintain, this book will explain why. Even more importantly, it shows a way out, a way beyond the current mess.If everyone involved in producing software (including managers) read this book, the world of computing would be transformed. Do yourself and your career a favour and read it cover to cover, frequently.
Rating:  Summary: Meyer's OOSC enabled me to produce a 100% bug-free app! Review: While reading the previous review, "Useful, but not perfect" by Matthew Whelan, I realized I had to respond. Matthew writes in his fifth paragraph, "...claims about Design by Contract are overblown. Bug-free software simply does not exist (over a dozen lines, anyway.)" Well, Matthew, and anyone else who believes this, you are quite mistaken. In 1990, with all due credit given to Bertrand Meyer, I designed and code-generated from an ancient CASE tool, Knowledgeware, a bug-free, mission-critical online IMS/COBOL/DB2 application. This app had not even one bug after it went into production. I bought and read the first edition of this book, OOSC, in 1989. Shortly afterwards I was tasked with implementing a small, but mission critical online IMS/COBOL/DB2 application. The lead designer was inexperienced, and given that I was tasked with construction and implementation, I realized my success was dependent on a redesign. I redesigned the system with preconditions and postconditions every step of the way. The reason we had zero bugs after implementation, is because we found and fixed them all in integration testing. The code would run along and then hit a routine where the preconditions or postconditions weren't met, and would spit out an error message stating the program, procedure, and condition that failed. Once these were all fixed, no more errors, ever. Keep in mind, this was IMS, COBOL, and DB2 in 1990!. Bertrand Meyer's book, this book in it's first edition, enabled me to build a bug-free IMS/COBOL/DB2 application that was as close to object-oriented as possible, given the languages mandated. On top of which, the whole thing was code-generated by Knowledgeware, straight from logical design to code. Without Design by Contract, I never could have succeeded. Thanks Bertrand Meyer!
Rating:  Summary: Mostly Muck and Mire Review: While reading the previous review, "Useful, but not perfect" by Matthew Whelan, I realized I had to respond. Matthew writes in his fifth paragraph, "...claims about Design by Contract are overblown. Bug-free software simply does not exist (over a dozen lines, anyway.)" Well, Matthew, and anyone else who believes this, you are quite mistaken. In 1990, with all due credit given to Bertrand Meyer, I designed and code-generated from an ancient CASE tool, Knowledgeware, a bug-free, mission-critical online IMS/COBOL/DB2 application. This app had not even one bug after it went into production. I bought and read the first edition of this book, OOSC, in 1989. Shortly afterwards I was tasked with implementing a small, but mission critical online IMS/COBOL/DB2 application. The lead designer was inexperienced, and given that I was tasked with construction and implementation, I realized my success was dependent on a redesign. I redesigned the system with preconditions and postconditions every step of the way. The reason we had zero bugs after implementation, is because we found and fixed them all in integration testing. The code would run along and then hit a routine where the preconditions or postconditions weren't met, and would spit out an error message stating the program, procedure, and condition that failed. Once these were all fixed, no more errors, ever. Keep in mind, this was IMS, COBOL, and DB2 in 1990!. Bertrand Meyer's book, this book in it's first edition, enabled me to build a bug-free IMS/COBOL/DB2 application that was as close to object-oriented as possible, given the languages mandated. On top of which, the whole thing was code-generated by Knowledgeware, straight from logical design to code. Without Design by Contract, I never could have succeeded. Thanks Bertrand Meyer!
Rating:  Summary: Meyer's OOSC enabled me to produce a 100% bug-free app! Review: While reading the previous review, "Useful, but not perfect" by Matthew Whelan, I realized I had to respond. Matthew writes in his fifth paragraph, "...claims about Design by Contract are overblown. Bug-free software simply does not exist (over a dozen lines, anyway.)" Well, Matthew, and anyone else who believes this, you are quite mistaken. In 1990, with all due credit given to Bertrand Meyer, I designed and code-generated from an ancient CASE tool, Knowledgeware, a bug-free, mission-critical online IMS/COBOL/DB2 application. This app had not even one bug after it went into production. I bought and read the first edition of this book, OOSC, in 1989. Shortly afterwards I was tasked with implementing a small, but mission critical online IMS/COBOL/DB2 application. The lead designer was inexperienced, and given that I was tasked with construction and implementation, I realized my success was dependent on a redesign. I redesigned the system with preconditions and postconditions every step of the way. The reason we had zero bugs after implementation, is because we found and fixed them all in integration testing. The code would run along and then hit a routine where the preconditions or postconditions weren't met, and would spit out an error message stating the program, procedure, and condition that failed. Once these were all fixed, no more errors, ever. Keep in mind, this was IMS, COBOL, and DB2 in 1990!. Bertrand Meyer's book, this book in it's first edition, enabled me to build a bug-free IMS/COBOL/DB2 application that was as close to object-oriented as possible, given the languages mandated. On top of which, the whole thing was code-generated by Knowledgeware, straight from logical design to code. Without Design by Contract, I never could have succeeded. Thanks Bertrand Meyer!
|