- •Тема 1. Введение. Основы методологии проектирования информационных систем 5
- •Жизненный цикл программного обеспечения
- •Модели жизненного цикла программного обеспечения
- •Макетирование
- •Спиральная модель жизненного цикла
- •Компонентно-ориентированная модель
- •Тема 2. Структурный анализ и проектирование Определение структурного анализа
- •Средства структурного анализа
- •Моделирование потоков данных
- •Контекстная диаграмма
- •Построение иерархии диаграмм потоков данных
- •Методология функционально стоимостного анализа
- •Методология функционального моделирования sadt (Structured Analysis and Design Technique)
- •Состав функциональной модели sadt
- •Иерархия диаграмм
- •Словарь данных
- •Тема 3. Построение информационной модели системы. Проектирование баз данных Диаграммы сущность-связь (erd)
- •Сущности, отношения и связи в нотации Чена
- •Типы связей в нотации Чена
- •Ассоциативная связь
- •Диаграммы атрибутов в классической модели Чена
- •Диаграмма категоризации
- •Нотация Баркера. Модель сущность- связь в нотации Баркера
- •Методология idef1x
- •Тема 4. Методика построения информационной модели данных (модели «сущность-связь»)
- •Идентификация отношений между сущностями
- •Разрешение неспецифических отношений
- •Использование средств и техники структурного системного анализа
- •Основные виды работ, рекомендуемые при построении логической и физической моделей программной системы
- •Подход Мартина (ie–методология)
- •Тема 5. Методология rad (Rapid Application Development)
- •Основные принципы методологии rad
- •Состав, структура и функциональные особенности case-средств
- •Поддержка графических моделей
- •Требования к современному диаграммеру
- •Тема 6. Структурное тестирование программного обеспечения Основные понятия и принципы тестирования программного обеспечения
- •Особенности тестирования белого ящика
- •Способ тестирования базового пути
- •Потоковый граф
- •Цикломатическая сложность
- •Шаги способа тестирования базового пути
- •Способы тестирования условий
- •Тестирование ветвей и операторов отношения
- •Способ тестирования потоков данных
- •Тестирование циклов
- •Тема 7. Функциональное тестирование программного обеспечения Особенности тестирования черного ящика
- •Способы разбиения на эквивалентности
- •Способ анализа граничных значений
- •Способ диаграмм причин–следствий
- •Тема 8. Организация процесса тестирования программного обеспечения
- •Методика тестирования программных систем
- •Тестирование элементов
- •Тестирование итераций
- •Восходящее тестирование интеграции
- •Тестирование правильности
- •Системное тестирование
Идентификация отношений между сущностями
На этапе идентификации отношений между сущностями необходимо выявить отношения между сущностями, а также идентифицировать типы этих отношений. Некоторые отношения могут оказаться неспецифическими, т.е. иметь тип многие-ко-многим.
Определение отношения состоит в выявлении связи между сущностями и последующей ее проверке в обоих направлениях.
Разрешение неспецифических отношений
Каждое неспецифическое отношение преобразуется в два специфических с введением новых ассоциированных сущностей. Каждый экземпляр ассоциированной сущности связан с одним экземпляром каждой сущности из находящихся сущностей в отношении многие-ко-многим.
Таким образом, ассоциативная сущность по своей природе является представлением связи реальных объектов и при проектировании появляется только на последнем этапе.
Использование средств и техники структурного системного анализа
Средства структурного системного анализа могут быть использованы на ранних этапах разработки программных систем. Начальным этапом разработки программной системы является предварительное изучение задачи. Предварительное изучение позволяет сформулировать недостатки существующей системы, определить, какие улучшения возможны, выявить, какое влияние на ситуацию окажет новая система.
На данном этапе целесообразно построить обзорную диаграмму потоков данных для существующей ситуации. Такая диаграмма позволит выявить недостатки существующей организации процесса. По окончании этого этапа системный аналитик должен оценить преимущества, которые даст внедрение новой системы, а также обосновать временные затраты и стоимость следующего этапа разработки.
Этап детального изучения начнется только в том случае, если результаты этапа предварительного изучения рассмотрены заказчиком и заказчиком принято решение и санкционирована возможность продолжения разработки.
Детали изучения строятся на фактах, выявленных на этапе предварительного изучения.
Этап детального изучения предполагает такое документирование ограничений и уточнение функций существующей системы для того, чтобы можно было составить спецификации на новую модернизированную систему. Главным результатом этапа детального изучения является построение логической системы. Логическая модель программной системы включает общую и детализирующую диаграмму потоков данных, а также диаграмму сущность-связь.
Логическая модель позволяет легко обнаружить все несоответствия и недостатки проекта. Системный аналитик представляет разработанную логическую модель заказчику, в результате заказчик должен принять решение о продолжении разработки или ее прекращении. На этой стадии окончательно согласовывается бюджет проекта. Целесообразно, чтобы системный аналитик создал несколько альтернативных логических моделей системы, имеющих разный набор преимуществ и предполагающих разные капиталовложения. После выбора логической модели осуществляется ее преобразование в физическую модель.
Преобразование логической модели в физическую модель состоит в следующем:
Логическая модель уточняется.
Проектируется физическая база данных.
Строится иерархия модулей, подлежащих программированию.
Производится оценка затрат на реализацию.
На этапе реализации системный аналитик должен контролировать соответствие создаваемой системы логической и физической модели.
Системный аналитик также участвует в работах по модификации физической модели, т.к. все расширения физической модели должны выполняться только на основе логической модели.