Полная версия

Главная arrow Информатика arrow Архитектура и проектирование программных систем

  • Увеличить шрифт
  • Уменьшить шрифт


<<   СОДЕРЖАНИЕ   >>

Постановка целей для программной системы

При правильной постановки целей для программной системы не делается никаких предположений о конкретной реализации, но указывается, каким образом на последующих этапах проектирования следует принимать компромиссные решения. Как отмечалось выше, должны быть поставлены цели двух типов: цели программного продукта и цели проекта.

Цели продукта

Это цели с точки зрения пользователя системы. Они должны включать следующую информацию.

  • 1. Резюме. Здесь кратко описываются общее назначение разрабатываемого программного продукта и его функции.
  • 2. Определение пользователя. Описывается круг возможных пользователей системы. При множестве типов пользователей требуется определить специфические особенности каждой группы пользователей.
  • 3. Подробное описание функций. Подробное описание функций, которые должны обеспечиваться системой. Это необходимо для того, чтобы гарантировать однозначное восприятие требований пользователей проектировщиками.
  • 4. Публикации. Должны быть определены цели для документации, поставляемой пользователям, в том числе типы документации и предполагаемый круг читателей для каждого типа.
  • 5. Эффективность. Данная категория объединяет все цели эффективности (производительности), такие как время реакции на действия пользователей, пропускная способность (число обрабатываемых транзакций в единицу времени), использование ресурсов (загрузка процессоров, памяти, каналов связи и т.п.), а также необходимые средства измерения производительности и средства настройки и оптимизации системы.
  • 6. Совместимость. Если конкретный программный продукт должен быть совместимым с другими, эти цели указываются в этом разделе. Следует также указать относящиеся к делу международные и государственные стандарты и внутренние стандарты компании.
  • 7. Конфигурации. Здесь указываются различные конфигурации аппаратуры и программного обеспечения, в которых система может работать (компьютеры, операционная система, аппаратура связи др.), а также другие программные продукты (например, СУБД), от которых система зависит. Должны быть указаны дополнительные возможности выбора отдельных частей системы, если это предусматривается.
  • 8. Безопасность. Сюда относится описание целей в отношении безопасности. Если система связана с финансовой деятельностью (например, банковская система, игорная система, система управления запасами, учет материальных ценностей и т.п.), должны быть указаны средства надзора. Если предусматривается обработка информации ограниченного использования (в системах государственного управления, военного назначения и т.п.), то требования к защите повышаются.
  • 9. Обслуживание. Данная категория целей содержит сведения по затратам и времени на исправление ошибок, а также функции и средства для достижения этих целей, например диагностические программы.
  • 10. Установка. Сюда относятся методы и средства настройки системы на конкретные условия эксплуатации.
  • 11. Надежность. Цели в области надежности, как и другие цели, существенно зависят от конкретного типа системы. Следующие вопросы должны рассматриваться обязательно для каждого типа системы:
    • а) для каждого типа отказов должно быть определено (задано) среднее время между отказами (отказ системы, ошибка пользователя, отказы конкретных функций) с учетом степени серьезности такого отказа;
    • б) среднее время восстановления системы после отказа каждого типа;
    • в) ориентиры в отношении числа ошибок в программной системе, расклассифицированные по степени серьезности и времени обнаружения;
    • г) последствия отказов системы или отказа наиболее важных функций;
    • д) допустимый объем данных, утрачиваемых в случае отказа;
    • е) жизненно важная информация, которая должна быть защищена от разрушения;
    • ж) функции, необходимые для обнаружения и исправления ошибок;
    • з) функции, необходимые для обеспечения устойчивости к ошибкам;
    • и) возможности обнаруживать ошибки пользователя и сбои аппаратуры, а также восстанавливать работоспособность.
 
<<   СОДЕРЖАНИЕ   >>