План курса "Разработка и стандартизация программных средств и информационных технологий" 16 часов: 3 (*4) лекции + 1(*4) зачетное занятие
Вид материала | Лекции |
- Учебно-методический комплекс по дисциплине «Разработка и стандартизация программных, 278.97kb.
- Рабочая программа по дисциплине «Разработка и стандартизация программных средств, 122.46kb.
- Примерные темы курсовых работ по дисциплине «Разработка и стандартизация программных, 19.65kb.
- Учебно-методический комплекс дисциплины разработка и стандартизация программных средств, 362.73kb.
- График учебного процесса направление 080800 «Прикладная информатика» профиль подготовки, 22.44kb.
- Рабочая программа дисциплины «разработка и стандартизация программных средств и информационных, 170.62kb.
- Программа дисциплины по кафедре Экономическая кибернетика Разработка и стандартизация, 368.07kb.
- Учебно-методический комплекс Специальность: 080801 Прикладная информатика (в экономике), 278.53kb.
- Задачи по дисциплине «Разработка и стандартизация программных средств и информационных, 149.25kb.
- Комплекс технических средств издательского и полиграфического комплекса > Системные, 744.09kb.
Пермский Государственный Технический Университет
Региональный межотраслевой центр переподготовки кадров
Кафедра информационных технологий и информационного менеджмента
План курса
"Разработка и стандартизация программных средств
и информационных технологий"
16 часов: 3 (*4) лекции + 1(*4) зачетное занятие
Разработчик: Кошин В.А.
Пермь 2004
Издание №1 от 1.06.2004
Лекция №1 "До и вокруг разработки ПО"
- О курсе (проблема ежистости).
- Смысловое значение программных средств (ПО):
Предмет или вещь.
Работа или процесс.
Услуга или сервис.
Информация или данные.
- Что такое данные и их отличие от программных средств:
Критерий активности.
Способность к исполнению или обработке.
*Куда относятся библиотеки?
- А так ли необходимо все это?
Нужна ли реорганизация или повышение культуры (диспетчер)?
Нужна ли новая техника?
Нужны ли новое ПО?
Нужен ли отдел АСУ?
- Технические и программные средства (АО и ПО):
Тенденции усиления и ослабления.
Тенденции изменения удельной стоимости рынка.
Стоимость результата и процесса.
- Человеческий фактор:
Формулирование требований и их изменение.
Реализация системы.
Сопровождение системы.
*Узкие специалисты это хорошо?
- Технологический фактор:
Влияние устройства исполняющего инструкции (привязка к технике).
Влияние среды окружения (привязка к системе исполнения).
Аспекты сопряжения (совместимости):
Совместимость на уровне среды.
Совместимость на уровне данных.
- Вечные вопросы и недоразумения:
Где тут можно сэкономить?
Сколько стоит ПО?
Единица измерения стоимости?
Масштабность использования (1 … N пользователей)?
Принадлежность (имущественная и неимущественная) ПО?
Амортизация техники и программных средств (в том числе сайтов).
- На стыке теории и практики:
Возможности разработка с чистого листа.
Возможное историческое наследие:
Горе техника.
Горе система.
Горе персонал.
Горе руководство.
Горе правила.
- Бюджетная составляющая компьютеризации:
Доля затрат на автоматизацию/компьютеризацию?
Правило 7% в "развитие" и "не отставание".
- Что предпочтительнее:
"Недопрограммирование" или "перепрограммирование"?
Самодостаточное ПО, библиотечное или надстроечное.
Платные и бесплатные сырки (инструменты, программы, данные).
Лицензионное или что-то другое.
- Современные тенденции на рынке ПО:
Глобализация или локализация ПО?
Виртуальная локализация ПО и глобализация сервисов.
- Группа содействия разработке:
Участие ЛПР.
*Критерий разработки.
- Эффективны только узкие инструменты, но на рынке выживают конструкторы.
- Основные методологии разработки ПО (RAD, CASE, XP).
Лекция №2 "Разработка ПО или изобретение по требованию"
- Выводы из анализа окружения.
- Человеческий ресурс (особенности разработчиков).
- Отношение к ГОСТам.
- Минимизация влияния внешних факторов.
- Отношение к опыту:
Положительному.
Отрицательному.
- Различия подходов к разработке:
Заплаток.
Малых программ и надстроек.
Офисных программ средней сложности.
Программ высокой сложности.
Специальных программ.
Малых (автономных) систем.
Средних (интегрируемых в среду) систем.
Крупных (задающих корпоративный стандарт) систем.
- Исполнители и их роли в процессе разработки проекта:
Инженеры.
Постановщики.
Программисты.
Разработчики.
Операторы.
Кодеры.
Тестеры.
*Кого забыли?
- Руководство и политики воздействия:
Руководители групп.
Руководители тем (сфер ответственности).
Руководители функций.
Руководители проекта.
- Выбор концепции и инструментов реализации проекта:
Концепция ПП (полное разделение программ и данных).
Концепция ООП (выделение общих данных).
*Является вторичным и определяется выбранной методологией.
- Моделирование до и после разработки:
*Является вторичным и определяется выбранной методологией.
- Отношения к изменениям требований:
Исключительное.
Этапное.
Гибкое.
- Методологии разработки ПО:
Отличаются отношением к жизненному циклу программной системы, который определяется стандартами ISO и содержит:
Основные процессы (приобр., поставка, разработка, сопров., экспл.)
Вспомогательные процессы (документир., обеспеч. качества, оценка …)
Организационные процессы (улучшение, обучение…)
1. Историческая (типовая).
2. RAD (Rapid Application Development) – на основе законченных циклов.
3. CASE технологии – на основе структурных моделей.
4. Методология XP – на основе гибких взаимоотношений.
Задание:
- Общие рекомендации и выводы:
Журналы настройки.
Журналы изменений.
Журналы конфликтов.
Лекция №3 "Модельные ряды в ИТ-проектировании"
- Выбор методологии разработки ПО.
- Эволюция процессной организации разработки.
1976 - SDL – язык спецификации и описания функционального поведения телекоммуникационных систем.
1987 – Objectory v1.0…3.8 – система управления вариантами использования.
1986 – теоретические изыскания Уолкера Ройса, Рича Рейтмана, Гради Буча и Филиппа Крухтена.
1995-97 – ROP (Rational Objectory Process) – управление конфигурациями, развертыванием и создание среды разработки.
1995… – UML (Unified Modeling Language) – различные нотации единого стандарта.
1998… – RUP v1…5.0 (Rational Unified Process) – современная унификация процесса разработки.
- Принципы итерации и интерактивности.
- Выбор возможного модельного ряда.
Модели вариантов использования (+пользователи и активности).
Модели анализа (уточнение и детализация вариантов поведения).
Модели проектирования (1: статическая структура системы, подсистемы, классы и интерфейсы и 2: варианты использования в виде коопераций).
Модели реализации (компоненты и раскладка классов по компонентам).
Модель развертывания (компьютеры, узлы сети и расположение частей системы по этим узлам).
Модель тестирования (тесты для проверки вариантов использования).
Модели архитектуры.
- Взаимосвязь перечисленных моделей:
- Распределение итераций по фазам (этапам) разработки:
Анализ: идея в концепцию, архитектуру, стоимость (бизнес-план).
Проектирование: детальное описание архитектур и их взаимодействий.
Построение: реализация скелета работающей системы.
Внедрение: тестирование бета-версии продукта, исправления, обучение.
- Пример цепочки моделей:
Диаграмма вариантов использования.
Выделение классов анализа (граничные классы, управляющий класс, класс сущности).
Диаграмма реализации вариантов в структуре классов анализа.
Диаграмма кооперации в модели анализа.
Диаграмма классов (реализации варианта «Снять деньги со счета»).
Диаграмма последовательности (часть реализации варианта «Снять деньги со счета»).
Диаграмма группировки и реализации подсистем.
Диаграмма реализаций классов или подсистем.
Модель тестирования описывается словесно в текстовом виде.
Зачетное задание: