Автор работы: Пользователь скрыл имя, 19 Мая 2013 в 20:11, лекция
Применительно к проектированию ИС: проект ИС есть с одной стороны сама задуманная ИС с какими-то конкретными характеристиками, а с другой стороны документальная фиксация, как этих характеристик, так и того, что и как надо сделать для создания этой ИС. Можно согласиться также с определением:
Проект – это ограниченное временем и финансированием создание или изменение системы с заранее определенными целями в рамках конкретной организационной структуры.
Вообще проект понятие сложное и поэтому дать полное и исчерпывающее его определение проблематично.
Проектирование информационной системы (ИС) – процесс длительный, сложный и трудоёмкий. Будем рассматривать ИС как некоторый проект.
Согласно словарю Даля слово “проект” толкуется так:
ПРОЕКТ (лат) – план, предположение, задуманное дело, или само изложение этого плана на письме или в чертеже.
Применительно к проектированию ИС: проект ИС есть с одной стороны сама задуманная ИС с какими-то конкретными характеристиками, а с другой стороны документальная фиксация, как этих характеристик, так и того, что и как надо сделать для создания этой ИС. Можно согласиться также с определением:
Проект – это ограниченное временем и финансированием создание или изменение системы с заранее определенными целями в рамках конкретной организационной структуры.
Вообще проект понятие сложное и поэтому дать полное и исчерпывающее его определение проблематично.
Многие особенности работы над проектами ИС, принципы управления ими и фазы разработки являются общими, они не зависят ни от предметной области, ни от особенностей проекта.
Существует множество
различных моделей или
потребности и заканчивая выводом ИС из эксплуатации.
Итак, упрощённо можно разделить два основных периода жизненного цикла ИС- это её разработка и её эксплуатация.
Разработка ИС в свою очередь состоит из четырех основных этапов:
При разных технологиях проектирования трудозатраты на эти этапы распределяются по-разному, некоторые этапы могут даже отсутствовать. Примерное распределение трудозатрат по этапам разработки ИС представлено на рис. 1.
Рис.1. Этапы жизненного цикла ИС
Системный анализ
Этап анализ предполагает проведение:
Работа над проектом начинается с проведения предпроектных исследований. Их цель – анализ технической осуществимости проекта и того, какую пользу принесёт организации реализация проекта, в какой срок окупятся затраты на его создание.
Если общий вывод отчёта будет положительным, то начинается работа над проектом. Этапы системного анализа приведены на рис. 2.
Рис. 2 Процесс системного синтеза
Для новых ИС работа над проектом начинается с анализа его осуществимости.
Вначале составляется общее описание системы и ее назначения, а результатом анализа является отчет, где есть четкая рекомендация, продолжать или нет разработку ИС. В этом отчете должны быть ответы на вопросы:
Что такое требование? За долгие годы уже появилось множество определений требований к программному обеспечению, вполне приемлемым является следующее определение, предложенное специалистами в области разработки требований Дорфманом (Dorfman) и Тэйером (Thayer).
Многие наиболее часто встречающиеся серьезные проблемы при разработке программного обеспечения связаны именно с требованиями. Результат опроса организации ESPITI (European Software Process Improvement Training Initiative— Европейская инициатива по обучению совершенствованию процесса программирования) показал, что двумя самыми главными проблемами, упоминавшимися почти в половине ответов, оказались следующие:
К тому же наиболее дорогостоящим является исправление ошибок, допущенных на этапе формирования требований.
Проблемы сбора требований
Процесс сбора требований весьма сложен по следующим причинам:
3. Для корректного формирования требований необходимо знать методы их сбора и иметь средства их описания, понятные и пользователям и разработчикам.
Для достижения лучшего понимания потребностей пользователя надо хорошо изучить предметную область.
Для этого используются:
Выбор конкретного метода будет зависеть от типа ИС, опыта и уровня подготовки команды разработчиков, заказчика, масштаба проблемы, используемой технологии и уникальности ИС.
Интервьюирование и анкетирование
При применении этого метода сначала надо выявить всех лиц, заинтересованных в проекте. Например, в процессе формировании требований для системы банкоматов участвуют следующие лица:
Сценарии
Сценарии описывают последовательность работы пользователя с системой.
Сценарий начинается с общего описания, затем постепенно детализируется для создания полного описания взаимодействия пользователя с системой. В большинстве случаев сценарий включает следующее.
1. Описание состояния системы в начале сценария.
2. Описание нормального протекания событий.
3. Описание исключительных ситуаций и способов их обработки.
4. Информацию относительно других действий, которые можно осуществлять во время выполнения сценария.
5. Описание состояния системы после завершения сценария.
Пример сценария событий
Каждое событие, например вставку карточки в банкомат или выбор сервиса, можно документально подтвердить отдельным сценарием. Сценарии включают описание потоков данных, системных операций и исключительных ситуаций, которые могут возникнуть рис. 3.
Рис. 3 Сценарий обработки банкоматом PIN- кода.
Прототипирование
Прототип это начальной версией ИС или ранее созданная ИС с похожими функциями. Прототип используется для демонстрации концепций, заложенных в ИС, проверки вариантов требований, а также поиска проблем, которые могут возникнуть в ходе разработки, и при эксплуатации системы, а также возможных вариантов их решения. Очень важна быстрая разработка прототипа системы, чтобы пользователи могли начать экспериментировать с ним как можно раньше. Прототип ПО помогает как при сборе, так и при проверке требований.
Для уменьшения затрат на создание прототипа можно исключить некоторые системные функции. Например, ослабить временные характеристики и требования к использованию памяти.
Требования к программной системе классифицируются как функциональные и нефункциональные.
Функциональные требования. Это перечень функций, которые должна выполнять система, причем должно быть указано, как система реагирует на те или иные входные данные, как она ведет себя в определенных ситуациях и т.д. В некоторых случаях указывается, что система не должна делать. Пример функционального требования к библиотечной системе университета, предназначенной для заказа книг и документов из других библиотек:
1. Пользователь
должен иметь возможность
2. Система
должна предоставлять
3. Каждый заказ должен быть снабжен уникальным идентификатором (NUM_ID), который копируется в формуляр пользователя для постоянного хранения.
Системные (нефункциональные) требования. Описывают характеристики системы и ее окружения, а не поведение системы. Здесь также может быть приведен перечень ограничений, накладываемых на действия и функции, выполняемые системой. Они включают временные ограничения, ограничения на процесс разработки системы, стандарты и т.д.
Все системные требования можно разбить на три большие группы.
Системные требования должным быть выражаться через количественные показатели, которые можно объективно измерить.
Пример системного требования:
Система должна быть простой в эксплуатации для опытного оператора и сводить количество его ошибок к минимуму
Данное требование лучше сформулировать так:
Опытному оператору должны быть доступны все системные функции после двух часов обучения работ данной системой. После такого обучения среднее число ошибок оператора не должно превышать двух за рабочий день.
В таблице 1Таблица 1 приведены показатели, с помощью которых можно специфицировать системные свойства.
Количественные показатели для системных требований