Software Engineering

Software Engineering : A Holistic View

4 (1 rating by Goodreads)
By (author) 

List price: US$97.00

Currently unavailable

Add to wishlist

AbeBooks may have this title (opens in new window).

Try AbeBooks

Description

This book offers an integrated and pragmatic overview of software engineering. Intended as a text for an upper-class undergraduate or first-year graduate course in software engineering, it should be of interest to practitioners as well. It gives students a basic grounding in the process of software development and teaches them how a disciplined application of methods and tools can improve the quality and productivity of projects such as information systems, software tools, and engineering analyses. The material is organized around three themes: software engineering is the discipline of implementing computer-supported solutions to real problems, the software process is one of solving, and all software solutions must be expressed as formal models. Because software engineering is presented as an evolving discipline, current practices are explained in the context of their initial goals and historical setting. As a result, the text focuses not on how things are done, but why they are done that way. All illustrations are drawn from a central case study-the development of a software configuration management system. The book contains exercises and an extended reading list.show more

Product details

  • Hardback | 602 pages
  • 157.48 x 228.6 x 35.56mm | 997.9g
  • Oxford University Press Inc
  • New York, United States
  • English
  • numerous line illustrations
  • 019507159X
  • 9780195071597

Table of contents

1. The Software Process; 2. What is Software Engineering?; 3. Models of the Software Process; 4. Software Engineering as Problem Solving; 5. Facts, Myths, and Perceptions; 6. Some Final Comments; 7. Requirements Analysis and Modelling; 8. Approaching Requirements Analysis; 9. The Configuration Management Case Study; 10. Modeling Techniques; 11. Implicit Requirements; 12. The Next Steps; 13. Modeling-in-the-Large; 14. Decomposition and Composition; 15. Structured Analysis and Structured Design; 16. Jackson System Development and Programming; 17. Comparisons and Alternatives; 18. Modeling-in-the-Small; 19. Implementing the System; 20. Encapsulation Techniques; 21. The Program Proof; 22. Concluding Observations on Modeling; 23. Verification and Validation; 24. On the Importance of Being Ernest; 25. Before the Programs Exist; 26. After the Programs Exist; 27. The Cleanroom; 28. A Summing Up; 29. Managing the Process; 30. Overview of Management; 31. Principles of Software Project Management; 32. Process Improvement Technologies; 33. Some Final Observations; 34. Epilogue; Appendix A. Exercises; Appendix B. Readings; Indexshow more

Review quote

"Provides a framework that clarifies the various software engineering techniques and tools and their interrelationships. . . .The material covered and the clear and easy-to-read style makes this book an extremely well-written introduction in software engineering methods. In addition, it provides practitioners an excellent means to understand the different techniques nowadays available and how these fit in their problem-solving activity." --Meth. Inform. Med"Blum provides a comprehensive summary of the state of the art of the practice in software engineering. Well written and organized; supplies ample material for understanding the intricacies of the process. Up to date with modern practices, it should be required reading for anyone entering the working world of software engineering." --Choice"Blum reveals his long experience in software engineering by placing the subject in its historical context. He describes the origin of the term 'bug' and even includes a photograph of the original moth that caused a computer failure. He presents classic work such as Dijkstra's proof of the greatest common divisor algorithm and Parnas' original paper on information hiding." --The Times Higher Education Supplement"Among the books I had a chance to see, this is the most systematic and best written one. For everybody who wants to go beyond the buzzwords and learn about underlying principles and their historic development, this book is the best one to read. Software engineering is presented as a discipline based on principles and ties together by underlying concerns, a discipline which is very much integrated and alive. It is systematically explored, and individual methods, tools. and techniques are presented as pieces fitting into that 'larger context.' An excellent text for a graduate course in software engineering, with exercises for each section" --ComputerA radical and refreshing departure from most treatments of software engineering as a broad topic....The writing is highly readable, sometimes humorous, and never dry. The topics covered are relevant and current, the content is technically correct, and the presentation is excellent....In summary, the book is sound pedagogy, suitable for upper level undergraduate and early graduate courses; it contrasts existing methods in a way that will aid practitioners in selecting from among competing methods, and it discusses industrial practices, which will help academicians better understand industry's challenges. Among the recent flood of software engineering texts, I recommend that you consider this one seriously. I did and found it a winner." --IEEE Softwareshow more

Rating details

1 ratings
4 out of 5 stars
5 0% (0)
4 100% (1)
3 0% (0)
2 0% (0)
1 0% (0)
Book ratings by Goodreads
Goodreads is the world's largest site for readers with over 50 million reviews. We're featuring millions of their reader ratings on our book pages to help you find your new favourite book. Close X