Awesome book | Trustworthy Systems Through Quantitative Software Engineering | Lawrence Bernstein, C. M. Yuhas
 
 


Suche books:   



Trustworthy Systems Through Quantitative Software Engineering
Lawrence Bernstein, C. M. Yuhas

Wiley-IEEE Computer Society Press., 2005 - 464 pages

average customer review:based on 9 reviews
view larger image
 for more information click here

   highly recommended  highly recommended






A great course text and practitioner reference guide!

This book does a great job of covering the key tools and techniques used in the development of software systems. It is very readable, and is suitable as a course text or an informative reference guide for practicing programmers and managers. A wealth of case study material provides insights into how to develop reliable software, on time and within budget. Sprinkled throughout are pragmatic rules of thumb and metrics. A good read and a good addition to any reference collection!


It's about time! Signed, a former software engineer on the Space Shuttle

Well, this is certainly a much different type of software engineering textbook than I have seen in the last score of years ?! I was a reviewer of early editions of Pressman, and a user of every edition since the second one at four different universities. Shooman's classic 20+ years ago is another early data point for a graduate course. The Software Engineering Lectures of Tom DeMarco and Ed Yourdon from 1979 are still shelved six feet away from me, and have been referenced in every undergrad and graduate software engineering related course I have taught since 1984. The same shelves contain Pfleeger, Leach, Lethbridge, Peters, Watts & Humphrey, Sommerville, Thayer and many others within the combined 12 foot lineal span. They obviously are used, but not to the extent of Pressman.

That may be about to be changed! Larry Bernstein's new text states on page 32 ".. none of these [principles of sound organizations] will work unless our profession recognizes the next core element in the evolution of software processes as a fundamental principle. Software trustworthiness is the next major area in which academic and industry must focus -- both for national security reasons as well as to ensure that the U.S. software industry maintains its leadership. The three attributes of software reliability, security and safety comprise trustworthiness."

I totally agree with the belief about where we should focus our attention in coming years, but not for the reasons that Larry cites. Let me explain:
* Having worked as a software/knowledge engineer on the Space Shuttle program for Rockwell International for four years, including the maiden flight of Discovery within a few months of my hire date in 1984, I am a very firm believer that the trustworthiness of the software in the shuttle and all the support effort was a gold standard at the time. I was also a full-time professor of CS concurrently, so could bring such issues to all of my classes. Although I have given up my dream of going to the moon, hatched when my small team of high school students fired off rockets in a farmer's field prior to Sputnik, I still hope to make it to the international space station, so a trustworthy system is not only of academic interest! In the last 20+ years, the ubiquity of computing, particularly embedded systems in all modes of transportation, makes such a standard a MUST, not just "nice to have" in our cars, trucks, planes, etc. When a team of Ford software engineers showed up in my office 10+ years ago, asking for help in developing safe software systems for next generation side impact sensors, I could not brush off their concerns! Obviously, software systems pervade the lives of many of the 6.6 billion people residing on this planet today, not just the billion or so who access the Internet. It is irresponsible, not to mention a direct violation of codes of ethics for computing and software engineering, NOT to develop such trustworthy systems.
* I cannot agree with Larry's rationale about the leadership of the U.S. in software. Trustworthiness of software systems knows no national boundaries! Other engineering artifacts do not know such artificial boundaries - do we want the bridges and high rise buildings of Europe, Asia, the Middle East, South America, Africa, etc. to be less safe, reliable and secure than those in the United States? I think not, if for not other reason than millions of our citizens travel to and live in those countries every day. Clearly, the lives of people across the world are just as valuable as those fortunate enough to live in our 50 states. The state-of-the-art in engineering methods is being advanced on a world-wide basis - why should we think software engineering education is somehow an exception? I would hope that this new text would be published in many languages and used by students and practitioners worldwide. I had first met Professor Bernstein on November 30, 2000 during my sabbatical to set up an International Software Engineering University Consortium (www.iseuc.org). So Larry clearly knows of my penchant for the world-wide importance of software engineering ?!

