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

Вариант 1

1. Упорядоченная
последовательность команд (инструкций) компьютера для решения конкретной
задачи.

A.  Свойство программы

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

C.   Постановка задачи

D.  Программа

E.         Язык
программирования

2. С позиции специфики
разработки и вида программного обеспечения, на какие два класса делятся задачи?

A.  Позиционные и
функциональные

B.   Технологические и
функциональные

C.   Позиционные и
непозиционные

D.  Технологические и
параметрические

E.  
Нет верного ответа

3.
Какими последовательными действиями можно представить процесс создания
программ?

A.  Программирование,
постановка задачи, построение алгоритма

B.   Построение
алгоритма, решение задачи

C.   Построение
алгоритма, программирование

D.  Программирование,
построение алгоритма, постановка задачи

E.  
Постановка задачи, построение алгоритма решения, программирование

4. Постановка задачи — это …

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

B.   точная формулировка
решения задачи на компьютере с описанием входных и выходных данных

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

D.  система точно
сформулированных правил

E.   
Все ответы верны

5. Алгоритм — это …

A.  разбиение процесса
обработки информации на более простые этапы

B.   задача, подлежащая
реализации с использованием средств информационных технологий

C.   точная формулировка
решения задачи на компьютере с описанием входных и выходных данных

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

E. 
нет верного ответа

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

A. Дискретность

B. Определенность

C. Массовость

D. Алгоритм

E.
Все ответы верны

7.
Выполнимость — это …

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

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

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

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

Е.
нет верного ответа

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

A.
Системный программист

B.
Программист-аналитик

C.
Прикладной программист

D.
Администратор

E. 
Постановщик задач

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

A.
Прикладной программист


Программист-аналитик

C.
Системный программист

D.
Администратор БД

E.
нет верного ответа

10.
Анализирует и проектирует комплекс взаимосвязанных программ для реализации
функций предметной области

A.
Прикладной программист

B.
Программист-аналитик

C.
Системный программист

D.
Постановщик задач

E. 
Администратор

11.
Участвует в процессе создания программ на начальной стадии работ

A.
Администратор БД

B.
Прикладной программист

C.
Постановщик задач

D.
Системный программист

E.
все ответы верны

12.
Является основным потребителем программ

A.
Прикладной программист

B.
Программист-аналитик

C.
Системный программист

D.
Конечный пользователь

E.
Нет верного ответа

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

A.
Дискретность

B.
Экономичность

C.
Готовность

D.
Работоспособность

E.
Надежность

14.
Возможность доступа к услугам АИС с использованием соответствующих технологий
всегда, когда в ней возникает необходимость

A.
Определенность

B.
Работоспособность

C.
Надежность

D.
Экономичность

E. 
Готовность

15.
Количество и степень занятости ресурсов, процессов, ОП, внешней и внутренней
памяти, каналов ввода/вывода, терминалов и каналов сети

A.
Экономичность

B.
Готовность

C.
Надежность

D.
Определенность

E.
Работоспособность

16. Устойчивость — …

A.  характеризует способность к
безотказному функционированию при наличии сбоев

B. возможность доступа к
услугам АИС с использованием соответствующих технологий всегда, когда в ней
возникает необходимость

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

D. количество и степень
занятости ресурсов, процессов, ОП, внешней и внутренней памяти, каналов
ввода/вывода, терминалов и каналов сети

E.
Нет верного ответа

17.
Процесс обеспечивает возобновления нормально функционирования АИС

A. Устойчивость

B. Перезапуск

C. Готовность

D. Надежность

E.
Все ответы верны

С
каким этапом жизненного цикла программного продукта связано с алгоритмизацией

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

A. Документирование

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

C. Сопровождение

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

E.
нет верного ответа

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

A. Документирование

B. Проектирование структуры ПП

C. Программирование,
тестирование и отладка

D. Сопровождение ПП

E.
Все ответы верны

20.На
каком этапе жизненного цикла программного продукта составляются необходимые
сведения по установке и обеспечению надежной работы ПП и т.д.?

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

B. Эксплуатация

C.
Документирование

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

E. 
нет верного объекта

21. Жизненный цикл ПО — …

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

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

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

D. прерывающийся процесс,
который начинается с момента написания структуры программы и заканчивается в
момент его полного изъятия из эксплуатации

E.
Нет верного ответа

22. На
какие три группы процессов делится структура жизненного цикла ПО по стандарту
ISO/IEC 12207?

A. Составные, действующие и
вспомогательные процессы

B. Основные, дополнительные и
остальные процессы

C. Вспомогательные, основные и
дополнительные процессы

D.
Основные, вспомогательные и организационные процессы

E.
Нет верного ответа

23.
Основные процессы жизненного цикла ПО делятся на …

A. Процесс документирования,
процесс обеспечения качества, процесс верификации

B. Процесс поставки, процесс
обеспечения качества, процесс верификации

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

D.
Процесс приобретения, процесс поставки, процесс разработки*

E. Процесс управления, процесс
разработки, процесс обучения

24.
Вспомогательные процессы жизненного цикла ПО делятся на …

A.  Процесс документирования,
процесс обеспечения качества, процесс верификации*

B. Процесс поставки, процесс
обеспечения качества, процесс верификации

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

D. Процесс приобретения, процесс
поставки, процесс разработки

E. Процесс управления, процесс
разработки, процесс обучения

25.
Организационные процессы жизненного цикла ПО делятся на …

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

. Процесс документирования,
процесс обеспечения качества, процесс верификации

C. Процесс приобретения,
процесс поставки, процесс разработки

D. Процесс управления, процесс
создания инфраструктуры, процесс документирования

E. нет верного ответа

26.
Что подразумевает собой процесс документирования?

A. Процесс состоит из действий
и задач заказчика, приобретающего ПП

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

C. Процесс обеспечивает
соответствующие гарантии того, что ПО в процессе его ЖЦ соответствует заданным
требованиям и утвержденным планам

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

Е. Процесс предусматривает
формализованное описание информации, созданной в течение ЖЦ ПО

27.       На
какие две группы делится документация, создаваемая в процессе разработки
программных средств?

A.        Документы,
входящие в состав ПС и документы, помогающие вносить изменения в ПС

B.        Пользовательская
документация и документация по сопровождению ПС

C.       
Документы управления разработкой ПС и документы, входящие в состав ПС

D.        Общая
документация и вспомогательная документация

E.         Документы
управления разработкой ПС и документы по сопровождению ПС

28.
Код группы 1 стандарта ЕСПД означает … 

A.        Общие
положения

B.        Правила
выполнения эксплуатационной документации

C.        Основополагающие
стандарты

D.        Резервные
группы

E.         нет верного ответа

29.
Код группы 0 стандарта ЕСПД означает … 

A.        Прочие
стандарты

B.        Резервные
группы

C.        Основополагающие
стандарты

D.        Правила
выполнения документации разработки

E.         Общие положения

30.
ЕСПД — это …

A.        комплекс 
программ, устанавливающих правила разработки документации

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

C.        система
точно сформулированных правил

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

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

31.
Расшифруйте ЕСПД 

A.        Единственная
связь программной документации

В.         Единая свобода
программной документации

C.        Единая система
программной документации

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

Е.         Нет верного ответа

32.
Для чего предназначено Руководство по управлению ПС?

A.        Руководство
по управлению дает краткую характеристику функциональных возможностей ПС

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

C.        Руководство
по управлению дельно предписывает, как устанавливать системы в конкретной среде

D.        Руководство
по управлению содержит необходимую информацию по применению ПС

E.         нет верного ответа

33. На
какие группы подразделяются документы, входящие в состав ПС

A.        Документация,
помогающая вносить изменения в ПС и документация по сопровождению ПС

B.        Документы
управления разработкой ПС и документация по сопровождению ПС

C.        Пользовательская
документация и документы управления разработкой ПС

D.        Документы
управления разработкой ПС и пользовательская документация

E.         Пользовательская
документация ПС и документация по сопровождению ПС

34. 
Документы, которые фиксируют различные детали взаимодействия между менеджерами
и разработчиками

A.        Стандарты

B.        Планы,
оценки, расписания

C.        Отчеты

D.        Рабочие
документы

E.         Заметки и переписка

35.
Документы, которые содержат фиксацию идей и проблем, возникающих в процессе
разработки, описание используемых идей и подходов

A.        Отчеты

B.        Стандарты

C.        Планы,
оценки, расписания

D.        Рабочие
документы

Е.         Заметки, переписка

36. 
Документы, создаваемые менеджерами для прогнозирования и управления процессами
разработки и сопровождения

A.        Стандарты

B.        Планы,
оценки, расписания

C.        Рабочие
документы

D.        Заметки

E.         Отчеты

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

A.        Отчеты

В.         Рабочие документы

C.        Планы, оценки,
расписания

D.        Стандарты

Е.         Заметки и переписка

38.
Для чего необходимы документы, входящие в состав ПС?

A.        Данный
вид документов содержит фиксацию идей и проблем, возникающих в процессе
разработки, описание используемых идей и подходов

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

C.        Обеспечивают
связь внутри коллектива разработчиков и между коллективом разработчиков и
менеджерами

D.        Обеспечивают
связь между самой программой и входными данными

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

39. Для
чего необходимы документы управления разработкой ПС?

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

40. B.   Обеспечивают
связь внутри коллектива разработчиков и между коллективом разработчиков и
менеджерами

C.        Объясняет
пользователям, как они должны действовать, чтобы применять данное ПС

D.        Обеспечивают
связь между самой программой и входными данными

E.         нет верного ответа

Вариант 2

1. Код
группы 2 стандарта ЕСПД означает …

A. Прочие
стандарты

B. Основополагающие
стандарты

C. Правила
выполнения документации разработки

D. Правила
выполнения документации изготовления

Е. Резервные группы

2. Пояснительная
записка. Требования к содержанию и оформлению 

A.        ГОСТ
19.508-79

B.        ГОСТ
19.501-78

C.        ГОСТ
19.402-78

D.        ГОСТ
19.202-78

Е.        ГОСТ 19.404-79

3.Техническое
задание. Требования к содержанию и оформлению

A.        ГОСТ
19.203-78

B.        ГОСТ
19.201-78

C.        ГОСТ
19.106-78

D.        ГОСТ
19.404-79

E.         нет верного ответа

4. Требования
к программным документам, выполненные печатным способом

A.        ГОСТ
19.105-78

B.        ГОСТ
19.106-78

C.        ГОСТ
19.201-78

D.        ГОСТ
19.101-77

E.         ГОСТ 19.301-79

5. Общие
положения

A.        ГОСТ
19.101-77

B.        ГОСТ
19.002-77

C.        ГОСТ
19.001-77

D.        ГОСТ
19.001-78

E.         Нет верного ответа

6. Код
группы 9 стандарта ЕСПД означает …  

A.        Резервные
группы

B.        Основополагающие
стандарты

C.        Правила
выполнения эксплуатационной документации

D.        Правила
выполнения документации сопровождения

Е.         Нет верного ответа

7. Код
группы 8 стандарта ЕСПД означает … 

A.        Прочие
стандарты

B.        Правила
выполнения документации разработки

C.        Резервные
группы

D.        Правила
обращения программной документации

Е.         Нет верного ответа

8. Код
группы 7 стандарта ЕСПД означает … 

A.        Основополагающие
стандарты

B.        Правила
обращения программной документации

C.        Прочие
стандарты

D.        Правила
выполнения эксплуатационной документации

E.         Резервные группы

9. Код
группы 6 стандарта ЕСПД означает …

A.        Правила
обращения программной документации

В.         Общие положения

C.        Правила выполнения
документации изготовления

D.        Резервные группы

Е.         Правила выполнения
документации сопровождения

10.
Анализирует и проектирует комплекс взаимосвязанных программ для реализации
функций предметной области

A.
Прикладной программист

B.
Программист-аналитик

C.
Системный программист

D.
Постановщик задач

E.  Администратор

11.
Участвует в процессе создания программ на начальной стадии работ

A.
Администратор БД

B.
Прикладной программист

C.
Постановщик задач

D.
Системный программист

E. все ответы верны

12.
Является основным потребителем программ

A.
Прикладной программист

B.
Программист-аналитик

C.
Системный программист

D.
Конечный пользователь

E. Нет верного ответа

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

A.
Дискретность

B.
Экономичность

C.
Готовность

D.
Работоспособность

E. Надежность

14.
Возможность доступа к услугам АИС с использованием соответствующих технологий
всегда, когда в ней возникает необходимость

A.
Определенность

B.
Работоспособность

C.
Надежность

D.
Экономичность

E.  Готовность

15.
Количество и степень занятости ресурсов, процессов, ОП, внешней и внутренней
памяти, каналов ввода/вывода, терминалов и каналов сети

A.
Экономичность

B.
Готовность

C.
Надежность

D.
Определенность

E. Работоспособность

16. Устойчивость — …

A.  характеризует способность к
безотказному функционированию при наличии сбоев

