Студопедия — Справочник «Статус заявления».
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Справочник «Статус заявления».






Объектами классификации являются статусы заявления.

Атрибуты сущности:

- идентификатор статуса - уникальный идентификатор статуса;

- наименование - Наименование статуса;

- псевдоним - Псевдоним статуса;

- ключ сортировки - ключ сортировки.

Сущность «Таблица со сведениями о заявлениях».

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

Атрибуты сущности:

- идентификатор заявления - уникальный идентификатор заявления;

- идентификатор статуса - статус заявления;

- дата создания - дата создания заявления;

- номер заявления - номер заявления;

- идентификатор заявителя - уникальный идентификатор заявителя;

- идентификатор продукции - уникальный идентификатор продукции;

- идентификатор результата выдачи технических свидетельств - уникальный идентификатор результата выдачи технических свидетельств;

- дата последнего изменения заявления - дата последнего изменения заявления.

Сущность «Таблица со сведениями о заявителях».

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

Атрибуты сущности:

- идентификатор заявителя - уникальный идентификатор заявителя;

- наименование заявителя - наименование юридического лица;

- ИНН - ИНН юридического лица;

- КПП - КПП юридического лица;

- адрес - адрес юридического лица;

- контактное лицо - ФИО ответственного лица заявителя;

- телефон - телефон ответственного лица заявителя;

- факс - факс ответственного лица заявителя;

- электронный адрес - электронный адрес ответственного лица заявителя.

Сущность «Таблица со сведениями о продукции».

Эта сущность описывает сведения о продукции заявителя.

Атрибуты сущности:

- идентификатор продукции - уникальный идентификатор продукции;

- наименование - наименование продукции;

- наименование производителя - наименование производителя продукции;

- назначение - описание назначения продукции;

- нормативы - нормативы изготовления продукции.

Сущность «Таблица со сведениями о вложениях».

Эта сущность описывает сведения о вложения передаваемых вместе с заявлением.

Атрибуты сущности:

- идентификатор вложения - уникальный идентификатор вложения;

- идентификатор заявления - уникальный идентификатор заявления;

- наименование вложения - наименование вложения;

- размер вложения - размер вложения в байтах;

- комментарий - комментарий пользователя к вложению;

- расширение вложения - расширение вложения;

- MIME Type - тип вложения в формате MIME;

- тип вложения - тип вложения;

- вложение - экземпляр вложения;

- подпись вложения - подпись вложения;

- хэш - отпечаток вложения;

- статус просмотра - вложение выгружено оператором.

Сущность «Таблица со сведениями о результате выдачи технических свидетельств».

Эта сущность описывает сведения о вложения передаваемых вместе с заявлением.

Атрибуты сущности:

- идентификатор - уникальный идентификатор;

- тип результата - тип результата ответа (положительный, отрицательный);

- дата выдачи - дата выдачи технического свидетельства;

- номер свидетельства - номер технического свидетельства;

- номер письмо (+) - номер сопроводительного письма в случае положительного ответа;

- дата отправки письма (+) - дата отправки сопроводительного письма в случае положительного ответа;

- номер письмо (-) - номер сопроводительного письма в случае отрицательного ответа;

- дата отправки письма (-) - дата отправки сопроводительного письма в случае отрицательного ответа;

- письмо - сопроводительное письмо;

- срок действия - срок действия технического свидетельства.

2.1.2 Физическая структура

Данные на машинных носителях располагаются таким образом, что справочники и таблицы данных хранятся на сервере баз данных с установленной СУБД ORACLE.

Схема физической структуры данных представлена на рисунке 4.

Рисунок 4 Физическая структура данных

Описание таблицы «DICT_REQUEST_STATUS»

Список полей:

- ID_STATUS - тип данных NUMBER;

- S_NAME - тип данных VARCHAR2;

- N_ORDER - тип данных NUMBER;

- S_CLASS - тип данных VARCHAR2.

Описание таблицы «DAT_CUSTOMER»

Список полей:

- ID_CUSTOMER - тип данных NUMBER;

- S_NAME - тип данных VARCHAR2;

- S_INN - тип данных VARCHAR2;

- S_KPP - тип данных VARCHAR2;

- S_ADDRESS - тип данных VARCHAR2;

- S_PERSON - тип данных VARCHAR2;

- S_TEL_NUMBER - тип данных VARCHAR2;

- S_FAX - тип данных VARCHAR2;

- S_MAIL - тип данных VARCHAR2.

Описание таблицы «DAT_DOC»

Список полей:

- ID_DOC - тип данных NUMBER;

- ID_REQUEST - тип данных RAW;

- S_NAME - тип данных VARCHAR2;

- S_SIZE - тип данных NUMBER;

- S_COMMENTARY - тип данных VARCHAR2;

- S_EXT - тип данных VARCHAR2;

- B_FILE - тип данных BLOB;

- S_MIME - тип данных VARCHAR2;

