Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Основные понятия




ОСНОВНЫЕ ПОНЯТИЯ ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

И ИХ ОСНОВНЫЕ ХАРАКТЕРИСТИКИ

ПРОГРАММНЫЕ ПРОДУКТЫ

КЛАССИФИКАЦИЯ ПРОГРАММНЫХ ПРОДУКТОВ

И ИХ ОСНОВНЫЕ ХАРАКТЕРИСТИКИ

ПРОГРАММНЫЕ ПРОДУКТЫ

ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ

И ТЕНДЕНЦИИ РАЗВИТИЯ

СОСТОЯНИЕ

Советник» — путеводитель по хорошим книгам.


 


 


Программное обеспечение является очень широким понятием, которое охватывает:

• системное программное обеспечение работоспособности компьютеров;

• прикладное программное обеспечение для решения задач любой предметной области
в виде пакетов прикладных программ;

• инструментарий технологии программирования (программное обеспечение сферы
производства программ).

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

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

Цель главы — сформировать представление о назначении и видах программно-
го обеспечения информационных систем и технологий.

ПОСЛЕ ИЗУЧЕНИЯ ГЛАВЫ ВЫ ДОЛЖНЫ ЗНАТЬ:

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

> Характерные особенности программного продукта

> Этапы жизненного цикла программных продуктов

> Методы защиты программных продуктов

> Классификацию программных продуктов

> Характерные особенности системного программного обеспечения

> Характерные особенности инструментария технологии программирования

> Характерные особенности пакетов прикладных программ


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

Характеристика программного продукта

Защита программных продуктов

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

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

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

Задача (problem, task) — проблема, подлежащая решению.
Приложение {application) — программная реализация на компьютере решения задачи.

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

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

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

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

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


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

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

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

Постановка задачи Алгоритмизация решения задачи Программирование

Рис. 8.1. Схема процесса создания программ

Постановка задачи (problem definition) — это точная формулировка решения задачи на компьютере с описанием входной и выходной информации.

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

К основным характеристикам функциональных задач, уточняемым в процессе ее формализованной постановки, относятся:

цель или назначение задачи, ее место и связи с другими задачами;

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

содержание функций обработки входной информации при решении задачи;

требования к периодичности решения задачи;

ограничения по срокам и точности выходной информации;

состав и форма представления выходной информации;

источники входной информации для решения задачи;

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

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

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

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

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


Рис. 8.2. Схема взаимосвязи входной и выходной информации для решения задачи

Алгоритм решения задачи имеет ряд обязательных свойств:

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

• определенность алгоритма — однозначность выполнения каждого отдельного шага
преобразования информации;

• выполнимость — конечность действий алгоритма решения задач, позволяющая получить желаемый результат при допустимых исходных данных за конечное число шагов;

• массовость — пригодность алгоритма для решения определенного класса задач.

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

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

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

Программирование (programming) — теоретическая и практическая деятельность, связанная с созданием программ.

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

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


программиста. Вместе с тем программирование предполагает и рутинные работы, которые
могут и должны иметь строгий регламент выполнения и соответствовать стандартам.

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

Программирование — это развитая отрасль хозяйственной деятельности, связанная со
значительными затратами материальных, трудовых и финансовых ресурсов. По данным за-
рубежных источников, в середине 90-х годов в мире было занято программированием до
2% трудоспособного населения. Совокупный оборот в сфере создания программных
средств достигает нескольких сот миллиардов долларов в год.

В связи с ростом потребности в разнообразных программах обработки данных весьма
актуален вопрос применения эффективных технологий программирования и их перевода на
промышленную основу. Это означает:

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

• внедрение прогрессивных инструментальных средств разработки программ;

• использование специальных методов и приемов организации работ по разработке программ.

Категории специалистов, занятых разработкой
и эксплуатацией программ

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

Системный программист (system /software programmer, toolsmith) занимается разработкой, эксплуатацией и сопровождением системного программного обеспечения,
поддерживающего работоспособность компьютера и создающего среду для выполнения
программ, обеспечивающих реализацию функциональных задач.

Прикладной программист (applicationprogrammer) осуществляет разработку и отладку программ для решения функциональных задач.

В условиях создания больших по масштабам и функциям обработки программ появляется новая квалификация —- программист-аналитик (programmer-analyst), который анализирует и проектирует комплекс взаимосвязанных программ для реализации
функций предметной области,

В процессе создания программ на начальной стадии работ участвуют и специалисты— постановщики задач.

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

(Основным потребителем программ служит конечный пользователь (end
user),
который, как правило, относится к категории пользователей-непрограммистов. Конечный пользователь не является специалистом в области программирования, т. е. не владеет
методами и технологией проектирования и создания программ, но имеет элементарные знания и навыки работы с вычислительной техникой. Такая квалификационная характеристика
пользователя программного обеспечения в значительной степени влияет на спецификацию
требований к создаваемым программам, интерфейсам, формам машинных документов, технологии решения задач на ЭВМ,


Возможна эксплуатация программ квалифицированными программистами или специально обученными техническими работниками— операторами ЭВМ.

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

Рис, 8.3. Схема взаимодействия специалистов,
связанных с созданием и эксплуатацией программ




Поделиться с друзьями:


Дата добавления: 2015-06-26; Просмотров: 329; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.026 сек.