Файл: Сценарий диалога эис 82.docx

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

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

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

Добавлен: 26.10.2023

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

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

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

План-график проекта

Персонал

Затратына проект

Проектная команда

Отчет о

сроках





Отчет о затратах


Приказ о создании проектной команды и установление тарифа оплаты

Роли

Отклонения по проекту

План-график проекта





Проектная документация

Назначения на проект

Отчёт об отклонениях





Отчет о текущем состоянии






Отчет о проектах компании


Рисунок 3.2 — Сценарий диалога пользователя

3.2.3 Описание функций ЭИС

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

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

К основным функциям ИС, как правило, относятся функции сбора и регистрации информационных ресурсов, их хранение, обработка, актуализация, а так же обработка запросов пользователя.

К основным функциям разрабатываемой системы можно отнести:

  • планирование проекта;

  • контроль проекта;

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

  • расчет материальных и трудовых затрат;

  • ведение справочной информации;

  • генерация отчетов;

  • формирование печатных форм.

К служебным функциям относятся:

  • связь с базой данных;

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

  • разграничение полномочий.

На Рисунке 3.3 представлено дерево функций системы.


Функции системы управления проектами







Основные функции

Служебные функции





Связь с базой данных


Расчет материальных и трудовых затрат

затрат

Расчет плановых и фактических

затрат на проект

Контроль выполнения

проекта

Планирование проекта




Идентификация пользователя








Формирование печатных форм

Генерация

отчетов

Ведение справочной информации

Разграничение полномочий


Рисунок 3.3 — Дерево функций системы


Ниже представлен программный код некоторых функций системы.

Листинг 3.1 — Создание новой роли

procedure TfrmAddNewRole.FormActivate(Sender: TObject);

begin

NewRoleID:=dtmConnection.qurJobs.RecordCount + 1;

dtmConnection.dtsJobs.DataSet.Insert;

end;
procedure TfrmAddNewRole.cmbOkRoleClick(Sender: TObject);

begin

dtmConnection.dtsJobs.DataSet.FieldByName('ID').Value:=NewRoleID;

dtmConnection.dtsJobs.DataSet.Post;

dtmConnection.qurJobs.Refresh;

frmAddNewRole.Close;

end;

Листинг 3.2 — Добавление нового персонала

procedure TfrmPersonel.FormActivate(Sender: TObject);

varNewPersonelID:integer;

begin

if frmMain.AddNewPersonel=True then

begin

dtmConnection.dtsPersonal.DataSet.Insert;

NewPersonelID:=dtmConnection.qurPersonal.RecordCount + 1;

dtmConnection.dtsPersonal.DataSet.FieldByName('ID').Value:=NewPersonelID;

end;

end;
procedure TfrmPersonel.cmbOkPersonelClick(Sender: TObject);

begin

if frmMain.AddNewPersonel=True then

begin

dtmConnection.dtsPersonal.DataSet.Post;

frmPersonel.Close;

end;

end;

Листинг 3.3 — Назначение на проект

procedure TfrmProjectTeam.cmbOkProjectTeamClick(Sender: TObject);

varNewEntry:integer;

begin

dtmConnection.qurProjectTeam.Post;

cmbJob.DataSource:=frmProjectDetails.dtsProjectTeam;

cmbPersonel.DataSource:=frmProjectDetails.dtsProjectTeam;

frmProjectDetails.qurProjectTeam.Active:=False;

frmProjectDetails.qurProjectTeam.Active:=True;

dtmConnection.qurProjectTeam.Active:=False;

dtmConnection.qurProjectTeam.Active:=True;

frmProjectTeam.Close;

end;
procedure TfrmProjectTeam.FormActivate(Sender: TObject);

varNewEntry:integer;

begin

NewEntry:=dtmConnection.qurProjectTeam.RecordCount;

NewEntry:=NewEntry+12;

cmbJob.DataSource:=dtmConnection.dtsProjectTeam;

cmbPersonel.DataSource:=dtmConnection.dtsProjectTeam;

Продолжение Листинга 3.3

if frmProjectDetails.AddNewProjectTeam=True then

with dtmConnection do

begin

dtsProjectTeam.Dataset.Insert;

dtsProjectTeam.DataSet.FieldByName('ID').Value:=NewEntry;