- B_SIGN - тип данных VARCHAR2;

- R_HASH - тип данных RAW;

- IS_LOAD - тип данных NUMBER.

Описание таблицы «DAT_MANUFACTURER»

Список полей:

- ID_MANUFACTURER - тип данных NUMBER;

- S_NAME - тип данных VARCHAR2;

- S_PRODUCTION - тип данных VARCHAR2;

- S_DESTINATION - тип данных VARCHAR2;

- S_NORM - тип данных VARCHAR2.

Описание таблицы «DAT_REQUEST»

Список полей:

- ID_REQUEST - тип данных RAW;

- ID_STATUS - тип данных NUMBER;

- D_CREATE - тип данных DATE;

- N_NUMBER - тип данных NUMBER;

- ID_CUSTOMER - тип данных NUMBER;

- ID_MANUFACTURER - тип данных NUMBER;

- ID_FORM - тип данных NUMBER;

- D_PERMIT - тип данных DATE;

- D_UPDATE - тип данных DATE;

- USER_ID - тип данных NUMBER.

Описание таблицы «DAT_FORM»

Список полей:

- ID_FORM - тип данных NUMBER;

- N_TYPE - тип данных NUMBER;

- N_TECHNICAL_CERTIFICATE - тип данных VARCHAR2;

- D_CREATE_CERTIFICATE - тип данных DATE;

- ID_DOC_CERTIFICATE - тип данных NUMBER;

- N_LETTER - тип данных VARCHAR2;

- D_SEND_LETTER - тип данных DATE;

- ID_DOC_LETTER - тип данных NUMBER;

- N_LETTER_CANCEL - тип данных VARCHAR2;

- D_SEND_LETTER_CANCEL - тип данных DATE;

- ID_DOC_LETTER_CANCEL - тип данных NUMBER;

- D_DURATION - тип данных DATE.

2.2 Модель вариантов использования

Модель вариантов использования была спроектирована на основе поставленных задач, а так же на основе модели как есть и как должно быть с учетом пожелания заказчика (рисунок 5).

Рисунок 5 - Модель вариантов использования

Актер «Пользователь», в качестве данного актера выступают пользователи системы.

Актер «База данных», в качестве данного актера выступает база данных.

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

Прецедент «Обработать заявление», позволяет обрабатывать заявление, то есть прикреплять результат обработки заявления.

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

Прецедент «Просмотреть отчет», позволяет пользователям просматривать отчеты, основанные на статусах заявлений.


 

2.3 Моделирование классов

2.3.1 Моделирование классов для прецедента «Просмотреть таблицу заявлений»

Модель классов для прецедента «Просмотреть таблицу заявлений», состоит из трех классов. Класс RequestManager будет реализован на языке PHP, классы F_RequestManager и F_Resize будут реализованы на языке JavaScript. Диаграмма классов представлена на рисунке 6.

Рисунок 6 - Диаграмма классов для прецедента «Просмотреть таблицу заявлений»

Класс RequestManager, реализует интерфейс раздела «Заявления», а так же имеет набор функций для взаимодействия с объектами заявлений.

Класс F_RequestManager, реализует функционал раздела «Заявления» на стороне пользователя.

Класс F_Resize, в нем функции для обеспечения изменения интерфейса при изменении размера окна браузера.

2.3.2 Моделирование классов для прецедента «Обработать заявление»

Модель классов для прецедента «Обработать заявление», состоит из пяти классов. Класс Request и OneRequest будет реализованы на языке PHP, классы F_RequestManager, F_Resize и F_RequestFormManager будут реализованы на языке JavaScript. Диаграмма классов представлена на рисунке 7.

 

Рисунок 7 - Диаграмма классов для прецедента «Обработать заявление»

Класс F_Resize, в нем функции для обеспечения изменения интерфейса при изменении размера окна браузера.

Класс F_RequestManager, реализует функционал раздела «Заявления» на стороне пользователя.

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

Класс OneRequest, Обладает необходимым функционалом для реализации интерфейса форм обработки заявлений.

Класс Request, реализует сущность заявление.


 

2.3.3 Моделирование классов для прецедента «Просмотреть таблицу свидетельств»

Модель классов для прецедента «Просмотреть таблицу свидетельств», состоит из трех классов. Класс PermIssued будет реализован на языке PHP, классы F_Resize и F_PIManager будут реализованы на языке JavaScript. Диаграмма классов представлена на рисунке 8.

 

Рисунок 8 - Диаграмма классов для прецедента «Просмотреть таблицу свидетельств»

Класс F_Resize, в нем функции для обеспечения изменения интерфейса при изменении размера окна браузера.

Класс F_PIManager, реализует работу интерфейса на стороне пользователя в разделе «Выданные свидетельства».

Класс PermIssued, реализует интерфейс для раздела «Выданные свидетельства»

2.3.4 Моделирование классов для прецедента «Просмотреть отчет»

