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

Функциональные задачи:

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

Формирование единой БД по документам – регистрация, запись документов в электронный журнал;

Автоматизация всех видов отчётности организации – создание отчётов;

Автоматизация контроля за исполнением документов – контроль за исполнением документов;

1.3. Разработка функциональной архитектуры проектируемого модуля ИС

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

Описание функциональных задач, решаемых с помощью проектируемой системы или модуля - student2.ru

Рис.6.Функциональная архитектура

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

На основе логической модели данных была разработана физическая модель данных, показанная на рисунке шесть (Рис.7.). Таблица vid_documenta образовалась из сущности вид документа и отвечает за хранение видов и типов документов, таблица documents образовалась из сущности документы, в ней хранится информация о новых документах. Таблица Journal образовалась из сущности журнал, в неё записывается название документа и исполнителя этого документа, а также дата старта и дата до которой документ должен быть выполнен. Таблица control образовалась из сущности контроль, в эту таблицу заносятся названия документов поставленных на контроль исполнения, руководящий контролем даты начала контроля, конца исполнения и срока исполнения. Таблица Podrazdelenie образовалась из сущности подразделение, в этой таблице находятся названия подразделений и их руководители. Таблица Sotrudniki образованна из сущности сотрудники, в этой таблице хранится информация о сотрудниках организации. Таблица Dolgnosty образованна из сущности должности, в этой таблице хранятся названия должностей.

Описание функциональных задач, решаемых с помощью проектируемой системы или модуля - student2.ru

Рис.7.Физическая модель данных

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

В ходе выполнения курсового проекта был разработан интерфейс для секретаря (Рис.8), а также форма для заполнения таблицы Журнал (Рис.9). Интерфейс секретаря (Рис.8) был выполнен в таком виде по причине удобства заполнения информации в таблицы. Интерфейс состоит из полей для заполнения таблицы документы (новый документ, вид документа, дата регистрации, кто отправил, кому, статус, содержание), кнопок для добавления, редактирования, удаления строк в таблице. Кнопки для вывода формы для заполнения таблицы журнал (Рис.9). Сверху находится ленточное меню с полями котором находятся справочники, сортировка, формы отчётов, выход.

Описание функциональных задач, решаемых с помощью проектируемой системы или модуля - student2.ru

Рис.8.Интерфейс главной формы секретаря

Описание функциональных задач, решаемых с помощью проектируемой системы или модуля - student2.ru

Рис.9.Форма для заполнения таблицы журнал

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

Описание функциональных задач, решаемых с помощью проектируемой системы или модуля - student2.ru

Рис.10.Интерфейс главной форма начальника

2. Разработка и интеграция программного модуля информационной системы

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

В качестве средства разработки приложения для взаимодействия с базой данных были рассмотрены Delphi7 и С++.

Delphi7

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

Преимущества Delphi по сравнению с аналогичными программными продуктами:

- Быстрота разработки приложения (RAD).

- Высокая производительность разработанного приложения;

- Низкие требования разработанного приложения к ресурсам компьютера;

- Наращиваемость за счет встраивания новых компонент и инструментов в среду Delphi;

- Возможность разработки новых компонентов и инструментов собственными средствами Delphi (существующие компоненты и инструменты доступны в исходных кодах);

- Удачная проработка иерархии объектов.

Недостатки языка программирования

Поддержка операционных систем только семейства Windows (Исключение — VB1 for DOS). Отсутствие механизма наследования объектов. Существующие в языке наследование, позволяет наследовать только интерфейсы объектов, а не их самих. Таким образом, в унаследованом классе должны быть явно переписаны все функции базового класса. Также в унаследованном классе невозможно добавление каких-либо методов, присущих только даннному классу, то есть если абстрактный базовый класс содержит только два метода, то и производный класс содержит только два метода, не более и не менее того. Требует установленных DLL для работы программы.

Часто критике подвергаются такие аспекты Visual Basic, как возможность отключить средства слежения за объявленными переменными, возможность неявного преобразования переменных, наличие типа данных «Variant».

Отсутствие указателей, низкоуровневого доступа к памяти, ASM-вставок.

С++

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

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

Недостатки C++ перед Delphi:

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

Значительно большая, по сравнению с Object Pascal, сложность языка, даже, несмотря на компактность кода, возникают сложности в его восприятии.

Одна особенность языка С++ очень портит этот язык - он чувствителен к регистру символов, т.е. переменная A и переменная a - это разные переменные.

В Delphi классы (объекты) могут располагаться только в динамической памяти, а в C++ в любой памяти (статическая, стек, динамическая). Это добавляет безопасности программирования в Delphi.

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

2.2. Описание структур данных

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

Coneсt1-coneсt7 - строковые переменные;

Coneсt2 – переменная отвечающая за ввод сервера;

Coneсt4 – переменная отвечающая за ввод логина;

Coneсt6 – переменная отвечающая за ввод пароля;

Conection – переменная формирующаяся из Coneсt1-coneсt7 и передающая данные в элемент ADOconnection свойство connectionstring.

Больше в модуле не было использовано не переменных, массивов, классов, файлов.

2.3. Разработка программного модуля

Добавляет новую запись в таблицу Документы.

if MessageDlg('добавить запись',

mtConfirmation, [mbYes,mbNo],0) <>mrYes then Exit;

DataModule7.DSdocument.DataSet.Last ;

DataModule7.DSdocument.DataSet.Append;

DataModule7.DSdocument.DataSet.FieldByName('Name_documenta').AsString:=form1.DBedit1.Text;

DataModule7.DSdocument.DataSet.FieldByName('From_whom').AsString:=form1.DBedit2.Text;

DataModule7.DSdocument.DataSet.FieldByName('Komu').AsString:=form1.DBEdit4.Text;

DataModule7.DSdocument.DataSet.FieldByName('Vid_documenta').AsString:=form1.DBLookupComboBox1.Text;

DataModule7.DSdocument.DataSet.FieldByName('Date_registr').AsString:=form1.DBEdit5.Text;

DataModule7.DSdocument.DataSet.FieldByName('Soderzhanie').AsString:=form1.DBMemo1.Text;

DataModule7.DSdocument.DataSet.FieldByName('Status_documenta').AsString:=form1.DBEdit3.Text;

DataModule7.DSdocument.DataSet.Post;

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

if Length(edit1.Text)>0 then

DataModule7.ADOdocument.Filtered:=True

else

DataModule7.ADOdocument.Filtered:=False;

DataModule7.ADOdocument.Filter:='Name_documenta>'''+edit1.Text+'''';

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

conect1:='Driver=MySQL ODBC 5.1 Driver;SERVER=';

conect2:=edit1.Text;

conect3:=';UID=';

conect4:=edit2.Text;

conect5:=';PWD=';

conect6:=edit3.Text;

conect7:=';DATABASE={документооборот};PORT=3306;COLUMN_SIZE_S32=1';

conection:=conect1+conect2+conect3+conect4+conect5+conect6+conect7;

datamodule7.ADOConnection1.ConnectionString:=conection;

datamodule7.ADOConnection1.Connected:=true;

datamodule7.ADOVid_documenta.Active:=true;

datamodule7.ADOsotrudniki.Active:=true;

datamodule7.ADOdocument.Active:=true;

datamodule7.ADOdolgnosty.Active:=true;

datamodule7.ADOpodrazdeleniye.Active:=true;

datamodule7.ADOjournal.Active:=true;

datamodule7.ADOcontrol.Active:=true;

form1.show;

datamodule7.ADOQuery1.ConnectionString:=conection;

3. Отладка и оценка качества программного модуля информационной системы

План тестирования:

Тестирование чёрным ящиком;

Тестирование белым ящиком;

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

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

Номер теста Назначение теста Значения исходных данных Ожидаемый результат Реакция программы
Метод черного ящика
№1 Проверка ввода сервера, логина, пароля (правильного) Вводится в поля входа сервер, логин и пароль и нажимается кнопка вход: Сервер: 10.10.1.100 Логин: root Пароль: student   Произойдёт вход на сервер базы данных и откроется главная форма. Открылась главная форма, произошло подключение баз данных, но не закрылась форма для ввода логина и пароля
№2 Проверить ввод данных в таблицу документы В поля вводится информация о документе и нажимается кнопка добавить Появится сообщение подтверждения добавления записи таблицу DBgrid будет добавлен новая запись (новый документ) Поивилось сообщение подтверждения добавления записи, после подтверждения в таблице DBgrid появилась новая запись (новый документ)
№3 Проверить сортировку по имени документа В верхней панели «сортировка» выбираем сортировку по имени документа, внизу появится поле куда начинается вводится имя документа по которому будет сортировка Будет происходить сортировка по ходу ввода имени документа, в таблице останется наименования удовлетворяющие сортировке Произошла сортировка в таблице остались наименования удовлетворяющие сортировке
№4 Проверка ввода сервера, логина, пароля (не правильного) Вводится в поля входа сервер, логин и пароль и нажимается кнопка вход: Сервер: 10.10.1.100 Логин: root Пароль: studend(ошибка)   Появится сообщение о том что произведён неправильный ввод пароля. Появилось сообщение о ошибке ввода пароля
Метод белый ящик
№5 Покрытие операторов Выполнение оператора программы хотя бы один раз Оператор выполнится хотя бы один раз Оператор выполнился один раз
№6 Покрытия решений Выполняется реализация направления перехода Направление перехода будет реализовано, по крайней мере, один раз Направление перехода было реализовано один раз
№7 Покрытие условий Записывается число тестов, достаточное для того, чтобы все возможные результаты каждого условия в решении выполнялись, по крайней мере, один раз   Результаты каждого условия в решении выполнились, по крайней мере, один раз   Результаты условий выполнились по одному разу

Заключение

Выводы о проделанной работе

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

Возможные сферы и варианты внедрения модуля информационной системы

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

Наши рекомендации