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

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

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

Добавлен: 22.04.2024

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

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

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

Технология 2011 программирования

Лекции по технологии программирования запечатаны в 2011 году.

Материал предоставлен исключительно в ознакомительных целей, за порчу имущества (в т.ч. зачетки) из-за опечаток автор не в ответе.

Романова Татьяна Николаевна.

 

 

Вишневская Татьяна Ивановна.

29 мая 2011

Михаил Никифоров melvin-studios@mail.ru

Оглавление

08.02.2011.................................................................................................................................................

 

3

Основные требования к методологии проектирования программного обеспечения .................

3

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

 

3

15.02.2011.................................................................................................................................................

 

5

Сложная система. ................................................................................................................................

 

5

Разработка технического задания. ....................................................................................................

 

5

Диаграмма Use-Case (диаграмма прецедентов) ..............................................................................

 

9

Методология быстрой разработки приложений – RAD.................................................................

 

10

22.02.2011...............................................................................................................................................

 

11

Структурный подход в проектировании..........................................................................................

 

11

Методология Гейна/Сарсона............................................................................................................

 

11

Нотация Йордена/Де Марка ............................................................................................................

 

12

Синтаксис графического языка IDEF0...............................................................................................

 

13

Модель IDF3.......................................................................................................................................

 

15

01.03.2011...............................................................................................................................................

 

16

Типы отношений................................................................................................................................

 

16

Диаграмма атрибутов .......................................................................................................................

 

17

Диаграмма потоков данных (ДПД, DFD)..........................................................................................

 

18

15.03.2011...............................................................................................................................................

 

19

Методология RUP и пример ее использования на простом примере о торговой фирме..........

19

Спецификации прецедента «обновить данные из внешней системы». ......................................

 

22

Возможные отношения между сценариями...................................................................................

 

23

UML, разновидности предметов, существующих в UML. ..............................................................

 

24

22.03.2011...............................................................................................................................................

 

26

Операции............................................................................................................................................

 

26

Группировка.......................................................................................................................................

 

26

Множественность. Как ее обозначить?...........................................................................................

 

27

Реализация.........................................................................................................................................

 

28

29.03.2011...............................................................................................................................................

 

29

Деревья наследования .....................................................................................................................

 

29

Автомат...............................................................................................................................................

 

30

Диаграмма деятельности. ................................................................................................................

 

32

Зацикливание, выбор вариантов и циклы. .....................................................................................

 

35

05.04.2011...............................................................................................................................................

 

37

Оценка производительности распределенных информационных систем на этапе

 

 

проектирования.................................................................................................................................

 

37

Модели реализации..........................................................................................................................

 

37

Компонентная диаграмма ................................................................................................................

 

38

12.04.2011...............................................................................................................................................

 

39

Computer-Aided Software/System Engineering (CASE) .....................................................................

 

39

Критерии классификации CASE-систем. ..........................................................................................

 

40

Тестирование ПО ...............................................................................................................................

 

40

Этапы тестирования. .........................................................................................................................

 

41

Нагрузочное и предельное тестирование.......................................................................................

 

42

Интеграционное тестирование при структурном подходе к программированию. ....................

 

43

Тестирование при объектно-ориентированном подходе. ............................................................

 

43

Сложность тестирования интеграционного класса. .......................................................................

 

44

19.04.2011...................................................................................................................................................

 

46

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

 

46

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

 

46

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

 

47

Графы и отношения ...........................................................................................................................

 

48

 

 

 

 

Романова Т.Н. – Технология программирования [2011]by Melvin

Страница 1


Отношения (симметричность, транзитивность) .................................................................................

49

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

49

26.04.2011...................................................................................................................................................

50

Тестирование очередей и потоков данных. .......................................................................................

50

Как тестировать очереди. .................................................................................................................

50

Тестирование потока транзакций. .......................................................................................................

52

Тестируем декларацию.........................................................................................................................

53

Лекция 03.05.2011 .....................................................................................................................................

54

Международные стандарты на разработку ПО......................................................................................

54

Стандарты, регламентирующие документирование программных средств и баз данных. ..........

54

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

54

Эксплуатационная документация........................................................................................................

55

Исследовательская документация ......................................................................................................

55

Пользовательская документация ........................................................................................................

56

Лекция 10.05.2011 .....................................................................................................................................

58

Характеристики качества программных средств................................................................................

58

Модель качества ПП..............................................................................................................................

58

Основные количественные характеристики программных средств и их атрибуты........................

59

Основные качественные характеристики программных средств и их аттрибутов. ........................

59

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

61

Характеристики качества баз данных..................................................................................................

61

Жизненный цикл профилей стандартов .............................................................................................

62

Романова Т.Н. – Технология программирования [2011]by Melvin

Страница 2


08.02.2011

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

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

Первая информационная революция – письменность.

Вторая – создание печатного станка.

Третья – разработка ЭВМ, компьютеров.

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

Мы будем работать именно с информационной технологией.

Методология – совокупность механизмов, применяемых при разработке программных систем и объединённых единым философским подходом.

Что значит философский подход. Мы иногда «подход» называем парадигмой, т.е. это некое направление, в котором мы будем развивать наши идеи. Какие парадигмы мы знаем? ООП, Структурное, субъектно-ориентированное, функциональное, процессорное и т.д. Подход выбирается от класса задач, которые требуется реализовать.

Мы будем говорить о структурном и ООП.

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

Основные требования к методикам и методам проектирования ПО

1.Метод должен отражать специфику подхода (парадигму программирования) – структурный, ОО, ориентированный на процессе, субъектно-ориентированный.

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

3.Должны существовать формальные переходы от этапов анализа к этапу проектирования и обратно.

4.Должны существовать инструментальные средства, поддерживающие все эти методы.

ISO/IEE 12207:1995 Information Technology – software life cycle processes (IT – процессы жизненного цикла).

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

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

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

Романова Т.Н. – Технология программирования [2011]by Melvin

Страница 3


Модели жизненного цикла 1. Каскадная (есть основные процессы).

Состоит из последовательных шагов: Анализ предметной области

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

Кодирование

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

Внедрение

И сопровождение.

ВТЗ профиль стандартов должен быть прописан.

Романова Т.Н. – Технология программирования [2011]by Melvin

Страница 4

15.02.2011

Сложная система.

1.Такая система, которая разрабатывается не одним человеком, а группой разработчиков (более 5 человек).

2.Если количество строк исходного кода исчисляется сотнями тысяч или даже миллионами, то это тоже показатель сложной системы.

3.Если сложную задачу можно декомпозировать на более простые задачи (которые будут реализованы более мелкими подсистемами).

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

Это самые важные и самые общие требования, а остальные из них вытекают.

Несколько слов об этапах жизненного цикла.

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

Анализ предметной

 

области

Кодирование

Внедрение

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

На каждом этапе я должен выдать документацию.

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

Но в бизнес-системах применяется спиралевидная. Её применяют для систем не критичных к ошибкам. В ООП.

Разработка технического задания.

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

Техническое задание и ГОСТы, регламентирующие этапы разработки.

ГОСТ 19.201-78: «Единая система программной документации», подраздел «техническое задание». ЕСПД.ТЗ: «Требования к содержанию и оформление».

В соответствии с этим стандартом ТЗ содержит:

Романова Т.Н. – Технология программирования [2011]by Melvin

Страница 5


1.Введение.

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

И, конечно, какая проблема стоит, какие решения есть (существующие разработки), какие у них недостатки. Напр., устарела и т.п. Т.е. почему возникла необходимость создания нового ПО, в самом общем виде – в том виде, в каком описывает заказчик. Например «большая доля ручного труда, следует автоматизировать, чтобы снизить человеческий фактор ошибок и повысить производительность».

2.Основания для разработки. «На основании приказа такого-то по корпорации», или «на основании учебного плана кафедры ИУ7, разработать техническое задание и программное обеспечение в рамках учебного курса распределённые системы».

3.Назначение разработки. Необходимо веско аргументировать назначение программы. Всё это обосновать детально. «Аналогичные разработки существуют, но они обладают рядом

недостатков», «проанализировав предметную область, я выявил слабые места:

1.Ручной труд,

2.Неэффективно работает существующая система,

3.Избыточная функциональность существующей системы,

4.5. 6. … другие недостатки,

7.Необходимо добавить конкретную функциональность в рамках сущ.системы».

4.Требования к программе (к программному изделию, комплексу).

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

Режим:. Напр., хочу разработать систему, которая должна будет работать круглый год 24 часа в сутки. Пишут: «режим функционирования системы 24/7/365». Или «ежедневно», «ежечастно», «только по ночам» и т.д.

4.2.Функциональные требования.

4.2.1.Ф.Т с точки зрения пользователя. Требования будущих функций системы с точки зрения пользователя. Напр., «система должна предоставить возможность пользователю просмотреть список заказов», и т.п. Короче, всё, что может сделать система для пользователя.

4.2.2.Ф.Т. с точки зрения администратора. У него полномочий больше. Администратор может не только читать, но и, в отличае от пользователя, но и изменять и т.п. Перечисляем всё, что может сделать администратор в рамках системы. Админ и юзер – разные роли. Если есть другие роли (напр., менеджер) – то и его описываю.

4.3.Требования к функциональным характеристикам. Это «какие показатели» она будет выдавать с точки зрения реактивности системы – время реакции на запрос пользователя. Напр., «одновременно может работать NN клиентов. Если количество клиентов больше, то время отклика увеличивается».

4.4.Надёжность. Следует указать уровень надёжности, который обязан быть у системы, и время восстановления системы после сбоя. Здесь следует описать, как производится

Романова Т.Н. – Технология программирования [2011]by Melvin

Страница 6