Разделы презентаций


Программная инженерия

Содержание

№ из NNПрограммная инженерия – это инженерная дисциплина, отражающая все грани разработки программного обеспечения

Слайды и текст этой презентации

Слайд 1№ из NN
Программная инженерия
Кафедра
Информационно-компьютерных технологий

№ из NNПрограммная инженерияКафедраИнформационно-компьютерных технологий

Слайд 2№ из NN
Программная инженерия – это инженерная дисциплина, отражающая все

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

№ из NNПрограммная инженерия – это инженерная дисциплина, отражающая все грани разработки программного обеспечения

Слайд 3№ из NN
Программная инженерия?
Инженерия - обеспечивает решение поставленных задач посредством

существующих теорий и методов.
Инженер начинает с постановки задачи и поиска

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

Слайд 4№ из NN

№ из NN

Слайд 5№ из NN

№ из NN

Слайд 6№ из NN

№ из NN

Слайд 7№ из NN

№ из NN

Слайд 8№ из NN

№ из NN

Слайд 9№ из NN

№ из NN

Слайд 10№ из NN

№ из NN

Слайд 11Тема 1. Программная инженерия: назначение, основные принципы и понятия

Тема 1. Программная инженерия: назначение, основные принципы и понятия

Слайд 12№ из NN
О чем будем говорить?
Предпосылки и история
Программная инженерия –

что же это такое?
Стандартизация и стандарты

№ из NNО чем будем говорить?Предпосылки и историяПрограммная инженерия – что же это такое?Стандартизация и стандарты

Слайд 13№ из NN
Предпосылки и история
Первый кризис программирования
Повторное использование кода
Модульное программирование
Рост

сложности программ
Структурное программирование
Модификация программ
Объектно-ориентированное программирование
Продолжение кризиса программирования

№ из NNПредпосылки и историяПервый кризис программированияПовторное использование кодаМодульное программированиеРост сложности программСтруктурное программированиеМодификация программОбъектно-ориентированное программирование Продолжение кризиса

Слайд 14№ из NN
Повторное использование кода
Проблема
Дублирование фрагментов кода
Модульное программирование
Выделение фрагментов в

модули
Повторное использование модулей
Создание библиотек модулей

№ из NNПовторное использование кодаПроблемаДублирование фрагментов кодаМодульное программированиеВыделение фрагментов в модулиПовторное использование модулейСоздание библиотек модулей

Слайд 15№ из NN
Рост сложности программ
Проблема
Сложные программные комплексы
Объем кода, к-во связей,

к-во разработчиков, к-во пользователей
Жизненный цикл: стадии внедрения и сопровождения
Структурное программирование
«Правильное»

проектирование и кодирование
Основные принципы:
Нисходящее проектирование
Применение специальных языков проектирования
Дисциплина проектирования и разработки:
планирование и документирование проекта
поддержка соответствие кода проектной документации
Структурное кодирование (линейный блок, If-then-else, цикл)
№ из NNРост сложности программПроблемаСложные программные комплексыОбъем кода, к-во связей, к-во разработчиков, к-во пользователейЖизненный цикл: стадии внедрения

Слайд 16№ из NN
Модификация программ
Проблема
изменения в проекте и программе без изменения

ранее написанного кода
Объектно-ориентированное программирование
Класс – модуль со свойствами, поведением, обязанностями
Парадигмы

ООП:
Инкапсуляция и сокрытие деталей
Наследование
Полиморфизм

Отдел 1

Отдел 2

Отдел 3

Зарплата

Отдел 1

Отдел 2

Отдел 3

Зарплата

Зарплата 1

№ из NNМодификация программПроблемаизменения в проекте и программе без изменения ранее написанного кодаОбъектно-ориентированное программированиеКласс – модуль со

Слайд 17№ из NN
Некоторые итоги
Главная цель программной инженерии - сокращение стоимости

ПО
Сформировались основные принципы и методы проектирования ПО:
Жизненный цикл ПО
Модульное программирование
Структурное

