Файл: Учебное пособие по курсу Технология разработки программного обеспечения для студентов.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 24.10.2023

Просмотров: 370

Скачиваний: 2

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Введение

1Цели при разработке программного обеспечения

2Жизненный цикл ПО. Модели жизненного цикла

3Анализ требований

3.1Принципы структурного анализа

3.2Проблема сложности ИС

3.3Группы средств моделирования систем

3.4Диаграммы потоков данных

4Построение модели в DFD на примере банковской задачи

5Словарь данных

6Спецификации процессов

7Методология функционального моделирования SADT (IDEF0)

7.1Structured Analysis and Design Technique

7.2Диаграммы IDEF0.

8Моделирование данных в нотации IDEF1x

8.1Базовые понятия ERD

8.2Виды сущностей в IDEF1x

8.3Виды связей в IDEF1X

8.4Нормализация схемы данных

9Комплексная интеграция BPWin, ERWin и Paradigm Plus.

9.1Соответствие объектов моделей процессов и моделей данных

9.2Экспорт между моделью данных и моделью процессов

9.3Paradigm Plus: двусторонняя связь с ERwin

10Создание физической модели данных в ERWin

10.1Уровни физической модели

10.2 Правила валидации и значения по умолчанию

10.3 Индексы

10.4 Триггеры и хранимые процедуры

11Тестирование и сертификация программного обеспечения

11.1 Дестабилизирующие факторы и методы обеспечения высокого качества функционирования ПО

11.2Использование среды автоматизированного тестирования Platinum TESTBytes

11.3 Методы обеспечения качества и надежности программных средств

11.4 Использование CASE для повышения качества ПО

11.5 Влияние стандартов открытых систем на качество ПО

11.6 Повышение качества ПО путем тестирования

11.7 Основные особенности процесса тестирования ПО

11.8 Организационные особенности тестирования

11.9 Сертификация ПО

12Организация и планирование тестирования для обеспечения качества ПО

12.1 Важнейшие разделы ISO 9003

12.2 Общие положения

12.3 Документирование системы качества

12.4 Программа качества

12.5 Внутренние проверки системы качества

12.6 Корректирующие действия

13Стандарты, регламентирующие разработку ПО

13.1Стандарт ISO 12207:1995 - Процессы жизненного цикла программных средств

13.2ISO 15504 SPICE

13.3 Серия стандартов ГОСТ 34-ХХХ «Информационная технология»

14Управление проектами разработки информационных систем

14.1 Процессы управления проектами

14.2 Процессы проекта

14.3 Группы процессов

14.4 Взаимосвязи процессов

14.5 Процессы инициации

14.6 Процессы планирования

14.7 Процессы исполнения и контроля

14.8 Процессы анализа

14.9 Процессы управления

14.10 Процессы завершения

15Определение концепции проекта (область применения, цели и подход)

15.1Введение

15.2Результаты

15.3Исходная информация

15.4Шаги задачи

15.5Методика и подход

15.6Роли и ответственность

16Рабочий план

16.1По работам

16.2По исполнителям

16.3Диаграмма Гантта по проекту

16.4График движения денежных средств по проекту

16.5Полномочия в изменении плана

17Заключение

18Контрольные вопросы

Библиографический список



16.1По работам


Наименование задачи

Продолжительность

Начало

Завершение

Предшествующие задачи

Исполнители, ресурсы

Возведение объекта

140 days

08.09.2004

22.03.2005







Проектирование

3 mons

08.09.2004

30.11.2004




Компания - проектировщик

Подготовительные работы на площадке

1 mon

03.11.2004

30.11.2004




Субподрядчик

Фундаментные работы

1 mon

01.12.2004

28.12.2004

2;3;6

Компания-строитель

Возведение здания

3 mons

29.12.2004

22.03.2005

4;7

Компания-строитель

Поставки материалов для фундамента

1 wk

24.11.2004

30.11.2004




Компания-поставщик;Фундаментные материалы[4]

Поставки материалов для здания

1 wk

22.12.2004

28.12.2004




Компания-поставщик;Стройматериалы[5]

Завершение объекта

0 days

22.03.2005

22.03.2005

1




Работы подразделяются на:

  • Этапы (составные работы)

  • Задачи (элементарные работы)

  • Контрольные точки (вехи)

16.2По исполнителям


Наименование ресурса

Вид ресурса

Максимальная загрузка

Стоимость единицы ресурса

Режим оплаты

Компания - проектировщик

Work

100%

100 000,00р./wk

Prorated

Субподрядчик

Work

100%

150 000,00р./wk

Prorated

Компания-строитель

Work

100%

100 000,00р./wk

Prorated

Компания-поставщик

Work

100%

0,00р./hr

Prorated

Фундаментные материалы

Material




500 000,00р.

Prorated

Стройматериалы

Material




1 000 000,00р.

Prorated

На основании этой информации строятся:

16.3Диаграмма Гантта по проекту




16.4График движения денежных средств по проекту




Сетевой график может быть использован для ранжирования задач по важности:



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

16.5Полномочия в изменении плана


Ответственный исполнитель по этапу работ в рамках управления проектом отвечает за:

  • Выполнение срока достижения контрольной точки

  • Выполнение бюджета этапа

  • Графика движения денежных средств по этапу


Находясь в рамках данных ограничений ответственный по этапу может вносить любые изменения в подведомственный ему этап проекта, не утверждая изменений, а только оповещая о них ФК

17Заключение


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

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

В курсе можно выделить две основных части:

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

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


18Контрольные вопросы





Вопрос

Варианты ответа






Что такое информация?

  1. Это данные, хранящиеся в информационной системе

  2. Это данные, помещенные в значимый и полезный контекст и сообщенные получателю

  3. Это данные, содержащиеся в документе

  4. Это распечатанный документ






Для чего необходима информационная система?

  1. Для накопления данных

  2. Для подготовки отчетов

  3. Для обработки данных и операций с целью предоставить своим пользователям информацию

  4. Для сбора данных и принятия решений






Что такое ценность информации?

  1. Это стоимость информации

  2. Это прибыль, получаемая от использования информации

  3. Это выгода, даваемая информацией за вычетом стоимости ее получения






Что происходит в организации при внедрении автоматизированных информационных систем?

  1. Сокращается количество работников и уменьшаются затраты

  2. Сокращаются затраты

  3. Увеличиваются затраты на администрирование

  4. Перераспределяется рабочее время сотрудников и улучшается качество информации






Для чего необходима информация? Укажите вариант, который наиболее точно отражает необходимость информации

  1. Информация используется для получения данных

  2. Информация необходима для снятия неопределенности и поддержания модели объекта управления в актуальном состоянии

  3. Информация нужна для формирования документов






Чем определяется качество информации?

  1. Достоверностью и управлением

  2. Оперативностью и достоверностью

  3. Источником и приемником






Какие основные функции информационных систем?

  1. Сканирование информации, хранение и печать

  2. Поиск данных, организация пользовательского интерфейса, и хранение.

  3. Ввод данных, хранение, обработка, представление.

  4. Расшифровка информации, ввод информации, и представление






Какие подсистемы являются основными подсистемами автоматизированной информационной системы?

  1. Подсистемы сбора и хранения данных

  2. Подсистемы сбора, хранения, обработки данных

  3. Подсистемы обработки и представления данных

  4. 1,2

  5. 1,3

  6. Все выше перечисленные






Назовите отличительные свойства «знаний»

  1. Определенность, возможность использования

  2. Структурированность, удобство доступа и усвоения.

  3. Структурированность, удобство доступа и усвоения, концентрированность, наличие процедур обработки.

  4. Все вышеперечисленные






Какой этап процесса разработки программного обеспечения (ПО) обеспечивает качество продукта?

  1. Проектирование и анализ требований

  2. Программирование и проектирование

  3. Тестирование и программирование

  4. Все






Какие стадии включает в себя процесс разработки программного обеспечения (ПО)?

  1. Концептуальное проектирование, детальное проектирование, программирование, тестирование, интеграция, испытания, ввод в действие и эксплуатация

  2. Анализ требований к ПО, концептуальное проектирование, детальное проектирование, программирование, тестирование, интеграция, испытания, ввод в действие и эксплуатация

  3. Анализ требований к ПО, концептуальное проектирование, детальное проектирование, интеграция, программирование, тестирование, испытания, ввод в действие и эксплуатация

  4. Анализ требований к ПО, концептуальное проектирование, детальное проектирование, интеграция, испытания, программирование, тестирование, ввод в действие и эксплуатация






Что в себя включает техническое задание?

  1. Проект системы

  2. Требования к системе

  3. Требования к команде разработчиков

  4. Все перечисленные выше пункты






