Общее представление о разработке программного обеспечения (Software Engineering)
Основные понятия программного обеспечения
Программы и Программное обеспечение
Терминология
Классификация ПО
Классификация СПО
Классификация СПО
Классификация СПО
Классификация СПО
Классификация ППО
Определение ППП
Свойства ППП
Классификация ППО
Классификация ППО
Классификация ППО
Классификация ППО
ПО (Software) и программный продукт
Программное изделие (ПИ)
ПИ должно отвечать ряду требований:
Терминология
Терминология
Терминология
Структура затрат на создание ПО
Методы создания ПО
CASE-технологии
Характеристики качества ПО
Проблемы сегодняшнего дня
Причины возможных неудач (по данным Standish Group и Rational Software)
Другие причины – экстремальные условия выполнения проектов:
Основные проблемы, стоящие перед специалистами по ПО
К разработке
Классификация задач
Процесс создания программ
Основные характеристики функциональных задач
Выходная и входная информация
резюме
Определение заключает в себе следующее.
Свойства
Свойства
Процесс
Процесс
Стандартный процесс
Совершенствование процесса
Pull/Push стратегии.
Факторы, способствующие появлению и развитию SE
Проблемы, относящиеся к ПО
Факторы, способствующие развитию ТРПО
Зависимость успеха от масштаба проекта
Как обычно пишутся программы
Как обычно пишутся программы
Как обычно пишутся программы
Программное обеспечение
Некоторые характеристики программного обеспечения
Классы программного обеспечения
Классы программного обеспечения
724.50K
Category: softwaresoftware

Общее представление о разработке программного обеспечения

1. Общее представление о разработке программного обеспечения (Software Engineering)

ОБЩЕЕ ПРЕДСТАВЛЕНИЕ О
РАЗРАБОТКЕ ПРОГРАММНОГО
ОБЕСПЕЧЕНИЯ
(SOFTWARE ENGINEERING)

2. Основные понятия программного обеспечения

■ Программа (program, routine) — упорядоченная последовательность
команд (инструкций) компьютера для решения задачи. Программы
предназначены для машинной реализации задач
■ Программное обеспечение (software) — совокупность программ
обработки данных и необходимых для их эксплуатации документов
■ Приложение – программная реализация на компьютере решение
задачи

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

Программное обеспечение (Software) – набор
компьютерных программ, процедур и связанной с ними
документации и данных (ISO/IEC 12207).
Программное
обеспечение
Программа

4. Терминология

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

5. Классификация ПО

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

6. Классификация СПО

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

7. Классификация СПО

СПО
ОС
СП
СКД
СОП
■ Система программирования – комплекс средств для
разработки и отладки программ. В СП включают
языки программирования, трансляторы, различные
обслуживающие программы для редактирования
текстов и отладки программ

8. Классификация СПО

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

9. Классификация СПО

СПО
ОС
СП
СКД
СОП
■ Средства контроля и диагностики - служат для
проверки исправности отдельных устройств
машины и локализации выявленных
неисправностей

10. Классификация ППО

Прикладное ПО
Рабочие программы
пользователя и ИС в
целом
Пакеты
прикладных
программ
Организации
(администрирования )
вычислительного
процесса
Глобальных сетей
ЭВМ

11. Определение ППП

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

12. Свойства ППП

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

13. Классификация ППО

ППП
Универсальные
ЭТ
Методоориентированные
Текстовые
процессоры
Экспертные
системы
СУБД
Интегрированные
CASE-технологии
Математическ
их методов
Проблемноориентированные
Комплексные для
предприятия
Графики
Комплексные
непроизводстве
нной сферы
Теории
массового
обслуживания
Отдельных
предметных
областей
Статистики

14. Классификация ППО

ППП
Универсальные
ЭТ
Методоориентированные
Текстовые
процессоры
Экспертные
системы
СУБД
Интегрированные
CASE-технологии
Проблемноориентированные
•ППП общего назначения – универсальные
программные продукты, предназначенные для
автоматизации разработки и эксплуатации
функциональных задач пользователя и
информационных систем в целом

15. Классификация ППО

ППП
Универсальные
Методоориентированные
Проблемноориентированные
Математическ
их методов
Статистики
Графики
Теории
массового
обслуживания
•В алгоритмической основе этих пакетов
реализован какой-либо экономический или
математический метод
Примеры
•Statistika
•MathCad
•MathAple
•AutoCad

16. Классификация ППО

ППП
Универсальные
Методоориентированные
Проблемноориентированные
Комплексные для
предприятия
•Предназначены для решения какой-либо задачи в
конкретной функциональной области
Примеры
•1С Предприятие
•1С Бухгалтерия
•Галактика
•Project Expert
Комплексные
непроизводстве
нной сферы
Отдельных
предметных
областей