Why do I think this new text is different from earlier ones and would recommend strongly that all current faculty and practitioners consider it carefully, especially for an introduction? The rationale includes the following. The text:
1. Focuses on the increasingly vital role that trustworthy software systems will play in the lives of current and future generations. Consequently, it is quite easy to engage or "hook" students in an introductory software engineering course about the importance of the topic - they see the impact of the lack of such systems on a weekly, if not daily, basis. Many of them will be able to share personal and professional experiences. The marvelous column by Neumann in every copy of ACM's SIGSOFT Software Engineering News provides ample examples, in any case.
2. Is cleverly written with excellent and realistic case studies with real questions and answers
3. Draws on the demonstrated expertise of the primary author when he was the CTO for Bell Labs
4. Truly demonstrates the rationale for the role of quantitative software engineering methods throughout the development life-cycle, beginning on page 4!
Reliabilty = e-k?t, where k is a normalizing constant, ? is complexity/(effectiveness x
staffing) and t is the time the software executes from its launch.
5. Emphasizes the "why" as well as the "how"
6. Includes excerpts from student teams related to the growing use of Real Projects for Real Client Courses - RPRCC-in software engineering and other courses
7. Covers most of the topics in a traditionally-structured software engineering text, but does so in a more contemporary and intuitive way. Some of the topics in other texts that wind up at the end, hence often not covered, are main-line chapters in the Bernstein text*. The newest edition of Sommerville's text does indeed have a 20-page chapter 3 on "Critical Systems" and a complete 120 page Part 4 on the same topic, but this is certainly an anomaly among current texts. The Bernstein text emphasizes trustworthiness as a continuing theme throughout, with the continual use of quantitative measures - witness the large number of "Magic Number" boxes for empirical results and heuristics contained in virtually each chapter. I admit that there would be a "learning curve" for most of us, but hey, aren't we supposed to be paragons for "life-long learning" that we espouse for our students?
8. Has fewer pages than virtually every other text. This is a real advantage. Students (and faculty) feel they have a "prayer" of being able to use the material in one course!
9. Has nice on-line support site.
10. And, finally, Larry will go to great personal lengths to support his text ?!

A couple of possible sources of improvement for the second edition would include the following:
1. Include Failure Mode Effect Analysis (FMEA) as a major component when designing critical systems. This is a common engineering tool that was used in the design and testing of the Space Shuttle Main Engines (SSME) over the last 30 years.
2. How can the vital concept covered in the text be applied to the massive task of rendering trustworthy the extant base of millions of software systems? The text does a superb job for developing such systems, but can trustworthiness be "bolted on" existing systems? I doubt it, but cannot see an easy answer here.
3. A friendlier website for both instructors and students would be helpful, ala those for other software engineering textbooks

*Topics in the text
Part I. Getting Started
1. Think Like an Engineer - Especially for Software
2. People, Product, Process, Project - The Big Four

Part II. Ethics and Professionalism
3. Software Requirements
4. Prototyping
5. Architecture
6. Estimation, Planning, and Investment
7. Design for Trustworthiness

Part III. Taking the Measure of the System
8. Identifying and Managing Risk
9. Human Factors in Software Engineering
10. Implementation Details
11. Testing and Configuration Management
12. The Final Project: By Students, For Students




 for more information click here


Awesome book

This book is amazing, I didn't expect a book on software engineering to be so easy to read and understand.

Most of the other software engineering books I read are too academic and detached from the industry.

The case studies provided in this book are things I can totally relate to as a software developer. Question/Answer sections are great.

Overall this book is very well written, it is a true masterpiece.





 for more information click here


Outstanding

The knowledge I gleaned from this textbook was directly responsible for my getting a high paying software engineering job immediately after leaving college - that alone should be a testament to its value. It gives a wide reaching survey (yet certainly not lacking for details) of the latest cutting-edge methods for software engineering as well as the tried-and-true methods that have been in use for decades, while placing a primary emphasis on writing software that is trustworthy on time and within budget. In a software engineering world where ethics have fallen out of favor and the "almighty schedule" has become more important than quality and security, this textbook is an extremely refreshing view of how to apply modern principles and process to produce not merely programs but supportable, trustworthy programming systems products. And best of all, Bernstein shows you how to do it ON-TIME and WITHIN BUDGET by performing quantitative cost and time estimation prior to and during the development process. If software engineering is to reach the level of professionalism long associated with other engineering disciplines, we must all embrace the methods and principles discussed in Bernstein's book.