Модель классов для прецедента «Просмотреть отчет», состоит из трех классов. Класс ReportManager будет реализован на языке PHP, классы F_Resize и F_ReportManager будут реализованы на языке JavaScript. Диаграмма классов представлена на рисунке 9.

Рисунок 9 - Диаграмма классов для прецедента «Просмотреть отчет»

Класс Report, реализует сущность отчет.

Класс ReportManager, обладает необходимыми функциями для создания интерфейса раздела «Отчеты» и для взаимодействия этого интерфейса с объектами отчета.

Класс F_ReportManager, обеспечивать работу интерфейса на стороне пользователя.

2.3.5 Общая модель классов системы.

Все классы поделены на два основных пакета:

- PHP, те классы которые реализованы на языке PHP;

- JavaScript, те классы которые реализованы на JavaScript.

Класс F_InterfaceManager, данный класс обладает функциями, которые необходимые для работы общих частей интерфейса.

На рисунке 10 изображена общая структура классов всей системы.

Рисунок 10 - Общая модель классов системы

2.4 Моделирование взаимодействия

2.4.1 Диаграмма взаимодействия для прецедента «Просмотреть таблицу заявлений».

Диаграмма взаимодействия основана на объектах трех классов, диаграмма изображена на рисунке 11.

Рисунок 11 - Диаграмма взаимодействия для прецедента «Просмотреть таблицу заявлений»

Изначально инициализация происходит на стороне php, создается объект класса RequestManager, в нем выполняется основная функция execute, в которой производится выборка контента для данной страницы. По умолчанию вызывается метод show. В методе show производится подгруздка шаблона отображения и контент по умолчанию. Контентом по умолчанию является таблица с заявлениями. Логика построения таблицы реализована в методе actionDefaultTable. После завершения работы этих функций сформированный контент передается в браузер пользователя, где инициализируется объект языка JavaScript F_RequestManager, данный объект во время инициализации вызывает метод resize класса F_Resize, необходимая для обеспечения правильного отображения контента HTML страницы в браузере при изменении размера окна браузера.


 

2.4.2 Диаграмма взаимодействия для прецедента «Обработать заявление».

Диаграмма взаимодействия основана на объектах пяти классов, диаграмма изображена на рисунке 12.

Рисунок 12 - Диаграмма взаимодействия для прецедента «Обработать заявление»

На данной диаграмме показано как осуществляется обработка заявления. Изначально в созданном JavaScript объекте, пользователь вызывает метод getFrom для получения формы, данный сигнал передается на php, где создается объект OneRequest, в нем вызывается функция execute в которой создается объект Reuqest, а в ней вызывается метод getData, для получения данных формы, после все переходит в функцию getContent, которая после своего завершения инициализирует JavaScript объект F_requestFormManager, после его инициализации производится вызов расстановки размеров формы. В текущем состоянии форма заполняется пользователем и ожидает момент когда пользователь нажмет на кнопку сохранить, как только это происходит производится вызов метода saveData, при помощи которого все данные передаются на сторону php и там у объекта OneRequest вызывается метод execute, в которой производится инициализация объекта Request и дальнейшее его сохранение.

2.4.3 Диаграмма взаимодействия для прецедента «Просмотреть таблицу свидетельств»

Диаграмма взаимодействия основана на объектах пяти классов, диаграмма изображена на рисунке 13.

Изначально инициализация происходит на стороне php, создается объект класса permIssued, в нем выполняется основная функция execute, в которой производится выборка контента для данной страницы. По умолчанию вызывается метод show. В методе show производится подгруздка шаблона отображения и контент по умолчанию. Контентом по умолчанию является таблица. Логика построения таблицы реализована в методе getTable. После завершения работы этих функций сформированный контент передается в браузер пользователя, где инициализируется объект языка JavaScript F_PIManager, данный объект во время инициализации вызывает метод resize класса F_Resize, необходимая для обеспечения правильного отображения контента HTML страницы в браузере при изменении размера окна браузера.

Рисунок 13 - Диаграмма взаимодействия для прецедента «Просмотреть таблицу свидетельств»

2.4.4 Диаграмма взаимодействия для прецедента «Просмотреть отчет»

Диаграмма взаимодействия основана на объектах трех классов, диаграмма изображена на рисунке 14.

Изначально инициализация происходит на стороне php, создается объект класса ReportManager, в нем выполняется основная функция execute, в которой производится выборка контента для данной страницы. По умолчанию вызывается метод show. В методе show производится подгруздка шаблона отображения и контент по умолчанию. Для определения режима отображения используется функция getMode, режимом по умолчанию является таблица. Логика построения таблицы реализована в методе getTable. После завершения работы этих функций сформированный контент передается в браузер пользователя, где инициализируется объект языка JavaScript F_ReportManager, данный объект во время инициализации вызывает метод resize класса F_Resize, необходимая для обеспечения правильного отображения контента HTML страницы в браузере при изменении размера окна браузера.

