Научная статья на тему 'Технология проектирования программных комплексов'

Технология проектирования программных комплексов Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
700
69
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ПРОГРАММНАЯ СИСТЕМА / АРХИТЕКТУРА ПРОГРАММНОЙ СИСТЕМЫ / ПРОГРАММНЫЙ КОМПЛЕКС / ПРОГРАММНЫЙ МОДУЛЬ / ЭКРАННАЯ ФОРМА / ТРЕБОВАНИЯ ПОЛЬЗОВАТЕЛЕЙ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Запорожцев Александр Валерьевич

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Технология проектирования программных комплексов»

УДК 658.011.56

А.В. Запорожцев

ТЕХНОЛОГИЯ ПРОЕКТИРОВАНИЯ ПРОГРАММНЫХ КОМПЛЕКСОВ

Нижегородский государственный технический университет им. Р.Е. Алексеева

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

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

Введение

В разработке больших программных систем выделяют два этапа проектирования: этап общего проектирования системы и этап проектирования отдельных программных комплексов. На этапе общего проектирования программной системы (ПС) формируется архитектура системы, объединяющая модель бизнес - процессов, модель организационной структуры и набор программных модулей [1]. Программный комплекс (ПК) выделяется из общей архитектуры по организационному принципу и обеспечивает потребности отдельной группы пользователей. Таким образом, программная система может быть представлена в виде иерархической структуры (рис. 1), состоящей из набора программных комплексов, каждый из которых включает интерфейсный модуль и набор отдельных программных модулей. Интерфейсный модуль обеспечивает доступ пользователя к информации об объектах, входящих в сферу его ответственности, а отдельные программные модули обеспечивают пользователю необходимые операции над этими данными. Программная система имеет общую базу данных, информационная модель которой начинает разрабатываться на этапе общего проектирования программной системы на основе выявления тех объектов, с информацией о которых работают пользователи программной системы.

На этапе детального проектирования отдельных программных комплексов решаются следующие задачи проектирования:

• уточнение (если необходимо) описания бизнес - процессов, относящихся к данному

программному комплексу;

• уточнение информационной модели ПС;

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

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

• определение экранных форм отдельных программных модулей.

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

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

© Запорожцев А.В., 2016.

Для наглядного представления технологии проектирования подсистем возьмем в качестве примера программный комплекс «Кадры». Список программных модулей и таблицы базы данных (БД) данной подсистемы представлены табл. 1 и табл. 2.

Программная система

Рис. 1. Иерархическая структура программной системы

Таблица 1

Основные функции программного комплекса «Кадры»

Программный модуль Входные данные Выходные данные Требования

Прием на работу ОТДЕЛ УЧАСТОК ДОЛЖНОСТЬ ПЕРСОНАЛ ПЕРСОНАЛ ШТАТ

Увольнение ОТДЕЛ УЧАСТОК ДОЛЖНОСТЬ ПЕРСОНАЛ ПЕРСОНАЛ ШТАТ ТАБЕЛЬ Закрытие данных о сотруднике: Запись в поле Дата увольнения в таблице Персонал и Дата окончания_работы в таблице Штат Удаление всех записей из таблицы Табель

Перевод сотрудника ОТДЕЛ УЧАСТОК ДОЛЖНОСТЬ ПЕРСОНАЛ ПЕРСОНАЛ ШТАТ

Ведение табеля рабочего времени ОТДЕЛ УЧАСТОК ДОЛЖНОСТЬ ПЕРСОНАЛ ТАБЕЛЬ

Таблица 2

Таблицы базы данных программного комплекса «Кадры»

ОТДЕЛ ПЕРСОНАЛ ДОЛЖНОСТЬ

ГО_отдела (РК) ГО_персонала (РК) ГО_должности (РК)

Наименование ФИО сотрудника Наименование

Число сотрудников Год_рождения

Нач_отдела.ГО_персонала (РК) Дата поступления ТАБЕЛЬ

Дата увольнения ГО_Участка (РК, РК)

ШТАТ ГО_отдела (РК, РК)

ГО_Участка (Ж, РК) УЧАСТОК ГО_должности (РК)

ГО_отдела (Ж, РК) ГО_Участка (РК) Месяц (РК)

ГО_должности (РК) ГО_отдела (Ж, РК) ГО_персонала (РК, РК)

ГО_персонала (РК, РК) Наименование Часы

Дата_начала_работы Нач_участка.ГО_персонала (РК)

Дата_окончания_работы

Оклад

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

• информационные объекты формы;

• функции программного модуля.

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

Проектирование экранной формы интерфейсного модуля

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

Основным элементом данной формы является список сотрудников, в котором можно просматривать данные о сотрудниках по отделам и участкам (рис. 2).

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

В экранной форме интерфейсного модуля «Кадры» пользователю дана возможность произвести все необходимые действия по ведению данных о сотрудниках:

• Прием на работу;

• Увольнение;

• Перевод сотрудника;

• Ведение табеля рабочего времени.

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

Рис. 2. Экранная форма интерфейсного модуля программного комплекса «Кадры»

