Слайд 1ТЕМА ЛЕКЦИИ
Бидахмет Жанар
(ФИО преподавателя)
zhanar.18.05@gmail.com
(Электронная почта преподавателя )
Кафедра информационных систем
Проектирование приложении
и информационных систем
Лекция № 2
2 академический час
Слайд 2ПЛАН ЛЕКЦИИ
1. Понятие жизненного цикла ПО И
2. Процессы жизненного цикла: основные,
вспомогательные, организационные.
3. Модели жизненного цикла: каскадная, модель с промежуточным контролем, спиральная.
4. Стадии жизненного цикла ПО ИС.
Слайд 3ГЛОССАРИЙ:
1. CASE-технологии - обладают графическими средствами для проектирования и документирования модели
информационной системы
2. Unified Modeling Language (UML) - Унифицированный язык моделирования. Первая версия UML появилась в январе 1997 года. Язык UML предназначен для моделирования различных классов систем и их программного обеспечения. Нотация использует объектно-ориентированные методы. Моделирование в данной нотации позволяет последовательно пройти концептуальный, логический и физический уровни моделирования систем.
- стандарт на процессы и организацию жизненного цикла. Р3. ISO/IEC 12207:1995 аспространяется на все виды заказного ПО. Стандарт не содержит описания фаз, стадий и этапов
Слайд 4
Методология проектирования информационных систем описывает процесс создания и сопровождения систем в
виде жизненного цикла (ЖЦ) ИС, представляя его как некоторую последовательность стадий и выполняемых на них процессов
Для каждого этапа определяются состав и последовательность выполняемых работ, получаемые результаты, методы и средства, необходимые для выполнения работ, роли и ответственность участников и т.д. Такое формальное описание ЖЦ ИС позволяет спланировать и организовать процесс коллективной разработки и обеспечить управление этим процессом.
Слайд 5
2. Жизненный цикл ИС можно представить как ряд событий, происходящих с
системой в процессе ее создания и использования.
Модель жизненного цикла отражает различные состояния системы, начиная с момента возникновения необходимости в данной ИС и заканчивая моментом ее полного выхода из употребления. Модель жизненного цикла - структура, содержащая процессы, действия и задачи, которые осуществляются в ходе разработки, функционирования и сопровождения программного продукта в течение всей жизни системы, от определения требований до завершения ее использования. В настоящее время известны и используются следующие модели жизненного цикла:
Слайд 6Каскадная модель (рис. 1)
Предусматривает последовательное выполнение всех этапов проекта в
строго фиксированном порядке. Переход на следующий этап означает полное завершение работ на предыдущем этапе.
Слайд 7Поэтапная модель с промежуточным контролем (рис.2).
Разработка ИС ведется итерациями с
циклами обратной связи между этапами. Межэтапные корректировки позволяют учитывать реально существующее взаимовлияние результатов разработки на различных этапах; время жизни каждого из этапов растягивается на весь период разработки.
Слайд 8Спиральная модель (рис. 3)
На каждом витке спирали выполняется создание очередной версии
продукта, уточняются требования проекта, определяется его качество и планируются работы следующего витка.Особое внимание уделяется начальным этапам разработки - анализу и проектированию, где реализуемость тех или иных технических решений проверяется и обосновывается посредством создания прототипов (макетирования).
Слайд 9 В ранних проектах достаточно простых ИС каждое приложение представляло собой единый,
функционально и информационно независимый блок. Для разработки такого типа приложений эффективным оказался каскадный способ. Каждый этап завершался после полного выполнения и документального оформления всех предусмотренных работ.
Можно выделить следующие положительные стороны применения каскадного подхода:
на каждом этапе формируется законченный набор проектной документации, отвечающий критериям полноты и согласованности;
выполняемые в логической последовательности этапы работ позволяют планировать сроки завершения всех работ и соответствующие затраты.
Слайд 10 Каскадный подход хорошо зарекомендовал себя при построении относительно простых ИС, когда
в самом начале разработки можно достаточно точно и полно сформулировать все требования к системе. Основным недостатком этого подхода является то, что реальный процесс создания системы никогда полностью не укладывается в такую жесткую схему, постоянно возникает потребность в возврате к предыдущим этапам и уточнении или пересмотре ранее принятых решений. В результате реальный процесс создания ИС оказывается соответствующим поэтапной модели с промежуточным контролем.
Однако и эта схема не позволяет оперативно учитывать возникающие изменения и уточнения требований к системе. Согласование результатов разработки с пользователями производится только в точках, планируемых после завершения каждого этапа работ, а общие требования к ИС зафиксированы в виде технического задания на все время ее создания. Таким образом, пользователи зачастую получают систему, не удовлетворяющую их реальным потребностям.
Слайд 11 Спиральная модель ЖЦ была предложена для преодоления перечисленных проблем. На этапах
анализа и проектирования реализуемость технических решений и степень удовлетворения потребностей заказчика проверяется путем создания прототипов. Каждый виток спирали соответствует созданию работоспособного фрагмента или версии системы. Это позволяет уточнить требования, цели и характеристики проекта, определить качество разработки, спланировать работы следующего витка спирали. Таким образом углубляются и последовательно конкретизируются детали проекта и в результате выбирается обоснованный вариант, который удовлетворяет действительным требованиям заказчика и доводится до реализации.
Слайд 12 Итеративная разработка отражает объективно существующий спиральный цикл создания сложных систем. Она
позволяет переходить на следующий этап, не дожидаясь полного завершения работы на текущем и решить главную задачу - как можно быстрее показать пользователям системы работоспособный продукт, тем самым активизируя процесс уточнения и дополнения требований.
Основная проблема спирального цикла - определение момента перехода на следующий этап. Для ее решения вводятся временные ограничения на каждый из этапов жизненного цикла, и переход осуществляется в соответствии с планом, даже если не вся запланированная работа закончена. Планирование производится на основе статистических данных, полученных в предыдущих проектах, и личного опыта разработчиков.
Слайд 13
В структуру ЖЦ следует включать следующие группы процессов:
Договорные процессы:
приобретение (внутренние
решения или решения внешнего поставщика);
поставка (внутренние решения или решения внешнего поставщика).
Процессы предприятия:
управление окружающей средой предприятия;
инвестиционное управление;
управление ЖЦ ИС;
управление ресурсами;
управление качеством.
Слайд 14
Проектные процессы:
планирование проекта;
оценка проекта;
контроль проекта;
управление рисками;
управление
конфигурацией;
управление информационными потоками;
принятие решений.
Слайд 15
Технические процессы:
определение требований;
анализ требований;
разработка архитектуры;
внедрение;
интеграция;
верификация;
переход;
аттестация;
эксплуатация;
сопровождение;
утилизация.
Специальные процессы:
определение и установка взаимосвязей исходя из задач и целей.
Слайд 16
Стадии создания системы, предусмотренные в стандарте ISO/IEC 15288, несколько отличаются от
рассмотренных выше. Перечень стадий и основные результаты, которые должны быть достигнуты к моменту их завершения, приведены в таблице 1.
Слайд 17
Таблица 2.2. Стадии создания систем (ISO/IEC 15288)
Слайд 18
Rational Unified Process (RUP) предлагает итеративную модель разработки, включающую четыре фазы:
начало, исследование, построение и внедрение.
Каждая фаза может быть разбита на этапы (итерации), в результате которых выпускается версия для внутреннего или внешнего использования. Прохождение через четыре основные фазы называется циклом разработки, каждый цикл завершается генерацией версии системы. Если после этого работа над проектом не прекращается, то полученный продукт продолжает развиваться и снова минует те же фазы. Суть работы в рамках RUP - это создание и сопровождение моделей на базе UML
Слайд 19
CASE-технологии имеют ряд характерных особенностей:
- обладают графическими средствами для проектирования
и документирования модели информационной системы имеют организованное специальным образом хранилище данных, содержащее информацию о версиях проекта и его отдельных компонентах расширяют возможности для разработки систем за счет интеграции нескольких компонент CASE-технологий
Современные CASE-средства поддерживают также множество технологий моделирования информационных систем, начиная от простых методов анализа и регламентации и заканчивая инструментами полной автоматизации процессов всего жизненного цикла программного обеспечения.
Слайд 20
CASE-технологии можно классифицировать по функциональной направленности на
средства моделирования предметной области
- средства анализа и проектирования
- технологии проектирования схем баз данных
- средства разработки приложений
- технологии реинжиниринга программного кода и схем баз данных
В настоящий момент на рынке программного обеспечения насчитывается более 300 различных CASE-средств. Наиболее известными являются BPwin, ERwin, Rational Rose.
Слайд 21
CASE-технологии можно классифицировать по функциональной направленности на
средства моделирования предметной области
- средства анализа и проектирования
- технологии проектирования схем баз данных
- средства разработки приложений
- технологии реинжиниринга программного кода и схем баз данных
В настоящий момент на рынке программного обеспечения насчитывается более 300 различных CASE-средств. Наиболее известными являются BPwin, ERwin, Rational Rose.
Слайд 22
Жизненный цикл разработки ПО
Используя UML, вы практически не зависите от организации
процесса разработки; он не привязан к какому-либо конкретному циклу изготовления программного продукта. Тем не менее, если вы хотите извлечь из этого языка наибольшую пользу, лучше всего применять процесс, который: управляется прецедентами
использования; основан на архитектуре; является
итеративным и инкрементным.
Управляемость прецедентами использования означает, что прецеденты должны быть основным артефактом, на основании которого устанавливается желаемое поведение системы, проверяется и подтверждается правильность выбранной системной архитектуры, производится тестирование и осуществляется взаимодействие между участниками проекта.
Слайд 23
UML - это язык для визуализации, специфицирования, конструирования и документирования артефактов
программной системы (общий обзор UML приведен в главе 2). Унифицированный язык моделирования имеет хорошо определенные синтаксис и семантику; наиболее заметная часть синтаксиса этого языка - его графическая нотация.
Диаграммы прецедентов представляют собой один из пяти типов диаграмм, применяемых в UML для моделирования динамических аспектов системы.
Диаграммой прецедентов, или использования (Use case diagram), называется диаграмма, на которой показана совокупность прецедентов и актеров, а также отношения между ними.
Слайд 24
Прецеденты. В UML поведение моделируется с помощью прецедентов, специфируемых в отрыве
от реализации. Прецедент - это описание множества последовательностей действий (включая их варианты), которые выполняются системой для того, чтобы актер получил результат, имеющий для него определенное значение. Это определение включает в себя несколько важных пунктов.
1. Прецедент описывает множество последовательностей, каждая из которых представляет взаимодействие сущностей, находящихся вне системы (ее актеров), с системой как таковой и ее ключевыми абстракциями.
2. Прецедент представляет функциональные требования к системе в целом. Например, основной прецедент в работе банка - это обработка займов.
3. Прецеденты предполагают взаимодействие актеров и системы. Актер представляет собой логически связанное множество ролей, которые играют пользователи прецедентов во время взаимодействия с ними.
Слайд 25Вопросы для самоподготовки:
1. Понятие жизненного цикла ПО ИС?
2. Процессы жизненного
цикла? основные, вспомогательные, организационные.
3. Модели жизненного цикла?
Слайд 26
Литература и ссылки на интернет ресурсы:
1. Леффингуал, Дин, Ундри, Дон. Принципы
работы с требованиями к ПО. Унифицированный подход. М., 2002г.
2. У. Боггс, М. Боггс. UML, Rational Rose. М., ЛОРИ, 2000 г.
Сэм Канер и др. Тестирования программного обеспечения. Киев, 2000 г.