Название: Mathematical Foundations of Software Engineering: A Practical Guide to Essentials Автор: Gerard O'Regan Издательство: Springer Серия: Texts in Computer Science Год: 2023 Страниц: 538 Язык: английский Формат: pdf (true) Размер: 10.2 MB
The objective of this book is to give the reader a flavour of the mathematical foundations of software engineering. The rich applications of mathematics to software engineering includes its applications to error detection and correcting codes with finite field theory; the field of cryptography which uses the results of number theory; the modelling of telecommunication networks with graph theory; the application of discrete mathematics and proof techniques to the software correctness field (especially safety critical systems using formal methods and model checking); the application of financial mathematics to the banking and insurance fields; and the application of calculus and vectors to traditional engineering applications.
Topics and features:
Addresses core mathematics for critical thinking and problem solving Discusses propositional and predicate logic and various proof techniques to demonstrate the correctness of a logical argument. Examines number theory and its applications to cryptography Considers the underlying mathematics of error-correcting codes Discusses graph theory and its applications to modelling networks Reviews tools to support software engineering mathematics, including automated and interactive theorem provers and model checking Discusses financial software engineering, including simple and compound interest, probability and statistics, and operations research Discusses software reliability and dependability and explains formal methods used to derive a program from its specification Discusses calculus, matrices, vectors, complex numbers, and quaternions, as well as applications to graphics and robotics Includes key learning topics, summaries, and review questions in each chapter, together with a useful glossary
Chapter 1 introduces software engineering and discusses both traditional and Agile software engineering. Chapter 2 examines which mathematics is needed in software engineering, including the core mathematics that all software engineers should be familiar with, as well as specific mathematics for the particular software engineering domains such as the safety critical field; to traditional engineering applications; and to the financial sector.
Chapter 3 discusses the mathematical prerequisites, and we discuss fundamental building blocks in mathematics including sets, relations, and functions. A set is a collection of well-defined objects, and it may be finite or infinite.
Chapter 4 presents a short introduction to algorithms, where an algorithm is a well-defined procedure for solving a problem.
Chapter 7 discusses graph theory.
Chapter 11 presents some advanced topics in logic including fuzzy logic, temporal logic, intuitionistic logic, undefined values, and the applications of logic to AI. Fuzzy logic is an extension of classical logic that acts as a mathematical model for vagueness.
Chapter 20 discusses cryptography, which is an important application of number theory. The codebreaking work done at Bletchley Park in England during the Second World War is discussed, and the fundamentals of cryptography, including private and public key cryptosystems, are discussed.
Chapter 21 presents coding theory and is concerned with error detection and error correction codes. The underlying mathematics includes abstract mathematics such as group theory, rings, fields, and vector spaces.
Finally, Chap. 32 discusses a selection of software tools to support mathematics for software engineering, and we discuss Microsoft Excel, Minitab, Python, the R statistical software environment, and Mathematica.
This practical and easy-to-follow textbook/reference is ideal for computer science students seeking to learn how mathematics can assist them in building high-quality and reliable software on time and on budget. The text also serves as an excellent self-study primer for software engineers, quality professionals, and software managers.
Скачать Mathematical Foundations of Software Engineering: A Practical Guide to Essentials
Внимание
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь.
Мы рекомендуем Вам зарегистрироваться либо войти на сайт под своим именем.
Информация
Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.