- •Введение
- •Глава 1. Организация и технология разработки прикладных программ Математическое обеспечение и его структура
- •Организация разработки прикладных программ
- •Технология разработки прикладных программ
- •Характеристики качества программного обеспечения
- •Структура курса и литература
- •Глава 2. Типы структурированных данных. Статические и динамические типы данных. Файловая структура
- •Типы данных
- •Представление структур в памяти эвм
- •Некоторые примеры представления данных
- •Техника доступа к информации записанной в файле
- •Глава 3. Основные этапы полного построения алгоритма
- •Глава 4. Некоторые основные приемы и алгоритмы
- •4.1 Структурное программирование сверху-вниз и правильность программ
- •4.2 Основные правила структурного программирования
- •4.3. Структурное программирование сверху-вниз: дополнительные соображения
- •4.4.Практические советы при использовании метода структурного программирования
- •1.4. Общая организация программы и ее запись
- •1.4. "Малый программистский стандарт"
- •5. Методы разработки алгоритма
- •5.1. Методы частных целей, подъема и отрабатывания назад
- •5.2 Метод эвристики
- •5.3 Программирование с отходом назад
- •5.4. Метод ветвей и границ
- •5.5. Рекурсия
- •5.6. Моделирование
- •Глава 6. Алгоритмы машинной математики больших массивов данных.
- •6.1. Сортировка
- •6.2. Сортировка массивов
- •6.3. Сортировка последовательностей.
- •6.4. Поиск
- •7. Документирование, сопровождение и эксплуатация программ.
- •7.1.Стандартизация, дисциплина и творчество в программировании.
- •7.2. Виды программ и программных документов
- •7.3. Основные стадии и этапы разработки программ и программной документации
7.2. Виды программ и программных документов
Эта книга посвящена программному обеспечению ЭВМ и его важнейшим компонентам, поэтому целесообразно здесь напомнить значение важнейших терминов, используемых нами в дальнейшем. ГОСТ 1978—74 в числе прочих определяет следующие понятия:
Алгоритм—точное предписание, определяющее вычислительный процесс, ведущий от варьируемых начальных данных к искомому результату.
Программа— алгоритм, записанный в форме, воспринимаемой вычислительной машиной.
Программирование — раздел прикладной математики, разрабатывающий методы использования вычислительных машин для реализации алгоритмов.
Программное обеспечение—совокупность программ и документов на них для реализации целей и задач цифровых электронных вычислительных машин.
Программное изделие — программа на носителе данных, являющаяся продуктом промышленного производства.
В литературе по программированию широкое распространение получили также следующие термины.
Подпрограмма — часть программы, выделяемая в целях сокращения записи программы и выполняющая четко определяемую функцию.
Программный сегмент — часть программы, которая может выполняться, не требуя нахождения в оперативной Памяти остальных частей.
Программный модуль — часть программы, допускающая автономную трансляцию. Изменения, вносимые в модуль, или его замена на другой модуль, выполняющий те же функции, не влияют на остальную часть программы. Модуль идентифицируется при компиляции, объединении с другими модулями и загрузке.
ЕСПД устанавливает следующие виды программ с точки зрения документирования.
Рис. 7.1.
Компонент— программа, рассматриваемая как единое целое, выполняющая законченную функцию и применяемая самостоятельно или в составе комплекса.
Комплекс — программа, состоящая из двух или более компонентов и (или) комплексов, выполняющих взаимосвязанные функции, и применяемая самостоятельно или в составе другого комплекса.
С точки зрения документирования подпрограмма не всегда является компонентом: это зависит от того, обращается ли эта подпрограмма к другим подпрограммам. Что же касается программы, то она может быть и компонентом, и комплексом. На рис. 7.1 показана структура достаточно сложного комплекса с точки зрения его разработки и документирования.
Качество программы наряду с другими факторами определяется полнотой и качеством пакета документов, сопровождающих ее. К программным документам относятся документы, содержащие сведения, необходимые для разработки, изготовления, сопровождения программ и эксплуатации.
Виды программных документов и их содержание приведены в табл. 7.2 и 7.3.
Таблица 7.2. Виды программных документов
Вид программного документа |
Содержание программного документа |
Спецификация |
Состав программы и документация на нее |
Ведомость держателей подлинников |
Перечень предприятий, на которых хранят подлинники программных документов |
Текст программы |
Запись программы с необходимыми комментариями |
Описание программы |
Сведения о логической структуре и функционировании программ |
Программа и методика испытаний |
Требования, подлежащие проверке при испытании программы, а также порядок и методы их контроля |
Техническое задание |
Назначение и область применения программы, технические, технико-экономические и специальные требования, предъявляемые к программе, необходимые стадии и сроки разработки, виды испытаний |
Пояснительная записка |
Схема алгоритма, общее описание алгоритма и функционирования программы, а также обоснование принятых технических и технико-экономических решений |
Эксплуатационные документы |
Сведения для обеспечения функционирования и эксплуатации программы |
Таблица 7.3. Эксплуатационные документы
Вид программного документа |
Содержание программного документа |
Ведомость эксплуатационных документов |
Перечень эксплуатационных документов на программу. Регламентируется стандартом ГОСТ 19.507— 79 |
Формуляр |
Основные характеристики программы, комплектность и сведения об эксплуатации программы. Регламентируется стандартом ГОСТ 19.501—78 |
Описание применения |
Сведения о назначении программы, области применения, классе решаемых задач, применяемых методах, ограничениях для применения, минимальной конфигурации технических средств. Регламентируется стандартом ГОСТ 19.502—78 |
Руководство системного программиста |
Сведения для проверки, обеспечения функционирования и настройки программы на условия конкретного применения. Регламентируется стандартом ГОСТ19.503—79 |
Руководство программиста |
Сведения для эксплуатации программы. Регламентируется стандартом ГОСТ 19.504—79 |
Руководство оператора |
Сведения, необходимые для осуществления действий, связанных с выполнением программы вычислительной системой. Регламентируется стандартом ГОСТ 19.50&-79 |
Описание языка |
Описания синтаксиса и семантики языка. Регламентируется стандартом ГОСТ19.506—79 |
Руководство по техническому обслуживанию |
Сведения для применения тестовых и диагностических программ при обслуживании технических средств |
Необходимость составления технического задания на компоненты, не предназначенные для самостоятельного применения, и комплексы, входящие а другие комплексы, определяется по согласованию с заказчиком.
Допускается объединять отдельные виды эксплуатационных документов, за исключением ведомости эксплуатационных документов и формуляра. Необходимость объединения документов указывается в техническом задании. Объединенному документу присваивают наименование и обозначение одного из объединяемых документов. В объединенных документах должны быть приведены сведения, которые необходимо включать в каждый объединяемый документ. Требования к содержанию и оформлению каждого из перечисленных документов определены соответствующими стандартами ЕСПД.
Согласно общим требованиям к программным документам (ГОСТ 19.105—78) программный документ может быть представлен на различных типах носителей данных, в том числе и машинных: магнитных лентах и дисках и др. Правила оформления документов и их частей на каждом носителе данных устанавливаются соответствующими стандартами ЕСПД.
Наименования программных документов в зависимости от способа их выполнения и характера использования устанавливаются в соответствии с табл. 7.4.
Таблица 7.4. Классификация документов
Наименование документа |
Описание |
Подлинник |
Документ, оформленный подлинными установленными подписями и выполненный на любом материале, допускающем многократное воспроизведение с него копии (дубликата) |
Дубликат |
Документ, являющийся копией подлинника, обеспечивающий идентичность воспроизведения подлинника, выполняемый на любом материале, позволяющем снимать копии |
Копия |
Документ, выполненный способом, обеспечивающим его идентичность с подлинником (дубликатом), и предназначенный для непосредственного использования при сопровождении и эксплуатации программы |