проектирование и программирование
Объектно-ориентированное проектирование и программирование
№ из NNНекоторые итогиГлавная цель программной инженерии - сокращение стоимости ПОСформировались основные принципы и методы проектирования ПО:Жизненный

Слайд 18№ из NN
Продолжение кризиса
Кризис программирования принимает хронические формы:
США тратит

более $200 млрд. на более чем 170 тыс. проектов
потери от

недополученного эффекта измеряются триллионами.
Успешные проекты не часты (30000 проектов)

Источник: The Standish Group International, Inc., Extreme Chaos, 2000
http://www1.standishgroup.com//sample_research/PDFpages/extreme_chaos.pdf

№ из NNПродолжение кризисаКризис программирования принимает хронические формы: США тратит более $200 млрд. на более чем 170

Слайд 19№ из NN
О чем будем говорить?
Предпосылки и история
Программная инженерия –

что же это такое?
Стандартизация и стандарты

№ из NNО чем будем говорить?Предпосылки и историяПрограммная инженерия – что же это такое?Стандартизация и стандарты

Слайд 20№ из NN
Начнем с определений
Программная инженерия – это
установление и использование

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

и работает на реальных машинах. [Bauer 1972].
та форма инженерии, которая применяет принципы информатики (computer science) и математики для рентабельного решения проблем ПО. [CMU/SEI-90-TR-003]
применение систематического, дисциплинированного, измеряемого подхода к разработке, использованию и сопровождению ПО [IEEE 1990].
дисциплина, целью которой является создание качественного ПО, которое завершается вовремя, не превышает выделенных бюджетных средств и удовлетворяет выдвигаемым требованиям [Schach, 99]
№ из NNНачнем с определенийПрограммная инженерия – этоустановление и использование обоснованных инженерных принципов (методов) для экономного получения

Слайд 21№ из NN
Разберемся в вопросах
Что такое программное обеспечение (software)?
Что

такое программная инженерия?
В чем разница между программной инженерией (software

engineering) и информатикой (computer science)?
В чем отличие программной инженерии от других инженерий?
Из чего складывается стоимость ПО?
№ из NNРазберемся в вопросахЧто такое программное обеспечение (software)? Что такое программная инженерия? В чем разница между

Слайд 22№ из NN
Программное обеспечение?
Компьютерные программы и связанная с ними

документация и данные (ISO/IEC 12207)
Программные продукты могут разрабатываться для конкретного

заказчика или для обобщенного рынка
Программные продукты могут быть
Коробочными (generic products, shrink-wrapped software), т.е. разработанными для продажи многим различным заказчикам
Заказными (bespoke, custom), т.е. разработанными для одного покупателя по его спецификациям
№ из NNПрограммное обеспечение? Компьютерные программы и связанная с ними документация и данные (ISO/IEC 12207)Программные продукты могут

Слайд 23№ из NN
Программная инженерия?
Инженерная дисциплина, которая связана со всеми

аспектами производства ПО
от начальных стадий создания спецификации до поддержки системы

после сдачи в эксплуатацию
Инженерная дисциплина
Ориентация на практический результат
Применение теорий, методов и способов для достижения результата
Лучшие практики (best practices)
При ограниченном ресурсе времени, бюджета, оборудования, людей
Все аспекты производства ПО
Управление программными проектами
Разработка средств, методов и теорий
№ из NNПрограммная инженерия? Инженерная дисциплина, которая связана со всеми аспектами производства ПОот начальных стадий создания спецификации

Слайд 24№ из NN
В чем отличия от информатики?
Информатика (computer science) -

теория и методы вычислительных и программных систем
Программная инженерия - практические

проблемы создания ПО
Информатика – теоретический фундамент программной инженерии
Не всегда достаточный
Не единственный (финансы, управление проектом, работа с заказчиком, …)
№ из NNВ чем отличия от информатики?Информатика (computer science) - теория и методы вычислительных и программных системПрограммная

Слайд 25№ из NN
В чем отличие от других инженерий?
Вопросы:
Почему так велика

доля провальных проектов?
Можно ли применять опыт других инженерий?
Фазы жизненного цикла

