Listen to Coronavirus Patient Zero
<b>Praise from the Reviewers:</b> <p> "The practicality of the subject in a real-world situation distinguishes this book from others available on the market."<br> —<b>Professor Behrouz Far</b>, University of Calgary <p> "This book could replace the computer organization texts now in use that every CS and CpE student must take. . . . It is much needed, well written, and thoughtful."<br> —<b>Professor Larry Bernstein</b>, Stevens Institute of Technology <p> <b>A distinctive, educational text onsoftware performance and scalability</b> <p> This is the first book to take a quantitative approach to the subject of software performance and scalability. It brings together three unique perspectives to demonstrate how your products can be optimized and tuned for the best possible performance and scalability: <ul> <li> <div><b>The Basics</b>—introduces the computer hardware and software architectures that predetermine the performance and scalability of a software product as well as the principles of measuring the performance and scalability of a software product</div> <li> <div><b>Queuing Theory</b>—helps you learn the performance laws and queuing models for interpreting the underlying physics behind software performance and scalability, supplemented with ready-to-apply techniques for improving the performance and scalability of a software system</div> <li> <div><b>API Profiling</b>—shows you how to design more efficient algorithms and achieve optimized performance and scalability, aided by adopting an API profiling framework (perfBasic) built on the concept of a performance map for drilling down performance root causes at the API level</div> </ul> <p> <i>Software Performance and Scalability</i> gives you a specialized skill set that will enable you to design and build performance into your products with immediate, measurable improvements. Complemented with real-world case studies, it is an indispensable resource for software developers, quality and performance assurance engineers, architects, and managers. It is anideal text for university courses related to computer and software performance evaluation and can also be used to supplement a course in computer organization or in queuing theory for upper-division and graduate computer science students. <p>
Software components and component-based software development (CBSD) are acknowledged as the best approach for constructing quality software at reasonable cost. Composing Software Components: A Software-testing Perspective describes a 10-year investigation into the underlying principles of CBSD. By restricting attentionto the simplest cases, startling results are obtained:
. Components are tested using only executable code. Their behavior is recorded and presented graphically.
. Functional and non-functional behavior of systems synthesized from components are calculated from component tests alone. No access to components themselves is required.
. Fast, accurate tools support every aspect of CBSD from design through debugging.
Case studies of CBSD also illuminate software testing in general, particularly an expanded role for unit testing and the treatment of non-functional software properties.
This unique book:
. Contains more than a dozen case studies of fully worked-out component synthesis, with revealing insights into fundamental testing issues.
. Presents an original, fundamental theory of component composition that includes persistent state and concurrency, based on functional software testing rather than proof-of-programs.
. Comes with free supporting software with tutorial examples and data for replication of examples. The Perl software has been tested on Linux, Macintosh, and Windows platforms. Full documentation is provided.
. Includes anecdotes and insights from the author's 50-year career in computing as systems programmer, manager, researcher, and teacher.
Composing Software Components: A Software-testing Perspective will help software researchers and practitioners to understand the underlying principles of component testing. Advanced students in computer science, engineering, and mathematics can also benefit from the book as a supplemental text and reference.
The fundamental values central to the Messier/Glover/Prawitt text include: student engagement, a systematic approach, and decision making. Student Engagement: The authors believe students are best served by acquiring a strong understanding of the basic concepts that underlie the audit process and how to apply those concepts to various audit and assurance services. The text is accessible to students through straightforward writing and the use of engaging, relevant real-world examples, illustrations, and analogies. The text explicitly encourages students to 'stop and think' at important points in the text to help them apply principles covered and also helps students see the application of concepts in a practical setting through 'practice insight' boxes. A Systematic Approach: The authors first introduce the three underlying concepts of audit risk, materiality, and evidence, then follow with a discussion of audit planning, the assessment of control risk, and a discussion of the nature, timing, and extent of evidence necessary to reach the appropriate level of detection risk. These concepts are then applied to each major business process and related account balances using a risk-based approach, (in following with the new standards adopted by the various auditing boards). Decision Making: Since much of auditing practice involves the application of auditor judgment, the authors focus on critical judgments and decision-making processes. If a student understands these basic concepts and how to apply them to an audit engagement, he or she will be more effective in today's dynamic audit environment. The new edition even includes a full advanced module on Professional Judgment.