Skip to main content

Books in Software

This collection encompasses software engineering, programming languages, and development frameworks. Showcasing best practices, innovative methodologies, and case studies, it supports developers, researchers, and educators in building reliable, efficient, and maintainable software systems. Addressing agile development, software testing, and DevOps, these resources foster technological excellence and industry readiness.

  • High Performance Computing

    Modern Systems and Practices
    • 1st Edition
    • December 5, 2017
    • Thomas Sterling + 2 more
    • English
    High Performance Computing: Modern Systems and Practices is a fully comprehensive and easily accessible treatment of high performance computing, covering fundamental concepts and essential knowledge while also providing key skills training. With this book, domain scientists will learn how to use supercomputers as a key tool in their quest for new knowledge. In addition, practicing engineers will discover how supercomputers can employ HPC systems and methods to the design and simulation of innovative products, and students will begin their careers with an understanding of possible directions for future research and development in HPC. Those who maintain and administer commodity clusters will find this textbook provides essential coverage of not only what HPC systems do, but how they are used.
  • Parallel Programming

    Concepts and Practice
    • 1st Edition
    • November 13, 2017
    • Bertil Schmidt + 3 more
    • English
    Parallel Programming: Concepts and Practice provides an upper level introduction to parallel programming. In addition to covering general parallelism concepts, this text teaches practical programming skills for both shared memory and distributed memory architectures. The authors’ open-source system for automated code evaluation provides easy access to parallel computing resources, making the book particularly suitable for classroom settings.
  • CUDA Programming

    A Developer's Guide to Parallel Computing with GPUs
    • 2nd Edition
    • October 1, 2017
    • Shane Cook
    • English
    CUDA Programming: A Developer's Guide to Parallel Computing with GPUs, Second Edition is a fully revised, updated, practical guide that provides a solid foundation for developers learning parallel programming with CUDA. This guide iincludes updates that cover both the Kepler and Maxwell GPUs from NVIDIA, as well as the latest heterogeneous systems from AMD. Suitable for someone without a parallel programming background or previous CUDA experience, as well as those who already have dabbled in GPU programming, the contents range from installation and getting started, to building your own GPU workstation. This revision includes a new chapter on visualizing data, and new content on the latest CUDA features including data caching, shared memory, and dynamic parallelism. Author Shane Cook also covers the latest host systems and changes to the installation process, NVIDIA’s Parallel NSight IDE, and hardware systems that run CUDA applications. The final new chapter looks ahead to future GPU platforms and releases including on-core ARM CPU and NVlink technologies.
  • OCUP 2 Certification Guide

    Preparing for the OMG Certified UML 2.5 Professional 2 Foundation Exam
    • 1st Edition
    • August 24, 2017
    • Michael Jesse Chonoles
    • English
    OCUP 2 Certification Guide: Preparing for the OMG Certified UML 2.5 Professional 2 Foundation Exam both teaches UML® 2.5 and prepares candidates to become certified. UML® (Unified Modeling Language) is the most popular graphical language used by software analysts, designers, and developers to model, visualize, communicate, test, and document systems under development. UML® 2.5 has recently been released, and with it a new certification program for practitioners to enhance their current or future career opportunities. There are three exam levels: Foundation, Intermediate, and Advanced. The exam covered in this book, Foundation, is a prerequisite for the higher levels. Author Michael Jesse Chonoles is a lead participant in the current OCUP 2 program—not only in writing and reviewing all the questions, but also in designing the goals of the program. This book distills his experience in modeling, mentoring, and training. Because UML® is a sophisticated language, with 13 diagram types, capable of modeling any type of modern software system, it takes users some time to become proficient. This effective resource will explain the material in the Foundation exam and includes many practice questions for the candidate, including sample problems similar to those found in the exam, and detailed explanations of why correct answers are correct and why wrong answers are wrong.
  • Advances in Computers

    • 1st Edition
    • Volume 107
    • August 23, 2017
    • English
    Advances in Computers, Volume 107, the latest volume in a series published since 1960, presents detailed coverage of innovations in computer hardware, software, theory, design and applications. Chapters in this updated volume include Advances in Model-based Analysis and Testing, Advances in Software Quality Assurance, Advances in Handling Uncertainty in Testing, Advances in Testing of Communicating Systems, and Advances in Formal Verification and Cyber-physical Systems. This book provides contributors with a medium in which they can explore their subjects in greater depth and breadth than journal articles usually allow.
  • Advances in Computers

    • 1st Edition
    • Volume 106
    • June 26, 2017
    • English
    Advances in Computers, Volume 106 is the latest volume in the series, which has been published since 1960. This update presents innovations in computer hardware, software, theory, design and applications, with new chapters in this volume including sections on A New Course on R&D Project Management in Computer Science and Engineering: Subjects Taught, Rationales Behind, and Lessons Learned, Advances in Dataflow Systems, Adaptation and Evaluation of the Simplex Algorithm for a Data-Flow Architecture, and Simple Operations in Memory to Reduce Data Movement. In addition, this series provides contributors with a medium to explore their subjects in greater depth than journal articles usually allow.
  • Deception in the Digital Age

    Exploiting and Defending Human Targets through Computer-Mediated Communications
    • 1st Edition
    • June 23, 2017
    • Cameron H. Malin + 3 more
    • English
    Deception in the Digital Age: Exploiting and Defending Human Targets Through Computer-Mediated Communication guides readers through the fascinating history and principles of deception—and how these techniques and stratagems are now being effectively used by cyber attackers. Users will find an in-depth guide that provides valuable insights into the cognitive, sensory and narrative bases of misdirection, used to shape the targeted audience’s perceptions and beliefs. The text provides a detailed analysis of the psychological, sensory, sociological, and technical precepts that reveal predictors of attacks—and conversely postmortem insight about attackers—presenting a unique resource that empowers readers to observe, understand and protect against cyber deception tactics. Written by information security experts with real-world investigative experience, the text is the most instructional book available on the subject, providing practical guidance to readers with rich literature references, diagrams and examples that enhance the learning process.
  • Topological UML Modeling

    An Improved Approach for Domain Modeling and Software Development
    • 1st Edition
    • June 16, 2017
    • Janis Osis + 1 more
    • English
    Topological UML Modeling: An Improved Approach for Domain Modeling and Software Development presents a specification for Topological UML® that combines the formalism of the Topological Functioning Model (TFM) mathematical topology with a specified software analysis and design method. The analysis of problem domain and design of desired solutions within software development processes has a major impact on the achieved result – developed software. While there are many tools and different techniques to create detailed specifications of the solution, the proper analysis of problem domain functioning is ignored or covered insufficiently. The design of object-oriented software has been led for many years by the Unified Modeling Language (UML®), an approved industry standard modeling notation for visualizing, specifying, constructing, and documenting the artifacts of a software-intensive system, and this comprehensive book shines new light on the many advances in the field.
  • MATLAB Programming for Biomedical Engineers and Scientists

    • 1st Edition
    • June 14, 2017
    • Andrew P. King + 1 more
    • English
    MATLAB Programming for Biomedical Engineers and Scientists provides an easy-to-learn introduction to the fundamentals of computer programming in MATLAB. This book explains the principles of good programming practice, while demonstrating how to write efficient and robust code that analyzes and visualizes biomedical data. Aimed at the biomedical engineer, biomedical scientist, and medical researcher with little or no computer programming experience, it is an excellent resource for learning the principles and practice of computer programming using MATLAB. This book enables the reader to: Analyze problems and apply structured design methods to produce elegant, efficient and well-structured program designs Implement a structured program design in MATLAB, making good use of incremental development approaches Write code that makes good use of MATLAB programming features, including control structures, functions and advanced data types Write MATLAB code to read in medical data from files and write data to files Write MATLAB code that is efficient and robust to errors in input data Write MATLAB code to analyze and visualize medical data, including imaging data
  • Software Architecture for Big Data and the Cloud

    • 1st Edition
    • June 12, 2017
    • Ivan Mistrik + 4 more
    • English
    Software Architecture for Big Data and the Cloud is designed to be a single resource that brings together research on how software architectures can solve the challenges imposed by building big data software systems. The challenges of big data on the software architecture can relate to scale, security, integrity, performance, concurrency, parallelism, and dependability, amongst others. Big data handling requires rethinking architectural solutions to meet functional and non-functional requirements related to volume, variety and velocity. The book's editors have varied and complementary backgrounds in requirements and architecture, specifically in software architectures for cloud and big data, as well as expertise in software engineering for cloud and big data. This book brings together work across different disciplines in software engineering, including work expanded from conference tracks and workshops led by the editors.