любого продукта:
Проектирование, создание образца, испытание, производство, эксплуатация
Программа – не материальный объект:
Фазы производства и изготовления образца отсутствуют
Стоимость программы – это стоимость проектирования
У коробочных продуктов «размазывается» по копиям
У заказных продуктов остается высокой.
№ из NNВ чем отличие от других инженерий?Вопросы:Почему так велика доля провальных проектов?Можно ли применять опыт других

Слайд 26№ из NN
В чем еще отличие от др. инженерий?
Программа –

искусственный объект
Нет объективных законов контроля проекта
Тестирование – единственный способ проверки
Программная

инженерия – молодая дисциплина
Подробнее
Кони Бюрер «От ремесла к науке: поиск основных принципов разработки ПО» http://interface.ru/fset.asp?Url=/rational/science.htm

Фольклор: Если бы дома строили программисты
№ из NNВ чем еще отличие от др. инженерий?Программа – искусственный объектНет объективных законов контроля проектаТестирование –

Слайд 27№ из NN
Из чего складывается стоимость ПО?
Зависит от типа ПО,

методологии разработки и … метода оценки
Типовое распределение:
15% - спецификация
25% -

проектирование
20% - разработка
40% - интеграция и тестирование
Коробочное ПО
Рост доли тестирования за счет спецификации
Заказное ПО
Рост доли тестирования за счет проектирования и разработки
№ из NNИз чего складывается стоимость ПО?Зависит от типа ПО, методологии разработки и … метода оценкиТиповое распределение:15%

Слайд 28№ из NN
Еще вопросы
Что такое программный процесс?
Что такое модель

программного процесса?
Что такое методы программной инженерии?
Что такое CASE

(Computer-Aided Software Engineering)?
Какими свойствами обладает хорошая программа?
Какие основные трудности стоят перед программной инженерией?
№ из NNЕще вопросыЧто такое программный процесс? Что такое модель программного процесса? Что такое методы программной инженерии?

Слайд 29№ из NN
Программный процесс?
Жизненный цикл – непрерывный процесс с

момента принятия решения о создании ПО до снятия его с

эксплуатации.
Процесс – совокупность действий и задач, имеющих целью достижение значимого результата.
Основные процессы (этапы или фазы) ЖЦ:
Спецификация требований
Разработка проекта программы
Кодирование
Тестирование
Документирование
№ из NNПрограммный процесс? Жизненный цикл – непрерывный процесс с момента принятия решения о создании ПО до

Слайд 30№ из NN
Программный процесс?
Дополнительные (нефункциональные) процессы:
создание инфраструктуры, управление конфигурацией,

управление качеством, обучение, разрешение противоречий, …
Установление процесса:
Описание процесса
Обучение процессу
Введение

метрик
Контроль выполнения
Усовершенствование
№ из NNПрограммный процесс? Дополнительные (нефункциональные) процессы:создание инфраструктуры, управление конфигурацией, управление качеством, обучение, разрешение противоречий, …Установление процесса:Описание

Слайд 31№ из NN
Модель программного процесса?
Модель программного процесса — это

упрощенное описание программного процесса, представленное с некоторой точки зрения.
Модели

жизненного цикла:
Водопадная (каскадная) модель
Спиральная (циклическая) модель
Компонентная модель
Формальная модель
Комбинированные модели
Модели организации работ:
Модель потока работ (workflow model)
Модель потоков данных (data flow model)
Ролевая модель
№ из NNМодель программного процесса? Модель программного процесса — это упрощенное описание программного процесса, представленное с некоторой

Слайд 32№ из NN
Методы программной инженерии?
Метод программной инженерии — это

структурный подход к созданию ПО:
как высококачественного продукта
экономически эффективным способом.
Наиболее известные

методы:
Структурного анализа и проектирования Том ДеМарко (1978),
Сущность-связь Чен (1976)
Объектно-ориентированного анализа и проектирования Буч (1994), Рамбо (1991).
№ из NNМетоды программной инженерии? Метод программной инженерии — это структурный подход к созданию ПО:как высококачественного продуктаэкономически