Что такое жизненный цикл ПО (Выберите наиболее точное определение)?

  1. Это промежуток времени от момента возникновения необходимости ПО до момента вывода его из эксплуатации

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

  3. Это промежуток времени от момента возникновения необходимости ПО до момента внедрения

  4. Это набор процессов разработки ПО






За счет чего достигается эффективность жизненного цикла ПО?

  1. За счет сокращения времени разработки

  2. За счет регламентирования порядка и содержания результатов проведения работ

  3. За счет автоматизации выполнения отдельных этапов и операций

  4. За счет рационального разделения труда между специалистами разной квалификации и проблемной ориентации применяемой технологии проектирования, разработки и сопровождения

  5. 1,3,4

  6. 2,3,4






Укажите основные особенности современных технологий разработки ПО (выделите наиболее точное определение)

  1. Технология создания и развития ПО и БД опирается на модели жизненного цикла

  2. Переход к массовому индустриальному созданию сложных информационных систем большими коллективами специалистов

  3. Разработка небольших модулей небольшими коллективами.

  4. Автоматизация отельных работ и этапов

  5. Использование языков программирования третьего поколения

  6. 1,3,4

  7. 1,2,4

  8. 3,5






Для чего используются стандарты жизненного цикла ПО?

  1. Для автоматизации работ

  2. Для распределения заданий между программистами

  3. Для регламентации отдельных процессов и работ






Какие основные объекты стандартизации Вы знаете?

  1. Структура программного обеспечения

  2. Документация

  3. Процессы разработки

  4. Квалификация программистов

  5. 1,2,4

  6. 1,2,3,4

  7. 1,2,3






Для чего необходим процесс анализа требований к ПО (информационной системе)?

  1. Для согласования требований заказчика и возможностей исполнителя

  2. Для выявления технических деталей, необходимых для программирования ИС

  3. Для обследования объекта и формирования моделей






Какие Вы знаете модели жизненного цикла?

  1. Каскадная

  2. Каскадная с выборочным контролем

  3. Каскадная с поэтапным контролем

  4. Спиральная

  5. Структурная

  6. Гибкая с промежуточным контролем

  7. 2,3,5

  8. 1,2,3,4

  9. 2,4,6,

  10. 1,3,4






Каковы основные особенности процесса анализа требований?

  1. Анализ требований дополнительный и необязательный этап ЖЦ

  2. Анализ требований - важнейший среди всех этапов ЖЦ

  3. Оказывает существенное влияние на все последующие этапы

  4. Сказывается лишь на этапе проектирования, не оказывая влияния на последующие этапы

  5. Представляет собой строго формализованный процесс на базе однозначных критериев

  6. Является наименее изученным и понятым процессом






Какие основные задачи необходимо решить на этапе анализа требований? (выделите верные варианты)

  1. Выбрать правильную технологию решения задачи

  2. Понять, что предполагается сделать при разработке

  3. Выяснить отношение руководства организации к реализуемому проекту

  4. Обсудить требования к разрабатываемому продукту и закрепить их в виде устной договорённости

  5. Задокументировать то, что предполагается сделать при разработке

  6. Использовать при формулировке требований достаточно простой и понятный заказчику язык

  7. Использовать строгий формальный язык, основанный на терминологии афтоматизированных информационных систем






Системный анализ представляет собой

  1. Раздел общей теории систем

  2. Способ исследования, основанный на графических методологиях

  3. Метод исследования систем путём иерархической декомпозиции «от простого к сложному»

  4. Методика улучшающего вмешательства в проблемную ситуацию

  5. Метод математического анализа и оптимизации систем









Основная проблема системного анализа заключается

  1. Избыточных требованиях заказчика к разработчику

  2. Недостаточной внимательности разработчика к требованиям заказчика

  3. В трудности достижения взаимопонимания между разработчиком и заказчиком из-за отсутствия общего языка и терминологии






Что такое структурный анализ?

  1. Раздел общей теории систем

  2. Способ исследования, основанный на графических методологиях

  3. Методика улучшающего вмешательства в проблемную ситуацию

  4. Метод математического анализа и оптимизации систем

  5. Метод исследования систем путём иерархической декомпозиции «от простого к сложному»






В чём заключаются характерные особенности структурного анализа (выделите верные варианты)?

  1. изучение системы как единой взаимосвязанной структуры

  2. разбиение на уровни абстракции

  3. ограничение числа элементов на каждом из уровней абстракции

  4. описание каждого из уровней абстракции как минимум 9 компонентами

  5. максимальный уровень детальности описания на каждом уровне абстракции

  6. ограниченный контекст, включающий лишь существенные на каждом уровне детали

  7. двойственность данных и операций над ними

  8. обязательное разделение исследования данных и процессов

  9. использование свободного естественного языка записи

  10. использование строгих формальных правил записи

  11. полный охват системы с первой итерации

  12. последовательное приближение к конечному результату






