- •Учреждение «университет «туран»
- •Кафедра «компьютерная и программная инженерия» учебно-методический комплекс по дисциплине «методы структурного анализа и проектирования»
- •Алматы, 2012
- •Учреждение «Университет «Туран»
- •Алматы, 2012
- •Пояснительная записка
- •Общие данные по рабочей программе
- •Краткое описание дисциплины
- •Цель преподавания дисциплины
- •Задачи изучения дисциплины
- •Уровень знаний, умений, навыков и компетенций, приобретаемый магистрантом по завершении изучения данной дисциплины:
- •Пререквизиты дисциплины
- •Постреквизиты дисциплины
- •Тематика срм
- •Список рекомендуемой литературы
- •Официальные интернет издания
- •Алматы, 2012
- •Пояснительная записка
- •Общие данные по рабочей программе
- •Краткое описание дисциплины
- •Цель преподавания дисциплины
- •Задачи изучения дисциплины
- •Уровень знаний, умений, навыков и компетенций, приобретаемый магистрантом по завершении изучения данной дисциплины:
- •Пререквизиты дисциплины
- •Постреквизиты дисциплины
- •Темы и продолжительность их изучения
- •Тематика семинарских (практических) занятий
- •График сдачи срм и время консультаций
- •Тематика срм
- •Вопросы для проведения контроля
- •Информация по оценке знаний
- •Критерии оценки знаний обучающихся (обобщенные)
- •Определение итоговой оценки по вск
- •Итоговая оценка
- •Процедура апелляции
- •Требования преподавателя Политика и процедуры курса
- •Правила поведения на аудиторных занятиях
- •График выполнения и сдачи заданий по дисциплине задания самостоятельной работы:
- •Тематика и график сдачи срмп
- •График сдачи срм и время консультаций
- •Тематика срм
- •Учреждение «Университет «Туран»
- •1.2. Идеи, лежащие в основе структурных методов
- •1.3. Принципы структурного анализа
- •1.4. Средства структурного анализа и их взаимоотношения
- •2.1. Основные символы
- •2.2. Контекстная диаграмма и детализация процессов
- •2.3. Декомпозиция данных и соответствующие расширения диаграмм потоков данных
- •2.4. Построение модели
- •2.5. Расширения реального времени
- •[Gl]Тема 3. Словарь данных. Методы задания спецификаций.[:]
- •3.1. Содержимое словаря данных
- •Методы задания спецификаций процессов
- •3.4. Таблицы и деревья решений
- •3.5. Визуальные языки проектирования спецификаций
- •3.6. Сравнение методов
- •[Gl]Тема 4. Диаграммы “сущность-связь”[:]
- •4.1. Сущности, отношения и связи в нотации Чена
- •4.2. Диаграммы атрибутов
- •4.3. Категоризация сущностей
- •4.4. Нотация Баркера
- •4.5. Построение модели
- •[Gl]Тема 5. Средства структурного проектирования [:]
- •5.1. Структурные карты Константайна
- •5.2. Структурные карты Джексона
- •5.3. Характеристики хорошей модели реализации
- •5.3.1. Сцепление
- •5.3.2. Связность
- •5.3.3. Другие принципы проектирования
- •5.4. Транзакционный и трансформационный анализ или как получить структурные карты из диаграмм потоков данных
- •6.1. Методологии структурного анализа Йодана/Де Марко и Гейна-Сарсона
- •6.2. Sadt - технология структурного анализа и проектирования
- •6.3. Сравнительный анализ sadt-моделей и потоковых моделей
- •6.4. Методология ssadm
- •6.5. Методологии, ориентированные на данные
- •6.6. Основные этапы подхода Мартина
- •8.1. Эволюция case - средств
- •8.2. Case-модель жизненного цикла по
- •8.3. Состав, структура и функциональные особенности case-средств
- •8.4. Поддержка графических моделей
- •8.5. Контроль ошибок
- •8.6. Организация и поддержка репозитария
- •8.7. Поддержка процесса проектирования и разработки
- •[Gl] тема 9. Классификация case - средств[:]
- •Среди большого числа методов оценки деятельности предприятий наибольшее распространение (по крайней мере в отечественных консалтинговых проектах) получили следующие два:
- •10.1. Динамическое моделирование с использованием сетей Петри
- •План семинарских (практических)занятий
- •Методические рекомендации по изучению дисциплины
- •«Методы структурного анализа и проектирования»
- •(По работе с учебно-методическим комплексом)
- •Основания, целевая аудитория и ориентированность учебно-методического комплекса
- •Структура, содержание и образовательные возможности учебно-методического комплекса
- •Рекомендуемый порядок работы с учебно-методическим комплексом
- •Материалы для самостоятельной работы обучающегося
- •Методические рекомендации по выполнению срм по дисциплине «методы структурного анализа и проектирования»
- •Самостоятельная внеаудиторная работа
- •Критерии оценки знаний, навыков
- •Примерная тематика исследований срм:
- •Тематика и график сдачи срмп
- •Требования к выполнению контрольных заданий по дисциплине «методы структурного анализа и проектирования»
- •Некоторые варианты самостоятельных заданий для магистрантов по дисциплине «методы структурного анализа и проектирования»
- •Тема 1. Понятие консалтинга в области информационных технологий
- •Тема 3. Методы задания спецификаций процессов
- •2. Таблицы и деревья решений
- •4.3. Визуальные языки проектирования спецификаций
- •4. Сравнение методов
- •Тема 4. Проведение обследования деятельности предприятия
- •4.1. Цели и основные этапы консалтинга
- •4.2. Проведение обследования
- •1) Положение о подразделении
- •2) Набор документальных форм без внутреннего наполнения, т.Е. Используемые формы, бланки и др. (например, карточка складского учета, отчет по форме n, наряд-задание, товарно-транспортная накладная)
- •Тема 5. Построение моделей
- •5.1. Построение и анализ моделей деятельности предприятия
- •5.2. Разработка системного проекта
- •Некоторые практические занятия
- •Формирование структурного представления системы
- •Диаграммы компонентов
- •Пример Теста промежуточного контроля
- •Программное и мультимедийное сопровождение учебных занятий по дисциплине «методы структурного анализа и проектирования»
- •Перечень специализированных аудиторий, кабинетов и лабораторий
- •Карта обеспеченности дисциплины учебной и учебно-методической литературой
1.3. Принципы структурного анализа
Анализ требований разрабатываемой системы является важнейшим среди всех этапов ЖЦ. Он оказывает существенное влияние на все последующие этапы, являясь в то же время наименее изученным и понятным процессом. На этом этапе, во-первых, необходимо понять, что предполагается сделать, а во-вторых, задокументировать это, т.к. если требования не зафиксированы и не сделаны доступными для участников проекта, то они вроде бы и не существуют. При этом язык, на котором формулируются требования, должен быть достаточно прост и понятен заказчику.
Во многих аспектах системный анализ является наиболее трудной частью разработки. Нижеследующие проблемы, с которыми сталкивается системный аналитик, взаимосвязаны (и это является одной из главных причин их трудноразрешимости):
аналитику сложно получить исчерпывающую информацию для оценки требований к системе с точки зрения заказчика;
заказчик, в свою очередь, не имеет достаточной информации о проблеме обработки данных для того, чтобы судить, что является выполнимым, а что нет;
аналитик сталкивается с чрезмерным количеством подробных сведений как о предметной области, так и о новой системе;
спецификация системы из-за объема и технических терминов часто непонятна для заказчика;
в случае понятности спецификации для заказчика, она будет являться недостаточной для проектировщиков и программистов, создающих систему.
Конечно, применение известных аналитических методов снимает некоторые из перечисленных проблем анализа, однако эти проблемы могут быть существенно облегчены за счет применения современных структурных методов, среди которых центральное место занимают методологии структурного анализа.
Структурным анализом принято называть метод исследования системы, которое начинается с ее общего обзора и затем детализируется, приобретая иерархическую структуру со все большим числом уровней. Для таких методов характерно разбиение на уровни абстракции с ограничением числа элементов на каждом из уровней (обычно от 3 до 6-7); ограниченный контекст, включающий лишь существенные на каждом уровне детали; дуальность данных и операций над ними; использование строгих формальных правил записи; последовательное приближение к конечному результату.
Все методологии структурного анализа базируются на ряде общих принципов, часть из которых регламентирует организацию работ на начальных этапах ЖЦ, а часть используется при выработке рекомендаций по организации работ. В качестве двух базовых принципов используются следующие: принцип "разделяй и властвуй" и принцип иерархического упорядочивания. Первый является принципом решения трудных проблем путем разбиения их на множество меньших независимых задач, легких для понимания и решения. Второй принцип в дополнение к тому, что легче понимать проблему, если она разбита на части, декларирует, что устройство этих частей также существенно для понимания. Понимание проблемы резко облегчается при организации ее частей в древовидные иерархические структуры, т.е. система может быть понята и построена по уровням, каждый из которых добавляет новые детали.
Выделение двух базовых принципов инженерии программного обеспечения вовсе не означает, что остальные принципы являются второстепенными, игнорирование любого из них может привести к непредсказуемым последствиям (в том числе и к неуспеху всего проекта). Отметим основные из таких принципов.
Принцип абстрагирования - заключается в выделении существенных с некоторых позиций аспектов системы и отвлечение от несущественных с целью представления проблемы в простом общем виде.
Принцип формализации - заключается в необходимости строгого методического подхода к решению проблемы.
Принцип упрятывания - заключается в упрятывании несущественной на конкретном этапе информации: каждая часть "знает" только необходимую ей информацию.
Принцип концептуальной общности - заключается в следовании единой философии на всех этапах ЖЦ (структурный анализ - структурное проектирование - структурное программирование - структурное тестирование).
Принцип полноты - заключается в контроле на присутствие лишних элементов.
Принцип непротиворечивости - заключается в обоснованности и согласованности элементов.
Принцип логической независимости - заключается в концентрации внимания на логическом проектировании для обеспечения независимости от физического проектирования.
Принцип независимости данных - заключается в том, что модели данных должны быть проанализированы и спроектированы независимо от процессов их логической обработки, а также от их физической структуры и распределения.
Принцип структурирования данных - заключается в том, что данные должны быть структурированы и иерархически организованы.
Принцип доступа конечного пользователя - заключается в том, что пользователь должен иметь средства доступа к базе данных, которые он может использовать непосредственно (без программирования).
Соблюдение указанных принципов необходимо при организации работ на начальных этапах ЖЦ независимо от типа разрабатываемого ПО и используемых при этом методологий. Руководствуясь всеми принципами в комплексе, можно понять на более ранних стадиях разработки, что будет представлять из себя создаваемая система, обнаружить промахи и недоработки, что, в свою очередь, облегчит работы на последующих этапах ЖЦ и понизит стоимость разработки.