Слайд 33№ из NN
Методы программной инженерии?
Цель - создание и поэтапное

преобразование моделей ПО (примеры моделей)
Методы должны включать в себя следующие

компоненты:
Описание моделей системы и нотация
Правила и ограничения
Рекомендации
Руководство по применению метода
Нет идеальных методов, нет абсолютных методов
№ из NNМетоды программной инженерии? Цель - создание и поэтапное преобразование моделей ПО (примеры моделей)Методы должны включать

Слайд 34№ из NN
Модель прецедентов (требований)
Описание прецедента «Выбор курса для преподавателя»
Прецедент

начинает выполняться, когда преподаватель подключится к системе Преподаватель вводит нужный

семестр. Система предлагает выбрать требуемую операцию: добавить (Add), удалить (Delete), просмотреть (Review), напечатать (Print) или выйти (Quit).

Если выбрана операция добавить (Add), S-1: выполняется поток добавить учебный курс (Add a Course Offering).
Если выбрана операция удалить (Delete), S-2: выполняется поток удалить учебный курс (Delete a Course Offering).
Если выбрана операция просмотреть (Review), S-3: выполняется поток просмотреть расписание (Review Schedule).
Если выбрана операция ….

№ из NNМодель прецедентов (требований)Описание прецедента «Выбор курса для преподавателя»Прецедент начинает выполняться, когда преподаватель подключится к системе

Слайд 35№ из NN
Модель (диаграмма) классов

№ из NNМодель (диаграмма) классов

Слайд 36№ из NN
Модель сущность-связь

№ из NNМодель сущность-связь

Слайд 37№ из NN
Нотации модели

№ из NNНотации модели

Слайд 38№ из NN
Что такое CASE?
Определение
Классификация CASE средств:
По уровню применения:
Upper

CASE -средства анализа требований
Middle CASE - средства проектирования
Low CASE -

cсредства разработки приложений
Специализированные
Средства проектирования БД
Средства реинжиниринга
Вспомогательные
Планирования и управления проектом
Конфигурационного управления
Тестирования
Интегрированные CASE
Главное правило: сначала метод – потом CASE
№ из NNЧто такое CASE? ОпределениеКлассификация CASE средств:По уровню применения:Upper CASE -средства анализа требованийMiddle CASE - средства

Слайд 39№ из NN
Определение CASE
Использование компьютеров для поддержки процесса создания программ.

Может включать инструментальные программные средства для проектирования ПО, формирования требований,

кодирования, тестирования, документирования и других действий по созданию ПО
Эволюция CASE
Ассемблеры, компиляторы, интерпретаторы
Трассировщики, символические отладчики
Текстовые редакторы, системы анализа исходных текстов
Средства для анализа требований и проектирования
Среды визуального программирования
Средства генерации исходных кодов
Средства поддержки полного жизненного цикла ПО
№ из NNОпределение CASEИспользование компьютеров для поддержки процесса создания программ. Может включать инструментальные программные средства для проектирования

Слайд 40№ из NN
Свойства хорошей программы
Удовлетворять функциональным требованиям
Нефункциональные требования:
Сопровождаемость (maintainability)
Возможность дальнейшего

развития.
Надежность (dependability)
Отказоустойчивость, безопасность, защищенность
Эффективность (efficiency)
Память, процессорное время, каналы связи.
Удобство

использования (usability)
Понятно пользователю

№ из NNСвойства хорошей программыУдовлетворять функциональным требованиямНефункциональные требования:Сопровождаемость (maintainability)Возможность дальнейшего развития. Надежность (dependability)Отказоустойчивость, безопасность, защищенностьЭффективность (efficiency)Память, процессорное

Слайд 41№ из NN
Основные трудности
Главная проблема: универсальный метод и процесс
Основные трудности:
Наследование

ранее созданного ПО (legacy systems).
Сопровождение – поддержка и развитие старого