B. возможность доступа к
услугам АИС с использованием соответствующих технологий всегда, когда в ней
возникает необходимость

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

D. количество и степень
занятости ресурсов, процессов, ОП, внешней и внутренней памяти, каналов
ввода/вывода, терминалов и каналов сети

E. Нет верного ответа

17.
Процесс обеспечивает возобновления нормально функционирования АИС

A. Устойчивость

B. Перезапуск

C. Готовность

D. Надежность

E. Все ответы верны

18. С
каким этапом жизненного цикла программного продукта связано с алгоритмизацией
процесса обработки данных, детализацией функций обработки, разработкой
структуры ПП, выбором методов и средств создания программ?

A. Документирование

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

C. Сопровождение

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

E. нет верного ответа

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

A. Документирование

B. Проектирование структуры ПП

C. Программирование,
тестирование и отладка

D. Сопровождение ПП

E. Все ответы верны

20. На
каком этапе жизненного цикла программного продукта составляются необходимые
сведения по установке и обеспечению надежной работы ПП и т.д.?

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

B. Эксплуатация

C.
Документирование

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

E.  нет верного объекта

21. Жизненный цикл ПО — …

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

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

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

D. прерывающийся процесс,
который начинается с момента написания структуры программы и заканчивается в
момент его полного изъятия из эксплуатации

E. Нет верного ответа

22. На
какие три группы процессов делится структура жизненного цикла ПО по стандарту
ISO/IEC 12207?

A. Составные, действующие и
вспомогательные процессы

B. Основные, дополнительные и
остальные процессы

C. Вспомогательные, основные и
дополнительные процессы

D.
Основные, вспомогательные и организационные процессы

E. Нет верного ответа

23.
Основные процессы жизненного цикла ПО делятся на …

A. Процесс документирования,
процесс обеспечения качества, процесс верификации

B. Процесс поставки, процесс
обеспечения качества, процесс верификации

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

D.
Процесс приобретения, процесс поставки, процесс разработки*

E. Процесс управления, процесс
разработки, процесс обучения

24.
Вспомогательные процессы жизненного цикла ПО делятся на …

A.  Процесс документирования,
процесс обеспечения качества, процесс верификации*

B. Процесс поставки, процесс
обеспечения качества, процесс верификации

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

D. Процесс приобретения,
процесс поставки, процесс разработки

E. Процесс управления, процесс
разработки, процесс обучения

25.
Организационные процессы жизненного цикла ПО делятся на …

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

В. Процесс документирования,
процесс обеспечения качества, процесс верификации

C. Процесс приобретения,
процесс поставки, процесс разработки

D. Процесс управления, процесс
создания инфраструктуры, процесс документирования

E. нет верного ответа

26.
Что подразумевает собой процесс документирования?

A. Процесс состоит из действий
и задач заказчика, приобретающего ПП

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

C. Процесс обеспечивает
соответствующие гарантии того, что ПО в процессе его ЖЦ соответствует заданным
требованиям и утвержденным планам

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

Е. Процесс предусматривает
формализованное описание информации, созданной в течение ЖЦ ПО

27. На
какие две группы делится документация, создаваемая в процессе разработки
программных средств?

A.        Документы,
входящие в состав ПС и документы, помогающие вносить изменения в ПС

B.        Пользовательская
документация и документация по сопровождению ПС

C.       
Документы управления разработкой ПС и документы, входящие в состав ПС

D.        Общая
документация и вспомогательная документация

E.         Документы
управления разработкой ПС и документы по сопровождению ПС

28.
Код группы 1 стандарта ЕСПД означает … 

A.
Общие положения

B.
Правила выполнения эксплуатационной документации

C.
Основополагающие стандарты

D.
Резервные группы

E. нет верного ответа

29.
Код группы 0 стандарта ЕСПД означает … 

A.
Прочие стандарты

B.
Резервные группы

C. Основополагающие
стандарты

D.
Правила выполнения документации разработки

E. Общие положения

30.
ЕСПД — это …

A.
Комплекс  программ, устанавливающих правила разработки документации

B.
Упорядоченная последовательность команд (инструкций) компьютера для решения
конкретной задачи

C.
Система точно сформулированных правил

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

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

31. Код
группы 5 стандарта ЕСПД означает …

A. Правила
выполнения документации разработки

B. Резервные
группы

C. Основополагающие
стандарты

D. Правила
выполнения эксплуатационной документации

