Файл: Лекции по программной инженерии.pdf

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

Категория: Лекция

Дисциплина: Программная инженерия

Добавлен: 25.10.2018

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

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

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

При  планировании  ЖЦ  программных  средств,  часто  имеется 
определенный  заказчик-потребитель,  который  способен  задать  основные 
цели,  характеристики  и  обеспечить  ресурсы  для  реализации  проекта. 
Однако  иногда  инициатором  разработки  ПС  является  разработчик-
поставщик,  который  самостоятельно  принимает  все  решения  о 
проектировании за счет собственных ресурсов и предполагает возместить 
затраты  путем  реализации  программного  продукта  на  рынке.  Таким 
образом, при технико-экономическом анализе и обосновании проектов ПС 
возможны 

два 

сценария: 

 
-  создание  и  весь  жизненный  цикл  комплекса  программ  и/или  базы 
данных ориентируется на массовое тиражирование и распространение их 
на рынке, среди заранее не известных пользователей в различных сферах 
и внешней среде применения; при этом отсутствует конкретный внешний 
потребитель-заказчик,  который  определяет  и  диктует  основные 
требования 

к 

ПС 

и 

финансирует 

проект; 

 
-  разработка  проекта  ПС  и/или  БД  предполагается  для  конкретного 
потребителя-заказчика  с  определенным,  относительно  небольшим 
тиражом  и  с  известной  областью  и  внешней  средой  применения. 
 
Эти  сценарии  принципиально  различаются  методами  технико-
экономического 

анализа 

и 

обоснования 

их 

характеристик. 

 
Первый  сценарий  базируется  на  маркетинговых  исследованиях  рынка 
программных  продуктов  и  на  стремлении  поставщика  занять  на  рынке 
достаточно  выгодное  место.  Для  этого  ему  необходимо  определить 
наличие  на  рынке  всей  гаммы  близких  по  назначению  и  функциям  ПС, 
оценить  их  эффективность,  стоимость  и  применяемость,  а  также 
возможную  конкурентоспособность  предполагаемого  к  разработке 
программного  продукта  для  потенциальных  пользователей  и  их 
возможное  число.  Следует  оценить  рентабельность  затрат  на  создание  и 
обеспечение  всего  ЖЦ  нового  ПС,  выявить  факторы,  функциональные, 
экономические и конструктивные показатели качества, которые способны 
привлечь  достаточное  число  покупателей  и  оправдать  затраты  на 
предстоящую  разработку.  Для  этого  разработчикам  необходимо 
произвести  оценки  возможной  конкурентоспособности  предполагаемой 
продукции на рынке по величине соотношения

-  возможной  эффективности  (ценности,  достоинств)  последующего 
применения ПС и способности удовлетворить потребности пользователей 
при его использовании; 

-  к  стоимости  (цене,  затратам),  которую  готов  заплатить  пользователь 
при приобретении и эксплуатации данного комплекса программ или базы 


background image

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

разработки 

не 

обязательно 

подлежат 

широкому 

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

Первая  цель  состоит  в  прогнозировании  реальных  затрат  на  разработку 
определенного проекта компонентов и ПС в целом с учетом их сложности 
и  требуемого  качества.  Для  этого  должна  быть  изучена  существующая 
практика  разработки  программ,  и/или  обобщены  ТЭП  современных 
проектов  ПС.  Такие  обобщения  должны  выявить  трудоемкость 
(стоимость)  и  производительность  труда  при  разработке  реальных 
программ  определенных  классов  и  назначения,  а  также  основные 
факторы,  влияющие  на  эти  показатели  при  создании  конкретных  ПС. 
Кроме  того,  необходимо  определить  длительность  всего  процесса 
разработки  программ  и  его  отдельных  этапов.  Для  этого  должны  быть 
разработаны  и  внедрены  методики  сбора  первичных  технико-
экономических  данных  и  их  обработки,  по  завершенным  или 
находящимся  в  процессе  разработки  проектам  ПС.  В  результате  могут 
быть получены современные значения основных ТЭП создания программ 
разных классов. 


background image

Вторам  цель  -  создание  методов  и  методик  прогнозирования  затрат  и 
длительности
  разработки  комплексов  программ.  Методики  должны 
учитывать  полученные  значения  ТЭП.  основные  характеристики 
создаваемых  ПС,  а  также  технологию,  оснащенность  и  организацию  их 
разработки.  Получаемые  прогнозы  позволят  эффективно  планировать 
разработки, управлять созданием программ и осуществлять проекты ПС в 
соответствии с заданными требованиями, сроками и затратами на основе 
анализа аналогов - прототипов. 

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

-  эффективного  распределения  общих  трудовых  ресурсов,  используемых 
при разработке программ; 

-  развития  и  повышения  экономической  эффективности  технологий, 
применяемых 

для 

создания 

ПС 

различных 

классов; 

 
-  рационального  повышения  уровня  комплексной  автоматизации 
технологий разработки ПС; 

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

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

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


background image

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

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

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


background image

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

относительно  малым  использованием  ресурсов 

вычислительных 

систем 

и 

кратковременной 

эксплуатацией. 

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

В  первой  части  ЖЦ  производятся  системный  анализ,  проектирование, 
разработка,  тестирование  и  испытания  первой  базовой  версии  ПС. 
Номенклатура  работ,  их  трудоемкость,  длительность  и  другие 
характеристики на этих этапах ЖЦ существенно зависят от создаваемого 
объекта,  требуемых  показателей  качества,  внешней  и  технологической 
среды  разработки.  Изучение  подобных  зависимостей  для  различных  ПС 
позволяет  прогнозировать  состав  и  основные  технико-экономические 
показатели,  планы  и  графики  работ  для  вновь  создаваемых  ПС. 
Вторая  часть  ЖЦ,  отражающая  эксплуатацию  и  сопровождение  ПС, 
относительно  слабо  связана  с  характеристиками  объекта  и  среды 
разработки.  Программы  первого  и  второго  классов  характеризуются 
длительной  непрерывной  эксплуатацией,  продолжительность  которой 
обычно  значительно  превышает  длительность  разработки  первой  версии. 
После  того  как  программы  созданы  и  испытаны,  в  ряде  случаев  они 
становятся  недоступными  для  разработчиков  и  эксплуатируются 
неизменными до внедрения очередной версии при модернизации системы. 
Жизненный  цикл  таких  ПС  может  составлять  десяток  лет,  в  течение 
которых  необходимо  обеспечить  их  сопровождение.  В  процессе 
сопровождения 

программы 

могут 

подвергаться 

эпизодическим 

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

пользователям 

экземпляров 

системы. 

Необходимо 

обеспечить адекватность документации каждой версии эксплуатируемого 
ПС в любой момент времени. 

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