Проектирование программного обеспечения на примере инструментов на JavaScript
Лучший способ научиться проектированию чего бы то ни было — изучать примеры! В книге на примерах системы резервного копирования, фреймворка автономного тестирования, сопоставления с регулярными выражениями, браузерного движка размещения, небольшого компилятора исследуются распространенные паттерны проектирования. Вы узнаете, как забота о тестопригодности кода способствует его повторному использованию, а также поймете, как...
Доказательство корректности программ
Данная книга учит формально рассуждать о компьютерных программах, используя последовательный подход и язык программирования Dafny, поддерживающий верификацию. Показано, как писать спецификации для программ, как удовлетворить требования этих спецификаций и как писать доказательства корректности программ относительно спецификаций. Автор сначала представляет теоретические предпосылки, лежащие в основе рассуждений о программном коде, а затем...
Методы верификации программ
В книге излагаются вопросы моделирования и верификации (т.е. доказательства правильности) различных классов программ. Основные концепции и основанные на них подходы к верификации иллюстрированы примерами верификации различных программ. Для закрепления усвоения изложенного материала в книге приведено большое количество задач. Книга предназначена для студентов высших учебных заведений, обучающихся по специальностям «теоретические основы...
Доверительное А/В-тестирование
Сложно понять ценность идеи, пока она не опробована на практике. В этой книге рассказывается о том, как контролируемые онлайн-эксперименты (или, как их еще называют, A/B-тесты) позволяют оценить эффективность тех или иных идей по оптимизации веб-сайтов и добиться максимальной отдачи от их использования. Вы узнаете, как правильно подобрать инструменты для тестирования,...
Хаос-инжиниринг
Сложность масштабных систем неизбежно возрастает по мере того, как все больше компаний переходят на микросервисы и другие распределенные технологии. От сложности невозможно избавиться, но с помощью хаос-инжиниринга вы можете обнаружить уязвимости и предотвратить отказы до того, как они повлияют на ваших клиентов. Это практическое руководство рассказывает разработчикам и инженерам по...
Интеграция управления программой и системной инженерии
Книга является результатом проекта, который был реализован Институтом управления проектами (Project Management Institute, PMI) и Международным советом по системной инженерии (International Council on Systems Engineering, INCOSE). В книге обсуждается, как организации могут стать более результативнымии эффективными, более чутко реагировать на изменения и добиваться лучших результатов работы благодаря интеграции управления программой...
Инженерия требований
Первые издания этого замечательного руководства давно стали настольной книгой по инженерии требований для специалистов, а также преподавателей колледжей и университетов по всему миру. Книга помогла многочисленным читателям разобраться в принципах и практиках современной инженерии требований, дала им знания, умения и навыки, необходимые для создания как традиционных технических, так и сложных...
Системная инженерия. Принципы и практика
Книга принадлежит к числу лучших зарубежных учебников по системной инженерии. В ней подробно рассмотрены практически все аспекты деятельности системного инженера на протяжении полного жизненного цикла сложной системы. В основу предлагаемого авторами подхода к изучению системной инженерии положено небольшое число базовых моделей, удобных для освоения и практического использования. Книга носит прикладной...
Читаем Тьюринга
Книга, которую вы держите в руках, принадлежит перу известного американского популяризатора Чарлза Петцольда. В ней автор исследует главную работу Алана Тьюринга, посвященную проблеме разрешимости. Именно в этой работе впервые появились знаменитые машины Тьюринга, ставшие на многие годы универсальной теоретической концепцией computer science. Автор тонко и деликатно проведет вас по самым...
Путешествие по системному ландшафту
Цель данной книги состоит в том, чтобы помочь читателям и организациям в улучшении своих возможностей по управлению свойствами и характеристиками создаваемых и/или эксплуатируемых ими систем. В книге рассмотрены вопросы применения системного мышления для анализа свойств и особенностей функционирования различных систем. Описаны принципы системной инженерии, включая управление жизненным циклом систем. Особое...
ATDD. Разработка программного обеспечения через приемочные тесты
Применяя методику разработки через приемочные тесты (ATDD), заказчики, разработчики и тестировщики получают возможность совместно сформулировать тесто-пригодные требования, что позволяет создавать высококачественное программное обеспечение в сжатые сроки. Однако на практике многие не понимают, в чем истинный смысл ATDD. Настоящая книга – первое практическое руководство начального уровня по внедрению и успешному применению...