Е.Правила обращения программной
документации

32. Код
группы 4 стандарта ЕСПД означает …

A. Резервные
группы

B. Правила
выполнения документации сопровождения

C. Общие
положения

D. Правила
выполнения документации изготовления

E. Правила выполнения
документации разработки

33. Код
группы 3 стандарта ЕСПД означает …

A. Правила
выполнения документации сопровождения

B. Правила
выполнения документации разработки

C. Правила
обращения программной документации

D. Правила
выполнения документации изготовления

E. Правила эксплуатационной
документации

34. Руководство
программиста 

A. ГОСТ
19.506-79

B. ГОСТ
19.404-79

C. ГОСТ
19.505-79

D. ГОСТ
19.604-78

E. нет
верного ответа

35. Заголовки
разделов записывают …

A.
Строчными буквами и размещают по правому краю

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

C.
Прописными буквами и размещают по левому краю

D. С
абзаца строчными буквами (кроме первой прописной)

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

36. Что
не входит в основную часть программного документа?

A. Текст
документа

B. Перечень
сокращений

C. Лист
содержания

D. Приложения

E. Предметный указатель

37. Информационная
часть программного документа содержит:

A. Предметный
указатель и лист содержания

B. Лист
утверждения и лист содержания

C. Титульный
лист и лист утверждения

D. Аннотацию
и лист содержания

E. Лист утверждения и аннотацию

38. Титульная
часть программного документа содержит: 

A. Титульный
лист

B. Лист
утверждения и титульный лист

C. Титульный
лист и аннотацию

D. Титульный
лист и лист содержания

E. Нет верного ответа

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

A. Требования
к составу и параметрам технических средств

B. Требования
к функциональным характеристикам

C. Требования
к информационной и программной совместимости

D. Требования
к надежности

E. Специальные требования

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

A. Требования
к функциональным характеристикам

B. Требования
к составу и параметрам технических средств

C. Требования
к надежности

D. Специальные
требования

E. нет верного ответа

Паспорт

1 вариант

Сұрақтың
№ № вопроса

Қиындықтың
дәрежесі

Уровень
сложности

Дұрыс
жауабы

Правильные
ответы

1

1

D

2

1

B

3

2

D

4

1

C

5

1

C

6

2

E

7

1

B

8

2

C

9

2

A

10

2

E

11

1

B

12

2

E

13

1

C

14

2

E

15

1

D

16

1

E

17

1

B

18

1

E

19

1

C

20

2

E

21

1

B

22

2

D

23

1

C

24

2

C

25

1

A

26

1

A

27

2

E

28

1

D

29

2

B

30

2

B

31

32

33

34

35

36

37

38

39

40

29

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

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

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

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

Программное обеспечение
(sowtware)
— совокупность
программ обработ­ки данных и необходимых
для их эксплуатации документов.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

ХАРАКТЕРИСТИКА ПРОГРАММНОГО ПРОДУКТА

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

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

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

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

Рис. 8.4. Классификация программ по
категориям пользователей

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

  • shareware
    — некоммерческие (условно-бесплатные)
    программы, которые могут ис­пользоваться,
    как правило, бесплатно. При условии
    регулярного использования подоб­ных
    продуктов осуществляется взнос
    определенной суммы.

Ряд производителей использует
OEM-программы
(Original
Equipment
Manufac­turer),
т.е. встроенные программы, устанавливаемые
на компьютеры или поставляемые вместе
с вычислительной техникой.

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

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

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

Программные продукты могут создаваться
как:

  • индивидуальная разработка под заказ;

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

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

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

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

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

Сопровождение программного продукта
— поддержка работоспособнос­ти
программного продукта, переход на его
новые версии, внесение измене­ний,
исправление обнаруженных ошибок и т.п.

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

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

алгоритмическая сложность (логика
алгоритмов обработки информации);

состав и глубина проработки реализованных
функций обработки;

полнота и системность функций обработки;

объем файлов программ;

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

программного средства;

объем дисковой памяти;

размер оперативной памяти для запуска
программ;

тип процессора;

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

наличие вычислительной сети и др.

Программные продукты имеют
многообразие показателей
качества,
кото­рые
отражают следующие аспекты:

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

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

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

Дерево характеристик качества программных
продуктов представлено на рис. 8.5.

Рис. 8.5. Дерево характеристик качества
программного продукта

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

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

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

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

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

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

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

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