dtsProjectTeam.DataSet.FieldByName('ProjectID').Value:=frmProjectDetails.ProjectID;

end;


Листинг 3.4 — Добавление стадии или проекта

procedure TfrmProjectDetails.cmbAddNewEntryClick(Sender: TObject);

begin

ckbIsFixated.DataSource:=dtmConnection.dtsProject;

txtPlanBeginDate.DataSource:=dtmConnection.dtsProject;

txtPlanEndDate.DataSource:=dtmConnection.dtsProject;

txtPlanManHour.DataSource:=dtmConnection.dtsProject;

txtFactBeginDate.DataSource:=dtmConnection.dtsProject;

txtFactEndDate.DataSource:=dtmConnection.dtsProject;

txtFactManHour.DataSource:=dtmConnection.dtsProject;

txtNameProject.DataSource:=dtmConnection.dtsProject;

cmbStatusProject.DataSource:=dtmConnection.dtsProject;

cmbTypeProject.DataSource:=dtmConnection.dtsProject;

dtmConnection.dtsProject.DataSet.Insert;

end;
procedure TfrmProjectDetails.cmbCancelEntryClick(Sender: TObject);

begin

dtmConnection.dtsProject.DataSet.Cancel;

ckbIsFixated.DataSource:=dtsProjectDetails;

txtPlanBeginDate.DataSource:=dtsProjectDetails;

txtPlanEndDate.DataSource:=dtsProjectDetails;

txtPlanManHour.DataSource:=dtsProjectDetails;

txtFactBeginDate.DataSource:=dtsProjectDetails;

txtFactEndDate.DataSource:=dtsProjectDetails;

txtFactManHour.DataSource:=dtsProjectDetails;

txtNameProject.DataSource:=dtsProjectDetails;

cmbStatusProject.DataSource:=dtsProjectDetails;

cmbTypeProject.DataSource:=dtsProjectDetails;

Label10.Visible:=False;

cmbTypeEntry.Visible:=False;

end;
procedure TfrmProjectDetails.cmbApplyEntryClick(Sender: TObject);

varNewEntryID,ParentProject, ParentStage:integer;

begin

if cmbTypeEntry.Text='' then

begin

ShowMessage('Не выбран тип новой записи');

cmbTypeEntry.SetFocus;

Exit;

end;

dtmConnection.dtsProject.DataSet.FieldByName('ID').Value:=NewEntry;

dtmConnection.dtsProject.DataSet.FieldByName('ParentProjectID').Value:=ProjectID;

if cmbTypeEntry.Text='Новаястадия' then



Продолжение Листинга 3.4

begin

dtmConnection.dtsProject.DataSet.FieldByName('ParentStageID').Value:=NewEntry;

dtmConnection.dtsProject.DataSet.FieldByName('ParentWorkID').Value:=0;

end;

if cmbTypeEntry.Text='Новаяработа' then

begin

dtmConnection.dtsProject.DataSet.FieldByName('ParentStageID').Value:=dtsProjectDetails.DataSet.FieldValues['ID'];

dtmConnection.dtsProject.DataSet.FieldByName('ParentWorkID').Value:=NewEntry;

end;

dtmConnection.dtsProject.DataSet.Post;

ckbIsFixated.DataSource:=dtsProjectDetails;

txtPlanBeginDate.DataSource:=dtsProjectDetails;

txtPlanEndDate.DataSource:=dtsProjectDetails;

txtPlanManHour.DataSource:=dtsProjectDetails;

txtFactBeginDate.DataSource:=dtsProjectDetails;

txtFactEndDate.DataSource:=dtsProjectDetails;

txtFactManHour.DataSource:=dtsProjectDetails;

txtNameProject.DataSource:=dtsProjectDetails;

cmbStatusProject.DataSource:=dtsProjectDetails;

cmbTypeProject.DataSource:=dtsProjectDetails;

qurProjectDetails.Active:=False;

qurProjectDetails.Active:=True;

cmbTypeEntry.Visible:=True;

Label10.Visible:=True;

dbgProjectDetails.Group(4);

dbgProjectDetails.SubGroup(5);

end;

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

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

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

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

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

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

В таблице приведено описание модулей.