Литература
Литература (продолжение)
Расходование средств на ИТ
Изменение относительной стоимости ПО и У
Российские производители ПО
Модели оценки качества ПО
Обобщенные критерии качества
Элементарные критерии качества
Метрики
Для чего нужны критерии?
Критерии выбора языка программирования
Жизненный цикл ПО
Технико-экономическое обоснование разработки
Техническое задание
Стратегии разработки ПО
Риски при разработке ПО
Для чего нужны технологии?
Нисходящая технология
Схема иерархии
Функционально-ориентированные технологии: этапы разработки
Достоинства ФОС разработки
Недостатки ФОС разработки
Анализ требований
Типы отношений
Диаграммы прецедентов
Диаграммы прецедентов
Отношения между прецедентами
Диаграммы прецедентов
Описание сценария
Классы, объекты и методы
Шаблоны классов
Отношения между классами
Отношение обобщения
Отношение ассоциации
Навигация
Кратность ассоциаций
Кратность ассоциаций
Классы-ассоциации
Ассоциация “один-ко-многим”
Агрегирование
Диаграмма классов
Представление объектов
Диаграмма объектов
Объектно-ориентированное проектирование
CASE-средства
ОО-технологии: этапы разработки
Итеративная разработка ПО
Спиральная модель Боэма
Достоинства ОО-технологий разработки ПО
Выявление классов
Спецификация обобщения
Спецификация ассоциаций
Избыточные ассоциации
Спецификация агрегирования
Эволюция системы
Диаграммы взаимодействий
Диаграммы последовательностей
Условные обозначения
Диаграммы последовательностей
Диаграммы последовательностей (рефлексивный вызов)
Фреймы
Диаграммы последовательностей (фреймы – связывание)
Диаграммы последовательностей (фреймы – связывание)
Диаграммы последовательностей (ветвление)
Диаграммы последовательностей (условие)
Диаграммы последовательностей (циклы)
Диаграмма последовательностей с исполнителем
Диаграмма последовательностей “зачисление студента на курсы”
Диаграмма последовательностей “оплата услуги кредитной картой”
Прокат велосипедов
Диаграмма последовательностей “прокат велосипедов”
Виды интерфейса
Проектирование графического интерфейса
Удобство и эстетичность
Проектирование графического интерфейса
Вид главного окна (Delphi)
Вид главного окна (Eclipse)
Вторичные окна
Организация интерфейса в Eclipse
Список вопросов
Список вопросов

Лекции по управлению ИТ проектами

1. Литература

1. К. Ларман
Применение UML 2.0 и шаблонов проектирования.
Введение в объектно-ориентированный анализ, проектирование и
итеративную разработку.
Третье издание, Вильямс, 2009 год.
2. Г. Буч
UML.
Второе издание, Питер, 2006 год.
3. Л. Мацяшек
Анализ и проектирование информационных систем с помощью
UML 2.0
Третье издание, Вильямс, 2008 год.
4. Г. Буч, А. Якобсон, Дж. Рамбо
UML. Классика CS.
Второе издание, Питер, 2006 год.
5. А.Леоненков
Объектно-ориентированный анализ и проектирование с
использованием UML и Rational Rose.
Бином, 2006 год.

2. Литература (продолжение)

6. Р. Фатрелл, Д. Шафер, Л. Шафер
Управление программными проектами.
Вильямс, 2006 год.
7. Э. Эванс
Предметно-ориентированное проектирование.
Вильямс, 2011 год.
8. Г. Буч и др.
Объектно-ориентированный анализ и проектирование с
примерами приложений
Третье издание, Вильямс, 2008 год.
9. С. Макконнелл
Совершенный код, Русская редакция, 2007 год.
10. Cайт университета информационных технологий.
www.intuit.ru
11. Бабич А.В. Введение в UML
www.intuit.ru, 2008

3. Расходование средств на ИТ

МИР
1997
ПО
16 21 22 25 26 27
АС
48 36 33 30 29 27
У
36 43 45 45 45 46
2001
2003
2007
2010 2011
Россия
1999
2003
ПО
9
12 11 14 16 20
АС
77 68 67 66 61 52
У
14 20 22 20 23 28
2005 2008
2010
2011
Программное обеспечение
(ПО)
Системное
Средства разработки
Прикладное
Аппаратные средства (АП)
• Компьютеры
• Мониторы
• Периферийное
оборудование
Услуги (У)
• Консалтинг
• Системная интеграция
• Установка и
сопровождение
• Обучение
• Разработка заказного ПО