В условиях существования рынка программных
продуктов важными характеристика­ми
являются:

стоимость;

количество продаж;

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

известность фирмы-разработчика и
программы;

наличие программных продуктов аналогичного
назначения.

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

  • формирование политики цен для завоевания
    рынка;

  • широкую рекламную кампанию программного
    продукта;

  • создание торговой сети для реализации
    программного продукта (так называемые
    ди­лерские и дистрибьютерные центры);

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

  • обучение пользователей программного
    продукта.

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

Жизненный цикл программного продукта

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

  1. маркетинг рынка программных средств,
    спецификация требований к
    программномупродукту;

  2. проектирование структуры программного
    продукта;

  3. программирование (создание программного
    кода), тестирование, автономная и
    комплексная отладка программ;

  4. документирование программного продукта,
    подготовка эксплуатационной и
    технологической документации;

  5. выход на рынок программных средств,
    распространение программного продукта;

  6. эксплуатация программного продукта
    пользователями;

  7. сопровождение программного продукта;

h)
снятие программного продукта с продажи,
отказ от сопровождения. На рис. 8.6
изображены этапы жизненного цикла и
показаны их временное соответст­вие
друг другу. Рассмотрим содержание
отдельных этапов жизненного цикла.

Рис. 8.6. Этапы жизненного цикла
программного продукта

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

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

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

  • требования к комплексу технических и
    программных средств для эксплуатации
    про­граммного продукта и т.д.

На данном этапе необходимо выполнить
формализованную постановку задачи.

Если программный продукт создается не
под заказ и предполагается выход на
рынок программных средств, маркетинг
выполняется в полном объеме: изучаются
программные продукты-конкуренты и
аналоги, обобщаются требования
пользователей к программному продукту,
устанавливается потенциальная емкость
рынка сбыта, дается прогноз цены и объема
продаж. Кроме того, важно оценить
необходимые для разработки программного
продукта материальные, трудовые и
финансовые ресурсы, ориентировочные
длительности основных этапов жизненного
цикла программного продукта.

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

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

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

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

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

На машинном уровне программного продукта,
как правило, создаются:

  • автоматизированная
    контекстно-зависимая помощь (HELP);

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

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

Требуется постоянная программа
маркетинговых мероприятий и поддержки
про­граммных продуктов. Как правило,
для каждого программного продукта
существует своя форма кривой продаж,
которая отражает спрос (рис. 8.7).

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

Рис. 8.7. Кривая продаж программного
продукта

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

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

Длительность жизненного цикла для
различных программных продуктов
неодинакова. Для большинства современных
программных продуктов длительность
жизненного цикла измеряется в годах
(2-3 года). Хотя достаточно часто встречаются
на компьютерах и давно снятые с
производства программные продукты.

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

ЗАЩИТА ПРОГРАММНЫХ ПРОДУКТОВ

Основные понятия о защите программных
продуктов

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

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

Защита программного обеспечения
преследует цели:

  • ограничение несанкционированного
    доступа к программам или их преднамеренное
    разрушение и хищение;

  • исключение несанкционированного
    копирования (тиражирования) программ.

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

  1. человека — хищение машинных носителей
    и документации программного обеспе­чения;
    нарушение работоспособности программного
    продукта и др.;

  2. аппаратуры — подключение к компьютеру
    аппаратных средств для считывания
    программ и данных или их физического
    разрушения;

  3. специализированных программ — приведение
    программного продукта или базы данных
    в неработоспособное состояние (например,
    вирусное заражение), несанкциониро­ванное
    копирование программ и базы данных и
    т.д.

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

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

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

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

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

Программные системы защиты от
несанкционированного копирования

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

Таким ключевым элементом могут быть:

  • дискета, на которой записан не подлежащий
    копированию ключ;

  • определенные характеристики аппаратуры
    компьютера;

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

Программные системы защиты от копирования
программных продуктов:

идентифицируют среду, из которой будет
запускаться программа;

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

разрешен санкционированный запуск;

вырабатывают реакцию на запуск из
несанкционированной среды;

регистрируют санкционированное
копирование;

противодействуют изучению алгоритмов
и программ работы системы.

Для идентификации запускающих
дискет
применяются
следующие методы:

1) нанесение повреждений на поверхность
дискеты («лазерная дыра»), которая
с тру­дом может быть воспроизведена
в несанкционированной копии дискеты;