It's important to note also that there are many case studies in this book from Bernstein's distinguished career at Bell Labs, and they are extremely valuable in learning what "works" and what should be avoided. Software engineering as a discipline doesn't learn from its mistakes as well as other engineering fields, but this book takes 35 years of hard-earned experience and the latest research by Bernstein, Boehm, Parnas, and others, and condenses it into what I consider the best software engineering textbook on the market. This is a must-read for any computer science practitioner who wants to consider himself a true engineer and a professional.


 for more information click here






Great Case Study Variety and Depth

The most commendable single aspect of this book is the extensive set of real case studies. The main author (Bernstein) comes from decades in high tech industry and this permeates the entire book. The book is extremely broad in scope too, so the prospective reader or student gets a tour of a vast array of related subjects. The quantitative basis for the entire book constantly reminds the reader of the usefulness of a quantitative approach to all sorts of aspects of software engineering. Prospective buyers can dive in to the text at Amazon and make up their own mind about the usefulness for their own purposes. Take a look!


 for more information click here


A benchmark text on software development and quantitative software engineering

"We all trust software. All too frequently, this trust is misplaced. Larry Bernstein has created and applied quantitative techniques to develop trustworthy software systems. He and C. M. Yuhas have organized this quantitative experience into a book of great value to make software trustworthy for all of us."
-Barry Boehm

Trustworthy Systems Through Quantitative Software Engineering proposes a novel, reliability-driven software engineering approach, and discusses human factors in software engineering and how these affect team dynamics. This practical approach gives software engineering students and professionals a solid foundation in problem analysis, allowing them to meet customers' changing needs by tailoring their projects to meet specific challenges, and complete projects on schedule and within budget.

Specifically, it helps developers identify customer requirements, develop software designs, manage a software development team, and evaluate software products to customer specifications. Students learn "magic numbers of software engineering," rules of thumb that show how to simplify architecture, design, and implementation.

Case histories and exercises clearly present successful software engineers' experiences and illustrate potential problems, results, and trade-offs. Also featuring an accompanying Web site with additional and related material, Trustworthy Systems Through Quantitative Software Engineering is a hands-on, project-oriented resource for upper-level software and computer science students, engineers, professional developers, managers, and professionals involved in software engineering projects.

An Instructor's Manual presenting detailed solutions to all the problems in the book is available from the Wiley editorial department.

An Instructor Support FTP site is also available.


 for more information click here



reviews: page 1, 2



hot or not?    What's your opinion?     Write a review and share your thoughts!











   


quantitative

Molecular Evolution and Phylogenetics
Water Resources Engineering
Quantitative Business Valuation: A Mathematical Approach for Today's ...
Introduction to Analysis of Variance: Design, Analyis & Interpretation
Initial Public Offerings (IPO): An International Perspective of IPOs ...



engineering

The Humanure Handbook: A Guide to Composting Human Manure
Rocket Boys (The Coalwood Series #1)
The Ashley Book of Knots
Advanced Water Distribution Modeling and Management
Information Technology Control and Audit



trustworthy

Trustworthy Systems Through Quantitative Software Engineering
Ghosts in the Wilderness: Abandoned America
Malware Detection (Advances in Information Security)
Trustworthy Connections : Interpersonal Issues in Spiritual Direction
Natural Healthcare for Your Child: Trustworthy Information on the ...




search for books
engineering, quantitative, software, systems, through, trustworthy




Suche books:   


books
apparel
baby
beauty
books
camera photo
cell phones
classical music
computers
dvd
electronics
gourmet food
health personal care
kitchen
magazines
musical instruments
office products
outdoor living
computer video games
popular music
pet-supplies
software
sporting goods
tools hardware
toys-games
vhs
watches jewelry


* Flowers for London Flower Delivery UK by online florists

* London Wedding Photographer

randomly chosen


cell phone: Motorola SLVR L7 Unlocked Cell Phone with MP3/Video Player, MicroSD ...


leave a comment


home  impressum - about us