4. Изменение относительной стоимости ПО и У

90
80
ПО+У/АС+У+ПО
70
60
50
ПО+У
У
40
30
20
10
0
1960 1965 1970 1975 1980 1982 1985 1990 1995 1997 1998 1999 2000 2003 2005 2007 2010
Год

5. Российские производители ПО

Типы программных продуктов (распространение):
• Software
коммерческое
• Shareware
условно-бесплатное
• Freeware
бесплатное, свободное
• Open source
с открытым кодом
Производители:
ABBYY – распознавание текстов, словари
Лаборатория Касперского – антивирусные программы
1С – автоматизация работы предприятий, бухгалтерия,
игры
Spirit – микропрограммное ПО
Parallels – виртуализация ПО

6. Модели оценки качества ПО

• Обобщенные критерии качества
• Элементарные критерии качества
Каждый элементарный критерий может влиять
на несколько обобщенных
• Показатели качества или метрики
Каждая метрика влияет только на один
элементарный критерий

7. Обобщенные критерии качества

1. Функциональность
Functionality
2. Мобильность
Mobility
3. Надежность
Reliability
4. Эффективность
Performance
5. Модифицируемость
Serviceability
6. Практичность
(понятность
и
простота использования )
Usability

8. Элементарные критерии качества

1.
2.
3.
4.
5.
6.
Точность
Согласованность
Структурированность
Отсутствие избыточности
Универсальность
Защищенность

9. Метрики

Число строк кода – Lines Of Code (LOC)
Число обнаруженных ошибок за месяц работы ПО
Число строк документации
Число различных операндов
Наличие средств проверки входных данных
Число внешних вводов
Число внешних выводов
Число классов
Глубина иерархии классов
Степень взаимосвязанности классов
Число переопределяемых методов
Время разработки в человеко-месяцах (характеризует
процесс разработки)
13. Стоимость разработки (характеризует процесс разработки)
14. Относительные характеристики: KLOC, число ошибок / KLOC,
стоимость / LOC, число строк документации / KLOC
.......
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.

10. Для чего нужны критерии?

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

11. Критерии выбора языка программирования


Соответствие языка характеру решаемой задачи
Надежность
Возможности управления аппаратными средствами
Быстрота трансляции
Эффективность объектного кода
Сервисные возможности (средства отладки, работа с
файлами, встроенная помощь, навигация)
• Интеграция со средствами организации
коллективной работы
• Поддержка языка CASE-средствами, в частности,
возможность автоматической генерации кода на
данном языке

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

1. Технико-экономическое обоснование
разработки
2. Анализ требований (анализ предметной
области)
3. Проектирование
4. Программирование
5. Тестирование и отладка
6. Эксплуатация и сопровождение

13. Технико-экономическое обоснование разработки

- постановка задачи (определение основных функций
системы);
- определение экономических возможностей заказчика;
- определение технической базы;
- определение сроков разработки;
- определение требований к безопасности.
В результате должно быть сформировано обобщенное
техническое задание (ТЗ) на разработку системы.
Разработка ТЗ осуществляется заказчиком.
ТЗ может быть скорректировано заказчиком после
консультаций с исполнителем.

14. Техническое задание

1. НАЗНАЧЕНИЕ И ЦЕЛИ СОЗДАНИЯ СИСТЕМЫ
2. ХАРАКТЕРИСТИКА ОБЪЕКТА АВТОМАТИЗАЦИИ
3. ТРЕБОВАНИЯ К СИСТЕМЕ
3.1 Требования к системе в целом
3.2 Требования к функциям
3.3 Требования к интерфейсу
3.4 Требования к данным
3.5 Требования к техническим средствам
3.6 Требования к безопасности
4. КАЛЕНДАРНЫЙ ПЛАН РАБОТ
5. ПОРЯДОК КОНТРОЛЯ И ПРИЁМКИ СИСТЕМЫ
6. ТРЕБОВАНИЯ К ДОКУМЕНТАЦИИ

15. Стратегии разработки ПО

