Инженерия программных систем — различия между версиями

(Новая страница: «'''Инженерия программных систем''' (Software Systems Engineering) - термин, предложенный Уинстоном Ройсо…»)
 
(Классификация ПО)
Строка 10: Строка 10:
  
 
== Классификация ПО ==
 
== Классификация ПО ==
* ''Системное ПО''
+
* ''Системное ПО'' - предоставляет службы (услуги) другим программам
* ''Встроенное ПО''
+
* ''Встроенное ПО'' - является частью более крупной системы и реализует конкретные функции или задачи
* ''Прикладное ПО''
+
* ''Прикладное ПО'' - автономная программа, удовлетворяющая конкретную потребность
 +
 
 +
== Классификация программных систем ==
 +
* ''Встроенные программные системы'' (software-embedded systems), их также называют системы реального времени (real-time systems) или социотехнические системы (sociotechnical systems)
 +
* ''Программно насыщенные системы'' (software-intensive systems)
 +
* ''Вычислительно-ориентированные системы'' (computing-intensive systems)
 +
 
 +
{| class="wikitable"
 +
! style="font-weight: bold;" | Характеристика
 +
! style="font-weight: bold;" | Встроенные программные системы
 +
! style="font-weight: bold;" | Программно насыщенные системы
 +
! style="font-weight: bold;" | Вычислительно-ориентированные системы
 +
|-
 +
| Цель
 +
| Автоматизация сложных подсистем для достижения более высокого быстродействия и точности
 +
| Манипуляции большими массивами информации для [[СППР|поддержки решений]] или [[Инженерия знаний|приобретения знаний]]
 +
| Решение трудных задач, [[моделирование]] сложных систем путем расчетов и [[имитационное моделирование|имитации]]
 +
|-
 +
| Функции
 +
| Алгоритмические, логические
 +
| Транзакционные
 +
| Вычислительные
 +
|-
 +
| Входы
 +
| Данные от датчиков, регуляторов
 +
| Информация, объекты
 +
| Численные данные
 +
|-
 +
| Обработка
 +
| Вычисления в реальном масштабе времени
 +
| Манипуляция, графический интерфейс пользователя, обмен данными по сети
 +
| Вычисления не в реальном масштабе времени
 +
|-
 +
| Выходы
 +
| Действия, продукция
 +
| Информация, объекты
 +
| Информация
 +
|-
 +
| Временные характеристики
 +
| Реальное время, непрерывно
 +
| Нерегулярно
 +
| По расписанию
 +
|-
 +
| Примеры
 +
| Управление воздушным движением, системы вооружений, аэронавигация и управление летательным аппаратом
 +
| Банковские сети, системы резервирования авиабилетов, веб-приложения
 +
| Прогноз погоды, математическое и имитационное моделирование
 +
|-
 +
| Оборудование
 +
| Мини- и микропроцессоры
 +
| N-уровневые архитектуры
 +
| Суперкомпьютеры
 +
|-
 +
| Типичные пользователи
 +
| Операторы
 +
| Руководители различных уровней
 +
| Научные работники, аналитики
 +
|}
 +
 
 +
== См. также ==
 +
* [[:Категория:Модели ЖЦ|Модели жизненного цикла]]
 +
* [[:Категория:Методологии|Методологии разработки ПО]]
  
 
[[Категория: Дисциплины]]
 
[[Категория: Дисциплины]]

Версия 10:59, 3 августа 2016

Инженерия программных систем (Software Systems Engineering) - термин, предложенный Уинстоном Ройсом (Winston Royce), подчеркивающий тот факт, что Программная инженерия (Software Engineering) и Системная инженерия (Systems Engineering) имеют много общего. Так, например, принципы и методики системной инженерии применимы к программной, а многие концепции из программной инженерии дали начало появлению их в системной. Например, OOSE (Object-oriented software engineering).

Концепции

Программное обеспечение - это совокупность трех компонентов:

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

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

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

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

Классификация программных систем

  • Встроенные программные системы (software-embedded systems), их также называют системы реального времени (real-time systems) или социотехнические системы (sociotechnical systems)
  • Программно насыщенные системы (software-intensive systems)
  • Вычислительно-ориентированные системы (computing-intensive systems)
Характеристика Встроенные программные системы Программно насыщенные системы Вычислительно-ориентированные системы
Цель Автоматизация сложных подсистем для достижения более высокого быстродействия и точности Манипуляции большими массивами информации для поддержки решений или приобретения знаний Решение трудных задач, моделирование сложных систем путем расчетов и имитации
Функции Алгоритмические, логические Транзакционные Вычислительные
Входы Данные от датчиков, регуляторов Информация, объекты Численные данные
Обработка Вычисления в реальном масштабе времени Манипуляция, графический интерфейс пользователя, обмен данными по сети Вычисления не в реальном масштабе времени
Выходы Действия, продукция Информация, объекты Информация
Временные характеристики Реальное время, непрерывно Нерегулярно По расписанию
Примеры Управление воздушным движением, системы вооружений, аэронавигация и управление летательным аппаратом Банковские сети, системы резервирования авиабилетов, веб-приложения Прогноз погоды, математическое и имитационное моделирование
Оборудование Мини- и микропроцессоры N-уровневые архитектуры Суперкомпьютеры
Типичные пользователи Операторы Руководители различных уровней Научные работники, аналитики

См. также