Программное обеспечение

, его классификация состояние и перспективы развития.

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

Доля заработной платы в доходах фирмы – 46-56%.

1–вый этап : Разработка ПО для собственных нужд;

2–ой этап : Становление товарного производства программной продукции. Появление и распространение отчуждаемого и тиражируемого продукта;

3–ий этап : Экстенсивное производство ПО;

4–ый этап : Переход к интенсивному производству ПО. Появляется технологическая обработка ПО. Использование автоматизированных и типовых средств обработки (исходных прототипов).

Основные термины определяются: во–первых, стандартом ЕСПД (19.004) и ряд терминов определяется законом “О правовой охране программ для ЭВМ и баз данных” 1992 год.

Программное изделие (ПИ) – программа на носителе данных, являющаяся продуктом программного производства.

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

ПИ – универсальное изделие, предназначенное для широкого круга пользователей.

ПИ – изделие, предназначенное для широкого употребления, оно должно быть тщательно документировано, чтобы его могли использовать не только разработчики.

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

Программное средство (ПС) – программа, предназначенная для многократного применения на различных объектах и разработанная любым способом (чаще всего имеют ввиду – средства производства ПИ, и инструментарий для разработки ПИ).

Классификация ПО (по областям применения)

Программное обеспечение

АП – средства контроля аппаратуры, диагностика работы аппаратуры.

ОС – управление ресурсами ЭВМ (иногда объединяются с с/с программирования)

Система программирования – совокупность средств разработки программ. Обеспечивает автоматизацию составления, отладки и испытания программ (языковые средства, трансляторы, редакторы, отладчики, сервисные программы).

Прикладные программы частного применения – эксплуатируются на одном объекте, для которого и были созданы.

ППП – отчуждаемое, тиражируемое ПО. Предназначено для групп объектов с общими свойствами в отношении решаемой задачи. Тираж пакета зависит от его разновидности.

Обстановка на европейском рынке

№ п/п

ПО в Европе

» 85 год

начало 90–х

1

ППП и ОС

34

51

2

Заказное ПО и консультации

29

28

3

Обучение

5

5

4

Вычислительные услуги

32

16

На системное По приходится » 30% общего объема продаж, а на прикладное » 70%.

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

Характерные черты (3 свойства) :

Содержит набор готовых алгоритмических решений доводимых до конкретной машинной реализации;

Содержит механизм настройки на параметры конкретного объекта применения;

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

Классификация ППП (по области применения)

Программное обеспечение

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

Методо–ориентированное ППП реализуют тот или иной метод (математический) обработки информации.

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

Методо–ориентированный пакет реализует лишь часть решения, связанную с данным методом.

ППП общего назначения повышают уровень автоматизации работ при создании ПО.

Процедурные ППП – автоматизируют создание ПО по реализации типовых процедур обработки информации (ввод, хранение, вывод, корректирование, обновление, упорядочивание, поиск, фильтрация файлов и т.д.)

Инструментальные средства программирования – генераторы программ, документаторы программ, дополнительные средства для отладки и проверки программ. Например, генераторы вывода табличных форм, генератор ввода–вывода (ГВВ), генератор экранных форм, генератор документации (FOXDOC) : создание программного документа – текст и описание программы.

Сервисные – ориентированны на поддержку технологических процессов обработки программ, дополнение ОС.

Достоинства ППП.

Сокращение затрат на разработку; (до нескольких десятков процентов, в среднем 20–30%)

По сравнению с элементарными средствами, более высокая комплексная увязка решений;

Более высокое качество документирования ПИ;

Более высокая функциональная надежность;

Наличие развитой системы сопровождения (набор сервисных услуг, которые поддерживают эксплуатацию у пользователя);

ППП – средство передачи и обмена опытом между разработчиками и между конечными пользователями;

Недостатки ППП.

Сложность освоения ППП;

Большое разнообразие ППП по распространенным задачам затрудняет выбор. На сегодня отсутствуют объективные методы оценки ППП;

Низкая степень системной увязки существующих ППП (в случае увязки нескольких конкретных программ по входам–выходам);

Проблема наращивания и модификации;

Малая функциональная полнота.

Тема 2: Жизненный цикл ПИ (ЖЦПИ).

Продолжительность (общая) – 3–5 лет.

Разработка – стадия от момента исследования потребностей в ПИ до момента получения головного (эталонного) образца. Продолжительность: в среднем от 0,3 до 0,5 года.

Производство – получение экземпляра изделия, предназначенного для применения на конкретном объекте (экземпляр поставки). Сводится к тиражированию (копированию) эталонного экземпляра и адаптации под конкретного пользователя. Если единичный продукт то стадии разработки и производства объединяются.

Эксплуатация – процесс применения экземпляра пользователем для решения его конкретных задач.

Сопровождение ПИ – действия, связанные с обеспечением работоспособности изделия в процессе эксплуатации.

Особенности ЖЦПИ (по сравнению с другими изделиями).

В ЖЦПИ значительно велик удельный вес стадии разработки;