Рисунок 14 - Диаграмма взаимодействия для прецедента «Просмотреть отчет»

2.5 Программный интерфейс

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

- интерфейс для входа в систему, изображен на рисунке 15. На данном интерфейсе пользователь вводит свой логин и пароль для входа в систему.

- интерфейс просмотра общего списка заявлений, изображен на рисунке 16.

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

Рисунок 15 - Интерфейс входа в систему

Рисунок 16 - Интерфейс просмотра общего списка заявлений

При двойном клике, на какое-либо заявления будет предложен интерфейс обработки заявления, изображенный на рисунке 17. Первая активная вкладка «Документы», в ней представлены данные заявления.

Рисунок 17 - Интерфейс обработки заявления

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

Рисунок 18 - Форма ввода результата

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

Рисунок 19 - Интерфейс просмотра выданных свидетельств

При двойном щелчке на какое-либо свидетельство, откроется интерфейс редактирования заявления. На рисунке 20 приведен пример интерфейса.

Рисунок 20 - Интерфейс редактирования свидетельства

При нажатии кнопки «Добавить» откроется интерфейс, для создания свидетельства приведенный на рисунке 21.

Рисунок 21 - Интерфейс создания свидетельства

При переходе на пункт меню «Отчеты», откроется интерфейс для аналитического представления данных по заявлениям, на рисунке 22 приведен пример интерфейса.

Рисунок 22 - Интерфейс аналитического представления данных

 

2.6 Выбор языка программирования

Для разработки тонкого клиента системы было решено использовать скриптовый язык программирования PHP. Основанием для данного выбора было в первую очередь требование заказчика. Учитывая данное требование, было решено использовать разработанный программистами компании «ПРОГНОЗ» продукта «PHP+ORACLE», данный продукт является закрытой внутренней разработкой компании. Продукт «PHP+ORACLE» обладает набором модулей, которые позволяют разработчику в кричащие сроки разработать программное обеспечение на языке PHP. В состав модулей входит такие модули как:

- Grid – модуль вывода таблиц с возможностью редактирование ячеек таблицы, ввода формул, изменение размера столбцов, и другие функции схожие с excel;

- Table – модуль вывода таблицы с поиском и постраничной навигацией;

- Embed – модуль вывода графики отображения данных, такие как карта, рейтинг, диаграмма, бостонская матрица и другие;

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

- Admin – модуль администрирования пользователей.

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

Еще одной причиной выбора данного языка программирования является использованием СУБД ORACLE, изначально весь программный комплекс использует исключительно данную СУБД. Благодаря использованию продукта «PHP+ORACLE», система разработанная на языке PHP будет достаточно защищенной, и срок разработки системы будет уменьшен.


 

2.7 Программирование

При разработке прикладного программного обеспечения были использованы методы объектно-ориентированного программирования (ООП).

В качестве средств разработки программного обеспечения было использовано:

- проектирование структуры БД Системы выполнено с использованием средства ErWin на основе реляционного подхода;

- для реализации таблиц в СУБД ORACLE была использована программа Toad for Oracle;

- создание и управление БД Системы осуществляется средствами ORACLE 10g Database Server;

- для реализации программного кода на языке PHP и JavaScript была использована IDE NetBeans;

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

- PHP 5 – процессор гипертекста. Возможности данной библиотеки были использованы для разработки системы, на стороне сервера используя язык программирования php. PHP – это скриптовый язык программирования применяемый для разработки веб-приложений;

- PL/SQL – язык программирования, процедурное расширение языка SQL, разработанное корпорацией Oracle, PL/SQL встроен в СУБД Oracle Database. Данный язык обеспечил процесс реализации пакетов для взаимодействия системы с базой данных;

- jQuery – библиотека, которая обеспечила процесс реализации более гибкого интерфейса на стороне клиента;

- PHP+ORACLE – ядро реализованное на php и js, данное ядро обладает множеством модулей для реализации информационных систем на языке php.

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

Все классы реализованы примерно по одному и том уже принципу, в каждом из классов реализованы следующие методы:

- __construct - это конструктор, который срабатывает при создании экземпляра класса, в нем описано сбор данных из глобального массива $_REQUEST, а так же при заборе данных реализуется процесс отчистки данных;

- Execute - эта функция осуществляет процесс так скажем основного разветвителя действий по классу, именно в результате выполнения этой функции мы попадаем в те или иные функции класса;

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

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

Разработка интерфейса была основана на модели «Как есть», а в дальнейшем используя модель «Как должно быть». По результату работы дизайнеров мы получили красивый интерфейс. Для реализации работы интерфейса, было решено использовать библиотеку jquery, на стороне клиента, а так же систему шаблонов. Для каждой страницы был написан свой JS менеджер, который обеспечивал работу страницы на стороне клиента. Основной идеей использование шаблонов отображение позволяет вынести из основного кода системы все те элементы, которые отвечают за интерфейс между пользователем системы и самим ядром. Данный подход упрощает процесс разработки системы, а так же позволяет навести порядок в разрабатываемом коде, вынося весь код интерфейса в отдельные файлы.

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

