Файл: Виды программного обеспечения. Основные требования, предъявляемые к программному обеспечению (Основные виды программного обеспечения).pdf
Добавлен: 29.06.2023
Просмотров: 193
Скачиваний: 6
СОДЕРЖАНИЕ
1. Основные виды программного обеспечения
1.1. Системное программное обеспечение
1.2. Прикладное программное обеспечение
1.3. Инструментальное программное обеспечение
2. Основные требования к программному обеспечению
2.1. Требования к программному обеспечению
2.2. Функциональные и нефункциональные требования
1. Модульность ПО - проведение декомпозиции алгоритмов и программ на модули с целью выделения общих типичных функций и компонентов.
2. Интеллектуальность ПО - наличие знаний о предметной области и умение использовать их при решении задач.
3. Черный ящик - ПО должно скрывать от пользователей сложный механизм организации и взаимодействия программ.
4. Умолчания - замалчивание однажды заданных параметров, если они имеют смысл в других аналогичных задачах [3].
7. Критические вопросы процесса разработки программного обеспечения качества [3].
Людям свойственно ошибаться. Каждая ошибка, когда она найдена, является сюрпризом, исправление которого или дорого стоит, или выбивает из ритма разработки.
Если контроль качества в организации ослаблен, нужно запланировать в самом процессе разработки ряд инспекций проектной документации и инспекций кодов, разрабатывая планы качества, систему измерений, программу тестирования, то есть более интенсивную работу по подтверждению качества программного обеспечения (Software Quality Assurance).
Производительность технологии.
Очень часто при новых разработках не ясно, как разработать алгоритм, достичь целей разработки или ограничить функциональность [14]. Поскольку позже "латание дыр" может быть безуспешным или трудоемким, или приводит к срывам темпов разработки, разумно в процессе предусмотреть заранее эксперименты для получения нужных сведений. Дальнейшая разработка будет развиваться более упорядоченным и эффективным образом.
Нестабильность (изменчивость) требований.
Для того, чтобы спроектировать, построить и оттестировать необходимую программу нужно, чтобы ее функции, интерфейсы и системный базис должны были стабильны. Так как возможны изменения при разработке, эти изменения должны быть временно заморожены. В планируемые периоды могут быть рассмотрены пакеты изменений и, соответственно, подделать программа. Если таким путем не управлять изменениями, процесс разработки становится нестабильным [12].
Существуют три основных типа изменений требований.
Неизвестные требования. Пользователь думает, что он знает, чего хочет, но при первоначального использования открывает для себя, что реальные потребности другие, чем он думал. Это нормальное явление при автоматизации человеческой деятельности. С ним можно бороться или рано прототипирование или планированием множества релизов, которые постепенно разрабатываются, используются, оцениваются и наращиваются до уровня следующего релиза.
Нестабильные требования. В то время как общие требования известны, в частности продолжают "плавать". В бортовых системах, для которых hardware и software часто проектируется одновременно, изменения в hardware приводят к изменению требований к программному обеспечению. Изменение hardware, диктуемых программными изменениями, является нонсенсом, аналогичным требованиям поменять фундамент при строительстве здания. Тем не менее, с данным явлением можно бороться путем предсказания нестабильности и изоляции их [4].
Непонятные требования. Даже если требования известны и стабильны, разработчики часто не понимают их настолько подробно, чтобы сделать удовлетворительный программный продукт. Типичным примером является пользовательский интерфейс. Здесь полезно тестирования пользователем прототипов интерфейса или ранних версий пользовательской документации.
Сложность.
Программы приложений часто легче разработать, чем системы, поскольку их платформа и окружения более стабильны. Это не означает, что разработка приложений требует меньшей квалификации. Это означает, что есть меньше источников для одновременных изменений [6].
Например, при разработке новой операционной системы все ее элементы находятся в состоянии постоянных изменений: управляющая программа, компиляторы, система управления данными и т.д., в том числе и архитектура компьютера [8].
Для того, чтобы достичь хотя бы какого-то результата, нужно обеспечить хотя бы промежуточную стабильность. Обычно стабильность достигается путем использования приемов модульного программирования, в частности, выделение модулей и определения интерфейсов. Далее управление изменениями позволяет для каждого модуля иметь ощутимые и стабильные требования на определенном интервале между сменами.
Заключение
В ходе выполнения данной курсовой работы были исследованы основные виды и требования к программному обеспечению. Были пройдены следующие этапы для решения поставленной задачи:
Были подготовлены теоретические материалы и краткий обзор программного обеспечения. Была рассмотрена краткая характеристика функциональных и нефункциональных требований программного обеспечения. Было обнаружено функциональные и нефункциональные требования к программе,
Все программное обеспечение компьютера можно условно разделить на системное программное обеспечение, прикладное программное обеспечение и инструментальные системы.
Важнейшей составляющей системного программного обеспечения является операционная система, которая предназначена для организации взаимодействия пользователя с компьютером, управление ресурсами компьютера, запуска других программ на выполнение.
Кроме того, к системным программам относятся драйверы, утилиты, архиваторы и др. Для персонального компьютера разработаны тысячи прикладных программ различного назначения.
Наиболее распространенными среди них являются текстовые и графические редакторы, электронные таблицы, системы управления базами данных. Инструментальные системы предназначены для создания новых программ.
Выходными артефактами данной курсовой работы является в полной мере спроектировано решение поставленной задачи.
Библиография
- Боэм Б. У. Инженерное проектирование программного обеспечения: Пер. с англ. под ред. А. А. Красилова М.: Радио и связь, 1985.
- Вендров А.М. Проектирование программного обеспечения экономических информационных систем / А.М. Вендров. - М: «Финансы и статистика», 2000. – 380 с.
- Гагарина Л.Г. Технология разработки программного обеспечения / Л.Г. Гагарина, Е.В. Кокорева, Б.Д. Виснадул. — М.: ИД «ФОРУМ»; ИНФРА-М, 2008. — С. 400.
- Информатика. Учебное пособие / Под ред. Б.Е. Одинцова, А.Н. Романова - М.: Вузовский учебник: ИНФРА-М, 2012. – 300 с.
- Леонтьев В. Твой компьютер 2010. Все новое "железо" года / В.Леонтьев. - Олма Медиа Групп, 2010.
- Леффингуэлл Д. Принципы работы с требованиями к программному обеспечению. Унифицированный подход / Д. Леффингуэлл, Д. Уидриг. - М.: Вильямс, 2002. - 448 с.
- Мартю В.М.Информатика для: Учебник/ Под редакцией В.М. Мартю. - 2009. - 880с.
- Можаров Р.В. Программное обеспечение персональных компьютеров / Р.В. Можарова, Н.Р. Можарова, В.В. Евтеев, О.А. Кузьменко, М.О. Шевченко // Учебное пособие для вузов. – М.: Финстатинформ, 2003. – 450 с.
- Орлов С.А. Технологии разработки программного обеспечения: Учебник для вузов. 3-е изд./ С.А. Орлов. – СПб.: Питер, 2004. – 527 с.
- Сенкевич Г. Вторая жизнь старого компьютера / Г.Сенкевич. - БХВ-Петербург, 2010. – 159 с.
- Скопин И.Н. Понятия и модели жизненного цикла программного обеспечения: Учебное пособие Новосиб. гос. ун-т / И.Н. Скопин. - Новосибирск, 2003. – 225 с.
- Соломенчук В. Железо ПК 2010 / В.Соломенчук, П.Соломенчук. - БХВ-Петербург, 2010. – 264 с.
- Соммервилл И. Инженерия программного обеспечения: 6-е издание. М.: Вильямс / И. Соммервилл, 2002. – 301 с.
- Якобсон А. Унифицированный процесс разработки программного обеспечения / А. Якобсон, Г.Буч, Дж. Рамбо. - СПб: Питер, 2002. - 496 с.