ПО.
Разнородность программных систем.
Распределенные сети, разнородное оборудование, разные среди, различные ОС
Сокращение времени на разработку.
Сократить время разработки ПО без снижения его качества.
Трудности часто оказываются связанными между собой
№ из NNОсновные трудностиГлавная проблема: универсальный метод и процессОсновные трудности:Наследование ранее созданного ПО (legacy systems).Сопровождение – поддержка

Слайд 42№ из NN
Профессиональные и этические требования
Развитие IT индустрии оказывает

все большее воздействие на общество
Internet, телекоммуникации, IP телефония, компьютерные

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

Слайд 43№ из NN
Профессиональные и этические требования
Более тонкие профессиональные обязательства:
Конфиденциальность
Неразглашение

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

ли ими соответствующее соглашение.
Компетентность
не должен завышать свой уровень компетентности и браться за работу, не соответствующую этому уровню
Защита интеллектуальной собственности
соблюдать законодательство при использовании чужой интеллектуальной собственности
защищать интеллектуальную собственность работодателя и клиента
Злоупотребление компьютером
от игр в компьютерные игрушки на рабочем месте до распространения вирусов и т.п.
№ из NNПрофессиональные и этические требования Более тонкие профессиональные обязательства:КонфиденциальностьНеразглашение сведений о своих работодателях или заказчиков независимо

Слайд 44№ из NN
Кодекс этики IEEE-CS/ACM
ACM, IEEE и British Computer

Society
IEEE-CS/ACM Software Engineering Code of Ethics and Professional Practices –

Кодекс этики и профессиональной практики программной инженерии..
Члены этих организация принимают на себя этот кодекс
Кодекс содержит восемь Принципов, связанных с поведением и решениями, принимаемыми профессиональными программистами
Кодекс распространяется также на студентов и «подмастерьев», изучающих данную профессию
Кодекс имеет краткую и полную версии
№ из NNКодекс этики IEEE-CS/ACM ACM, IEEE и British Computer SocietyIEEE-CS/ACM Software Engineering Code of Ethics and

Слайд 45№ из NN
Кодекс этики - Преамбула
Краткая версия кодекса
суммирует стремления

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

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

Слайд 46№ из NN
Кодекс этики: 8 принципов
1. ОБЩЕСТВО
Программные инженеры будут

действовать соответственно общественным интересам.
2. КЛИЕНТ И РАБОТОДАТЕЛЬ
Программные инженеры будут действовать

в интересах клиентов и работодателя, соответственно общественным интересам.
3. ПРОДУКТ
Программные инженеры будут добиваться, чтобы произведенные ими продукты и их модификации соответствовал высочайшим профессиональным стандартам.
№ из NNКодекс этики: 8 принципов1. ОБЩЕСТВО Программные инженеры будут действовать соответственно общественным интересам.2. КЛИЕНТ И РАБОТОДАТЕЛЬПрограммные

Слайд 47№ из NN
Кодекс этики: 8 принципов
4. СУЖДЕНИЕ
Программные инженеры будут добиваться

честности и независимости в своих профессиональных суждениях
5. МЕНЕДЖМЕНТ
Менеджеры и лидеры

программных инженеров будут руководствоваться этическим подходом к руководству разработкой и сопровождением ПО, а также будут продвигать и развивать этот подход
6. ПРОФЕССИЯ
Программные инженеры будут улучшать целостность и репутацию своей профессии соответственно с интересами общества
№ из NNКодекс этики: 8 принципов4. СУЖДЕНИЕПрограммные инженеры будут добиваться честности и независимости в своих профессиональных суждениях5.

Слайд 48№ из NN
Кодекс этики: 8 принципов
4. КОЛЛЕГИ
Программные инженеры будут честными

по отношению к своим коллегам и будут всячески их поддерживать
8.

ЛИЧНОСТЬ
Программные инженеры в течение всей своей жизни будут учиться практике своей профессии и будут продвигать этический подход к практике своей профессии

Полная версия кодекса: IEEE-CS/ACM Software Engineering Ethics and Professional Practices. http://www.computer.org/tab/seprof/code.htm#Public
№ из NNКодекс этики: 8 принципов4. КОЛЛЕГИПрограммные инженеры будут честными по отношению к своим коллегам и будут