Первым сервером является сервер приложений.

Сервер приложений ПК «Госуслуги» функционирует на сервере с установленным программным обеспечением:

- операционная система Microsoft Windows Server 2003;

- Microsoft IIS 6.0.

Рекомендуемая аппаратная конфигурация:

- процессор, один 64-разрядный двенадцати ядерный процессор с таковой частотой не менее 2,53 ГГц;

- оперативная память, не менее 16ГБ;

- жесткий диск 500 Gb SAS 15000 rpm или эквивалент, не менее 2-х шт.;

- возможность подключения по сети Ethernet – 2-х портов, c поддержкой протокола iSCSI.

Рейд контроллер с комплектом расширения памяти до 256MB (RAID 0/1/1+0/5/5+0) и батарейной поддержкой или эквивалент.

Сервер баз данных ПК «Госуслуги» функционирует на сервере с установленным программным обеспечением:

- операционная система Microsoft Windows Server 2008 RC2 Standard SP1;

- ORACLE 10g Database Server.

Рекомендуемая аппаратная конфигурация:

- процессор, один 64-разрядный двенадцати ядерный процессор с таковой частотой не менее 2,53 ГГц;

- оперативная память, не менее 24ГБ;

- жесткий диск 500 Gb SAS 15000 rpm или эквивалент, не менее 4-х шт.;

- возможность подключения по сети Ethernet – 2-х портов, c поддержкой протокола iSCSI;

Рейд контроллер с комплектом расширения памяти до 256MB (RAID 0/1/1+0/5/5+0) и батарейной поддержкой или эквивалент.

Тонкий клиент системы функционирует на следующих операционных системах: Windows 2000/XP/7.

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

- Веб-браузер Google Chrome 12 версии и выше или Mozilla Firefox 10 версии и выше;

- КриптоПро ЭЦП;

- Browser plug-in и использованием КриптоПро CSP 3.6;


 

2.8 Тестирование

Для выявления, дефектов программного обеспечения были проведены следующие тесты:

- тестирование все доступной функциональности;

- нагрузочное тестирование на 10 одновременно работающих пользователях в течении 20 минут.

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

Пути поведение пользователей:

- выгрузка в excel;

- открытие раздела «Заявления»;

- открытие раздела «Выданные свидетельства»;

- открытие раздела «Отчеты»;

- назначение номера;

- установка статуса «новое»;

- установка статуса «в обработке»:

- установка статуса «закрыто»;

- открытие заявления;

- заполнение формы.

Ниже на рисунках 23, 24, 25 представлены скриншоты отчета, который выдает программа в результате нагрузочного тестирования.

Рисунок 23 - Отчет нагрузочного тестирования «Приложение 1»

 

Рисунок 24 - Отчет нагрузочного тестирования «Приложение 2»

 

Рисунок 25 - Отчет нагрузочного тестирования «Приложение 3»

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

В качестве примера тестирование функциональности ниже приведен пример тестирование процесса обработки заявления.

1. Для начала войдем в систему. В результате выведется страница по умолчанию.

Рисунок 26 - Страница по умолчанию

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

Рисунок 27 - Список новых заявлений

Выберем первое заявление и введем номер заявления.

После ввода сообщения выводится диалоговое окно с предложением «Сохранить внесенные изменения?», рисунок 28.

Рисунок 28 - Диалоговое окно сохранения

Нажимаем «ОК». В связи с тем что номер заявления уже занят другим заявлением, будет выведено сообщение об ошибке, рисунок 29.

Рисунок 29 - Модальное окно ошибки номера

Нажимаем «ОК».

Введем другой номер заявления «6886». В результате заявлению присвоится номер заявления и изменится его статус на «Зарегистрировано».

Для обработки заявления щелкнем 2 раза по заявлению. В результате получим интерфейс для обработки Заявлений, рисунок 30.

Рисунок 30 - Интерфейс обработки заявления

Нажмем на кнопку «выгрузить» для получения всех документов. У всех документов в списке изменяются статус.

Кроме того само заявление изменит свой статус на «В обработке», рисунок 31.

Рисунок 31 - Заявление с измененным статусом

Для продолжения обработки заявления перейдем на вкладку «Результат», рисунок 32.

Теперь необходимо дождаться подписи руководителя. Статус заявления на данный момент изменится на «обработано», рисунок 33, так как мы заполнили все поля вкладки «Результат».

Для подписи документа зайдем в систему под другим пользователем, с ролью «Зам. министра». Под данным пользователем вкладка «результат» имеет другой вид, рисунок 34.

Рисунок 32 - Вкладка «Результат»

Рисунок 33 - Пример записей с статусом «обработан»

Для подписи документа нажмем кнопку «подписать». В результате форма будет перегружена и примет вид, рисунок 35.

Статус заявления изменится на «подписано».

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

Строка со значением «подпись документов» имеет положительный вид. Для закрытия заявления нажмем на кнопку «Закрыть».

Теперь заявление имеет статус «закрыто», рисунок 36.

Рисунок 34 - Вкладка результат под пользователем с ролью «Зам. министра»

Рисунок 35 - Подписанная форма

 

Рисунок 36 - Заявления со статусом закрыто

По результату данного тестирования был проведен процесс обработки заявления с негативным результатом. Цель была достигнута без ошибок.

3. Экономическая часть

3.1 Определение затрат на разработку программного продукта

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

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

, (1)

где – трудоемкость проекта в человеко-месяцах;

– цена одного человеко-месяца.

3.2 Расчет цены одного человеко-месяца

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

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

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

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

- затраты на содержание и эксплуатацию основных фондов (без аморти­зации), руб./ год;

- затраты на содержание управленческого персонала (в % от фонда оп­латы труда исполнителей);

- средняя зарплата работников (исполнителей), руб./ мес;

- дополнительная зарплата работников (в % от п.5);

- отчисления на социальные нужды (в % от зарплаты);

- затраты на текущий ремонт, руб./ год.

- оплата услуг контрагентов, руб./ год.

- стоимость используемого программного обеспечения и амортизаци­онные отчисления.

- местные налоги, относящиеся на себестоимость.

На основе перечисленных исходных данных рассчитывается цена одного человеко-месяца. Структура цены одного человеко-месяца (Цчм) продукции (работы, услуги) представлена в таблице 1.

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

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

 


 

 

Таблица 1 - Статьи затрат для расчета цены одного человеко-месяца

Статья затрат
Основная зарплата исполнителей
Дополнительная зарплата исполнителей (15%)
Районный коэффициент (15%)
Полная зарплата исполнителей
Отчисления на социальные нужды (34%)
Прочие затраты
аренда помещений
амортизация оборудования
износ программного обеспечения
содержание и эксплуатация основных фондов
отчисления на содержание управленческого персонала
коммунальные и прочие платежи
Итого: собственные затраты
Нормативная прибыль (10%)
Налог на добавленную стоимость (НДС) (18%)
Итого: цена одного человеко-месяца

3.2.1 Единовременные затраты

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

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

Таблица 2 - Спецификация единовременных затрат

Наименование Цена, руб. Количество, шт.
Компьютер 24 000  
Операционная система «Microsoft Windows 7 Ultimate» 10 000  
«Microsoft Office 2010» 6 000  
Итого: 40 000  

= 40 000 руб.

3.2.2 Прямые затраты

Зарплата персонала (основная и дополнительная):

, (2)

где = 15000 руб./мес. – основная заработная плата разработчика;

= 15% – премиальные надбавки;

= 15% – уральский коэффициент.

руб. (3)

3.2.3 Отчисления на социальные нужды

Отчисления на социальные нужды отражают обязательные отчисления по установленным законодательством Российской Федерации нормам и выражается в едином социальном налоге. Величина отчислений составляет 34%, в т.ч. Пенсионный фонд - 26%, Фонд соцстрахования - 2,9%, фонд обязательного медицинского страхования - 5,1%

руб. (4)

3.2.4 Содержание и эксплуатация оборудования

Данная статья расходов включает в себя:

- амортизация оборудования

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

, (5)

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

– отчисления на реновацию оборудования.

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

, (6)
(7)

где = 24000 руб. – балансовая стоимость компьютера;

= 12 мес – время использования компьютера в год.

руб.  
руб.  
Таким образом: руб.  

- амортизация программного обеспечения

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

Таким образом: руб.  

- затраты на эксплуатацию оборудования

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

3.2.5 Амортизация зданий, сооружений

Все амортизационные отчисления входят в стоимость аренды помещения. Стоимость аренды комнаты - 30 000 руб. Расчет цены одного человеко-месяца приведен в таблице 3.3.

Таблица 3 - Расчет цены одного человеко-месяца

Статья затрат Сумма, руб.
Основная зарплата исполнителей 15 000
Дополнительная зарплата исполнителей (15%) 2 250
Районный коэффициент (15%) 2 250
Полная зарплата исполнителей 19 500
Отчисления на социальные нужды (34%) 6 630
Прочие затраты  
аренда помещений 30 000
амортизация оборудования  
износ программного обеспечения  
коммунальные и прочие платежи 8 000
Итого: собственные затраты 64 997
Нормативная прибыль (10%) 6 500
Налог на добавленную стоимость (18%) 1 170
Итого: цена одного человеко-месяца 72 667

3.3 Определение трудоемкости разработки программного продукта

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

Термин «объем программного продукта» охватывает все команды, разработанные в ходе проектирования и переработанные в машинный код с помощью процессоров, компиляторов и ассемблеров. Команды определяются как кодовые строки. Поэтому строка, содержащая два и большее число исходных операторов, считается одной командой, а пятистрочное описание команды – пятью командами.

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

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

, (8)

где – число исходных команда в тысячах;

– коэффициенты изменения трудоемкости.

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

В ранних исследованиях, проведенных в 60-х годах, было рассмотрено 104 различных фактора, каждый из которых до некоторой степени влияет на трудоемкость программной разработки. В результате проведенного анализа факторов, используемых в конструктивной модели стоимости, было получено 12 стоимостных атрибутов, объединенных в четыре группы.

1. Атрибуты создаваемого программного продукта:

1.1. ТНПП – требуемая надежность программного продукта;

1.2. СПП – сложность программного продукта;

1.3. МК – мобильность (переносимость) использования компонент программного продукта для других разработок;

2. Атрибуты исполнителей:

2.1. КА – квалификация аналитика;

2.2. КП – квалификация программиста;

2.3. КЗ – квалификация заказчика;

3. Атрибуты проекта:

3.1. ПСМ – применение современных методов разработки программного продукта;

3.2. ИИС – использование инструментальных средств;

3.3. ОСР – ограничение сроков разработки.

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

- требуемая надежность программного продукта (ТНПП). Является наиболее важным фактором, отражающим качество программного продукта. Зависимость C11 от Тн можно вычислить по формуле.

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

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

- квалификация аналитика (КА). На сегодняшний день отсутствуют апробированные методы надежного измерения квалификации специалистов. Данный фактор приближенно может оцениваться продолжительностью работы аналитика по данной тематике, однако это не учитывает его индивидуальных особенностей. При наличии опыта работы в данной области от 1 до 15 лет производительность труда может повышаться в 1,5-3 раза. Численное значение стоимостного коэффициента определяется с помощью шкалы рейтингов (таблица 4).

- квалификация программиста (КП). При создании программных продуктов опыт применения методов, средств и всего технологического процесса отражает квалификация программиста. После 2-3 лет работы в наибольшей степени проявляются индивидуальные особенности программистов, их творческие способности, тщательность в работе, рациональное использование средств автоматизации. Для опытных специалистов переход на новый язык программирования обычно не требует особых усилий и успешно проходит за несколько месяцев. Численное значение стоимостного коэффициента определяется с помощью шкалы рейтингов (таблица 4 и таблица 5).

- квалификация заказчика (КЗ). При испытаниях программного продукта заказчик зачастую обнаруживает, что решаются не те задачи и не так как нужно, вследствие чего необходима переработка готовых программ. Даже весьма квалифицированные заказчики вынуждены иногда корректировать техническое задание на любых этапах разработки, что влияет в среднем на снижение производительности труда разработчиков на 10-20 %. В предельных случаях неоднократное корректирование задания может привести к увеличению затрат даже в 3-5 раз.

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

- использование инструментальных средств (ИИС). Численное значение стоимостного коэффициента определяется с помощью шкалы рейтингов.

- ограничение сроков разработки (ОСР). В конструктивной модели стоимости срок разработки оценивается по следующей формуле:

, (9)

где ЧМ – трудоемкость проекта в человеко-месяцах.

Уменьшение сроков разработки проекта ведет к увеличению трудоемкости разработки примерно на 10-20%. Также и увеличение этих сроков ведет к увеличению трудоемкости из-за простоев аппаратных и программных средств разработки, а также из-за неэффективной работы разработчиков. Численное значение стоимостного коэффициента определяется с помощью шкалы рейтингов.

Таблица 4 - Численные значения стоимостных коэффициентов

Коэф-фициент Фактор трудоем-кости Коэффициент для рейтингов
очень низкий низкий номи-нальный высокий очень высокий
C11 ТНПП 0,75 0,88   1,15 1,4
C12 СПП   0,43 0,87     1,69   2-3  
C13 РБД   -   0,94     1,08   1,16  
C14 МК -   -     1,15   1,53
C21 ОБД   -   -     1,67   3,33  
C22 ОП   -   -     1,67   3,33
C31 КА   1,46   1,19     0,86   0,71
C32 КП   1,42   1,17     0,86   0,7  
C33 КЗ   1,23   1,11     0,91   0,85  
C41 ПСМ   1,24   1,1     0,91   0,82  
C42 ИИС   1,24   1,1     0,91   0,83  
C43 ОСР   1,23   1,08     1,04   1,1  

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

Используя коэффициенты затрат труда, определим полные затраты труда на разработку подсистемы:

Таблица 5 - Оценка факторов трудоемкости