Функционально-ориентированная стратегия
технологии:
• Нисходящая (водопадная)
• Расширения ядра
Объектно-ориентированная стратегия
технологии:
• Спиральная
• Эволюционная или инкрементная
• Гибкая (agile software development)

16. Риски при разработке ПО

1.
2.
3.
4.
5.
6.
7.
8.
9.
Дефицит необходимых специалистов.
Нереалистичные сроки
Недостаточный бюджет.
Реализация несоответствующей требованиям
функциональности.
Разработка неудачного пользовательского
интерфейса.
“Золотая сервировка”, то есть ненужная
оптимизация и оттачивание деталей проекта.
Непрекращающийся поток изменения требований со
стороны заказчика.
Недостаточная производительность
разрабатываемой системы.
Несоблюдение требований безопасности.

17. Для чего нужны технологии?

1.
2.
3.
4.
Повысить качество ПО.
Снизить сроки разработки.
Уменьшить стоимость.
Обеспечить контроль над ходом
разработки.

18. Нисходящая технология

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

19. Схема иерархии

Функционирование
справочноинформационной
системы
Обработка
запроса
Добавление
Выдача результатов
и диагностических
сообщений
Корректировка
Поиск
Изменение
Факультет
Удаление
Сумма баллов
Вспомогательные
операции

20. Функционально-ориентированные технологии: этапы разработки

Техникоэкономическое
обоснование
Анализ
требований
Функциональное
проектирование
Программирование
Тестирование
и Отладка
Возвраты на
предыдущие
этапы
нежелательны

21. Достоинства ФОС разработки

• Возможность планирования всего
процесса разработки, поскольку
требования к ПС должны быть
четко определены с самого начала
• Богатый опыт использования ФОС
• Адекватность примерно 20%
предметных областей

22. Недостатки ФОС разработки

• Неадекватность по отношению к большинству
предметных областей
• Требования к ПС должны быть четко определены с
самого начала и не должны изменяться
• Последовательное выполнение всех этапов
разработки
• Невозможность в большинстве случаев создания
прототипа системы
• Невозможность выбора альтернатив
• Сложность внесения изменений в готовую систему
• Повышение трудоемкости к концу разработки
• Недостаточное внимание уделяется данным
• Желательно наличие у разработчиков опыта
работы над аналогичными проектами

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

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

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

Исполнитель и прецедент связывает отношение
ассоциации, если, либо исполнитель инициирует
выполнение прецедента, либо исполнитель
анализирует и использует результаты работы
прецедента.
Два прецедента могут связывать отношения
обобщения и зависимости.
Обобщение – это отношение наследования.
Зависимость определяет условные и
безусловные отношения между прецедентами.

25. Диаграммы прецедентов

Ввод запроса
Анализ запроса
Поиск
Пользователь
Выдача результата

26. Диаграммы прецедентов

Проверка
полномочий
Ввод запроса
Анализ запроса
Администратор
Добавление
записи

27. Отношения между прецедентами

Зависимость
предоставление
льгот
<< extend >>
предоставление
кредита
предоставление
кредита
<< include >>
проверка
платежеспособности
Обобщение
оформление
кредита физическим лицом
оформление
кредита

28. Диаграммы прецедентов

Банкомат
Выдача наличных денег
<<include>>
<<extend>>
Сообщение о
неверном
PIN-коде
Проверка
PIN-кода
<<include>>
Клиент
Банк
Выдача справки
о состоянии счета

29. Описание сценария

Исполнители
Банкомат
1. Клиент помещает карту в банкомат
2. Проверяет карту
Исключение1. Карта недействительна
4. Клиент вводит PIN-код
3. Просит ввести PIN-код
5. Проверяет PIN-код
Исключение 2. PIN-код неверен
7. Клиент выбирает снятие денег
6. Отображает на экране меню
8. Делает запрос в банк и выясняет
состояние счета
Исключение 3. Счет пуст
10. Клиент вводит сумму
9. Предлагает клиенту ввести сумму
11. Банк проверяет сумму
Исключение 4. Сумма больше допустимой
12. Банк изменяет состояние счета
13. Возвращает кредитную карту,
выдает деньги и чек
14. Клиент получает деньги, чек и
кредитную карту

30. Классы, объекты и методы

• Классы нужны для описания нового
типа, содержащего поля и методы
• Объекты – это экземпляры классов
• Методы реализуют функционал класса
<имя объекта>.<имя метода>(<аргументы>)
Работа объектно-ориентированной программы
может быть представлена как последовательность действий, состоящая из вызовов
методами друг друга.

31. Шаблоны классов

кратность
Имя класса
- <атрибут-1>
+ <атрибут-2>

# <атрибут-n>
*
область
атрибутов
видимость
- <операция-1>
# <операция-2>

+ <операция-m>
область
сигнатуры

32. Отношения между классами

• Обобщение
-
простое
множественное
• Ассоциация
-
простая
агрегирование
композитное агрегирование
классы-ассоциации
• Зависимость

33. Отношение обобщения

Человек
Студент
Млекопитающее
Рыба
Кит

34. Отношение ассоциации

Компания
работает
работодатель
работник
Человек
Человек
Сотрудник
потомок
предок
родственник
Прямое родство

35. Навигация

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

36. Кратность ассоциаций

1
A
B
1..*
B
A
0..1
A
A
B
*
B
n..m
A
B
4, 7,11
A
B

37. Кратность ассоциаций

родственник
1..*
1..*
Человек
*
ребенок
родитель 2
родитель-ребенок

38. Классы-ассоциации

1..*
*
Компания
Сотрудник
Работа
Должность
Зарплата
Дата начала работы

39. Ассоциация “один-ко-многим”

Компания
Сотрудник
1
1
Работа
*
Должность
Зарплата
Дата начала работы
1..*

40. Агрегирование

Факультет
Окно
1
1
входит в состав
*
Кнопка
2..*
Кафедра

41. Диаграмма классов

обучается на
1
входит
Факультет
1
Кафедра
1..*
1..*
50..*
Студент
1..*
имеет в программе
обучения
*
посещает
10..*
5..*
Предмет
7..*
читает

42. Представление объектов

[Имя объекта]: Имя класса
<атрибут-1>=значение-1
<атрибут-2>=значение-2

<атрибут-n>=значение-n
область
атрибутов

43. Диаграмма объектов

:Сотрудник
Петров
:Сотрудник
Сидоров
Иванов
:Сотрудник
Юрина
Юрина
:Работа
Инженер
15000
:Работа
Вед. инженер
Вед.инженер
20000
20000
:Работа
Аспирант
Аспирант
7000
7000
:Работа
Инженер
12000
:Работа
Программист
25000
:Работа
Инженер
15000
:Компания
Газпром
Газпром
:Компания
Газпром
МИФИ
МИФИ
:Компания
Росатом
Роснефть
:Компания
Роснефть
Газпром
Росатом

44. Объектно-ориентированное проектирование

1. Идентификация классов определенного уровня
абстракции, соответствующего данной итерации.
2. Определение атрибутов и сигнатуры классов
(шаблоны классов).
3. Определение отношений между классами
(диаграммы классов).
4. Определение областей видимости элементов
классов (шаблоны классов).
5. Планирование реализации базовых методов
(диаграммы последовательностей).
Уровень абстракции – совокупность знаний о
предметной области, используемых на данной
стадии разработки, т.е. на данной итерации

45. CASE-средства

CASE (Computer Aided Software Engineering)-средства
ориентированы на постоянное использование компьютера в
процессе разработки ПО.
В большинстве CASE-средств применяются UML-диаграммы.
Наиболее известные CASE-средства – Rational Software
Architect (IBM), Together (Borland), AllFusion (Computer
Associates), TAU (Telelogic)
Поддержка UML-диаграмм встроена во многие системы
программирования: Visual Studio, Eclipse, Delphi.
http://www.objectsbydesign.com/tools/umltools_byCompany.html
Цели использования CASE-средств:
- построение UML-диаграмм;
- генерация кода по UML-диаграммам;
- генерация UML-диаграмм на основе кода.

46. ОО-технологии: этапы разработки

Техникоэкономическое
обоснование
Анализ
требований
ОО
Проектирование
ОО
Программирование

Тестирование
и Отладка
Эволюция начинается
со второй итерации

47. Итеративная разработка ПО

48. Спиральная модель Боэма

Анализ
требований
Стоимость
Анализ рисков
Готовый
прототип
Программирование,
тестирование и
отладка
Проектирование