Процесс производства прост: краток и в значительной степени сводится к копированию;

Сопровождение играет все большую роль.

Разработка ПИ.

Составляющие процесса разработки ПИ:

подход – от задачи; (1)

подход стандартный ЕСПД. (2)

Какой бы подход не применялся набор действий, выполняемых создателем ПИ практически одинаков. Вариации связанны лишь с выделением отдельных действий в этапы.

(1)

Системный анализ (анализ требований) предметной области. Сначала анализ потребностей пользователя, затем разработка целей, формулировка задачи. Задачи ставятся перед отдельными производителями. Выбор методов реализации задачи. Формирование задания разработки. (Имеется ввиду спецификация ПИ).

Наз. (???) проектирование ПИ (внешнее).

Программное обеспечение(составить формулу документа)

Результатом внешнего проектирования является подготовка внешней спецификации.

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

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

Автономная отладка (отладка в статике), отладка модулей, их связей ...

Комплексирование компонент и комплексная отладка;

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

(2)

Делится на 5 стадий :

Стадия технического задания (предпроектная стадия). Почти полностью совпадает с этапом системного анализа. Этапы :

сбор сведений (обследование);

обработка сведений обследования и подготовка ТЭО;

техническое задание (завершающий этап).

Формирует заказчик, потребитель разработчику.

Эскизное проектирование (принципиальная разработка ПИ, разработка общих принципов). Эскизный проект нужен для согласования между разработчиком и заказчиком основных технологических элементов.

Техническое проектирование (технический проект). Объединение всех материалов внешнего и внутреннего проектирования, которые будут доводиться до машинной реализации.

Рабочее проектирование:

подготовка программных текстов (адаптация программных компонент);

отладка во всех разновидностях;

подготовка программной документации.

Внедрение. (Испытания в реальных условиях).

В процессе ведется подготовка объекта к эксплуатации. ПИ – приведение информационной базы, связанной с ПИ, к тому виду, который требуется эксплуатацией.

Обучение персонала.

Ключевым понятием процесса разработки ПИ является работа. Как правило, при планировании процесса разработки не доходят до уровня программных операторов, операций. … Работа – совокупность действий, выполняемых одним или несколькими исполнителями с целью получения конкретного контролируемого результата.

Тема 3: Учет и анализ затрат в ЖЦПО.

При группировке затрат на разработку программного продукта следует исходить из общего положения в определении статей расходов для традиционной продукции.

Статьи расходов:

Затраты по заработной плате (основной, дополнительной и все отчисления);

Затраты на технологию (на инструментальные средства, используемые при создании ПИ), в основном затраты на приобретение и освоение ППП, используемых как инструментальные средства. Затраты на ПИ, которые используются как эталон.

Расходы на содержание и эксплуатацию технических средств разработки, эксплуатации и сопровождения (затраты на машинное время).

Затраты на материалы (информационные носители).

Затраты на энергию, на использование каналов связи (для отдельных видов).

Общепроизводственные расходы (затраты на управленческий персонал, на содержание помещений).

Непроизводственные расходы (затраты связанные с рекламой, поиском заказчиков, поставками конкретных экземпляров).

Классификация затрат

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

По способу отнесения на конкретный продукт:

прямые (могут быть учтены при создании конкретного экземпляра продукта);

косвенные (связанные с созданием нескольких продуктов).

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

Большая динамичность и большая неопределенность результата в заданные сроки, особенно на ранних стадиях разработки.

Отсутствует сложившаяся технологическая база для создания программной продукции, что приводит к разнообразию приемов и методов разработки при создании схожей продукции различными разработчиками.

Разнообразие предметной области.

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

Особенно это существенно для затрат живого труда.

Стадии ЖЦПИ

Стоимостные затраты, %

Временные затраты

Разработка требований

10

6

Проектирование

10

5

Программирование

10

7

Отладка

20

15

Эксплуатация и сопровождение

50

67

С = Ср+Сэ+Сс ; Ср – разработка, Сэ – эксплуатация, Сс – сопровождение.

Ср = С1р+С2р+С3р+С4р+С5р+С6р, где

С1р – затраты труда на создание программного продукта;

С2р – затраты на изготовление эталонного экземпляра;

С3р – затраты на технологию (затраты на приобретение ПС, использованных при разработке ПИ, инструментарий ПС);

С4р – затраты на ВТ, использованную при разработке;

С5р – затраты на обеспечение должной квалификации персонала разработки;

С6р – различного рода затраты накладные, косвенные, необходимые для разработки.

Основную роль играют затраты на труд, на технологию и на технику (согласно статистическим данным).

Необходимо предложить методику для расчета С1р, С3р и С4р, так как величина С2р и С5р в %–ом выражении сравнительно устойчива и после определения суммы С1р+С3р+С4р может быть получена с использованием коэффициента. С2р » 0,05, С5р » 0,07. С1р зависит от объема разработки.

Программное обеспечение

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

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

Перечень первоочередных Сi :