Фактор трудоемкости Характеристика условий разработки Рейтинг Коэффициент затрат труда
ТНПП Вся информация, вводимая с помощью подсистемы сохраняется в файле с расширением.dt, то есть при потере информацию можно восстановить Низкий 0,88
СПП Объем кода подсистемы 1,1 КЧИК Очень низкий 0,43
МК Используются dll Номи-нальный  
ОБД Использование около 50% быстродействия процессора Номи-нальный  
ОП Использование до 50% имеющейся оперативной памяти (350-400Mb из 1024Mb) Очень высокий  
КА Опыт работы в предметной области 12 мес Низкий  
КП Опыт работы 12 мес Номинальный 0,7
КЗ Есть некоторый опыт заказов, знаком с предметной областью Высокий 0,85
ПСМ Некоторое применение современных методов разработки программного продукта Номи- нальный 0,91
ИИС Инструментальные средства программирования и отладки среднего уровня Номи- нальный 0,83
ОСР Номинальный срок разработки Номи-нальный  

 

Таким образом, затраты труда на разработку данной подсистемы составили 3,09 человеко-месяца. Затраты денежных средств на разработку:

рублей.

Оценим следующие характеристики проекта:

- Срок разработки:

месяцев.

- Производительность труда:

.

- Средние штаты для разработки:

человек.

3.4 Расчет экономической эффективности

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

- индекс прибыльности;

- чистый дисконтированный доход;

- дисконтированный срок окупаемости.

3.4.1 Расчет капиталовложений в проект

Для расчета капитальных вложений в проект воспользуемся формулой:

, (9)

где – единовременные затраты;

– затраты на разработку;

- прочие затраты.

руб.  

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

Сравним среднее время, затрачиваемое на выполнение различных работ до внедрения системы и после таблице 6.

Таблица 6 - Таблица сравнения трудозатрат

Виды работ Время выполнения работы
до внедрения системы, час. после внедрения системы, час.
Передача документов и заявлений   0,5
Передача информации о состоянии заявления   0,5
Формирование отчетности   0,5
Сумма   1,5

 

Из таблицы 6 видно, что при внедрении системы трудоемкость выполнения работ уменьшается на 50%.

Произведем расчеты годового экономического эффекта. Исходя из средней зарплаты сотрудников Минрегиона России, примем годовой фонд заработной платы одного человека равным 600000 рублей. Всего сотрудников работающих с данной системой 5, при этом трудоемкость работы каждого из них уменьшается на 50%, вычислим годовой экономический эффект.

руб.

3.4.2 Расчет чистого дисконтированного дохода

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

для постоянной нормы дисконта вычисляется по формуле:

, (11)

где - чистая прибыль в t-ом году;

А - амортизационные отчисления в t-ом году;

И - инвестиции в планируемом году;

- коэффициент дисконтирования;

- горизонт расчета ( = 5 лет);

- номер шага расчета ( = 0, 1, 2,…, ).

Если чистый дисконтированный доход проекта положителен, то проект при данной норме дисконта является эффективным и может быть принят. Чем больше , тем эффективнее проект. Если < 0, то проект неэффективен.

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

.

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

Пусть = 10% годовых.

Результаты расчета чистого дисконтированного дохода для данного инвестиционного проекта сведены в таблице 3.8.

= 1130158,9 рублей. Положительный свидетельствует об эффективности инвестиций.

Таблица 7 - Чистый дисконтированный доход

Год Платежи по И (К) Эффект (ЧП+А) Денежный поток Коэффициент дисконта (D=0.1) Текущий ДД ЧДД нарастающим итогом
  -303408   -303408 1,00 -303408 -303408
    0,91    
    0,83    
    0,75    
    0,68    
    0,62    
Итого -303408     -   -

3.4.3 Расчет внутренней нормы доходности инвестиций

Внутренняя норма доходности представляет собой ту норму дисконта (), при которой величина приведенных эффектов равна приведен­ным капиталовложениям. Или = , при которой = 0. Внутренняя норма доходности определяет­ся в процессе расчета и сравнивается с требуемой инвестором нормой дохода на вкладываемый капитал.

Иными словами







Дата добавления: 2015-10-15; просмотров: 693. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

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

Трамадол (Маброн, Плазадол, Трамал, Трамалин) Групповая принадлежность · Наркотический анальгетик со смешанным механизмом действия, агонист опиоидных рецепторов...

Мелоксикам (Мовалис) Групповая принадлежность · Нестероидное противовоспалительное средство, преимущественно селективный обратимый ингибитор циклооксигеназы (ЦОГ-2)...

Менадиона натрия бисульфит (Викасол) Групповая принадлежность •Синтетический аналог витамина K, жирорастворимый, коагулянт...

Ученые, внесшие большой вклад в развитие науки биологии Краткая история развития биологии. Чарльз Дарвин (1809 -1882)- основной труд « О происхождении видов путем естественного отбора или Сохранение благоприятствующих пород в борьбе за жизнь»...

Этапы трансляции и их характеристика Трансляция (от лат. translatio — перевод) — процесс синтеза белка из аминокислот на матрице информационной (матричной) РНК (иРНК...

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

Studopedia.info - Студопедия - 2014-2024 год . (0.011 сек.) русская версия | украинская версия