17. ПО (Software) и программный продукт

Итак,
ПО = программа + документация + [...].
Вместо ПО часто говорят «программный продукт».
Программный продукт: одно из главных свойств –
продаваемость.
Продаваемость – залог успеха бизнеса по
разработке ПО.

18. Программное изделие (ПИ)

■ ПИ – программа на носителе данных, являющаяся
продуктом промышленного производства. (п.5. ГОСТ
19.004-80)
■ ПИ разрабатывается для обработки множества набора
данных с учетом конкретных условий разных
потребителей.

19. ПИ должно отвечать ряду требований:

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

20. Терминология

Процесс создания ПО – совокупность процессов, приводящих
к созданию программного продукта.
Фундаментальные процессы, присущие любому проекту
создания ПО:
■ Разработка спецификации требований на ПО (Определяют
функциональные характеристики системы и обязательны
для выполнения)
■ Создание программного обеспечения (создание ПО
согласно спецификации)
■ Аттестация ПО (Созданное ПО должно пройти аттестацию
для подтверждения соответствию требованиям заказчика)
■ Модернизация ПО (совершенствование ПО согласно
измененным требованиям потребителя)

21. Терминология

Модель процесса создания ПО – последовательность
этапов, необходимых для разработки
создаваемого ПО.
Типы моделей технологического процесса создания
ПО:
1. Модель последовательности работ
2. Модель потоков данных и процессов
3. Ролевая модель

22. Терминология

Модели процесса разработки ПО:
1. Каскадная модель
2. Эволюционная модель
3. Формальное преобразование
4. Сборка программных продуктов из ранее
созданных компонентов (модель сборки)
5. Итерационная (спиральная) модель

23. Структура затрат на создание ПО

0
25
50
75
Распределение стоимостей отдельных этапов создания ПО
Спецификация
Проектирование
Разработка
Сборка и тестирование
Структура затрат при использовании эволюционного подхода
Спецификация
Эволюционная разработка
Тестирование системы
Затраты на разработку и совершенствование системы
Разработка системы
Совершенствование системы
100

24. Методы создания ПО

Методы представляют собой структурный подход к созданию
ПО, который способствует производству ПО эффективным,
с экономической точки зрения, способом.
Все основаны на использовании моделей системы в качестве
спецификации ее структуры
1. Функционально-ориентированные (структурный анализ,
JSD, 70-е годы) основаны на определении основных
функциональных компонент системы.
2. Объектно-ориентированные (Booch, Rumbaugh)
используют подходы, основанные на использовании
унифицированного языка моделирования UML.

25. CASE-технологии

Computer-Aided Software Engineering –
автоматизированная разработка ПО.
Широкий спектр программ, применяемых для
поддержки и сопровождения различных этапов
создания ПО:
Верхний
■ Анализ системных требований
уровень
■ Моделирование системы
■ Отладка и тестирование
Нижний
■ Создание документации
уровень
■ Генерация исходного кода программ
■ Др…

26. Характеристики качества ПО

Удобство сопровождения
усовершенствование в ответ на измененные требования заказчика
Надежность
безотказность
защищенность
безопасность

Эффективность
скорость выполнения
процессорное время
объем требуемой памяти

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

27. Проблемы сегодняшнего дня

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

28. Причины возможных неудач (по данным Standish Group и Rational Software)

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

29. Другие причины – экстремальные условия выполнения проектов:

■ План проекта сжат более чем наполовину по сравнению с
нормальным расчётным планом;
■ Количество разработчиков уменьшено более чем
наполовину по сравнению с действительно необходимым
для проекта данного масштаба;
■ Бюджет и связанные с ним ресурсы урезаны наполовину;
■ Требования к функциям, производительности и другим
характеристикам вдвое превышают значения, которые
они могли бы иметь в нормальных условиях.

30. Основные проблемы, стоящие перед специалистами по ПО

■ Исследования ранее созданного ПО
■ Разнородность программных систем
■ Требование уменьшения времени на создание ПО

31. К разработке

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

32. Классификация задач

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

33. Процесс создания программ

■ Предметная (прикладная) область (application domain) — совокупность
связанных между собой функций, задач управления, с помощью
которых достигается выполнение поставленных целей.
■ Процесс создания программ можно представить как
последовательность действий:
– Постановка задачи;
– Построение алгоритма решения;
– Программирование.
■ Постановка задачи – точная формулировка решения задачи на
компьютере с описанием входных и выходных операций.

34. Основные характеристики функциональных задач