2) нестандартное форматирование
запускающей дискеты.
Идентификация
среды компьютера обеспечивается за
счет:

  1. закрепления месторасположения
    программ на жестком магнитном диске
    (так назы­ваемые неперемещаемые
    программы);

  2. привязки к номеру BIOS
    (расчет и запоминание с последующей
    проверкой при за­пуске контрольной
    суммы системы);

  3. привязки к аппаратному (электронному)
    ключу, вставляемому в порт ввода-вывода,
    и др.

На Западе наиболее популярны
методы правовой защиты
программных продуктов и баз данных.

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

Правовые методы защиты программ включают:

  • патентную защиту;

  • закон о производственных секретах;

  • лицензионные соглашения и контракты;

  • закон об авторском праве.

Различают две категории прав:

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

  • моральные права, обеспечивающие защиту
    личности автора в его произведении.

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

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

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

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

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

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

  • знак авторского права (обычно ©) и
    название разработчика, года выпуска
    программы, прочих ее атрибутов;

  • знак патентной защиты или производственного
    секрета;

  • торговые марки, соответствующие
    использованным в программе другим
    программ­ным изделиям (обычно и
    название фирмы-разработчика программного
    продукта);

  • символ зарегистрированного права на
    распространение программного продукта
    (обычно ®).

Существует несколько типов лицензий
на программные продукты.

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

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

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

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

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

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

Рис. 8.8. Движение прав, денег на программные
продукты и базы данных при лицензионном
соглашении

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

Авторское право действует с момента
создания программного продукта или
базы дан­ных в течение всей жизни
автора и 50 лет после его смерти. Автор
может:

  • выпускать в свет;

  • воспроизводить в любой форме, любыми
    способами;

  • распространять;

  • модифицировать;

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

Авторское право не связано с правом
собственности на материальный носитель.

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

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

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

  • устанавливать один экземпляр, если не
    предусмотрено иное соглашение с
    правообла­дателем, программного
    продукта или базы данных на компьютер;

  • исправлять явные ошибки;

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

  • изготавливать страховые копии.


1


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


2


Пример программы написанной на языке FOXPRO 8.0 CLEAR STORE 1 TO i STORE 0 TO rez STORE 0 TO 5,20 SAY «Программа для вывода таблицы умножения до 10 на заданное 7,30 say «Введите число для таблицы умножения» get x picture «9» read IF x 9,20 say «Можно вводить числа только от 1 до 7,30 say «Введите число для таблицы умножения» get x readendif DO WHILE i


3


Блок схема программы Проверка условия окончания Окончание программы Проверка правильности ввода данных Выполнение расчета и вывод ответа Заголовок Ввод данных да нет


4


Блок схема программы DO WHILE i


5


Основные элементы программирования Ввод данных Ввод данных Вычисления, действия Вычисления, действия Ветвление Ветвление Условный и безусловный переход Условный и безусловный переход Цикл Цикл Вывод результатов Вывод результатов Массивы Массивы Подпрограммы Подпрограммы


6


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


7


Базовое программное обеспечение Самый низкий уровень программного обеспечения представляет базовое программное обеспечение. Оно отвечает за взаимодействие с базовыми аппаратными средствами. Как правило, программные средства непосредственно входят в состав базового оборудования и хранятся в специальных микросхемах, называемых постоянными запоминающими устройствами (ПЗУ – Read Only Memory, ROM). Самый низкий уровень программного обеспечения представляет базовое программное обеспечение. Оно отвечает за взаимодействие с базовыми аппаратными средствами. Как правило, программные средства непосредственно входят в состав базового оборудования и хранятся в специальных микросхемах, называемых постоянными запоминающими устройствами (ПЗУ – Read Only Memory, ROM). Комплект программ находящихся в ПЗУ образует базовую систему ввода-вывода (BIOS – Basic Input Output System). Комплект программ находящихся в ПЗУ образует базовую систему ввода-вывода (BIOS – Basic Input Output System).


8


Основное назначение BIOS Основная функция BIOS заключается в управлении стандартными внешними и внутренними устройствами: Основная функция BIOS заключается в управлении стандартными внешними и внутренними устройствами: монитором монитором клавиатурой клавиатурой дисководами дисководами принтером принтером Таймером Таймером И т.д. И т.д.


9