Какие средства струк-турного анализа исполь-зуются для моделиро-вания функциональ-ности системы?

  1. DFD (Data Flow Diagrams)

  2. SADT (Structured Analysis and Design Technique)

  3. ERD (Entity-Relationship diagrams)

  4. STD (State Transition Diagrams)






Какие средства структурного анализа используются для моделирования данных системы?

  1. DFD (Data Flow Diagrams)

  2. SADT (Structured Analysis and Design Technique)

  3. ERD (Entity-Relationship diagrams)

  4. STD (State Transition Diagrams)






Какие средства структурного анализа используются для моделирования динамики системы?

  1. DFD (Data Flow Diagrams)

  2. SADT (Structured Analysis and Design Technique)

  3. ERD (Entity-Relationship diagrams)

  4. STD (State Transition Diagrams)






Для чего необходим стандарт ISO 12207?

  1. Для регламентации структуры ПО

  2. Для регламентации процессов жизненного цикла ПО

  3. Для регламентации документации

  4. 1,3

  5. 2,3

  6. 1,2






Для чего необходим процесс проектирование ПО (информационной системе)? Выберите наиболее точный ответ.

  1. Для создания технической документации на ПО

  2. Для выработки технических решений, достаточных для создания или модификации ПО.

  3. Для разработки структуры ПО и схем базы данных






Что такое "модель жизненного цикла ПО"?

  1. Это порядок выполнения основных процессов в рамках жизненного цикла ПО

  2. Это представление проекта разработки программного обеспечения (ПО)

  3. Это документ, в котором для каждого разработчика указаны его работы






Описание каких основных групп процессов включает в себя стандарт ISO 12207

  1. Основные процессы ЖЦ, поддержка ЖЦ, организация ЖЦ

  2. Основные процессы ЖЦ, поддержка ЖЦ, организация ЖЦ, тестирование ПО

  3. Основные процессы ЖЦ, разработка, проектирование и тестирование

  4. Проектирование, разработка, тестирование






В каком стандарте РФ устанавливаются требования к техническому заданию на автоматизированную информационную систему?

  1. ГОСТ 34.602-89

  2. ГОСТ 34.601-90

  3. ИСО 34.602-89

  4. ИСО 34.601-89






На какой стадии ЖЦ ПО осуществляются наибольшие затраты?

  1. Тестирование

  2. Программирование и тестирование

  3. Анализ требований и концептуальное проектирование

  4. Детальное проектирование и программирование



Какие основные требования предъявляются к проекту современной автоматизированной информационной системы?

  1. Проект должен обеспечивать масштабируемость АИС

  2. Проект должен обеспечивать мобильность АИС

  3. Проект АИС должен обеспечивать максимальное повторное использование существующих компонент

  4. Проект должен обеспечивать мобильность АИС

  5. Проект должен обеспечивать распределенность АИС в пространстве

  6. Проект должен обеспечивать распределенность АИС во времени

  7. Все вышеперечисленное



Что такое проектирование ?

  1. Разработка технической документации на ПО

  2. Разработка графических моделей на ПО

  3. Формирование технического проекта ПО

  4. Процесс разработки технических решений, достаточных для создания или модификации ПО



Что такое "методология проектирования ПО"?

  1. Совокупность принципов, методов, моделей, используемых для проектирования ПО

  2. Методы, используемые для проектирования ПО

  3. Набор инструментов проектирования ПО



Какие основные методы используются при проектировании программного обеспечения?

  1. Агрегация и инкапсуляция

  2. Абстракция и спецификация

  3. Агрегация и спецификация



Какие методологии проектирования получили наибольшее распространение?

  1. Объектно-ориентированные

  2. Методологии, ориентированные на потоки данных

  3. Комбинированные

  4. Структурно-компонентные

  5. 1,2,3

  6. 1,2

  7. 1,2,3,4



В чем заключается принцип абстрагирования?

  1. Выделение существенных аспектов системы с целью представления проблемы в простом общем виде

  2. Выделение несущественных аспектов системы с целью представления проблемы в простом общем виде

  3. Декомпозиция системы на отдельные составляющие с целью представления проблемы в простом общем виде