Файл: Учебник Макаровой.pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 17.07.2024

Просмотров: 1431

Скачиваний: 0

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

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

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

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

обучающие системы, демоверсии, гипертекстовые системы помощи.

4. Ввод в действие

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

СТРУКТУРА ПРОГРАММНЫХ ПРОДУКТОВ

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

Модуль это самостоятельная часть программы, имеющая

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

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

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

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

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

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

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

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

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

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

545


Рис. 18.1. Структура программного продукта

Среди множества модулей различают:

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

рабочие модули выполняют функции обработки; сервисные модули и библиотеки, утилиты осуществляют обслуживающие функции.

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

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

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

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

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

ППП (application program package) это система программ,

предназначенных для решения задач определенного класса.

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

ПРОЕКТИРОВАНИЕ ИНТЕРФЕЙСА ПОЛЬЗОВАТЕЛЯ

Диалоговый режим

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

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

Системы, поддерживающие диалоговые процессы, классифицируются на:

системы с жестким сценарием диалога стандартизированное представление информации обмена; дескрипторные системы формат ключевых слов сообщений;

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

546


Наиболее просты для реализации и распространены диалоговые системы с жестким сценарием диалога, которые представлены в виде:

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

запрос по формату с помощью ключевых слов, фраз или путем заполнения экранной формы

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

Диалоговый процесс управляется согласно созданному сценарию, для которого определяются: точки (момент, условие) начала диалога; инициатор диалога человек или программный продукт;

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

реакция программного продукта на завершение диалога. Описание сценария диалога выполняют:

блок-схема, в которой предусмотрены блоки выдачи сообщений и обработки полученных ответов; ориентированный граф, вершины которого сообщения и выполняемые действия, дуги

связь сообщений; словесное описание; специализированные объектно-ориентированные языки построения сценариев.

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

Всоставе инструментальных средств СУБД содержатся построители меню, с помощью которых

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

Вряде СУБД и электронных таблиц, текстовых редакторов существуют различные типы диалоговых окон, содержащих разнообразные объекты управления:

тексты сообщения; поля ввода информации пользователя;

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

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

Графический интерфейс пользователя

Графический интерфейс пользователя (Graphics User Interface – GUI) – ГИП является обязательным компонентом большинства современных программных продуктов, ориентированных на работу конечного пользователя. К графическому интерфейсу пользователя предъявляются высокие требования как с чисто инженерной, так и с художественной стороны разработки, при его разработке ориентируются на возможности человека. Наиболее часто графический интерфейс реализуется в интерактивном режиме работы пользователя для программных продуктов, функционирующих в среде Windows, и строится в виде системы спускающихся меню с использованием в качестве средства манипуляции мыши и клавиатуры. Работа пользователя осуществляется с экранными формами,

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

Пример 18.3. Средствами редактора диалогов Microsoft Word Dialog Editor построено диалоговое окно, обеспечивающее графический интерфейс пользователя. К числу типовых объектов управления графического интерфейса относятся:

547


метка (label) – постоянный текст, не подлежащий изменению при работе пользователя с экранной формой (например, слова Фамилия Имя Отчество);

текстовое окно (text box) – используется для ввода информации произвольного вида, отображения хранимой информации в базе данных (например, для ввода фамилии студента);

рамка (frame) – объединение объектов управления в группу по функциональному или другому принципу (например, для изменения их параметров);

командная кнопка (command button) – обеспечивает передачу управляющего воздействия, например, кнопки <Cancel>, <ОК>, <Отмена>; выбор режима обработки типа <Ввод>, <Удаление>, <Редактирование>, <Выход> и др.;

кнопка-переключатель <option button> – для альтернативного выбора кнопки из группы однотипных кнопок (например, семейное положение); помечаемая кнопка <check button> – для аддитивного выбора несколько кнопок из группы однотипных кнопок (например, факультатив для

посещения);

окно-список (list box) – содержит список альтернативных значений для выбора (например, «Спортивная секция»);

комбинированное окно (combo box) – объединяет возможности окна-списка и текстового окна (например, «Предметы по выбору» – можно указать новый предмет или выбрать один из предлагаемого списка);

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

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

окно-список каталогов; окно-список накопителей; окно-список файлов и др.

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

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

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

графические объекты сохраняют свое стандартизованное назначение и по возможности местоположение на экране.

18.2. СТРУКТУРНОЕ ПРОЕКТИРОВАНИЕ И ПРОГРАММИРОВАНИЕ

548


Нисходящее проектирование Модульное программирование Структурное программирование

НИСХОДЯЩЕЕ ПРОЕКТИРОВАНИЕ

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

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

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

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

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

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

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

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

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

Пример 18.4. Некоторые функции, например Ф2, далее неразложимы на составляющие: они предполагают непосредственную программную реализацию. Другие функции, например Ф1, Фm, могут быть представлены в виде структурного объединения более простых функций, например Ф11, Ф12 и т.д. Для всех функций- компонентов осуществляется самостоятельная программная реализация; составные функции (типа Ф1, Фm) реализуются как программные модули, управляющие функциями-компонентами, например, в виде программ-меню.

549