49. Достоинства ОО-технологий разработки ПО

1. Тесная связь с заказчиком в процессе разработки.
2. Возможность изменения требований к ПО.
3. Получение работающих версий до завершения
разработки.
4. Повышенное внимание к объектам и структурам
данных.
5. Возможность принятия альтернативных решений.
6. Детальная отработка элементов интерфейса.
7. Равномерное распределение разных видов работ
в процессе создания программной системы.

50. Выявление классов

1.Формулирование предназначения класса в
программной системе.
2. Класс – шаблон описания множества
однотипных объектов. Классы,
предусматривающие существование одного
объекта, встречаются редко. Это, как правило,
управляющие вспомогательные классы.
3. Класс должен содержать набор атрибутов.
Часто существуют один или несколько атрибутов,
идентифицирующих объекты класса.
4. Класс должен отличаться от атрибута.
5. Класс должен содержать набор операций.

51. Спецификация обобщения

Отношение обобщения соединяет базовый класс с более
специализированными классами. У специализированного
класса – класса-потомка – имеются по отношению к
базовому классу дополнительные атрибуты и/или
операции.
Обобщение делает возможным повторное использование
элементов базового класса.
Наличие абстрактных классов предопределяет
использование отношения обобщения. Обычно
абстрактные классы в качестве базовых специфицируются
в процессе разработки позднее их потомков.
При поиске отношений обобщения ключевой вопрос
формулируется так:
является один класс разновидностью второго или нет?

52. Спецификация ассоциаций

Ассоциация существует, когда объекты одного класса
устойчиво связаны с объектами другого или других классов.
Спецификация ассоциаций включает:
- задание имени ассоциации
- задание имен ролей ассоциации
- установление кратности ассоциации.
Кратности ассоциаций могут уточняться на начальных
итерациях разработки.
Отметим, что CASE-средства часто автоматически
генерируют имена ролей ассоциаций. Имена ролей бывают
важны для ассоциаций, связывающих объекты одного
класса.
Важно уметь выявлять избыточные ассоциации. Для этого
надо анализировать циклы ассоциаций и отбрасывать
лишние ассоциации.

53. Избыточные ассоциации

Покупатель
Платеж
1
*
Осуществление-платежа
Заказ-товара
*
1
Заказ

54. Спецификация агрегирования

Агрегирование – это отношение «часть - целое».
Агрегирование – это особый случай ассоциации,
обладающий дополнительной семантикой.
Так агрегирование обладает свойствами транзитивности и
асимметричности.
Транзитивность: если объект класса А является частью
объекта класса В, а объект класса В - частью объекта
класса С, то объект класса А является частью объекта
класса С.
Асимметричность: если объект класса А является частью
объекта класса В, то объект класса В не является частью
объекта класса А.
Композитное агрегирование обладает дополнительным
свойством – зависимостью по существованию.
Агрегирование степени выше 2 бессмысленно.

55. Эволюция системы


добавление новых классов
введение абстрактных классов
разделение одного класса на ряд других
изменение интерфейсов классов
корректировка отношений между классами
введение новых отношений между
классами
• изменение логики работы базовых
методов классов

56. Диаграммы взаимодействий

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

57. Диаграммы последовательностей

A:Class1
:Class2
I – момент
времени
j – момент
времени
k – момент
времени
<имя метода>

58. Условные обозначения

<имя метода>
Синхронная передача управления
Возврат управления
Линия жизни
<имя метода>
Асинхронная передача управления
Имя:Класс
Объект
Фокус управления

59. Диаграммы последовательностей

:Register
MakePayment
:Sale
Create
:Payment
Identify
A1

60. Диаграммы последовательностей (рефлексивный вызов)

:Person
Do
a1:Person
Do
Travel
Travel
d2:Person

61. Фреймы

Фреймы используются для:
• Реализации вложенных диаграмм
• Представления ветвлений и условий
• Реализации циклов
Фреймы изображаются в виде
прямоугольников с ярлычками (метками)
в левом верхнем углу

62. Диаграммы последовательностей (фреймы – связывание)

:A
:B
Make
:C
ref
Ident

63. Диаграммы последовательностей (фреймы – связывание)

sd Ident
:B
:C
DoM1
DoM2