Слайд 49№ из NN
Вопросы
Чем программа отличается от программного продукта?
За что отвечает

специалист по программной инженерии?
Что такое best practices и какова их

роль в программной инженерии?
№ из NNВопросыЧем программа отличается от программного продукта?За что отвечает специалист по программной инженерии?Что такое best practices

Слайд 50№ из NN
О чем будем говорить?
Предпосылки и история
Программная инженерия –

что же это такое?
Стандартизация и стандарты

№ из NNО чем будем говорить?Предпосылки и историяПрограммная инженерия – что же это такое?Стандартизация и стандарты

Слайд 51№ из NN
Стандартизация и стандарты
Что такое стандарты и сертификация на

соответствие стандартам?
Какие бывают стандарты?
Кто разрабатывает стандарты программной инженерии?
Основные стандарты программной

инженерии
№ из NNСтандартизация и стандартыЧто такое стандарты и сертификация на соответствие стандартам?Какие бывают стандарты?Кто разрабатывает стандарты программной

Слайд 52№ из NN
Стандарты и сертификация

№ из NNСтандарты и сертификация

Слайд 53№ из NN
Технология
Знание (логия) мастерства (техно):
совокупность приёмов и способов производства;


научная дисциплина
сами операции производства
описание производственных процессов,
инструкции по их выполнению,


технологические правила, требования, карты, графики и др.
№ из NNТехнологияЗнание (логия) мастерства (техно):совокупность приёмов и способов производства; научная дисциплинасами операции производстваописание производственных процессов, инструкции

Слайд 54№ из NN
Что такое стандарт?
От англ. standard - норма, образец,

мерило:
нормативный документ, устанавливающий комплекс норм и правил;
типовой образец, эталон,

модель,
Стандарт может быть разработан на
материально-технические предметы
нормы, правила, требования
Стандартизация распространяется на все сферы человеческой деятельности:
науку, технику, промышленное и с.-х. производство, строительство, здравоохранение, транспорт и т.д.
№ из NNЧто такое стандарт?От англ. standard - норма, образец, мерило:нормативный документ, устанавливающий комплекс норм и правил;

Слайд 55№ из NN
Что такое сертификация?
Certification - "сделано верно“:
Заявление о

