Software Design for Engineers and ScientistsBy
- John Robinson, University of York, U.K.
Software Design for Engineers and Scientists integrates three core areas of computing:. Software engineering - including both traditional methods and the insights of 'extreme programming'. Program design - including the analysis of data structures and algorithms. Practical object-oriented programmingWithout assuming prior knowledge of any particular programming language, and avoiding the need for students to learn from separate, specialised Computer Science texts, John Robinson takes the reader from small-scale programing to competence in large software projects, all within one volume. Copious examples and case studies are provided in C++ and students can access complementary examples in Java on an accompanying website.The book is especially suitable for undergraduates in the natural sciences and all branches of engineering who have some knowledge of computing basics, and now need to understand and apply software design to tasks like data analysis, simulation, signal processing or visualisation. John Robinson introduces both software theory and its application to problem solving using a range of design principles, applied to the creation of medium-sized systems, providing key methods and tools for designing reliable, efficient, maintainable programs. The case studies are presented within scientific contexts to illustrate all aspects of the design process, allowing students to relate theory to real-world applications. All listings are available on this books companion website.
Undergraduates of Electrical and Electronic Engineering, General Engineering subjects, science students (physics); software engineering. HNC / D Electronic and Electrical Engineering.
Paperback, 414 Pages
- Introduction; Fundamentals; The craft of software design; Beginning programming in C++; Object-oriented programming in C++; Program style and structure; Data structures; Algorithms; Design methodology; Understanding the problem; Researching possible solutions; Modularization; Detailed Design and impletmentation; Testing; Case study: Median filtering; Mulitdimensional minimization - a case study in numerical methods; Stable - desiging a string table class