Вспомогательные функции BIOS реализуются при включении ПК на этапе «загрузки». реализуются при включении ПК на этапе «загрузки». тестирование аппаратного обеспечения в том числе оперативной памяти. В случае обнаружения неисправности выполняется индикация ошибки. тестирование аппаратного обеспечения в том числе оперативной памяти. В случае обнаружения неисправности выполняется индикация ошибки. возможность настройки основных режимов работы стандартных устройств возможность настройки основных режимов работы стандартных устройств инициализация векторов прерывания нижнего уровня. инициализация векторов прерывания нижнего уровня. поиск сначала на гибком, затем на жестком диске программы-загрузки ОС и загрузки ОС с диска в оперативную память поиск сначала на гибком, затем на жестком диске программы-загрузки ОС и загрузки ОС с диска в оперативную память


10


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


11


Основные операционные системы Пользовательские ОС MS-DOS (Microsoft Disk Operating System, фирма Microsoft); Командная ОС. (В настоящее время устарела. ) MS-DOS (Microsoft Disk Operating System, фирма Microsoft); Командная ОС. (В настоящее время устарела. ) Windows 95, Windows 98,; Windows XP, Windows Vista (фирма Microsoft) – мировой лидер ОС. Закрытая, графическая и очень дорогая ОС. Windows 95, Windows 98,; Windows XP, Windows Vista (фирма Microsoft) – мировой лидер ОС. Закрытая, графическая и очень дорогая ОС. Linux (разр а ботчик Линус Торвальдс). — Наиболее активно развивающаяся, открытая, бесплатная ОС Linux (разр а ботчик Линус Торвальдс). — Наиболее активно развивающаяся, открытая, бесплатная ОС Mac OS 10. Применяется на компьютерах фирмы Apple Mac OS 10. Применяется на компьютерах фирмы Apple Сетевые ОС Windows NT ; Windows 2000; Windows Server 2003 Windows NT ; Windows 2000; Windows Server 2003 UNIX (фирма Bell Laboratories); UNIX (фирма Bell Laboratories);


12


Операционные оболочки и файловые менеджеры. Операционные оболочки – специальные программы, предназначенные для облегчения общения пользователя с командами операционной системы: Norton Commander (NC) Norton Commander (NC) Windows 3.1 – Windows 3.11 Windows 3.1 – Windows 3.11 DOS Navigator DOS Navigator Volkov Commander (VC) Volkov Commander (VC) Файловые менеджеры служат для выполнения базовых приемов работы с файлами (копирование, перемещение, переименование, поиск, сортировка, пересылка, просмотр) Мой компьютер Мой компьютер Проводник (Explorer) Проводник (Explorer) FAR Menedger FAR Menedger Windows Commander Windows Commander


13


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


14


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


15


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


16


Классификации языков программирования высокого уровня.


17


Прикладное программное обеспечение Пакет программ необходимы пользователю для его работы: офисные пакеты; офисные пакеты; графические редакторы; графические редакторы; программы распознавания текста; программы распознавания текста; программы обработки данных; программы обработки данных; программы-переводчики; программы-переводчики; мультимедиа-программы; мультимедиа-программы; программы для работы в Интернете; программы для работы в Интернете; И т.д. И т.д.

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

Программное обеспечение (software) — совокупность программ обработки данных и необходимых для их эксплуатации документов.

Программы предназначены для машинной реализации задач.

Задача (problem, task) — проблема, подлежащая решению.

Приложение (application) — программная реализация на компьютере решения задачи. Является синонимом слова «программа».

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

Пакет прикладных программ — это система программ, предназначенных для решения задач определенного класса.

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

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

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

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

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

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

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

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

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

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

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

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

Задача (task, problem) – это проблема, подлежащая решению

Приложение (application) – программная реализация решения задачи на компьютере.

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

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

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

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

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

¾ freeware — бесплатные программы, свободно распространяемые, поддерживаются самим пользователем, который правомочен вносить в них необходимые изменения;

¾ shareware — некоммерческие (условно-бесплатные) программы, которые могут использоваться, как правило, бесплатно; при условии регулярного использования подобных продуктов осуществляется взнос определенной суммы.

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

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

< Предыдущая   Следующая >

Понравилась статья? Поделить с друзьями:
  • Уно де гато арго инструкция по применению
  • Управляющая конструкция предназначенная для организации многократного исполнения набора инструкций
  • Упсарин упса инструкция по применению шипучие таблетки 500 мг
  • Упор защелка с толкателем боярд установка инструкция
  • Ункарин инструкция по применению цена отзывы