■ Цель или назначение задачи, ее место и связи с другими задачами;
■ Условия решения задачи с использованием средств вычислительной
техники;
■ Содержание функций обработки входной информации при решении
задачи;
■ Требования к периодичности решения задачи;
■ Ограничения по срокам и точности выходной информации;
■ Состав и форма представления выходной информации;
■ Источники входной информации для решения задачи;
■ Пользователи задачи (кто осуществляет ее решение и пользуется
результатами решения).

35. Выходная и входная информация

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

36.

37.

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

38. резюме

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

39. Определение заключает в себе следующее.

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

40. Свойства


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

41. Свойства

■ Согласованность – ПО основывается не на объективных посылках
(подобно тому, как различные системы в классической науке
основываются на постулатах и аксиомах), а должно быть согласовано
с большим количеством интерфейсов, с которыми впоследствии оно
должно взаимодействовать. Эти интерфейсы плохо поддаются
стандартизации, поскольку основываются на многочисленных и плохо
формализуемых человеческих соглашениях.
■ Изменяемость – ПО легко изменить и, как следствие, требования к
нему постоянно меняются в процессе разработки. Это создает много
дополнительных трудностей при его разработке и эволюции.
■ Нематериальность – ПО невозможно увидеть, оно виртуально.

42. Процесс

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

43. Процесс

■ Каждый текущий процесс разработки, осуществляемый некоторой
командой в рамках определенного проекта, имеет большое
количество особенностей и индивидуальностей.
■ Целесообразно перед началом проекта спланировать процесс работы,
определив роли и обязанности в команде, рабочие
продукты (промежуточные и финальные), порядок участия в их
разработке членов команды и т.д.
■ Предварительное описание - это конкретный процесс, отличающийся
от плана работ, проектных спецификаций и пр.
– Например, в системе
Microsoft Visual Team System оказывается шаблон процесса,
создаваемый или адаптируемый (в случае использования
стандартного) перед началом разработки. В VSTS существуют
заготовки для конкретных процессов на базе CMMI, Scrum и др.

44. Стандартный процесс

■ Стандартный процесс содержит следующее:
■ информацию, правила использования, документацию и
инсталляционные пакеты средств разработки, используемых в
проектах компании (систем версионного контроля, средств
контроля ошибок, средств программирования –
различных IDE, СУБД и т.д.);
■ описание практик разработки – проектного менеджмента,
правил работы с заказчиком и т.д.;
■ шаблоны проектных документов – технических заданий,
проектных спецификаций, планов тестирования и т.д. и пр.

45.

■ Основная идея стандартного процесса – курсирование внутри
компании передового опыта, а также унификация средств
разработки.

46. Совершенствование процесса

■ Совершенствование процесса (software process improvement) –
это деятельность по изменению существующего процесса (как
текущего, в рамках одного проекта, так и стандартного, для всей
компании) с целью улучшения качества создаваемых продуктов и/или
снижения цены и времени их разработки.
■ Причины актуальности этой деятельности для компанийпроизводителей ПО заключается в следующем.
– Происходит быстрая смена технологий разработки ПО, требуются
изучение и внедрение новых средcтв разработки.
– Наблюдается быстрый рост компаний и их выход на новые
рынки, что требует новой организации работ.
– Имеет место высокая конкуренция, которая требует поиска
более эффективных, более экономичных способов разработки.

47. Pull/Push стратегии.

■ В контексте внедрения инноваций в производственные процессы
бизнес-компаний (не обязательно компаний посозданию ПО)
существуют две следующие парадигмы.
■ Organization pull – инновации нацелены на решение конкретных
проблем компании.
■ Technology push – широкомасштабное внедрение инноваций из
стратегических соображений.
– Вместо конкретных проблем, которые будут решены после
внедрения инновации, в этом случае рассматриваются
показатели компании (эффективность, производительность,
годовой оборот средств, увеличение стоимости акций публичной
компании), которые будут увеличены, улучшены после
внедрения инновации.
– При этом предполагается, что будут автоматически решены
многочисленные частные проблемы организации, в том числе и
те, о которых в данный момент ничего не известно.

48.

■ Пример использования стратегии organization pull – внедрение
новых средств тестирования в ситуации, когда высоки
требования по качеству в проекте, либо когда качество
программной системы не удовлетворяет заказчика.
■ Пример использования стратегии technology push – переход
компании со средств структурной разработки на объектноориентрованные. Еще один пример использования той же стратегии
– внедрение стандартов качества ISO 9000 или CMMI. В обоих этих
случаях компания не решает какую-то одну проблему или ряд
проблем – она хочет радикально изменить ситуацию, выйти на
новые рубежи и т.д.

49.

