Составляющие затрат в жизненном цикле

advertisement
СТАВРОПОЛЬСКИЙ АГРАРНЫЙ УНИВЕРСИТЕТ
КАФЕДРА ПИ
Дисциплина:
РАЗРАБОТКА, СТАНДАРТИЗАЦИЯ
И СЕРТИФИКАЦИЯ ПРОГРАММНЫХ СРЕДСТВ
И ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ И СИСТЕМ
Практическое занятие
Тема:
«Проблемы и задачи проектирования программных средств»
•
•
•
•
•
В современных ИС являются типичными сложными системами со
всеми их особенностями (наличие общей задачи и единой цели
функционирования, иерархическая система связей, сложность поведения
системы и др.), обуславливающими проблемы их проектирования. К ним
относятся [2, 5]:
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
1) проблемы рационального структурного построения ПС,
включающие:
– оптимизацию структуры ПС по критерию максимального
использования ресурсов ЭВМ;
– контроль вычислительного процесса и обеспечение надёжности ПС;
– обеспечение простой корректировки ПС и др.;
2) проблемы технологии разработки ПС, включающие:
– разработку моделей алгоритмов и др. компонентов ИС;
– автоматизацию программирования на основе унификации типовых
компонент программ;
– обеспечение отладки и испытаний программ;
– автоматизацию изготовления документации и др.;
3) проблемы стандартизации и унификации ПС, включающие:
– стандартизацию структуры и правил сопряжения программ по
передаче управления и по обменной информации;
– унификацию правил и методов построения ПС, общих правил
иерархии и взаимодействия программ и методов организации
вычислительного процесса;
– стандартизацию методов и требований к обеспечению и измерению
качества ПС;
– стандартизацию языков программирования.
Этапы жизненного цикла программных средств
По длительности ЖЦ ПС можно разделить на 2 класса [5]:
а) с малым, б) большим временем жизни.
А) ПС с малым временем ЖЦ (до 3 лет) и объёмом 1 – 10 тысяч команд разрабатываются обычно в
НИИ и вузах одним специалистом.
Б) ПС с большим временем ЖЦ (10 – 20 лет, из которых 70 – 90 % приходится на эксплуатацию и
сопровождение), с объёмом 10 – 1000 команд разрабатываются большими коллективами специалистов и
создаются на основе промышленного регламентированного проектирования. ЖЦ таких программ
включает в себя этапы [2]:
системный анализ, проектирование, эксплуатацию, сопровождение. Наиболее специфическим,
трудноформализуемым и тесно связанным с функциональным назначением является этап системного
анализа, на котором формируются назначение и основные показатели качества ПС.
Этапы проектирования, эксплуатации и сопровождения сильно различаются целями, задачами,
методами и средствами. Процесс эксплуатации идёт параллельно и независимо от этапа сопровождения
и сводится к исполнению программ на ЭВМ и обеспечению достоверности и надёжности результатов.
Этап сопровождения состоит в эксплуатационном обслуживании, развитии функциональных
возможностей и характеристик ПС, а также в тиражировании ПС и переносе их на различные типы
ЭВМ.
Наиболее трудоёмким является этап проектирования, требующий методической, технологической,
инструментальной и организационной.
Виды поддержки и стадии этапа проектирования
Виды поддержки и стадии этапа проектирования
Методическая поддержка включает в себя комплекс стандартов, инструкций и методик, определяющих правила создания программ и
конкретизирующих языки проектирования, правила использования символов, структурного построения и другие методические
основы процесса создания программ.
Технологическая поддержка является детализацией документов методической поддержки, регламентирующей конкретную
технологию обеспечения ЖЦ программ. Эти документы определяют допустимую трудоёмкость и длительность каждого этапа и
обеспечивают нужное качество при допустимых затратах ресурсов.
Инструментальная поддержка состоит из ПС и средств вычислительной техники, обеспечивающих автоматизацию создания ПС и
определяющих её программную и аппаратную оснащённость.
Процесс разработки ПС делится на стадии [5]: техническое
проектирование и рабочее проектирование.
Первая стадия включает этапы: структурное проектирование,
подготовка технических средств, разработка программ.
Вторая стадия включает этапы: завершение разработки программ,
отладка программ в статике, комплексная динамическая отладка программ,
выпуск машинных носителей, испытания ПС.
Все виды работ и задач, выполняемых на этих этапах,
сгруппированы для оценки трудоёмкости разработки ПС в 5 групп [2]:
программирование, тестирование,
.
анализ разработки, проектирование,
Критерии оценки технологий проектирования
программных средств
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Критерии оценки технологий проектирования программных средств
Эффективность (полезность) технологий характеризуется в основном
трудоёмкостью и длительностью создания ПС, а также достигаемым
качеством. Критерии оценки качества ПС и ТЭП позволяют осуществлять
целевое управление их разработкой при применении конкретных технологий.
В процессе разработки ТЗ выявляются основные показатели,
устанавливается относительная важность каждого из них и строится
обобщённая целевая функция требуемого качества, а также устанавливаются допустимые затраты и длительность разработки ПС, которые
должны обеспечить соответствующие технологии.
После завершения отладки и испытаний эти показатели и
обобщённая функция уточняются на предмет их соответствия ТЗ.
Различают функциональные и конструктивные критерии качества ПС.
Первые отражают специфику применения и степень соответствия ПС их
целевому назначению (номенклатуру исходных данных, достоверность
результатов, разнообразие функций редактирования и т.д.). В ряде случаев
их можно свести к показателям обобщённой экономической
эффективности применения ПС в ЖЦ, характеризуемой величиной
экономии труда, энергии, материалов и т.п.
Вторые критерии оценивают сложность программ, надёжность
функционирования, ресурсы ЭВМ, корректность программ и др.
Особо следует выделить временные показатели ЖЦ программ
(длительность проектирования, продолжительность эксплуатации и время
проведения модификаций), которые в ряде случаев могут быть более
важными, чем трудоёмкость. Поэтому для каждой разработки
целесообразно проводить ранжирование к

















Для управления качеством необходима формализация технологии
проектирования, а также независимое измерение, контроль и анализ
критериев качества ПС и влияющих на них факторов. Управление
качеством ПС включает:
анализ системных требований к ПС и ранжирование критериев качества,
разработку методик и стандартов контроля выполнения правил
модульно-иерархического построения ПС,
создание методов и технологии поэтапного контроля выполнения
заданных требований к качеству ПС,
применение средств инструментальной, технологической поддержки
автоматизации программирования, отладки и испытаний, обеспечивающих
создание ПС с заданными значениями критериев качества.
Важнейшим для качества ПС является этап системного анализа и
формирования ТЗ.
При этом необходимо учитывать 2 типа ограничений:
1) ограничения знаний о методах решения задач,
2) ограничения ресурсов, доступных для реализации ПС.
Составляющие затрат в жизненном цикле
программных средств
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Составляющие затрат в жизненном цикле программных средств
Почти всегда критерии качества связаны с экономическим эффектом
от применения ПС .
Его можно выразить доходом, повышением
производительности труда или прибыли, снижением затрат,
энергопотребления и др. экономическими показателями. Во многих
случаях наиболее просто и обобщённо экономический эффект можно
описать доходом Э от использования ПС в течение ЖЦ
продолжительностью
• t: Э = Эид – C сум,
где Эид – идеальная эффективность применения программ;
C сум – суммарные потери и затраты, снижающие предельный доход.
Это снижение происходит вследствие затрат на разработку Cр,
сопровождение Cс, эксплуатацию Сэ и из-за потерь в результате
недостаточной надёжности Сн. Тогда
•
Э = Эид – Ср – Сс – Сэ – Сн.
Динамику совершенствования программ характеризует величина
экономической эффективности, отнесенная к общим затратам, при
которых она достигнута, что позволяет ограничивать качество при
больших затратах.
Основные факторы, влияющие на трудоёмкость
разработки
программных средств
•
•
•
•
•
•
•
•
•
•
•
•
•
Основные факторы, влияющие на трудоёмкость разработки
программных средств
Качество и эффективность технологии определяется прежде всего
затратами на разработку:
• Ср = С1р + С2р + С3р + С4р + С5р,
где С1р – затраты, связанные с непосредственной разработкой ПС;
С2р – затраты на изготовление опытного образца (5 – 10 %), часто не
учитываемые из-за малости;
С3р – затраты на программные средства автоматизации технологии;
С4р – затраты на аппаратные средства автоматизации технологии
(машинное время работы ЭВМ);
С5р – затраты на повышение квалификации специалистов (часто не
учитываются из-за малого значения и трудностей формализации, но
рассматриваются как один из важных факторов, влияющих на величину С1р).
ОСНОВНЫЕ ФАКТОРЫ, ВЛИЯЮЩИЕ НА ТРУДОЁМКОСТЬ
РАЗРАБОТКИ
ПРОГРАММНЫХ СРЕДСТВ











В результате можно считать, что для практических целей
проведения
анализа можно пользоваться формулой
 Cр = С1р + С3р + С4р.
В этой сумме при создании средних и крупных ПС все три
составляющие примерно равны, но основное внимание при
анализе
следует обращать на С1р, так как на неё наиболее сильно влияет
объём
разработки ПС. Приближённо можно считать, что затраты на
разработку
должны быть прямо пропорциональны объёму создаваемых ПС
(Пк) при
одной и той же производительности труда разработчиков,
измеряемой
числом созданных команд за один человеко-день труда. При этом
учитывается труд не только программистов, но и разработчиков
алгоритмов, системных аналитиков и обслуживающего персонала.
Длительность разработки программных средств
• Длительность разработки программных
средств
• Диапазон приемлемых длительностей
разработок Tр ограничен сверху 10 годами
(рациональными сроками создания самых
сложных ИС), а снизу – 1 – 3,5 года (сроками
естественного технологического процесса).
• Среднюю длительность разработки можно
аппроксимировать зависимостью
Тр = 0,8 Пк, 1/3, или Тр = 1,4 Пк ¼ лет,
• Где Пк – объём ПС в тысячах команд.

Представить отчеты на собеседование
 преподавателю
Download