
- •Калининградский торгово–экономический колледж
- •«Автоматизированные информационные системы»
- •Калининградский торгово–экономический колледж, 2007 Введение
- •Тема 1. Автоматизированные информационные системы
- •I. Понятие системы
- •II. Информационные системы
- •III. Автоматизированные информационные системы
- •Тема 2. Классификации ис
- •I. Классификация ис по признаку структурированности решаемых задач
- •II. Классификация по масштабу:
- •V. Классификация ис по функциональному признаку.
- •VI. Классификация ис по степени автоматизации ис
- •Области применения ис
- •Тема 3. История развития ис
- •I. История развития ис
- •II. Этапы развития аис
- •Тема 4. Тенденции развития ис
- •I. Тенденции развития ис
- •II. Модели развития ис
- •Тема 5. Понятие жизненного цикла ис (жцис). Структура жц
- •I. Понятие жизненного цикла ис
- •II. Структура жц
- •III. Стадии жц
- •Тема 6. Модели жц ис
- •Каскадная модель
- •Итерационная модель
- •Спиральная модель
- •Подход rad (Rapid Application Development).
- •Подход rad (Rapid Application Development)?
- •Тема 7.1. Структура и состав ис
- •Структура системы.
- •Функциональные компоненты ис
- •Организационные компоненты ис
- •Тема 7.2. Структура и состав ис
- •Компоненты системы обработки данных
- •Режимы работы сод.
- •Информационное обеспечение
- •Математическое и программное обеспечение
- •Техническое обеспечение
- •Правовое обеспечение
- •Лингвистическое обеспечение
- •Тема 8. Понятие проекта. Методология проектирования ис.
- •I. Понятие проекта
- •II. Классификация проектов
- •III. Этапы проекта
- •Формирование концепции
- •V. Основные методы проектирования ис
- •VI. Методология rad
- •Тема 9. Технология проектирования аис. Основные подходы к проектированию аис
- •I. Понятие технологии и ее назначения
- •II. Основные подходы к проектированию ис
- •III. Объектно-ориентированное программирование (ооп)
- •Базовые принципы ооп
- •Инкапсуляция
- •Полиморфизм
- •Достоинства ооп
- •IV. Сущность структурного подхода
- •Метод функционального моделирования sadt
- •Моделирование потоков данных
- •Сравнительный анализ sadt-моделей и диаграмм потоков данных
- •Тема 10. Case-средства, их возможности и характеристика
- •I. Понятие case-технологии
- •II. Понятие case-средств.
- •III. Характеристики case-средств
- •IV. Состав, структура и функциональные особенности case-средств.
- •V. Классификация case-средств. Примеры.
- •Тема 11. Основы методологии проектирования ас на основе case-средств.
- •Тема 12. Методология idef
- •Тема 13. Основные элементы и понятия idef0
- •Тема 14. Особенности разработки функциональных моделей бизнес-процессов в bPwin
- •Теоретические вопросы к дисциплине «Автоматизированные информационные системы»
- •Метод функционального моделирования sadt
- •Вопросы для самостоятельного изучения по дисциплине «Автоматизированные системы управления»
- •Литература
Итерационная модель
Итерационная модель более реально отражает процесс создания ИС – результаты очередного этапа часто вызывают изменения в проектных решениях, выработанных на более ранних этапах. Таким образом, постоянно возникает потребность в возврате к предыдущим этапами уточнении или пересмотре ранее принятых решений. Добавление циклов обратной связи, предложенных в итерационной модели, в которых осуществляются межэтапные корректировки, как это показано на рис. 5.4 обеспечивают большую надежность, хотя и увеличивают весь период разработки.
Спиральная модель
В середине 80-х гг. была предложена спиральная модель жизненного цикла, представленная на рисунке.
Ее принципиальной особенностью является следующее: ИС создается не сразу, как в случае каскадного подхода, а по частям с использованием метода прототипирования. Под прототипом понимается действующий программный компонент, реализующий отдельные функции и внешние интерфейсы разрабатываемой ИС. Создание прототипов осуществляется в несколько итераций, или витков спирали. Каждая итерация соответствует созданию фрагмента или версии ИС, на ней уточняются цели и характеристики проекта, оценивается качество полученных результатов и планируются работы следующей итерации. На каждой итерации производится тщательная оценка риска превышения сроков и стоимости проекта, чтобы определить необходимость выполнения еще одной итерации, степень полноты и точности понимания требований к системе на начальной стадии, поскольку они уточняются на каждой итерации. Таким образом, углубляются и последовательно конкретизируются детали проекта, и в результате выбирается обоснованный вариант, который доводится до реализации.
Рис. Спиральная модель жизненного цикла информационной системы
Разработка итерациями отражает объективно существующий спиральный цикл создания системы. Неполное завершение работ на каждой стадии позволяет переходить на следующий этап не дожидаясь полного завершения работы на текущей. При итеративном способе разработки недостающую работу можно будет выполнить на следующей итерации. Главная же задача – как можно быстрее показать пользователям системы работоспособный продукт, тем самым активизируя процесс уточнения и дополнения требований.
Спиральная модель не исключает использования каскадного подхода на завершающих стадиях проекта в тех случаях, когда требования к системе оказываются полностью определенными.
Основная проблема спирального цикла – определение момента перехода на следующую стадию. Для ее решения необходимо ввести временные ограничения на каждую из стадий жизненного цикла. Переход осуществляется в соответствии с планом, даже если не вся запланированная работа закончена. План составляется на основе статистических данных, полученных в предыдущих проектах, и личного опыта разработчиков.
Позднее в проектный цикл дополнительно стали включать стадии разработки и опробования прототипа системы. Это называлось: "быстрое прототипирование", rapid prototyping approach или "fast-track".
Подход rad (Rapid Application Development).
Одним из возможных подходов к разработке ИС в рамках спиральной модели жизненного цикла является получивший широкое распространение способ так называемой быстрой разработки приложений, или RAD (Rapid Application Development). Подход RAD предусматривает наличие трех составляющих:
команды разработчиков (от 3 до 7 человек) должны представлять собой группу профессионалов, имеющих опыт в проектировании, программировании и тестировании программного обеспечения, способных хорошо взаимодействовать с конечными пользователями и трансформировать их предложения в рабочие прототипы, выполняющих работы по проектированию отдельных подсистем ПО. Количество обусловлено требованием максимальной управляемости коллективом;
короткого, но тщательно проработанного производственного графика (до 3 месяцев);
повторяющегося цикла, при котором разработчики по мере того, как приложение начинает обретать форму, запрашивают и реализуют в продукте требования, полученные в результате взаимодействия с заказчиком.
Следует отметить, что подход RAD, как и любой другой не может претендовать на универсальность. Он хорош в первую очередь для относительно небольших проектов, разрабатываемых для конкретного заказчика. Если же разрабатывается крупномасштабная система (например, масштаба отрасли), которая не является законченным продуктом, а представляет собой комплекс программных компонентов, адаптируемых к программно-аппаратным платформам, системам управления базами данных (СУБД), средствам телекоммуникации, организационно-экономическим особенностям объектов внедрения и интегрируемых с существующими разработками, то на первый план выступают такие показатели проекта, как управляемость и качество, которые могут войти в противоречие с простотой и скоростью разработки. Для таких проектов необходимы высокий уровень планирования и жесткая дисциплина проектирования, строгое следование заранее разработанным протоколам и интерфейсам, что снижает скорость разработки.
Подход RAD не применим для построения сложных расчетных программ, операционных систем или программ управления сложными объектами в реальном масштабе времени, т.е. программ, содержащих большой объем (сотни тысяч строк) уникального кода.
Не годится подход RAD и для приложений, в которых отсутствует ярко выраженная интерфейсная часть, наглядно определяющая логику работы системы (например, приложений реального времени), и приложений, от которых зависит безопасность людей (например, управление самолетом или атомной электростанцией), так как итеративный подход предполагает, что первые несколько версий наверняка не будут полностью работоспособны, что в данном случае исключается.
Контрольные вопросы