соответствии поставщика (изготовителя) (supplier's declaration)
письменная гарантия соответствия продукции заданным требованиям
Сертификация

соответствия
процедура, посредством которой третья сторона дает письменную гарантию, что продукция, процесс, услуга соответствуют заданным требованиям.
№ из NNЧто такое сертификация?Certification -

Слайд 56№ из NN
Какие бывают стандарты?
Типы стандартов
Корпоративные
Отраслевые
Государственные
Международные
Виды стандартов
Рекомендательные
Обязательные

№ из NNКакие бывают стандарты?Типы стандартовКорпоративныеОтраслевыеГосударственныеМеждународныеВиды стандартовРекомендательныеОбязательные

Слайд 57№ из NN
Кто разрабатывает стандарты SE?

№ из NNКто разрабатывает стандарты SE?

Слайд 58№ из NN
ISO
Международная организация по стандартизации (ISO)
Неправительственная организация
Создана в

1947 году.
Консультативный статус ООН
Федерация национальных организаций (146 комитетов-членов ISO)
Разработка стандартов

в технических комитетах (188 комитетов и подкомитетов)

International Organization for Standardization

№ из NNISOМеждународная организация по стандартизации (ISO)Неправительственная организация Создана в 1947 году.Консультативный статус ООНФедерация национальных организаций (146

Слайд 59№ из NN
ISO
Стандарты ISO - рекомендательные
Нет контроля за выполнением стандартов,

нет сертификации на соответствие
Использование логотипа ISO незаконно
Принятие проекта
Требует 75%

голосов комитетов-членов
Подробнее:
http://www.russianregister.com.ua/page18.html

International Organization for Standardization

№ из NNISOСтандарты ISO - рекомендательныеНет контроля за выполнением стандартов, нет сертификации на соответствие Использование логотипа ISO

Слайд 60№ из NN
ACM
Ассоциация по вычислительной технике
Основана в 1947г.
Крупнейшая всемирная научная

и образовательная организация
Более 75000 профессионалов компьютерной науки
До 100 международных конференций

в год
Несколько десятков научных журналов
Большое количество авторитетных наград и премий
Разработка учебных программ и стандартов
Подробнее: http://www.acm.org/

Association for Computing Machinery

№ из NNACMАссоциация по вычислительной техникеОснована в 1947г.Крупнейшая всемирная научная и образовательная организацияБолее 75000 профессионалов компьютерной наукиДо

Слайд 61№ из NN
SEI
Институт Программной Инженерии в университете Карнеги-Меллона
Федеральное финансирование
Заказчик -

министерство обороны США
Основные задачи:
Методики оценки уровня зрелости организаций
Разработки в области

IT и SE
Методики разработки высококачественного ПО
Доступ к самым передовым техническим инновациям
Подробнее: www.sei.cmu.edu

Software Engineering Institute

№ из NNSEIИнститут Программной Инженерии в университете Карнеги-МеллонаФедеральное финансированиеЗаказчик - министерство обороны СШАОсновные задачи:Методики оценки уровня зрелости

Слайд 62№ из NN
PMI
Международный Институт Проектного Менеджмента
Основан в 1969 г. (США,

Филадельфия)
Международная общественная организация
от 100000 до 135000 членов в 125 странах


продвижение, пропаганда, развитие проектного менеджмента
разработка стандартов проектного менеджмента
повышение квалификации и сертификация специалистов
Исследования в области проектного менеджмента
конференции, гранты, исследовательская база данных и т.д.
издание журналов, в онлайновом магазине более 1000 наименований.
Подробнее: http://www.pmi.org и http://www.pmi.ru

Project Management Institute

№ из NNPMIМеждународный Институт Проектного МенеджментаОснован в 1969 г. (США, Филадельфия)Международная общественная организацияот 100000 до 135000 членов

Слайд 63№ из NN
IEEE
Институт инженеров по электротехнике и электронике
400000 специалистов из

более чем 150 стран
Состоит из ряда профессиональных сообществ
Самое крупное из

которых - IEEE Computer Society
более 100000 человек
ежегодно около 150 конференций и симпозиумов
более 20 периодических изданий
деятельность по стандартизации (200 рабочих групп)
Подробнее: http://www.ieee.org и http://www.computer.org.ru/

Institute of Electrical and Electronics Engineers

№ из NNIEEEИнститут инженеров по электротехнике и электронике400000 специалистов из более чем 150 странСостоит из ряда профессиональных

Слайд 64№ из NN
Основные стандарты SE
ISO/IEC 12207 - Information Technology -

Software Life Cycle Processes
SEI CMM - Capability Maturity Model (for

Software)
ISO/IEC 15504 - Software Process Assessment
PMBOK - Project Management Body of Knowledge
SWEBOK - Software Engineering Body of Knowledge
ACM/IEEE CC2001 - Computing Curricula 2001

№ из NNОсновные стандарты SEISO/IEC 12207 - Information Technology - Software Life Cycle ProcessesSEI CMM - Capability

Слайд 65№ из NN
ISO/IEC 12207-95
ГОСТ Р ИСО/МЭК 12270. 2000
Процессы жизненного

цикла программных средств
Программный продукт (или ПО):
набор компьютерных программ, процедур
и

связанной с ними документации и данных
Жизненный цикл ПО – это непрерывный процесс, который
начинается с момента принятия решения о необходимости его создания
заканчивается в момент его полного изъятия из эксплуатации
Стандарт определяет:
организацию и
структуру ЖЦ ПО
№ из NNISO/IEC 12207-95ГОСТ Р ИСО/МЭК 12270. 2000 Процессы жизненного цикла программных средствПрограммный продукт (или ПО):набор компьютерных

Слайд 66№ из NN
SEI CMM
Capability Maturity Model (for Software) -

модель зрелости процессов разработки ПО
Как выбирать организацию, которой можно доверить

выполнение крупного IT проекта?
Пять уровней зрелости процесса
Начальный (Initial)
Повторяемый (Repeatable)
3. Определенный (Defined)
4. Управляемый (Managed)
5. Оптимизируемый (Optimized)
№ из NNSEI CMM Capability Maturity Model (for Software) - модель зрелости процессов разработки ПОКак выбирать организацию,

Слайд 67№ из NN
ISO/IEC TR 15504
ISO/IEC 15504 TR Software Process

Assessment
SPICE: Software Process Improvement and Capability dEtermination
Оценка и аттестация зрелости

процессов создания и сопровождения ПО.
Опыт 9 стандартов (ISO 12207, CMM, …)
Расширенное количество процессов (ISO 12207)
6 уровней зрелости (CMM)
Аттестация  оценка зрелости, усовершенствов.
Регламенты:
Аттестации, усовершенствования, оценки
Компетентности аттестаторов
№ из NNISO/IEC TR 15504 ISO/IEC 15504 TR Software Process AssessmentSPICE: Software Process Improvement and Capability dEterminationОценка

Слайд 68№ из NN
PMI PMBOK
Project Management Body of Knowledge -

Свод знаний по управлению проектами, 1996, 2000, 2004 гг.
Области знаний

управления проектами:
1. Управление интеграцией - Project Integration Management
2. Управление ограничениями - Project Scope Management
3. Управление временем - Project Time Management
4. Управление затратами - Project Cost Management
5. Управление рисками - Project Risk Management
6. Управление персоналом - Project Personnel Management
7. Управление коммуникациями - Project Communication Management
8. Управление закупками - Project Procurement Management
9. Управление качеством - Project Quality Management
№ из NNPMI PMBOK Project Management Body of Knowledge - Свод знаний по управлению проектами, 1996, 2000,

Слайд 69№ из NN
IEEE SWEBOK
IEEE Computer Society Software Engineering Body

of Knowledge – Свод знаний по программной инженерии, 18 мая

2004 г.
Области знаний программной инженерии:
Software Requirements – требования к ПО
Software Design – проектирование ПО
Software Construction – конструирование ПО
Software Testing – тестирование ПО
Software Maintenance – сопровождение ПО
Software Configuration Management – управление конфигурац.
Software Engineering Management – управление IT проектом
Software Engineering Process – процесс ПИ
Software Engineerting Tools and Methods – методы и инструменты
Software Quality – качество ПО
№ из NNIEEE SWEBOK IEEE Computer Society Software Engineering Body of Knowledge – Свод знаний по программной

Слайд 70№ из NN
ACM/IEEE Computing Curricula
ACM/IEEE Computing Curricula 2001 –

Академический образовательный стандарт в области компьютерных наук 2001
Основные разделы компьютерных

наук:
Computer science – Информатика (2001г);
Computer engineering – Компьютерная инженерия;
Software engineering – Программная инженерия (2004г.)
Information systems – Информационные системы.
Сайты:
СС2001: http://www.computer.org/education/cc2001
CC2001. Информатика: http://se.math.spbu.ru/cc2001
№ из NNACM/IEEE Computing Curricula ACM/IEEE Computing Curricula 2001 – Академический образовательный стандарт в области компьютерных наук

Слайд 71№ из NN
ACM/IEEE Computing Curricula
Области знаний Software engineering:
Computing Essentials

- Основы применения ЭВМ
Mathematical & Engineering Fundamentals - Математические и

инженерные основы
Professional Practice - Профессиональная практика
Software Modeling & Analysis - Моделирование и анализ ПО
Software Design - Проектирование ПО
Software V & V –Верификация и валидация ПО
Software Evolution - Эволюция ПО
Software Process - Процесс ПО
Software Quality - Качество ПО
Software Management -Управление проектом
№ из NNACM/IEEE Computing Curricula Области знаний Software engineering:Computing Essentials - Основы применения ЭВМMathematical & Engineering Fundamentals

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

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


Для правообладателей

Яндекс.Метрика