■ Проблемы применения стратегии technology push в том, что требуется
глобальная перестройка процесса. Но компанию нельзя "закрыть на
реконструкцию" – за это время положение на рынке может оказаться
занято конкурентами, акции компании могут упасть и т.д.
– Таким образом, внедрение инноваций, как правило, происходит
параллельно с обычной деятельностью компании, поэтапно, что в
случае с technology pushсопряжено с большими трудностями и
рисками.
■ Использование стратегии organization pull менее рискованно,
вносимые ею изменения в процесс менее глобальны, более
локальны.
– Но и выгод такие инновации приносят меньше, по сравнению с
удачными внедрениями в соответствии со
стратегией technology push.

50.

■ Необходимо также отметить, что существуют проблемы, которые
невозможно устранить точечными переделками процесса, то есть
необходимо применять стратегию technology push.
– Пример: зашедший в тупик процесс сопровождения и развития
семейства программных продуктов – компания терпит большие
убытки, сопровождая уже поставленные продукты,
инструментальные средства проекта безнадежно устарели и
находятся в плачевном состоянии, менеджмент расстроен, все
попытки руководства изменить процесс наталкиваются на
непонимание коллектива, ссоры и конфликты.
■ Еще одно различие обеих стратегий: в случае с organization pull, как
правило, возврат инвестиций от внедрения происходит быстрее, чем в
случае с technology push.

51. Факторы, способствующие появлению и развитию SE

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

52. Проблемы, относящиеся к ПО

■ "кризис программирования": программные проекты
(Projects) часто отменяются до своего завершения, а
завершенные проекты часто выходят за рамки бюджета и
сроков, причем их результаты имеют невысокое качество;
■ «Программные проекты часто отменяются до своего
завершения, а завершенные проекты часто выходят за
рамки бюджета и сроков, причем их результаты имеют
невысокое качество.» [Кони Бюрер (Rational Software)] .

53. Факторы, способствующие развитию ТРПО

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

54.

■ CHAOS research encompasses 18 years of data on why projects succeed or
fail, representing more than 90,000 completed IT projects. However, for
our new database we eliminated cases from 1994 though 2002, since they
did not match the current requirements for analysis. The new database has
just under 50,000 projects.
■ CHAOS results provide a global view of project statistics but do tend to
have a heavier concentration on the United States and Europe. For each
reporting period, about 60% of the projects are U.S. based, 25% are
European, and the remaining 15% represent the rest of the world.

55. Зависимость успеха от масштаба проекта

■ Статистика The Standish Group демонстрирует зависимость
успеха от масштаба проекта:
■ По небольшому проекту прогноз сроков окажется более
достоверным [The Standish Group. CHAOS MANIFESTO 2013]

56. Как обычно пишутся программы

57. Как обычно пишутся программы

58. Как обычно пишутся программы

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

■ Программное обеспечение это:
■ 1) команды (компьютерные программы), которые
при выполнении обеспечивают желаемые
функции и характеристики;
■ 2) структуры данных, которые дают возможность
программам адекватно манипулировать
информацией; и
■ 3) документы, которые описывают работу и
использование программ.

60. Некоторые характеристики программного обеспечения

■ Программное обеспечение разрабатывается или конструируется,
оно не производится в классическом понимании
Кони
Бюрер
(Rational
Software):
«…Граница
между
проектированием и строительством всегда четко обозначена
артефактом – чертежом. Проектирование включает в себя все
операции, необходимые для создания чертежа, а строительство
охватывает все операции, необходимые для создания продуктов по
этому чертежу. В идеальном случае чертеж должен определять
создаваемый продукт во всех подробностях – все подробности
программной системы описываются только кодом на языке
высокого уровня, который, таким образом, является чертежом
программы.
■ Программный продукт нематериален;
■ Программное обеспечение не изнашивается;

Послепpоизводственные пpоблемы pешаются «более пpосто»;
■ Большая часть программного обеспечения разрабатывается для
конкретных заказчиков, а не собирается из готовых компонентов.

61. Классы программного обеспечения

■ Заказной (custom) ПП - для конкретного заказчика, малый (часто
единичный) тираж.
■ Рыночный (commercial) ПП - для широкого круга пользователей,
неограниченный тираж.

62. Классы программного обеспечения

Приложения программного обеспечения (в зависимости от их
информационного содержания и детерминированности)

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

Инженерное и научное программное обеспечение

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

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

Программное обеспечение искусственного интеллекта

Системы делопроизводства, Бухгалтерские, Финансовые

Системы и прочее Коммерческое программное обеспечение

Текстовые (и другие) редакторы и прочее программное обеспечение
персональных ЭВМ

Программы -клиенты для электронной почты, блогов и прочие программы для
удаленного взаимодействия\общения
English     Русский Rules