Разработка автоматизированной системы проведения соревнований игрового типа с реализацией управляющего модуля
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
ь программы безотказно выполнять функции при заданных условиях в течение заданного периода времени с достаточно большой вероятностью. Надежный программный продукт не исключает наличия в нем ошибок. Здесь важно, чтобы ошибки при практическом применении в заданных условиях проявлялись достаточно редко. Степень надежности характеризуется вероятностью работы программного продукта без отказа в течение определенного периода времени.
Удобство - это характеристики программного продукта, которые позволяют минимизировать усилия пользователя по подготовке исходных данных, применению программного продукта и оценке полученных результатов, а также вызывать положительные эмоции определенного или подразумеваемого пользователя.
Сопровождаемость - это характеристики программного продукта, которые позволяют минимизировать усилия по внесению изменений для устранения в нем ошибок и по его модификации в соответствии с изменяющимися потребностями пользователей.
Переносимость - это способность программного продукта быть перенесенным из одной среды в другую, в частности, с одной аппаратной архитектуры на другую.
Если большинство критериев используется в зависимости от потребностей пользователей, то надежность является обязательным критерием качества программного продукта. Причем обеспечение надежности красной нитью проходит по всем этапам и процессам его разработки.
.3 Обеспечение надежности
Существует четыре основных подхода к обеспечению надежности:
самообнаружение ошибок;
самоисправление ошибок;
обеспечение устойчивости к ошибкам;
предупреждение ошибок.
Первые три подхода связаны с организацией самих продуктов технологии, т.е. программ. Они учитывают возможность ошибки в программах. Самообнаружение ошибки в программе означает, что программа содержит средства обнаружения отказа в процессе ее выполнения. Самоисправление ошибки в программе означает не только обнаружение отказа в процессе ее выполнения, но и исправление последствий этого отказа, для чего в программе должны иметься соответствующие средства. Обеспечение устойчивости программы к ошибкам означает, что в программе содержатся средства, позволяющие локализовать область влияния отказа программы, либо уменьшить его неприятные последствия, а иногда предотвратить катастрофические последствия отказа. Однако эти подходы используются весьма редко (может быть, относительно чаще используется обеспечение устойчивости к ошибкам). Связано это, во-первых, с тем, что многие простые методы, используемые в технике в рамках этих подходов, неприменимы в программировании, например, дублирование отдельных блоков и устройств (выполнение двух копий одной и той же программы всегда будет приводить к одинаковому эффекту - правильному или неправильному). А во-вторых, добавление в программу дополнительных средств приводит к ее усложнению (иногда - значительному), что в какой-то мере мешает методам предупреждения ошибок.
Цель подхода предупреждения ошибок - не допустить ошибок в готовых продуктах, в нашем случае - в ПО. Проведенное рассмотрение природы ошибок при разработке ПО позволяет сконцентрировать внимание на следующих вопросах:
борьба со сложностью;
обеспечение точности перевода;
преодоление барьера между пользователем и разработчиком;
обеспечения контроля принимаемых решений.
Этот подход связан с организацией процессов разработки ПО, т.е. с технологией программирования. И хотя гарантировать отсутствие ошибок в ПО невозможно, благодаря использованию такого подхода можно достигнуть приемлемого уровня надежности ПО.
5.4 Модель разработки ПО
В последнее время вопросу выбора методологии разработки программного обеспечения уделяется повышенное внимание: как показывает опыт, без правильной методологии даже небольшие проекты вряд ли могут быть успешными, и сегодня все больше разработчиков, аналитиков и руководителей проектов начинают это осознавать.
Модель процесса создания программного обеспечения - это общее абстрактное представление данного процесса. Каждая такая модель представляет процесс создания ПО в специфической форме, используя только определенную часть всей информации о процессе. Существуют различные модели создания ПО. Перечислим наиболее распространенные из них:
каскадная модель;
спиральная модель;
модель формальной разработки систем;
модель разработки ПО на основе ранее созданных компонентов.
Каскадная модель предусматривает последовательное выполнение всех этапов проекта в строго фиксированном порядке. Переход на следующий этап означает полное завершение работ на предыдущем этапе. Требования, определенные на стадии формирования требований, строго документируются в виде технического задания и фиксируются на все время разработки проекта. Каждая стадия завершается выпуском полного комплекта документации, достаточной для того, чтобы разработка могла быть продолжена другой командой разработчиков.
При использовании спиральной модели ПО создается в несколько итераций (витков спирали) методом прототипирования - этап разработки ПО iелью проверки пригодности предлагаемых для применения концепций, архитектурных и технологических решений, а также для представления программы заказчику на ранних стадиях процесса разработки. Каждый виток спирали соответствует созданию фрагмента или версии программного обеспечения, на нем ут