Сложность комплекса программ (С1) проводится классификация программ по группам сложности (3–4 группы) и определяются признаки, позволяющие отнести разоаботку к конкретной группе сложности. С1 – 1¸ 4 (увеличение затрат труда в несколько раз, по сравнению с простейшей).

Надежность функционирования (защита от ошибок, возможность дополнительного контроля, обеспечение сохранности и восстановления информации, обеспечение ограничения доступа). С2 ¸ 1–5.

Ограничения реализующей ЭВМ (дополнительные требования производительности, насколько нас сдерживает та ЭВМ, которая будет связана с эксплуатацией). С3 – 1¸ 1,2–3.
Если в результате разработки задействовано было до 50% мощности реализующей ЭВМ, то влияние этого фактора не учитывается. Если же мы превосходим эту величину, то появляется необходимость учета этого фактора. Если наша величина составляет более 70%, то возрастает на несколько десятков процентов.

Необходимость использования компонент создаваемого ПО для других разработок, то есть ведется разработка типового ПО. С4 – 1¸ 1,1–1,4 (10–20%)

Использование типовых проектных решений (ТПР) и ППП при разработке ПИ. С5 – 1¸ 0,7–0,3 (0,3 – предельное решение)

Использование передовых методов организации разработки. С6 – 1¸ 0,8–0,5. (Сттруктурное программирование, использование формализованных методов при распределении ресурсов, нисходящее проектирование).

Уровень автоматизации разработки (использование достаточно современных инструментальных средств, например систем программирования, проблемно–ориентированных систем программирования, генераторы программ, использование удачного текстового редактора для подготовки текстов и документации, средства автоматизации для отладки программ). С7 – 1¸ 0,5–0,25.

Относительное быстродействие машин. С8 – 1¸ 0,7–0,5, возможность использования ресурсов ЭВМ.

Относительное число доступов к машине (число дисплеев). С9 – 1¸ 0,7–0,5.

Тематическая квалификация разработчика. С10 – 1¸ 0,8–0,4

Технологическая квалификация разработчика (опыт использования технических и технологических средств, которые применяются в данной разработке, например: язык программирования, ППП, ОС). С11 – 1¸ 0,8–0,6.

Квалификация заказчика (опыт заказчика в формулировании технического задания на аналогичные программноы продукты и опыт в эксплуатации). С12 – 1¸ 1,5 вплоть до 5.

Программное обеспечение

1 – Предпроектная стадия;

2 – Проектирование;

3 – Технологическая подготовка;

4 – Программирование;

5 – Автономная отладка;

6 – Комлексная отладка;

7 – Выпуск документации, подготовка носителей;

8 – Испытания.

В определении конкретной величины С1р используют подход “от аналога”. Ищутся близкие к нашим, но уже завершенные разработки.

Книги:

УНВ (укрупненные нормы времени) – позволяют подобрать аналог исходя из особенностей технологического процесса обработки информации на объекте.

ТНВ (типовые нормы времени) – позволяют подобрать аналог исходя из функциональных особенностей решаемой задачи.

УНВ – базируются на подборе аналога, исходя из технологии обработки информации. По каждой типовой процедуре (ввод, генерация отчетов, поиск в БД). Для прогнозируемого объема разработки предлагаются базовые трудоемкости. В дальнейшем базовые трудоемкости корректируется исходя из технологических факторов, которые связаны с условиями реального объекта.

Учитываются следующие факторы, определяющие трудоемкость:

Объем разработки (количество операторов);

Сложность разработки;

Степень новизны;

Степень использования типовых проектных решений, стндартных модулей и т.д. при разработке;

Этапы определения трудоемкости:

Определяется тип процедуры;

По каталогу аналогов определяется сколько потребовала реализация этой типовой процедуры в тестовых условиях (количество строк исходного текста):

Программное обеспечение

Определяется степень сложности разработки;

3–4 группы сложности, по каждой из групп сложности заданы характеристики, которые позволяют отнести разработку к той или иной группе :

1 группа : (высшая) интеллект и языковой интерфейс, работа в режиме реального времени (процесс обработки сопоставим по времени с требованиями), режим работы телекоммуникационный, машинная графика (разработка элементов), реализация комплекса разработок.

2 группа : оптимизационные расчеты, применение сложных математических методов, настройка на изменяющиеся внешние условия, предусмотрение переносимости создаваемого продукта.

3 группа : (не встречается ничего из вышеперечисленного).

По группе сложности из таблиц определяется трудоемкость:

V

Группа сложности

тыс. усл. ед.

1

2

3

1

   

229

2

   

244

10

3905

2425

445

20

4700

2858

812

100

15598

8700

5800

200

35000

20000

15000

500

110000

65000

54000

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

Если Вам нужна помощь с академической работой (курсовая, контрольная, диплом, реферат и т.д.), обратитесь к нашим специалистам. Более 90000 специалистов готовы Вам помочь.
Бесплатные корректировки и доработки. Бесплатная оценка стоимости работы.

Поможем написать работу на аналогичную тему

Получить выполненную работу или консультацию специалиста по вашему учебному проекту

Похожие рефераты: