Курс лекций по предмету



страница1/28
Дата17.02.2019
Размер5.66 Mb.
#73028
ТипЛитература
  1   2   3   4   5   6   7   8   9   ...   28


Министерство образования Республики Беларусь

Учреждение образования

«Белорусский государственный университет

информатики и радиоэлектроники»


Кафедра информатики

Курс лекций по предмету

«МЕТОДЫ И ТЕХНОЛОГИИ ПРОГРАММИРОВАНИЯ»
Для студентов специальности I-31 03 04 «Информатика» всех форм обучения

факультет компьютерных систем и сетей,

кафедра информатики

доцент кафедры информатики, к.ф.-м.н. – Пилецкий И.И.

Минск, 2007



ОГЛАВЛЕНИЕ


ОГЛАВЛЕНИЕ 4

1. Введение в технологию разработки промышленного ПО 4

2. Методологии и технологии проектирования ИС 11

3. Методология функционального моделирования IDEF0 31

4. IDEF3 – методология описания и моделирования процессов 69

5. Язык моделирования баз данных IDEF1x 86

6. Язык UML, модели ПО, объектно–ориентированный анализ и проектирование ПО. 132

Литература 235


1. Введение в технологию разработки промышленного ПО

1.1. Основные понятия

Трудозатраты, связанные с созданием программного обеспечения (ПО) прямо связаны с качеством и сложностью создаваемого ПО. Так трудозатраты на создание программного продукта в три раза больше, чем обычной программы, а трудозатраты на создание простого приложения (редактор текстов), среднего уровня сложности (трансляторы) и высокого уровня сложности (операционные системы) возрастают еще в три раза.

Поэтому крайне важны используемые технологии для разработки промышленного программного продукта.

Технология ПО включает в себя такие понятия, как методы, инструменты, организационные мероприятия направленные на создания промышленного ПО.

Под технологией программирования понимают организованную совокупность методов, средств и их программного обеспечения, организационно–административных установлений, направленных на разработку, распространение и сопровождение программной продукции.



Создание ПО включает:

Существенные задачи – моделирование сложных концептуальных структур объектов реального мира большой сложности с помощью абстрактных программных объектов;

Второстепенные задачи – создание представлений этих абстрактных объектов в программе и описание их поведения.

И если 90% усилий разработчиков (затрат) связано не с существенными задачами, то сведя все затраты к нулю не получим роста в порядки (сравните с электроникой).

Если просмотреть историю, то все усилия были направлены на преодоление второстепенных задач.

Пути преодоления существенной сложности:

Массовый рынок (главное не скорость, а качество и сопровождение);

Лучший способ повысить производительность труда – купить;

Быстрое макетирование для установления технических требований к ПО;

Наращивать программы постепенно, добавляя функциональность (хорошо протестированную);

Хорошая команда.



Трудности создания ПО:

1. Внутренние, присущие ему (задание технических требований, проектирование и проверка):



Сложность – размеры, одинаковых нет, они не просто объединяются, масштабирование это непростое увеличение, это добавление новых элементов и связей, нелинейный рост сложности – сложность присуща (существенна) программным объектам и от нее абстрагироваться нельзя;

Согласованность – между людьми, между интерфейсами, которые появились не понятно, как и когда (10 и более лет);

Изменяемость – постоянно изменяются требования и применение ПО;

Незримость – ПО невидимо, различные графовые модели дают некоторое представление только с определенной точки зрения, но само ПО не плоское и его трудно передать такими моделями.

2. Сопутствующие, внутренне ему не присущие.

Движущей силой использования принципов программной инженерии было опасение крупных аварий, к которым могла привести (и привела) разработка все более сложных систем неуправляемыми художниками (не производительность в разы, хотя она и возросла от 3 до 5 раз)

Данные МО США по цене исправления одной ошибки следующие: обнаруженные и исправленные на стадии требований – 139$, на стадии кодирования – 1000$, на стадии тестирования – 7000$, на стадии внедрения – 14000$.




1.2. Жизненный цикл ПО

Одним из базовых понятий методологии проектирования информационных систем (ИС) является понятие жизненного цикла ее программного обеспечения (ЖЦ ПО). ЖЦ ПО – это непрерывный процесс, который начинается с момента принятия решения о необходимости его создания и заканчивается в момент его полного изъятия из эксплуатации.

Основным нормативным документом, регламентирующим ЖЦ ПО, является международный стандарт ИСО/МЭК 12207 – 95 «Информационная технология. Процессы жизненного цикла программных средств» или ISO/IEC 12207 (ISO – International Organization of Standardization – Международная организация по стандартизации, IEC – International Electrotechnical Commission – Международная комиссия по электротехнике). Он определяет структуру ЖЦ, содержащую процессы, действия и задачи, которые должны быть выполнены во время создания ПО.

Структура ЖЦ ПО по стандарту ИСО/МЭК 12207 – 95 базируется на трех группах процессов:

– основные процессы ЖЦ ПО (приобретение, поставка, разработка, эксплуатация, сопровождение);

– вспомогательные процессы, обеспечивающие выполнение основных процессов (документирование, управление конфигурацией, обеспечение качества, верификация, аттестация, оценка, аудит, решение проблем);

– организационные процессы (управление проектами, создание инфраструктуры проекта, определение, оценка и улучшение самого ЖЦ, обучение).

Разработка включает в себя все работы по созданию ПО и его компонент в соответствии с заданными требованиями, включая оформление проектной и эксплуатационной документации, подготовку материалов, необходимых для проверки работоспособности и соответствующего качества программных продуктов, материалов, необходимых для организации обучения персонала и т.д. Разработка ПО включает в себя, как правило, анализ, проектирование и реализацию (программирование).

Эксплуатация включает в себя работы по внедрению компонентов ПО в эксплуатацию, в том числе конфигурирование базы данных и рабочих мест пользователей, обеспечение эксплуатационной документацией, проведение обучения персонала и т.д., и непосредственно эксплуатацию, в том числе локализацию проблем и устранение причин их возникновения, модификацию ПО в рамках установленного регламента, подготовку предложений по совершенствованию, развитию и модернизации системы.

Управление проектом связано с вопросами планирования и организации работ, создания коллективов разработчиков и контроля за сроками и качеством выполняемых работ. Техническое и организационное обеспечение проекта включает выбор методов и инструментальных средств для реализации проекта, определение методов описания промежуточных состояний разработки, разработку методов и средств испытаний ПО, обучение персонала и т.п.

Обеспечение качества проекта связано с проблемами верификации, проверки и тестирования ПО.

Верификация – это процесс определения того, отвечает ли текущее состояние разработки, достигнутое на данном этапе, требованиям этого этапа. Проверка позволяет оценить соответствие параметров разработки с исходными требованиями. Проверка частично совпадает с тестированием, которое связано с идентификацией различий между действительными и ожидаемыми результатами и оценкой соответствия характеристик ПО исходным требованиям. В процессе реализации проекта важное место занимают вопросы идентификации, описания и контроля конфигурации отдельных компонентов и всей системы в целом.

Управление конфигурацией является одним из вспомогательных процессов, поддерживающих основные процессы жизненного цикла ПО, прежде всего процессы разработки и сопровождения ПО. При создании проектов сложных ИС, состоящих из многих компонентов, каждый из которых может иметь разновидности или версии, возникает проблема учета их связей и функций, создания унифицированной структуры и обеспечения развития всей системы. Управление конфигурацией позволяет организовать, систематически учитывать и контролировать внесение изменений в ПО на всех стадиях ЖЦ. Общие принципы и рекомендации конфигурационного учета, планирования и управления конфигурациями ПО отражены в стандарте ISO 12207–2.

Каждый процесс характеризуется определенными задачами и методами их решения, исходными данными, полученными на предыдущем этапе, и результатами. Результатами анализа, в частности, являются функциональные модели, информационные модели и соответствующие им диаграммы. ЖЦ ПО носит итерационный характер: результаты очередного этапа часто вызывают изменения в проектных решениях, выработанных на более ранних этапах.






Поделитесь с Вашими друзьями:
  1   2   3   4   5   6   7   8   9   ...   28




База данных защищена авторским правом ©vossta.ru 2022
обратиться к администрации

    Главная страница