Выполнение каждой функции вызывает соответствующую форму. Вызов функций «Перевод сотрудника» и «Увольнение» возможен только в том случае, если в списке сотрудников выбран конкретный сотрудник.

В меню экранной формы выделен раздел «Справочники», в котором ведутся справочники по данной задаче:

• Отделы;

• Участки;

• Должности.

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

В пункте меню «Отчеты» определены функции формирования всех стандартных отчетов по работе кадровой службы.

Информационные объекты формы должны быть связаны с соответствующими атрибутами таблиц базы данных. Это позволяет в ходе разработки формы уточнить атрибуты таблиц БД, так как отображение информации на форме более наглядно, чем в таблице. Основными информационными объектами формы являются:

1. Список «Отдел» формируется по атрибуту Отдел.Наименование.

2. Список «Участок» формируется по атрибуту Участок.Наименование при условии Отдел. ГО_отдела = Участок. ГО_отдел;

3. Список сотрудников формируется по следующим атрибутам:

• Таб. Номер - Персонал. ГО_персонала,

• Фамилия, инициалы - Персонал.ФИО_сотрудника,

• Год рождения - Персонал.Год рождения,

• Год поступления - Персонал.Год_поступления,

• Должность - Должность.Наименование при условии Персонал. ГО_персонала = Штат.ГО_персонала и Штат.ГО_должности = Должность. ГО_должности,

• Оклад - Штат.Оклад при условии Персонал. ГО_персонала = Штат.ГО_персонала.

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

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

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

Проектирование экранной формы программного модуля

Рассмотрим пример разработки экранной формы для программного модуля «Прием на работу», входящего в программный комплекс «Кадры».

Рис. 3. Экранная форма программного модуля «Прием на работу»

В данной форме вводятся данные по новому сотруднику. Автоматически формируется табельный номер сотрудника. В этой же форме происходит назначение на определенную должность в конкретном отделе/участке. Дата поступления записывается в поле «Дата приема» таблицы Сотрудник и в поле «Дата начала работы» в таблице Штат.

Объекты формы:

• ФИО - Персонал.ФИО_сотрудника,

• Дата рождения - Персонал.Год рождения,

• Дата поступления - Персонал.Год_поступления,

• Список «Отдел» формируется по атрибуту Отдел.Наименование,

• Список «Участок» формируется по атрибуту Участок.Наименование при условии Отдел. ГО_отдела = Участок. ГО_отдел,

• Должность - Должность.Наименование,

• Оклад - Штат.Оклад.

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

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

Рис. 4. Экранная форма программного модуля «Табель»

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

• Список «Отдел» формируется по атрибуту Отдел.Наименование;

• Список «Участок» формируется по атрибуту Участок.Наименование при условии Отдел. ГО_отдела = Участок. ГО_отдел;

• Месяц - Табель.Месяц;

• Рабочие часы - вычисляемое поле;

• Таб № - Персонал. ГО_персонала;

• ФИО - Персонал.ФИО_сотрудника;

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

• Часы - Табель.Часы.

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

• При вызове данной формы из программного комплекса «Кадры» форма вызывается для того отдела, который был выбран в первой форме;

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

Заключение

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

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

Библиографический список

1. Запорожцев, А.В. Принципы проектирования организационно-технических систем // Труды НГТУ им. Р.Е. Алексеева. - 2013. - № 3(100). - С. 106-115.

2. Запорожцев, А.В. Проблемы проектирования автоматизированных систем управления организационно - техническими системами // Вестник Нижегородского университета им. Н.И. Лобачевского. - 2013. - № 6 (1). - С. 239-246.

3. Информационные технологии и управление предприятием / В.В. Баронов [и др.]. - М.: Компания АйТи, 2009. - 328 с.

4. Макгрегор, Д. Программная архитектура // Открытые системы. - 2004. - № 08.

5. Марка, Д.А. Методология структурного анализа и проектирования / Д.А. Марка, К. Мак-Гоуэн. - М.: Весть-МетаТехнология, 1999. - 240 с.

6. Калянов, Г.Н. Моделирование, анализ, реорганизация и автоматизация бизнес-процессов / Г.Н. Калянов. - М.: Финансы и статистика, 2006. - 240 с.

Дата поступления в редакцию 22.06.2016

A.V. Zaporozhtsev

TECHNOLOGY DESIGN OF PROGRAM COMPLEX

The Nizhny Novgorod state technical university n. a. R. E. Alexeyev

Purpose: Maintaining the integrity of the individual in the development of software systems comprising of complex software systems. Providing visibility when designing software modules.

Approach: Clarifying the architecture of a software system and a common information model in the design of software systems. The use of screen forms of software modules as the main result the design of software systems. Formalized description of information objects and functions screen forms.

Findings: Stepwise refinement of the architecture of a software system and the common information model allows you to maintain the integrity of the development of complex software systems. The use of screen forms allows to consider the basic requirements of users for each software module.

Research implications: The offered technology of design of software systems can improve the quality of system development through the use of visual representations of design solutions.

Value: The use of visual representations of all elements of the project of the program complex increases the efficiency of software development.

Key words: software system, architecture software system, program complex, software module, screen form, user requirements.

i Надоели баннеры? Вы всегда можете отключить рекламу.