64. Диаграммы последовательностей (ветвление)

О1:Object1
О3:Object2
Init (X)
alt
Modify
[x<0]
[else]
Create
:Object3

65. Диаграммы последовательностей (условие)

:Object2
:Object1
Init(X)
opt
[x<0]
Calculate

66. Диаграммы последовательностей (циклы)



Begin (Z)
loop
[для всех z<Z]
Calculate

67. Диаграмма последовательностей с исполнителем

:User
:A
:B
M1
M2

68. Диаграмма последовательностей “зачисление студента на курсы”

:Student
:ControlForm
:Course
:Offering
Do(St,C)
Init
Available
Add
Place

69. Диаграмма последовательностей “оплата услуги кредитной картой”

:Control
:CreditCard
Available
Payment
Modify
Slip
:Account

70. Прокат велосипедов

1. Оплата времени проката кредитной
картой в паркомате.
2. Получение кода.
3. Ввод кода на клавиатуре стоянки
велосипеда.
4. Получение велосипеда.
5. Катание.
6. Сдача велосипеда на стоянку.

71. Диаграмма последовательностей “прокат велосипедов”

:User
:Controller
Query
:Bicycle
Create
:Parking
:Agender
Slip
Code
Input Code
Fixed1
TimeIn
Return
Fixed2
TimeFin
Return

72. Виды интерфейса

1. Командная строка (DOS, UNIX).
2. Текстовый интерфейс (оболочки для
DOS, например, Norton Commander).
3. Графический интерфейс (Mac OS,
Windows).
a. Оконный интерфейс.
b. Трехмерный интерфейс.
4. Альтернативные виды интерфейса
(голосовой, жесты).

73. Проектирование графического интерфейса

Основные принципы разработки
• Управление со стороны пользователя
• Следование стандартам
• Возможность настройки
• Толерантность
• Обратная связь
• Удобство и эстетичность
• Простота

74. Удобство и эстетичность

Факторы:
• Цветовая гамма
• Симметрия
• Выравнивание
• Расстояния между элементами
• Пропорциональность
• Группирование связанных элементов
• Порядок расположения

75. Проектирование графического интерфейса

Элементы интерфейса
Главное окно и вторичные окна. Главное окно обычно
содержит дочерние окна. Дочерние окна размещаются
внутри главного и уничтожаются вместе с ним.
Вторичных окон может быть много. Вторичные окна не
зависят от главного. Вторичные окна обычно являются
модальными; они расширяют функциональность
главного окна.
Содержимое главного окна как правило организовано в
виде панелей. В панелях размещаются дочерние окна.
Часто дочерние окна располагают своими
собственными элементами управления.

76. Вид главного окна (Delphi)

заголовок
главное меню
инструментальная
линейка
панель
полоса прокрутки

77. Вид главного окна (Eclipse)

78. Вторичные окна

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

79. Организация интерфейса в Eclipse

• Рабочее пространство
• Рабочая среда
• Перспектива
workspace
workbench
perspective
Modeling, RAS, Java …
• Представление
view
Project Explorer, Palette, Outline …
• Редактор
editor
Разные редакторы для разных перспектив

80. Список вопросов

• Тенденции развития ИТ. Понятие программного обеспечения.
• Рынок ПО в России и в мире. Защита авторских прав
разработчиков.
• Обобщенные критерии качества ПО.
• Элементарные критерии качества и метрики ПО.
• Жизненный цикл ПО.
• Технико-экономическое обоснование разработки и техническое
задание.
• Функционально-ориентированная стратегия разработки ПО.
• Схема иерархии
• Характеристики модулей
• Объектно-ориентированная стратегия разработки ПО.
• Риски при разработке ПО.
• Диаграммы прецедентов.
• Сценарии.

81. Список вопросов


Этап анализа требований.
Отношения между классами: ассоциации.
Классы-ассоциации.
Отношение агрегирования.
Диаграммы объектов.
Этап объектно-ориентированного проектирования.
Эволюция в процессе объектно-ориентированной разработки.
CASE-средства.
Сопоставление объектно-ориентированной и функциональноориентированной стратегий разработки ПО.
Диаграммы последовательностей.
Фреймы в диаграммах последовательностей.
Организация графического интерфейса.
Интерфейс в Eclipse.
English     Русский Правила