Software Engineering for Science

Software Engineering for Science
Author: Jeffrey C. Carver
Publisher: CRC Press
Total Pages: 311
Release: 2016-11-03
Genre: Computers
ISBN: 1498743862

Software Engineering for Science provides an in-depth collection of peer-reviewed chapters that describe experiences with applying software engineering practices to the development of scientific software. It provides a better understanding of how software engineering is and should be practiced, and which software engineering practices are effective for scientific software. The book starts with a detailed overview of the Scientific Software Lifecycle, and a general overview of the scientific software development process. It highlights key issues commonly arising during scientific software development, as well as solutions to these problems. The second part of the book provides examples of the use of testing in scientific software development, including key issues and challenges. The chapters then describe solutions and case studies aimed at applying testing to scientific software development efforts. The final part of the book provides examples of applying software engineering techniques to scientific software, including not only computational modeling, but also software for data management and analysis. The authors describe their experiences and lessons learned from developing complex scientific software in different domains. About the Editors Jeffrey Carver is an Associate Professor in the Department of Computer Science at the University of Alabama. He is one of the primary organizers of the workshop series on Software Engineering for Science (http://www.SE4Science.org/workshops). Neil P. Chue Hong is Director of the Software Sustainability Institute at the University of Edinburgh. His research interests include barriers and incentives in research software ecosystems and the role of software as a research object. George K. Thiruvathukal is Professor of Computer Science at Loyola University Chicago and Visiting Faculty at Argonne National Laboratory. His current research is focused on software metrics in open source mathematical and scientific software.

Computer Science

Computer Science
Author: Edward K. Blum
Publisher: Springer Science & Business Media
Total Pages: 470
Release: 2011-12-02
Genre: Computers
ISBN: 1461411688

Computer Science: The Hardware, Software and Heart of It focuses on the deeper aspects of the two recognized subdivisions of Computer Science, Software and Hardware. These subdivisions are shown to be closely interrelated as a result of the stored-program concept. Computer Science: The Hardware, Software and Heart of It includes certain classical theoretical computer science topics such as Unsolvability (e.g. the halting problem) and Undecidability (e.g. Godel’s incompleteness theorem) that treat problems that exist under the Church-Turing thesis of computation. These problem topics explain inherent limits lying at the heart of software, and in effect define boundaries beyond which computer science professionals cannot go beyond. Newer topics such as Cloud Computing are also covered in this book. After a survey of traditional programming languages (e.g. Fortran and C++), a new kind of computer Programming for parallel/distributed computing is presented using the message-passing paradigm which is at the heart of large clusters of computers. This leads to descriptions of current hardware platforms for large-scale computing, such as clusters of as many as one thousand which are the new generation of supercomputers. This also leads to a consideration of future quantum computers and a possible escape from the Church-Turing thesis to a new computation paradigm. The book’s historical context is especially helpful during this, the centenary of Turing's birth. Alan Turing is widely regarded as the father of Computer Science, since many concepts in both the hardware and software of Computer Science can be traced to his pioneering research. Turing was a multi-faceted mathematician-engineer and was able to work on both concrete and abstract levels. This book shows how these two seemingly disparate aspects of Computer Science are intimately related. Further, the book treats the theoretical side of Computer Science as well, which also derives from Turing's research. Computer Science: The Hardware, Software and Heart of It is designed as a professional book for practitioners and researchers working in the related fields of Quantum Computing, Cloud Computing, Computer Networking, as well as non-scientist readers. Advanced-level and undergraduate students concentrating on computer science, engineering and mathematics will also find this book useful.

Elements of Software Science

Elements of Software Science
Author: Maurice Howard Halstead
Publisher: Elsevier Publishing Company
Total Pages: 152
Release: 1977
Genre: Computers
ISBN:

Book Designed for Computer Professional Linguists, Psychologists, & Mathematicians. Summarizes the Research in Field of Human/Machine Interaction.

Computing Handbook

Computing Handbook
Author: Teofilo Gonzalez
Publisher: CRC Press
Total Pages: 2326
Release: 2014-05-07
Genre: Computers
ISBN: 1439898537

The first volume of this popular handbook mirrors the modern taxonomy of computer science and software engineering as described by the Association for Computing Machinery (ACM) and the IEEE Computer Society (IEEE-CS). Written by established leading experts and influential young researchers, it examines the elements involved in designing and implementing software, new areas in which computers are being used, and ways to solve computing problems. The book also explores our current understanding of software engineering and its effect on the practice of software development and the education of software professionals.

Software Engineering and Computer Games

Software Engineering and Computer Games
Author: Rudy von Bitter Rucker
Publisher: Addison Wesley Longman
Total Pages: 654
Release: 2003
Genre: Computers
ISBN:

This book solves the dilemma of wanting to learn Windows-based sorfware engineering without knowing Windows programming. The basics in Windows programming are explained alongside ideas of object-oriented sortware engineering. (Midwest).

Computer Science and Educational Software Design

Computer Science and Educational Software Design
Author: Pierre Tchounikine
Publisher: Springer Science & Business Media
Total Pages: 190
Release: 2011-06-27
Genre: Education
ISBN: 3642200036

Developing educational software requires thinking, problematizing, representing, modeling, implementing and analyzing pedagogical objectives and issues, as well as conceptual models and software architectures. Computer scientists face the difficulty of understanding the particular issues and phenomena to be taken into account in educational software projects and of avoiding a naïve technocentered perspective. On the other hand, actors with backgrounds in human or social sciences face the difficulty of understanding software design and implementation issues, and how computer scientists engage in these tasks. Tchounikine argues that these difficulties cannot be solved by building a kind of “general theory” or “general engineering methodology” to be adopted by all actors for all projects: educational software projects may correspond to very different realities, and may be conducted within very different perspectives and with very different matters of concern. Thus the issue of understanding each others’ perspectives and elaborating some common ground is to be considered in context, within the considered project or perspective. To this end, he provides the reader with a framework and means for actively taking into account the relationships between pedagogical settings and software, and for working together in a multidisciplinary way to develop educational software. His book is for actors engaged in research or development projects which require inventing, designing, adapting, implementing or analyzing educational software. The core audience is Master’s and PhD students, researchers and engineers from computer science or human and social sciences (e.g., education, psychology, pedagogy, philosophy, communications or sociology) interested in the issues raised by educational software design and analysis and in the variety of perspectives that may be adopted.

Real-World Software Projects for Computer Science and Engineering Students

Real-World Software Projects for Computer Science and Engineering Students
Author: Varun Gupta
Publisher: CRC Press
Total Pages: 114
Release: 2021-02-24
Genre: Education
ISBN: 1000388107

Developing projects outside of a classroom setting can be intimidating for students and is not always a seamless process. Real-World Software Projects for Computer Science and Engineering Students is a quick, easy source for tackling such issues. Filling a critical gap in the research literature, the book: Is ideal for academic project supervisors. Helps researchers conduct interdisciplinary research. Guides computer science students on undertaking and implementing research-based projects This book explains how to develop highly complex, industry-specific projects touching on real-world complexities of software developments. It shows how to develop projects for students who have not yet had the chance to gain real-world experience, providing opportunity to become familiar with the skills needed to implement projects using standard development methodologies. The book is also a great source for teachers of undergraduate students in software engineering and computer science as it can help students prepare for the risk and uncertainty that is typical of software development in industrial settings.

Advances in Computer and Information Sciences and Engineering

Advances in Computer and Information Sciences and Engineering
Author: Tarek Sobh
Publisher: Springer Science & Business Media
Total Pages: 602
Release: 2008-08-15
Genre: Computers
ISBN: 1402087411

Advances in Computer and Information Sciences and Engineering includes a set of rigorously reviewed world-class manuscripts addressing and detailing state-of-the-art research projects in the areas of Computer Science, Software Engineering, Computer Engineering, and Systems Engineering and Sciences. Advances in Computer and Information Sciences and Engineering includes selected papers from the conference proceedings of the International Conference on Systems, Computing Sciences and Software Engineering (SCSS 2007) which was part of the International Joint Conferences on Computer, Information and Systems Sciences and Engineering (CISSE 2007).

Computing and Software Science

Computing and Software Science
Author: Bernhard Steffen
Publisher: Springer Nature
Total Pages: 604
Release: 2019-10-04
Genre: Computers
ISBN: 3319919083

The papers of this volume focus on the foundational aspects of computer science, the thematic origin and stronghold of LNCS, under the title “Computing and Software Science: State of the Art and Perspectives”. They are organized in two parts: The first part, Computation and Complexity, presents a collection of expository papers on fashionable themes in algorithmics, optimization, and complexity. The second part, Methods, Languages and Tools for Future System Development, aims at sketching the methodological evolution that helps guaranteeing that future systems meet their increasingly critical requirements. Chapter 3 is available open access under a Creative Commons Attribution 4.0 International License via link.springer.com.

What Can Be Computed?

What Can Be Computed?
Author: John MacCormick
Publisher: Princeton University Press
Total Pages: 404
Release: 2018-05-01
Genre: Computers
ISBN: 0691170665

An accessible and rigorous textbook for introducing undergraduates to computer science theory What Can Be Computed? is a uniquely accessible yet rigorous introduction to the most profound ideas at the heart of computer science. Crafted specifically for undergraduates who are studying the subject for the first time, and requiring minimal prerequisites, the book focuses on the essential fundamentals of computer science theory and features a practical approach that uses real computer programs (Python and Java) and encourages active experimentation. It is also ideal for self-study and reference. The book covers the standard topics in the theory of computation, including Turing machines and finite automata, universal computation, nondeterminism, Turing and Karp reductions, undecidability, time-complexity classes such as P and NP, and NP-completeness, including the Cook-Levin Theorem. But the book also provides a broader view of computer science and its historical development, with discussions of Turing's original 1936 computing machines, the connections between undecidability and Gödel's incompleteness theorem, and Karp's famous set of twenty-one NP-complete problems. Throughout, the book recasts traditional computer science concepts by considering how computer programs are used to solve real problems. Standard theorems are stated and proven with full mathematical rigor, but motivation and understanding are enhanced by considering concrete implementations. The book's examples and other content allow readers to view demonstrations of—and to experiment with—a wide selection of the topics it covers. The result is an ideal text for an introduction to the theory of computation. An accessible and rigorous introduction to the essential fundamentals of computer science theory, written specifically for undergraduates taking introduction to the theory of computation Features a practical, interactive approach using real computer programs (Python in the text, with forthcoming Java alternatives online) to enhance motivation and understanding Gives equal emphasis to computability and complexity Includes special topics that demonstrate the profound nature of key ideas in the theory of computation Lecture slides and Python programs are available at whatcanbecomputed.com