Software Development

Author: Allen Tucker
Publisher: CRC Press
ISBN: 1439884609
Format: PDF, ePub
Download Now
To understand the principles and practice of software development, there is no better motivator than participating in a software project with real-world value and a life beyond the academic arena. Software Development: An Open Source Approach immerses students directly into an agile free and open source software (FOSS) development process. It focuses on the methodologies and goals that drive the development of FOSS, combining principles with real-world skill building, such as debugging, refactoring, and writing. The text explains the software development process through an integration of FOSS principles, agile techniques, modern collaboration tools, community involvement, and teamwork. The authors highlight the value of collaboration as a fundamental paradigm for software development. They show how an effective development team can often create better quality software than an individual working in isolation. Written by experienced software developers and educators, this book enables students to gain a rich appreciation of the principles and practice of FOSS development. It also helps them become better writers, programmers, and software community members. Web Resource The book’s companion website provides a wealth of resources: Downloadable FOSS development projects, including design documents, use cases, and code bases A discussion forum for instructors and students to share their experiences and exchange ideas about particular issues raised by these projects Supporting materials for common FOSS development tasks, such as setting up a version control system, an IDE, a project code base, and a unit test suite Additional exercises that reflect a wide variety of software projects and other activities

Fundamentals of Dependable Computing for Software Engineers

Author: John Knight
Publisher: CRC Press
ISBN: 1439862559
Format: PDF, Mobi
Download Now
Fundamentals of Dependable Computing for Software Engineers presents the essential elements of computer system dependability. The book describes a comprehensive dependability-engineering process and explains the roles of software and software engineers in computer system dependability. Readers will learn: Why dependability matters What it means for a system to be dependable How to build a dependable software system How to assess whether a software system is adequately dependable The author focuses on the actions needed to reduce the rate of failure to an acceptable level, covering material essential for engineers developing systems with extreme consequences of failure, such as safety-critical systems, security-critical systems, and critical infrastructure systems. The text explores the systems engineering aspects of dependability and provides a framework for engineers to reason and make decisions about software and its dependability. It also offers a comprehensive approach to achieve software dependability and includes a bibliography of the most relevant literature. Emphasizing the software engineering elements of dependability, this book helps software and computer engineers in fields requiring ultra-high levels of dependability, such as avionics, medical devices, automotive electronics, weapon systems, and advanced information systems, construct software systems that are dependable and within budget and time constraints.

Introduction to Software Engineering Second Edition

Author: Ronald J. Leach
Publisher: CRC Press
ISBN: 1498705286
Format: PDF, Docs
Download Now
Practical Guidance on the Efficient Development of High-Quality Software Introduction to Software Engineering, Second Edition equips students with the fundamentals to prepare them for satisfying careers as software engineers regardless of future changes in the field, even if the changes are unpredictable or disruptive in nature. Retaining the same organization as its predecessor, this second edition adds considerable material on open source and agile development models. The text helps students understand software development techniques and processes at a reasonably sophisticated level. Students acquire practical experience through team software projects. Throughout much of the book, a relatively large project is used to teach about the requirements, design, and coding of software. In addition, a continuing case study of an agile software development project offers a complete picture of how a successful agile project can work. The book covers each major phase of the software development life cycle, from developing software requirements to software maintenance. It also discusses project management and explains how to read software engineering literature. Three appendices describe software patents, command-line arguments, and flowcharts.

Software Engineering

Author: Vaclav Rajlich
Publisher: CRC Press
ISBN: 1439841225
Format: PDF, Mobi
Download Now
Software Engineering: The Current Practice teaches students basic software engineering skills and helps practitioners refresh their knowledge and explore recent developments in the field, including software changes and iterative processes of software development. After a historical overview and an introduction to software technology and models, the book discusses the software change and its phases, including concept location, impact analysis, refactoring, actualization, and verification. It then covers the most common iterative processes: agile, directed, and centralized processes. The text also journeys through the software life span from the initial development of software from scratch to the final stages that lead toward software closedown. For Professionals The book gives programmers and software managers a unified view of the contemporary practice of software engineering. It shows how various developments fit together and fit into the contemporary software engineering mosaic. The knowledge gained from the book allows practitioners to evaluate and improve the software engineering processes in their projects. For Instructors Instructors have several options for using this classroom-tested material. Designed to be run in conjunction with the lectures, ideas for student projects include open source programs that use Java or C++ and range in size from 50 to 500 thousand lines of code. These projects emphasize the role of developers in a classroom-tailored version of the directed iterative process (DIP). For Students Students gain a real understanding of software engineering processes through the lectures and projects. They acquire hands-on experience with software of the size and quality comparable to that of industrial software. As is the case in the industry, students work in teams but have individual assignments and accountability.

Speed Data and Ecosystems

Author: Jan Bosch
Publisher: CRC Press
ISBN: 1351982737
Format: PDF, Kindle
Download Now
As software R&D investment increases, the benefits from short feedback cycles using technologies such as continuous deployment, experimentation-based development, and multidisciplinary teams require a fundamentally different strategy and process. This book will cover the three overall challenges that companies are grappling with: speed, data and ecosystems. Speed deals with shortening the cycle time in R&D. Data deals with increasing the use of and benefit from the massive amounts of data that companies collect. Ecosystems address the transition of companies from being internally focused to being ecosystem oriented by analyzing what the company is uniquely good at and where it adds value.

Industrial Applications of High Performance Computing

Author: Anwar Osseyran
Publisher: CRC Press
ISBN: 1466596813
Format: PDF, Mobi
Download Now
Industrial Applications of High-Performance Computing: Best Global Practices offers a global overview of high-performance computing (HPC) for industrial applications, along with a discussion of software challenges, business models, access models (e.g., cloud computing), public-private partnerships, simulation and modeling, visualization, big data analysis, and governmental and industrial influence. Featuring the contributions of leading experts from 11 different countries, this authoritative book: Provides a brief history of the development of the supercomputer Describes the supercomputing environments of various government entities in terms of policy and service models Includes a case study section that addresses more subtle and technical aspects of industrial supercomputing Shows how access to supercomputing matters, and how supercomputing can be used to solve large-scale and complex science and engineering problems Emphasizes the need for collaboration between companies, political organizations, government agencies, and entire nations Industrial Applications of High-Performance Computing: Best Global Practices supplies computer engineers and researchers with a state-of-the-art supercomputing reference. This book also keeps policymakers and industrial decision-makers informed about the economic impact of these powerful technological investments.