Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
конспект по информационным технологиям+.doc
Скачиваний:
218
Добавлен:
29.02.2016
Размер:
793.09 Кб
Скачать

ЭЛЕКТРОННЫЙ КОНСПЕКТ ЛЕКЦИЙ

ПО ДИСЦИПЛИНЕ

«ИНФОРМАЦИОННЫЕ ТЕХНОЛОГИИ»

© Захарченков Константин Васильевич

СОДЕРЖАНИЕ1

Тема 1. Введение. Основы методологии проектирования информационных систем 5

Жизненный цикл программного обеспечения 6

Модели жизненного цикла программного обеспечения 7

Макетирование 10

Спиральная модель жизненного цикла 11

Компонентно-ориентированная модель 13

Тема 2. Структурный анализ и проектирование 15

Определение структурного анализа 15

Средства структурного анализа 17

Моделирование потоков данных 18

Контекстная диаграмма 20

Построение иерархии диаграмм потоков данных 21

Методология функционально стоимостного анализа 21

Методология функционального моделирования SADT (Structured Analysis AND Design Technique) 22

Состав функциональной модели SADT 23

Иерархия диаграмм 24

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

Тема 3. Построение информационной модели системы. Проектирование баз данных 28

Диаграммы сущность-связь (ERD) 28

Сущности, отношения и связи в нотации Чена 28

Типы связей в нотации Чена 30

Ассоциативная связь 30

Диаграммы атрибутов в классической модели Чена 31

Диаграмма категоризации 31

Нотация Баркера. Модель сущность- связь в нотации Баркера 32

Методология IDEF1X 34

Тема 4. Методика построения информационной модели данных (модели «сущность-связь») 37

Идентификация отношений между сущностями 38

Разрешение неспецифических отношений 38

Использование средств и техники структурного системного анализа 38

Основные виды работ, рекомендуемые при построении логической и физической моделей программной системы 39

Подход Мартина (IE–методология) 41

Тема 5. Методология RAD (Rapid Application Development) 43

Основные принципы методологии RAD 45

Состав, структура и функциональные особенности case-средств 46

Поддержка графических моделей 47

Требования к современному диаграммеру 47

Тема 6. Структурное тестирование программного обеспечения 49

Основные понятия и принципы тестирования программного обеспечения 49

Особенности тестирования белого ящика 52

Способ тестирования базового пути 53

Потоковый граф 53

Цикломатическая сложность 54

Шаги способа тестирования базового пути 55

Способы тестирования условий 55

Тестирование ветвей и операторов отношения 56

Способ тестирования потоков данных 57

Тестирование циклов 59

Тема 7. Функциональное тестирование программного обеспечения 64

Особенности тестирования черного ящика 64

Способы разбиения на эквивалентности 65

Способ анализа граничных значений 66

Способ диаграмм причин–следствий 67

Тема 8. Организация процесса тестирования программного обеспечения 70

Методика тестирования программных систем 70

Тестирование элементов 71

Тестирование итераций 73

Восходящее тестирование интеграции 75

Тестирование правильности 75

Системное тестирование 77

Тема 1. Введение. Основы методологии проектирования информационных систем

Тенденция развития информационных систем приводит к возрастанию их сложности. Современные крупные проекты характеризуются следующими особенностями:

  1. сложность описания, требующая тщательного моделирования и анализа данных и процессов;

  2. наличие тесно взаимодействующих компонентов;

  3. отсутствие прямых аналогов ограничивает возможность использования типовых решений;

  4. необходимость интеграций существующих и разрабатываемых приложений;

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

  6. разнородность отдельных групп разработчиков по уровню квалификации и традициям использования тех или иных инструментальных средств;

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

Для успешной реализации проекта информационной системы объект проектирования должен быть адекватно описан, должны быть построены полные и непротиворечивые функциональные и информационные модели системы.

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

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

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

Ручная разработка приводила к следующим проблемам:

  1. сложно обнаруживать ошибки в проектных решениях;

  2. документация имеет низкое качество;

  3. тестирование требует длительного времени и часто дает неудовлетворительные результаты.

В настоящее время снято большинство аппаратных ограничений на решение задач. Оставшиеся ограничения приходятся на долю программного обеспечения.

Чрезвычайно актуальными в последнее время стали следующие проблемы:

  1. аппаратная сложность значительно опережает умения разработчиков строить программное обеспечение, использующее потенциальные возможности аппаратуры;

  2. умение разработчиков строить новые программы отстает от требований к новым программам;

  3. возможности пользователей эксплуатировать существующие программы угрожает низкое качество их разработки.

Ключом решения этих проблем является грамотная организация процесса создания программного обеспечения, реализация технологических принципов промышленного конструирования информационных систем. Эти же проблемы способствовали появлению программных технологических средств социального класса, так называемых case(Computer Aided Software Engineering)-средств.

Case-средства реализует case-технология создания и сопровождения информационных систем.

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

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

Большинство существующих case-средств основано на методологиях структурного анализа и проектирования, которые используют спецификации в виде диаграмм для описания внешних требований, связи между моделями, динамики поведения системы и архитектуры программных средств.

Использование case-средств дает разработчику следующие преимущества:

  1. улучшается качество программного обеспечения за счет средств автоматического контроля проекта;

  2. за короткое время можно получить прототип создаваемой системы. Это позволяет на ранних этапах проектирования оценить ожидаемый результат;

  3. освобождение разработчика от рутинной работы;

  4. поддержка сопровождения программного обеспечения.