Руководители конкретных проектов обычно не в состоянии достаточно обоснованно определять, сколько времени и затрат труда потребуется на каждый этап и работу программной части проекта системы. Вследствие этого, они не могут оценить, насколько успешно выполняется имеющийся план разработки ПС. Это, как правило, означает, что программная часть проекта системы с самого начала выходит из-под контроля и возможна катастрофа с реализацией и завершением проекта всей системы в требуемый срок с заданным качеством.
Большую часть этих негативных последствий можно избежать, используя существующие, достаточно точные методы оценивания и прогнозирования затрат, а также управления проектами ПС, для их успешного завершения. Эти последствия объясняются многими причинами, из которых наиболее важными, являются следующие:
- исходные тексты программных компонентов различны и по отдельности не определяют сложность и размер конечного продукта;
- разработка сложных ПС требует творчества и сотрудничества разных специалистов, индивидуальное и групповое поведение которых, как правило, трудно предсказать;
- в области экономики жизненного цикла ПС накоплен относительно небольшой опыт количественных оценок, и его трудно увеличивать, проводя и не обобщая разрозненные эксперименты.
За последние несколько лет ряд исследований и работ по сбору и обобщению экономических данных о ЖЦ ПС заложили основы для методов и моделей оценивания затрат, которые обладают удовлетворительной точностью. Современная экономическая модель оценки разработки ПС считается хорошей, если с ее помощью можно оценить затраты на программную разработку с точностью 20 % в 70% случаев, при условии использования модели, в классе проектов, на которые она ориентирована. Имеющиеся модели не всегда столь точны, как хотелось бы, но могут весьма существенно помочь в технико-экономическом анализе и обосновании решений при создании сложных ПС.
Необходимы дальнейшие, активные исследования на разных уровнях детализации, начиная от экономики и планирования создания программных средств в масштабах страны или предприятия и кончая экономикой выполнения частных операций отдельными специалистами при разработке или производстве конкретных ПС. Одна из важнейших задач состоит в том, чтобы увязать четкими экономическими категориями взаимодействие разных специалистов и предприятий в типовой производственной цепочке: заказчик - разработчик - изготовитель - пользователь. Для этого объект потребления - программное средство и все процессы взаимодействия в цепочке должны быть связаны системой экономических и технических характеристик, в той или иной степени, использующих основные экономические показатели - реальные затраты ресурсов: финансов, труда и времени специалистов на конечный продукт.
Для решения этой задачи необходимо детально исследовать требуемые ресурсы современных процессов создания и использования программ различных классов и назначения - встроенных, коммерческих, административных, учебных, уникальных и др. Только на базе серьезных статистических исследований технико-экономических показателей жизненного цикла и практического маркетинга ПС возможны обобщения и создание теоретических и практических основ экономики ПС. Перечисленные выше проблемы и задачи требуют для своего решения выполнения крупных, комплексных научно-исследовательских работ, многие из которых еще не поставлены и далеки от разрешения.
2. Цели и задачи технико-экономического анализа и обоснования комплекса программ.
Технико-экономический анализ разработки комплексов программ состоит в выборе и прогнозировании наиболее адекватных экономических и функциональных критериев для обобщенного описания эффективности, стоимости создания и использования комплексов программ в зависимости от их назначения, области применения и других факторов. Применение программных средств как продукции существенно повысило актуальность технико-экономического обоснования и прогнозирования их характеристик и процессов создания. Для получения обобщенных, конструктивных результатов ниже основной целью считается разработка сложных программных средств различных классов независимо от конкретных областей, в которых применяются системы, используемые для управления и обработки информации.
Предполагается, что основной целью создания ПС является повышение эффективности производства промышленных изделий или управления объектами и системами, в которых применяются крупные комплексы программ. Такими системами могут быть средства автоматизированного управления прокатными станами, самолетами или электростанциями, информационно-справочные системы административного управления, системы автоматизации проектирования и обучения и т.п. В ряде случаев программы невозможно или очень трудно характеризовать непосредственной экономической эффективностью. Примером могут служить ПС в системах управления воздушным движением или космическими аппаратами, а также в системах военного назначения или автоматизации научного эксперимента. В таких случаях при анализе программ невозможно определять изменение прямой эффективности систем в зависимости от затрат и целесообразно из анализа исключать характеристики полной экономической эффективности и сопутствующие ей функциональные критерии качества. Тогда исследование эффективности ПС можно проводить, минимизируя затраты на разработку в предположении, что полностью обеспечены заданные функциональные характеристики.
Обеспечение жизненного цикла любых изделий не может быть бесплатным, оно требует определенных затрат ресурсов, которые обычно тем больше, чем выше требуемое их качество. Многие проекты информационных систем терпели неудачу из-за отсутствия у разработчиков и заказчиков при подготовке контракта четкого представления о реальных трудовых, временных и иных ресурсах, необходимых для их реализации. Существенными факторами, влияющими на трудоемкость, длительность реализации и качество ПС и БД, оказывают ограничения ресурсов, доступных для обеспечения их жизненного цикла, а также возможная экономическая эффективность применения. Общее понятие - доступные ресурсы разработки включает реальные финансовые, кадровые и аппаратурные ограничения, в условиях которых предстоит создание и развитие комплекса программ. Эти факторы влияют на рентабельность процессов разработки, которые следует учитывать и оптимизировать при создании и применении ПС. Поэтому одной из основных задач при обеспечении ЖЦ ПС является технико-экономический анализ и обоснование необходимых ресурсов для создания проекта ПС в соответствии с требованиями контракта. В ряде случаев этому помогает опыт и экономические характеристики ранее выполненных проектов фирмы, но некоторые проекты могут не иметь прецедентов, и тогда приходится использовать обобщенный опыт и имеющуюся статистику в этой области.
При планировании ЖЦ программных средств, часто имеется определенный заказчик-потребитель, который способен задать основные цели, характеристики и обеспечить ресурсы для реализации проекта. Однако иногда инициатором разработки ПС является разработчик-поставщик, который самостоятельно принимает все решения о проектировании за счет собственных ресурсов и предполагает возместить затраты путем реализации программного продукта на рынке. Таким образом, при технико-экономическом анализе и обосновании проектов ПС возможны два сценария:
- создание и весь жизненный цикл комплекса программ и/или базы данных ориентируется на массовое тиражирование и распространение их на рынке, среди заранее не известных пользователей в различных сферах и внешней среде применения; при этом отсутствует конкретный внешний потребитель-заказчик, который определяет и диктует основные требования к ПС и финансирует проект;
- разработка проекта ПС и/или БД предполагается для конкретного потребителя-заказчика с определенным, относительно небольшим тиражом и с известной областью и внешней средой применения.
Эти сценарии принципиально различаются методами технико-экономического анализа и обоснования их характеристик.
Первый сценарий базируется на маркетинговых исследованиях рынка программных продуктов и на стремлении поставщика занять на рынке достаточно выгодное место. Для этого ему необходимо определить наличие на рынке всей гаммы близких по назначению и функциям ПС, оценить их эффективность, стоимость и применяемость, а также возможную конкурентоспособность предполагаемого к разработке программного продукта для потенциальных пользователей и их возможное число. Следует оценить рентабельность затрат на создание и обеспечение всего ЖЦ нового ПС, выявить факторы, функциональные, экономические и конструктивные показатели качества, которые способны привлечь достаточное число покупателей и оправдать затраты на предстоящую разработку. Для этого разработчикам необходимо произвести оценки возможной конкурентоспособности предполагаемой продукции на рынке по величине соотношения:
- возможной эффективности (ценности, достоинств) последующего применения ПС и способности удовлетворить потребности пользователей при его использовании;
- к стоимости (цене, затратам), которую готов заплатить пользователь при приобретении и эксплуатации данного комплекса программ или базы данных.
Второй сценарий предполагает наличие определенного заказчика-потребителя конкретного проекта ПС и/или БД, который определяет основные технические и экономические требования. Он выбирает конкурентоспособного поставщика-разработчика, которого оценивает на возможность реализовать проект с необходимым качеством с учетом ограничения требуемых бюджета, сроков и других ресурсов. При этом результаты разработки не обязательно подлежат широкому тиражированию, могут не поступать на рынок, маркетинговые исследования для таких проектов являются второстепенными и предварительно могут не проводиться. Однако для заказчика и разработчика при заключении контракта необходимо достаточно достоверное прогнозирование требований к программному продукту и технико-экономическое обоснование требуемых ресурсов по трудоемкости, стоимости, срокам и другим показателям. Заказчик заинтересован в получении ПС высокого качества при минимальных затратах, а разработчик желает получить максимальную оплату за созданный продукт и достаточные ресурсы на его реализацию. Противоположность интересов поставщика и потребителя при оценке стоимости и других ресурсов проекта, требует поиска компромисса, при котором разработчик ПС не продешевит, а заказчик не переплатит за конкретные выполненные работы и весь проект. Поэтому оба партнера заинтересованы в достоверном технико-экономическом прогнозировании и обосновании проекта ПС. Ниже основное внимание сосредоточено на, технико-экономическом анализе и обосновании процесса разработки и всего жизненного цикла ПС, путях минимизации затрат и на повышении эффективности автоматизации применяемых технологий. При таком анализе должны учитываться следующие цели.