Проектирование информационных систем 1. Методология и технология разработки программного обеспечения (методичка стр. 19-20 , возможно еще стр. 31). Методология реализуется через конкретные технологии и поддерживающие их стандарты, методики и инструментальные средства, которые обеспечивают выполнение процессов ЖЦ. Технология проектированияИС определяется как совокупность трех составляющих: - пошаговой процедуры, определяющей последовательность технологических операций проектирования;
- критериев и правил, используемых для оценки результатов выполнения технологических операций;
- нотаций, используемых для описания проектируемой системы.
Требования к технологии проектирования ИС: · технология должна поддерживать полный ЖЦ ПО; · технология должна обеспечивать гарантированное достижение целей разработки информационных систем с заданным качеством и в установленное время; · технология должна обеспечивать возможность выполнения крупных проектов в виде подсистем. 2. Понятие жизненного цикла программного обеспечения информационных систем (стр. 19). ЖЦ ПО – это непрерывный процесс, который начинается с момента принятия решения о необходимости его создания и заканчивается в момент его полного изъятия из эксплуатации. Структура ЖЦ ПО ИС по стандарту ISO/IEC 12207базируется на трех группах процессов: · основные процессы ЖЦ ПО ИС (приобретение, поставка, разработка, эксплуатация, сопровождение); · вспомогательные процессы, обеспечивающие выполнение основных процессов (документирование, управление конфигурацией, обеспечение качества, верификация, аттестация, оценка, аудит, решение проблем); · организационные процессы (управление проектами, создание инфраструктуры проекта, определение, оценка и улучшение самого ЖЦ, обучение). 3. Применение структурного подхода к проектированию информационных систем (стр. 35-36). Сущность структурного подхода к разработке ИС заключается в ее декомпозиции (разбиении) на автоматизируемые функции: система разбивается на функциональные подсистемы, которые в свою очередь делятся на подфункции, подразделяемые на задачи и так далее. Процесс разбиения продолжается вплоть до конкретных процедур. Основные принципы структурного подхода: · принцип абстрагирования - заключается в выделении существенных аспектов системы и отвлечения от несущественных; · принцип формализации - заключается в необходимости строгого методического подхода к решению проблемы; · принцип непротиворечивости - заключается в обоснованности и согласованности элементов; · принцип структурирования данных - заключается в том, что данные должны быть структурированы и иерархически организованы. 4. Применение объектно-ориентированного подхода к проектированию информационных систем (стр. 35-36). Концептуальной основой объектно-ориентированного анализа и проектирования ПО является объектная модель. Ее основные принципы: абстрагирование, инкапсуляция, модульность и иерархия; понятия объект, класс, атрибут, операция, интерфейс и др. Абстрагирование – выделение существенных характеристик некоторого объекта, который отличает его от всех других видов объектов, и таким образом, четко определяет его концептуальные границы. Инкапсуляция – это процесс отделения друг от друга отдельных элементов объекта, определяющих его устройство и поведение. Интерфейс – способ общения пользователя с внешней средой UML. Объект – предмет или явление, имеющее четко определенное поведение. Класс – это множество объектов, связанных общностью структуры и поведения. Атрибут – количественная или качественная характеристика объекта. 5. Каскадная модель ЖЦ ПО. Проанализировать достоинства и недостатки. Применение каскадной модели эффективно для систем, для которых в самом начале разработки можно достаточно точно и полно сформулировать все требования, тем самым, предоставив разработчикам возможность реализовать их наилучшим образом с технической точки зрения. В эту категорию попадают сложные расчетные системы, системы реального времени и другие подобные задачи.  Положительные стороны каскадной модели: · на каждом этапе формируется законченный набор проектной документации, отвечающий критериям полноты и согласованности; · выполняемые в логической последовательности этапы работ позволяют планировать сроки завершения всех работ и соответствующие затраты. Основным недостатком каскадного подхода является существенное запаздывание с получением результатов. Согласование результатов с пользователями производится только в точках, планируемых после завершения каждого этапа работ, требования к ИС "заморожены" в виде технического задания на все время ее создания. В случае неточного изложения требований или их изменения в течение длительного периода создания ПО, пользователи получают систему, не удовлетворяющую их потребностям. 6. Классическая спиральная модель ЖЦ ПО. Проанализировать достоинства и недостатки. Спиральная модель ЖЦ делает упор на начальные этапы разработки: анализ и проектирование. На этих этапах реализуемость технических решений проверяется путем создания прототипов. Каждый виток спирали соответствует созданию фрагмента или версии ПО, на нем уточняются цели и характеристики проекта, определяется его качество и планируются работы следующего витка спирали. Таким образом, углубляются и последовательно конкретизируются детали проекта, и в результате выбирается обоснованный вариант, который доводится до реализации.  Достоинства спиральной модели: - наиболее реально отображает разработку программного обеспечения;
- включает шаг системного подхода в итерационную структуру разработки;
- позволяет явно учитывать риск на каждом из витков эволюции разработки;
- использует моделирование для уменьшения риска и совершенствования программного изделия.
Недостатки спиральной модели: - отсутствие достаточной статистики эффективности модели;
- трудности контроля и управления временем разработки;
- повышение требований к заказчику.
7. Итеративная инкрементная модель ЖЦ. Проанализировать итеративность и инкрементность модели.  Итеративность означает разбиение ЖЦ на последовательность итераций. Цель каждой итерации - разработка прототипа, результатом последней итерации является продукт. Инкрементность означает разработку продукта путем постепенного учета требований к системе. Фактически это так же приводит к разработке прототипов, причем последний (часто лишь по срокам) прототип считается продуктом. Итеративная инкрементная модель или модель запланированного усовершенствования продукта использует разработку прототипов для последовательной реализации групп требований. Принцип модели заключается в предварительном выделении требований и разработке прототипов, по функциональности все более приближающихся к продукту. 8. Эволюционная модель ЖЦ. Проанализировать эволюционность модели. В случае эволюционной модели система разрабатывается в виде последовательности блоков структур. Использование эволюционной модели предполагает проведение исследования предметной области для изучения потребностей заказчика проекта и анализа возможности применения этой модели для реализации. Модель применяется для разработки несложных и не критических систем, для которых главным требованием является реализация функций системы. Эволюционность - постепенная эволюционная доработка прототипа до выполнения всех заданных функциональных требований.  9. Провести анализ лучших практик методологии RUP . RUP - методологическая основа для всего, что выпускает Rational - является энциклопедией (методологическим руководством) того, как нужно строить эффективное информационное производство. RUP регламентирует этапы разработки ПО, документы, сопровождающие каждый этап, и продукты самой Rational для каждого этапа. В RUP заложены все самые современные идеи. К достоинством данной методологии стоит отнести чрезвычайную гибкость, то есть RUP не диктует, что необходимо сделать, а только рекомендует использовать то или иное средство. 10. Провести анализ лучших практик методологии MSF. Microsoft Solutions Framework (MSF) является методологией разработки ПО, которая представляет собой обобщение лучших проектных практик, которые использовались командами разработчиков Microsoft. Данная методология описывает управление людьми и рабочими процессами при разработке ИТ-решений. MSF основан на наборе из 9 основополагающих принципов: · Работа в рамках единого видения, которое предполагает понимание всеми заинтересованными лицами целей и задач создания ПО.; · Проявление живости, ожидание изменений; готовность к переменам, что обеспечивает возможность уточнения и изменения требований в процессе разработки ПО. · Сотрудничество с заказчиками, что предполагает создание продукта с высоким потребительским качеством и формирование определенной выгоды или отдачи.; · Поощрение свободного общения, что предполагает открытый и честный обмен информацией как внутри команды, так и с ключевыми заинтересованными лицами; · Обучение на любом опыте; · Вкладывание денег в качество; · Поставка инкрементного результата; · Установление ясной подотчётности; · Наделение полномочиями членов команды. 11. Провести анализ лучших практик методологии RAD. RAD - это комплекс специальных инструментальных средств быстрой разработки прикладных информационных систем, позволяющих оперировать с определенным набором графических объектов, функционально отображающих отдельные информационные компоненты приложений. Под методологией быстрой разработки приложений обычно понимается процесс разработки информационных систем, основанный на трех основных элементах: · небольшой команде программистов (обычно от 2 до 10 человек); · тщательно проработанный производственный график работ, рассчитанный на сравнительно короткий срок разработки (от 2 до 6 мес.); · итерационная модель разработки, основанная на тесном взаимодействии с заказчиком - по мере выполнения проекта разработчики уточняют и реализуют в продукте требования, выдвигаемые заказчиком. При использовании методологии RAD большое значение имеют опыт и профессионализм разработчиков. Группа разработчиков должна состоять из профессионалов, имеющих опыт в анализе, проектировании, программировании и тестировании программного обеспечения. 12. Язык UML и его использование для моделирования программного обеспечения (стр. 76-77). Унифицированный язык моделирования UML (Unified Modeling Language) представляет собой язык для определения, представления, проектирования и документирования программных систем, организационно-экономических систем, технических систем и других систем. UML принят в качестве стандартного языка моделирования и получил широкую поддержку в индустрии ПО. UML принят практически всеми крупнейшими компаниями – производителями ПО (Microsoft, Oracle, IBM, Sybase и др.). UML содержит стандартный набор диаграмм: · Диаграмма классов; · Диаграмма компонентов; · Диаграмма размещения; · Диаграмма вариантов использования; · Диаграмма последовательности; · Диаграмма состояний; · Диаграмма деятельности; |