Разработка информационной подсистемы тестирования встроенного программного обеспечения PLC-модемов для ЗАО "КИЭП "Энергомера"

Проектирование базы данных, информационной подсистемы PLC-Tester, модуля тестирования и web-приложения. Разработка логической структуры программного продукта и общие требования к техническому обеспечению. Запуск программы и описание тестовых прогонов.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык русский
Дата добавления 30.06.2011
Размер файла 3,2 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

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

Так же хранимые процедуры обладают рядом преимуществ:

повторное использование кода;

сокращение сетевого трафика;

безопасность;

простота доступа.

Список разработанных ранимых процедур и их описание приведены в таблице 2.11.

Таблица 2.11 - Описание хранимых процедур

Название

процедуры

Описание

процедуры

get_at_logs_list

Возвращает список журналов, "прикрепленных" к тестам AT-команд

get_at_test_info

Возвращает информацию о выбранном тесте AT-команд

get_at_tests_list

Возвращает список тестирований AT-команд

get_end_codes_list

Возвращает список кодов завершения

get_log_types_list

Возвращает список типов журналов

get_nncl_logs_list

Возвращает список журналов, "прикрепленных" к тестам команд протокола NNCL

get_nncl_test_info

Возвращает информацию о выбранном тесте команд протокола NNCL

get_nncl_tests_list

Возвращает список тестов команд протокола NNCL

get_test_modes_list

Возвращает список режимов тестирования команд протокола

get_user_info

Возвращает информацию о выбранном пользователе

get_users_list

Возвращает список пользователей

attach_file

Добавляет файл в базу данных

Код описанных хранимых процедур представлен в приложении Г.

2.2.6 Создание пользователей и распределение привилегий

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

Для доступа к базе данных созданы два пользователя, которые описаны в таблице 2.12.

Таблица 2.12 - Описание пользователей базы данных

Пользователь

Привилегии

Описание

plc_tester

INSERT, SELECT

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

php_user

SELECT, EXECUTE

Используется для доступа к базе данных web-приложением

Следует отметить, что учетная запись является составной и принимает форму username@host, где username - имя пользователя, а host - наименование/адрес узла, с которого пользователю username разрешено обращаться к базе данных. Соответственно, администратор сервера, на котором установлена база, данных должен указать фактические адреса машин (можно использовать символ %, который выполняет туже функцию, как и в операторе LIKE).

Для создания пользователя используется оператор CREATE USER, который имеет следующий синтаксис: CREATE USER user [IDENTIFIED BY [PASSORD] password], оператор создает учетную запись user с необязательным паролем password.

Привилегии задаются оператором GRANT. Привилегии INSERT, SELECT и EXECUTE позволяют выполнять добавление данных, выборку данных и выполнять хранимые процедуры, соответственно. Лишить привилегий пользователя можно командой REVOKE.

2.3 Проектирование и разработка модуля тестирования и сбора данных

2.3.1 Проектирование модуля

Модуль тестирования и сбора данных должен производить тестирования PLC-модемов, обрабатывать результаты тестов и сохранять их в базу данных. В информационной подсистеме тестирования PLC-модемов рассматриваются два вида тестов: команд протокола NNCL и AT-команд, поэтому принято решение модуль тестирования и сбора сделать составным.

Модуль TNNCL.dll выполняет тестирование команд протокола NNCL, а TAT.dll - AT-команд. Модули TNNCL.dll и TAT.dll между собой никак не взаимодействуют, и связаны только с модулем PLCTester.exe, это представлено на диаграмме компонентов (рисунке 2.11), в нотации UML.

Рисунок 2.11 - Диаграмма компонентов модуля тестирования/сбора данных в нотации UML

Во время тестирований, подмодули TNNCL.dll и TAT.dll отправляют запросы модемам, принимают ответы от них и передают данные подмодулю PLCTester.exe. Для обеспечения межмодульного взаимодействия используются именованные каналы.

В Windows дизайн именованных каналов смещён к взаимодействию клиент-сервер, и они работают во многом как сокеты: помимо обычных операций чтения и записи, именованные каналы в Windows поддерживают явный "пассивный" режим для серверных приложений. Windows 95 поддерживает клиенты именованных каналов, а системы ветви Windows NT могут служить также и серверами.

К именованному каналу можно обращаться в значительной степени как к файлу. Можно использовать функции Windows API CreateFile, CloseHandle, ReadFile, WriteFile, чтобы открывать и закрывать канал, выполнять чтение и запись. Функции стандартной библиотеки C такие как fopen, fread, fwrite и fclose, тоже можно использовать, в отличие от сокетов Windows, которые не реализуют использование стандартных файловых операций в сети.

PLCTester.exe создает экземпляр именованного канала, к которому подключается один из подмодулей TNNCL.dll или TAT.dll.

При завершении тестирования PLCTester.exe обрабатывает результаты сохраняет их в базу данных.

2.3.2 Разработка модуля TNNCL.dll

Модуль TNNCL.dll реализован как библиотека динамической компоновки - понятие операционных систем Microsoft Windows и IBM OS/2; динамическая библиотека, позволяющая многократное применение различными программными приложениями.

Инициализация тестирования производится функцией модуля TNNCL.dll TNNCLConstructor, которая в параметрах получает входные данные для теста и служебную информацию (настройки последовательного порта, имя именованного канала, дескриптор главного окна приложения). Принудительное завершение тестирование производится вызовом функции TNNCLDestructor (того же модуля). Сам процесс тестирования выполняется в отдельном потоке операционной системы, выполняясь после завершения TNNCLConstructor.

Функции TNNCLConstructor и TNNCLDestructor вызываются модулем PLCTester.exe.

Модуль TNNCL.dll собирает пакет в соответствии с протоколом NNCL, после чего упаковывает его в кадр SLIP, при необходимости производится процедура байтстаффинга.

Границей SLIP-кадра является уникальный флаг END (0xC0). Уникальность этого флага поддерживается байт-стаффингом (byte stuffing) внутри кадра с ESC-последовательностью 0xDB, причём байт END (0xС0) заменяется последовательностью (0xDB, 0xDC), а байт ESC (0xDB) -- последовательностью (0xDB, 0xDD).

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

Обмен данными с модемом производятся через последовательный порт. Для открытия порта используется функция Windows API CreateFile, после чего порт настраивается функцией SetCommState. Запись и чтение производятся функциями ReadFile, WriteFile. Закрывается порт функцией CloseHandle. Весь кадр, отправляется сразу целиком. Получение ответа производится по более сложному алгоритму, чтение данных из порта будет продолжаться, до тех по пока не будет получен второй байт "0xC0" либо пока не выйдет время таймаута (таймаут задается при вызове функции, отвечающей за получение данных).

Модуль реализован на языке программирования C++, в среде программирования NetBeans IDE с компилятором "MinGW".

2.3.3 Разработка модуля TAT.dll

Модуль TAT.dll работает аналогично модулю TNNCL.dll. Основным отличием является то, что данные передаются модулю PLCTester.exe в более простой форме и отправляются не SLIP-кадры а AT_команды.

AT-команды (набор команд Hayes) - набор команд, разработанных в 1977 году компанией Hayes для собственной разработки, модема "Smartmodem 300 baud". Набор команд состоит из серий коротких текстовых строк, которые объединяют вместе, чтобы сформировать полные команды операций, таких как набор номера, начала соединения или изменения параметров подключения.

Для того чтобы модем распознал эти команды, они должны быть записаны в специфической форме. Каждая команда всегда начинается буквами AT или at (от англ. ATtention, за что и получили своё название), дополненных, командой и завершаемой в конце возвратом каретки. Команды воспринимаются модемом только тогда, когда он находится в командном режиме.

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

Стандартизация набора команд Hayes (и AT-команд) выразилась в документе под названием Data Transmission Systems and Equipment - Serial Asynchronous Automatic Dialing and Control, известном как TIA/EIA-602.

Данные модулю PLCTester.exe передаются в виде строки, первый символ которой является "управляющим", возможные значения:

"S" (данные переданы модему);

"R" (данные получены от модема).

Модуль реализован на языке программирования C++, в среде программирования NetBeans IDE с компилятором MinGW.

2.3.4 Разработка модуля PLCTester.exe

Данный модуль связан с базой данных, его основными задачами являются:

обработка данных, полученных от модулей TNNCL.dll и TAT.dll;

сохранение данных в базу данных на сервере.

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

Для работы с базой данных используются классы из пространства имен MySql.Data.MySqlClient:

MySqlConnection (для соединения с базой данных);

MySqlCommand (команда для выполнения SQL-запроса);

MySqlDataReader (для чтения результатов SQL-запросов);

MySqlException (для обработки исключений).

Для работы с именованными каналами используются класс NamedPipeServerStream из пространства имен System.IO.Pipes.

Для работы с последовательным портом используется класс SerialPort из пространства имен System.IO.Ports.

Для записи настроек и экспорта результатов тестирований на диск (в энергонезависимую память) используются классы пространств имен System.IO и System.Runtime.Serialization.Formatters.Binary: FileStream, BinaryFormatter.

Основными экранными формами приложения (модуля PLCTester.exe) являются:

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

главная форма (на ней располагаются все основные инструменты);

формы сохранения результатов в базу данных.

Так же используются вспомогательные формы:

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

форма просмотра информации о задачах, поставленных в очередь на выполнение;

форма менеджера файлов входных данных;

форма настроек запуска внешних приложений.

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

"Тестирование команд протокола" - тестирование команд протокола NNCL;

"Тестирование AT-команд" - тестирование AT-команд;

"Планирование задач и настройки" - настройки приложения и планирование задач;

"Конфигурирование модема" - базовая конфигурация модема;

"Произвольные команды" - терминал.

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

Чтение данных из именованного канала аналогично чтению из файла.

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

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

Данные о задачах, поставленных в очередь, после завершения работы приложения сохраняются в файле на диске.

При конфигурировании модемов реализованы функции чтения и записи конфигурации, а так же записи настроек по умолчанию. Настраиваются модемы AT-командами.

Для работы с потоками в .NET используется класс Thread пространства имен System.Threading.

Для корректной работы и полной функциональности модуль PLCTester.exe использует конфигурационные файлы на жестком диске, это показано на диаграмме компонентов в нотации UML (рисунок 2.12).

Рисунок 2.12 - Диаграмма компонентов модуля тестирования/сбора данных в нотации UML

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

Таблица 2.13 - Описание основных файлов настроек

Имя файла

Описание

Actions.ats

Хранит информацию о задачах, поставленных в очередь на выполнение

ATInputData.atc

Хранит входные данные для тестирования AT-команд

DBConnectionSettings.dbst

Хранит данные для соединения с базой данных

ProtocolInputData.tc

Хранит входные данные для тестирования команд протокола NNCL

RunSettings.rst

Хранит настройки для запуска внешних приложений

Default.mc

Хранит основные настройки приложения

PPortSettings.ps

Хранит настройки последовательного порта для тестирования команд протокола NNCL

ATPortSettings.ps

Хранит настройки последовательного порта для тестирования AT-команд

CPortSettings.ps

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

Модуль PLCTester.exe реализован в виде Windows-приложения, написан на языке программирования C# в интегрированной среде разработки SharpDevelop.

2.4 Разработка web-приложения

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

Web-приложение все необходимые данные извлекает из базы данных, посредством SQL-запросов. Для работы с базой данных используются следующие функции PHP:

mysql_connect(string $hostname, string $user, string $password), для соединения с базой данных и авторизации пользователя (все параметры - необязательные);

mysql_close(int $connect_id), для закрытия соединения (параметр connect_id необязательный);

mysql_select_db(string $db, int $id), для выбора базы данных, с которой нужно работать (параметр id необязательный);

mysql_query(string $query), для выполнения запросов к базе данных;

mysql_errno(int $id), для получения кода ошибки;

mysql_error(int $id), для получения описания ошибки.

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

mysql_result - полчить нужный элемент из набора записей;

mysql_fetch_array - занести запись в ассоциативный массив или числовой массив;

mysql_fetch_row - занести запись в массив;

mysql_fetch_assoc - занести запись в ассоциативный массив;

mysql_fetch_object - занести запись в объект;

mysql_num_row - узнать, сколько записей содержит результат выполнения запроса.

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

mysql_field_name(int $result, int $offset) - возвращает имя поля, находящегося в результате $result по индексу $offset;

mysql_filed_type(int $result, int $offset) - возвращает тип поля с индексом $offset в результате $result.

Для передачи данных из формы в сценарий используется методы POST и GET.

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

Выводы

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

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

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

3. ИНФОРМАЦИОННАЯ ПОДСИСТЕМА "PLC-TESTER"

3.1 Общие сведения о программном продукте

Программный продукт называется "Информационная подсистема PLC-Tester", состоит из следующих модулей:

база данных (используется СУБД MySQL);

модуль тестирования и сбора данных (PLCTester);

web-приложение, для предоставления данных пользователям.

Программное обеспечение, на котором разработано приложение:

dbForge Studio for MySQL/MySQL Administrator (база данных);

SharpDevelop (модуль тестирования и сбора данных);

NetBeand IDE (модуль тестирования и сбора данных, web-приложение).

Модуль тестирования и сбора данных состоит из трёх модулей, один из которых написан на языке программирования C#, а два других - на C++.

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

PLCtools - программа для настройки PLC-модемов, а так же для мониторинга их состояния;

Free Serial Port Monitor - программа для перехвата данных в последовательных портах компьютера.

3.2 Функциональное назначение программного продукта

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

Модуль PLCTester выполняет два вида тестирований:

тестирование команд протокола;

тестирование AT-команд.

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

В программе имеется встроенный планировщик задач, который дает возможность начать выполнение какой-то задачи в определенный момент времени. Это позволяет пользователю не контролировать работу программы на протяжении всего времени от её запуска до завершения работы, что облегчает труд оператора, так как выполнение только одного тестирования может занять около суток. Список задач, которые можно запланировать в приложении:

начать тестирование команд протокола NNCL;

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

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

сохранить журналы тестирования AT-команд;

закрыть приложение;

выключить ПК.

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

Модуль PLCTester позволяет производить базовое конфигурирование PLC-модемов. Основные параметры конфигурирования:

MAC-адрес модема;

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

формат байта при обмене;

время удержания CTS;

режим работы модема;

время ожидания ответа от устройства;

время между байтами в потоке данных;

подсеть, к которой относится модем.

Данная версия программы работает с модемами фирмы "NERO electronics".

Web-приложение предназначено для передачи информации о проведенных тестированиях пользователям. Основная информация о тестах команд протокола NNCL, предоставляемая пользователям: тип теста, режим теста, время начала тестирования, время завершения тестирования, результат завершения тестирования, информация о пользователе (проводившем тестирование), количество запросов, количество ошибок, процент ошибок, количество неполученных ответов, процент неполученных ответов.

Осуществлять поиск информации можно по следующим параметрам:

дате проведения тестирования;

типу теста;

пользователю, проводившему тест;

режиму теста;

результату завершения.

Основная информация о тестах AT-команд: тип теста, режим теста, время начала тестирования, время завершения тестирования, результат завершения тестирования, информация о пользователе (проводившем тестирование), дополнительная информация в прикрепленных файлах.

Так же можно просматривать справочную информацию:

о пользователях;

о режимах тестирований;

о результатах завершения тестирований;

о типах журналов.

3.3 Описание логической структуры программного продукта

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

Модуль PLCTester состоит из трех основных компонентов (модулей):

PLCTester.exe - отвечает за интерфейс пользователя, конфигурирование модемов, планирование задач, анализ и сохранение результатов;

TNNCL.dll - отвечает за тестирование команд протокола;

TAT.dll - отвечает за тестирование AT-команд.

При разработке модуля PLCTester.exe использовался объектно-ориентированный подход, а при разработке модулей TNNCL.dll и TAT.dll - процедурный подход. Структура модуля PLCTester показана на диаграмме рисунке 2.11 в виде диаграммы компонентов. Классы модуля можно условно разделить на две группы:

так называемые, граничные классы (графический интерфейс пользователя);

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

Описание граничных классов представлено в таблице 3.1, а классов-сущностей - в таблице 3.2.

Таблица 3.1 - Основные граничные классы модуля PLCTester.exe

Название

Назначение

MainForm

Класс главной формы приложения PLCTester.exe

ConnectForm

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

SaveToDBForm

Класс формы, предназначенной для сохранения результатов тестирования в базу данных (NNCL)

ATSaveToDBForm

Класс формы, предназначенной для сохранения результатов тестирования в базу данных (AT)

HexForm

Класс формы, предназначенной для ввода числовых значений в шестнадцатеричной форме

RunSettingsForm

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

PortSettingsForm

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

AboutBox

Класс формы, предоставляющей информацию о программе

Таблица 3.2 - Классы-сущности модуля PLCTester.exe

Название

Назначение

PortSettings

Класс инкапсулирует в себе настройки последовательного порта

ProtocolInputData

Класс инкапсулирует в себе входные данные для теста команд протокола NNCL

ATInputData

Класс инкапсулирует в себе входные данные для теста AT-команд

MainConfiguration

Класс инкапсулирует в себе основные настройки модуля PLCTester.exe

RunSettings

Класс инкапсулирует в себе настройки для запуска приложений

ActionData

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

Модуль TAT.dll является составным, его структура представлена на диаграмме компонентов в нотации UML на рисунке 3.1, а описание приводится в таблице 3.3.

Примечание - В качестве описания приводится основная функции, выполняемая каждым модулем.

Рисунок 3.1 - Структура модуля TAT.dll

Таблица 3.3 - Описание структуры модуля TAT.dll

Название модуля

Описание модуля

TAT.h

Содержит прототипы основных функций

TAT.cpp

Содержит реализации основных функций

ATTest.h

Содержит прототипы функций, непосредственно связанных с тестирование PLC-модемов

ATTest.cpp

Содержит реализации функций, непосредственно связанных с тестирование PLC-модемов

Структура модуля TNNCL.dll представлена на диаграмме компонентов в нотации UML на рисунок 3.2, а описание - в таблице 3.4.

Рисунок 3.2 - Структура модуля TNNCL.dll

Таблица 3.4 - Описание структуры модуля TNNCL.dll

Название модуля

Описание модуля

TNNCL.h

Содержит прототипы основных функций

TNNCL.cpp

Содержит реализации основных функций

Ping.h

Содержит прототипы функций, предназначенных для тестирования команды ping, протокола NNCL

Ping.cpp

Содержит реализации функций, предназначенных для тестирования команды ping, протокола NNCL

Route.h

Содержит прототипы функций, предназначенных для тестирования команды route, протокола NNCL

Route.cpp

Содержит реализации функций, предназначенных для тестирования команды route, протокола NNCL

Quality.cpp

Содержит прототипы функций, предназначенных для тестирования команды quality, протокола NNCL

Quality.h

Содержит реализации функций, предназначенных для тестирования команды quality, протокола NNCL

Основная задача web-приложения - предоставлять пользователю необходимую информацию о проведенных тестированиях в удобной форме. Web-приложение разработано на языке PHP и состоит из модулей, описанных в таблице 3.5.

Таблица 3.5 - Описание модулей web-приложения

Имя модуля

Описание

index.php

Страница входа в систему

main_page.php

Главная страница

about_page.php

Отображает информацию о приложении

tests_list_page.php

Отображает список тестов (краткая информация о тестированиях)

nncl_test_page.php

Отображает подробную информацию о выбранном тестировании команд протокола NNCL

at_test_page.php

Отображает подробную информацию о выбранном тестировании AT-команд

logs_list_page.php

Отображает информацию о журналах к выбранному тестированию

user_page.php

Отображает информацию о выбранном пользователе

users_page.php

Отображает список пользователей системы

end_code_page.php

Отображает список кодов завершения тестирования

test_mode_page.php

Отображает список режимов тестов

log_type_page.php

Отображает список типов журналов

support.php

Страница поддержки пользователей системы

login.php

Отвечает за авторизацию пользователей

upload.php

Отвечает за загрузку файлов на сервер

default.css

Стили оформления

Модули можно разделить на два типа: так называемые визуальные (или граничные) модули, которые предоставляют интерфейс пользователя и модули, отвечающие только за обработку данных или иные служебные действия (login.php, upload.php и default.css).

Модуль default.css используется всеми остальными, за исключением login.php и upload.php, для описания внешнего вида документов. На рисунке 3.3, в виде диаграммы компонентов в нотации UML, показаны основные зависимости между модулями web-приложения.

Рисунок 3.3 - Основные зависимости между модулями web-приложения

При обращении к серверу, пользователю предоставляется форма авторизации (модуль index.php), данные из которой передаются для обработки модулю login.php. Если авторизация проходит успешно, выполняется модуль main_page.php, этот модуль является основным, служит для поиска необходимой информации, из него можно перейти к модулям: nncl_tests_list_page.php, at_tests_list_page.php, about_page.php, в противном случае снова открывается страница авторизации.

Со страниц, представляемыми модулями nncl_tests_list_page.php и at_tests_list_page.php можно перейти к модулям nncl_test_page.php и at_test_page.php соответственно, и к модулю user_page.php. От модуля nncl_test_page.php и at_test_page.php можно перейти к модулям user_page.php и log_list_page.php.

Из любого модуля, кроме index.php, можно перейти к модулям: users_page.php, test_mode_page.php, end_code_page.php и log_type_page.php. Из любого модуля (кроме main_page.php), можно перейти к модулю main_page.php. Со всех страниц можно перейти на страницу about_page.php.

В модулях nncl_test_page.php и at_test_page.php имеются формы для загрузки файлов на сервер, а данные из этих форм предаются модулю upload.php. После удачного завершения работы модуля upload.php выполняется переход к модулю log_list_page.php. Из любого модуля можно перейти к модулю support.php.

3.4 Требования к техническому обеспечению

3.4.1 Общие требования

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

web-сервер Apache2;

интерпретатор PHP;

СУБД MySQL.

Данные программные продукты могут работать на разных операционных системах, но предпочтительнее UNIX-системы (планируется использовать дистрибутив Linux Debian 6).

На ЭВМ оператора системы должны быть установлены следующие программные продукты:

ОС Windows XP SP3 и выше;

.NET Framework 4.0;

MySQL Connector Net 6.х.х;

PLCTester.

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

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

Таблица 3.6 - Минимальные системные требования основных используемых программных продуктов

Название ПО

Минимальные системные требования

Частота ЦП

ОЗУ

Жесткий диск

Windows XP

233 МГц

128 Мб

1,5 Гб

Debian 6

133 МГц

128 Мб

1 Гб

.NET Framework 4

1 ГГц

512 Мб

850 Мб

Объем используемой памяти программными продуктами MySQL, Apache 2, интерпретатором PHP представлено в таблице 3.7.

Таблица 3.7 - Объем используемой памяти MySQL, Apache 2 и PHP

Название ПО

Объем используемой памяти

ОЗУ

Жесткий диск

MySQL

16 Мб

109 Мб

Apache 2

16 Мб

7 Мб

Интерпретатор PHP

8 Мб

13 Мб

3.4.2 Требования к центральному процессору

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

Для работы сервера необходим процессор с тактовой частотой не мене 2 ГГц, а рекомендуемое значение тактовой частоты - 3 ГГЦ и выше.

Требования к центральному процессору персонального компьютера оператора информационной подсистемы определяет самый ресурсоемкий программный продукт, необходимый для работы подсистемы - .NET Framework 4.

Минимальные требования к центральному процессору персонального компьютера оператора информационной подсистемы - 1 ГГц.

Рекомендуется использовать процессор с тактовой частотой - 2 ГГц и выше.

3.4.3 Требования к оперативному запоминающему устройству

Требования к ОЗУ сервера рассчитываются как сумма требований со стороны отдельных программных продуктов и дополнительного объема памяти, необходимого для обработки запросов клиентов

, (3.1)

где V - общий объем необходимой памяти;

Vi - объем используемой памяти i-тым программным продуктом;

Vдоп - объем памяти, необходимой для обработки запросов клиентов.

Для сервера с установленными Debian 6, MySQL, Apache2 и интерпретатора PHP, расчетные данные для которых приведены в таблицах 3.6 и 3.7 и значением Vдоп равным 856 Мб (получено эмпирическим путем), минимальные требования к ОЗУ сервера рассчитываются по (3.1):

128 + 16 + 16 + 8 + 856 = 1024 (Мб) (3.2)

Рекомендуется использовать ОЗУ объемом 2 Гб и больше.

Требования к ОЗУ персонального компьютера оператора информационной подсистемы рассчитываются по формуле (3.1), при условии что значение Vдоп равно нулю. Для ЭВМ с установленными Windows XP, .NET Framework 4 (расчетные данные приведены в таблице 3.6) и модуля PLCTester. Минимальные требования к ОЗУ персонального компьютера оператора информационной подсистемы:

128 + 512 + 30 = 670 Мб (3.3)

Примечание - Объем используемой памяти модулем PLCTester определен эмпирическим путем.

3.4.4 Требования к наличию свободного места на жестком диске

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

, (3.4)

где H - общий объем необходимой памяти на жестком диске;

Hi - объем используемой памяти i-тым программным продуктом;

Hбд - объем памяти, занимаемый базой данных.

Для сервера с установленными Debian 6, MySQL, Apache2 и интерпретатора PHP, расчетные данные для которых приведены в таблицах 3.6 и 3.7 и значением Hбд равным 4 Гб (получено эмпирическим путем), минимальные требования к наличию свободного места на жестком диске сервера рассчитываются по (3.4):

1024 Мб + 109 Мб + 7 Мб + 13 Мб + 4096 Мб = 5249 Мб. (3.5)

Рекомендуется использовать жесткий диск объемом свободной памяти 51 ГБ и более, так как база данных состоит из 10 таблиц, максимальный размер каждой из которых равен 4 Гб.

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

Для ЭВМ с установленными Windows XP, .NET Framework 4 (расчетные данные приведены в таблице 3.6) и модуля PLCTester (получены эмпирическим путем), минимальные к наличию свободного места на жестком диске компьютера оператора информационной подсистемы:

1536 + 850 + 30 = 2416 (Мб) (3.6)

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

3.4.5 Требования к монитору

Как для сервера, так и для персонального компьютера оператора информационной подсистемы подойдет любой современный монитор, рекомендуется использовать монитор с диагональю 17 дюймов и более, и разрешением 900 ? 600 (размер самого большого окна программы 860 ? 532).

3.4.6 Прочие требования

На всех ЭВМ должны быть сетевые адаптеры Ethernet. На ЭВМ оператора подсистемы должен иметься минимум один COM-порт.

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

3.5 Вызов программы

3.5.1 Установка ПО

Установка ПО сервера рассматривается на примере операционной системы Debian/Ubuntu. Необходимо установить следующие компоненты:

http-сервер Apache;

СУБД MySQL;

интерпретатор языка PHP.

Для установки ПО необходим доступ к репозиториям (локальным или удаленным), предполагается, что сервер имеет доступ к сети Internet.

Для установки http-сервера Apache нужно вы полнить команду: sudo apt-get install apache2 (в командном терминале системы).

Для установки PHP нужно выполнить команду: sudo apt-get install php5 libapache2-mod-php5.

Для установки СУБД MySQL нужно выполнить команду: sudo apt-get install mysql-server libapache2-mod-auth-mysql php5-mysql.

После этих действий необходимо перезагрузить http-сервер Apache командой: sudo /etc/init.d/Apache2 reastart.

Для установки базы данных на сервер нужно выполнить сценарий на языке SQL, который приведен в приложении Г.

Для установки модуля PLCTester нужно выполнить следующие действия:

запустить исполняемый файл setup.exe;

в окне выбора языка установки выбрать язык установки из выпадающего списка и нажать на кнопку "OK";

в окне "Установка - PLC-Tester" (окно приветствия мастера установки) нажать на кнопку "Далее";

в окне "Установка - PLC-Tester" (выбор папки установки) указать папку для установки программы и нажать на кнопку "Далее";

в окне "Установка - PLC-Tester" (выбор папки в меню Пуск) указать папку в меню "Пуск", в которой будут созданы ярлыки для программы, и нажать на кнопку "Далее";

в окне "Установка - PLC-Tester" (выбор дополнительных задач) нужно указать, создавать ли ярлык для программы на рабочем столе, и нажать на кнопку "Далее";

в следующем окне нужно нажать на кнопку "Установить", запустив тем самым процесс установки;

после установки появится окно "Установка - PLC-Tester" (завершение мастера установки) в котором можно выбрать опцию "Запустить PLC-Tester" и нажать на кнопку "Завершить".

3.5.2 Запуск программы

Запуск сервера http-сервера Apache в ОС Debian/Ubuntu осуществляется командой: sudo /etc/init.d/apache2 start.

Запуск сревера MySQL в ОС Debian/Ubuntu осуществляется командой: sudo /etc/init.d/mysql start.

Запуск модуля PLСTester осуществляется любым привычным для используемой операционной системы способом.

3.6 Входные данные

Входные данные программы делятся следующие группы:

входные данные для заполнения базы данных;

входные данные к тестированию команд протокола;

входные данные к тестированию AT-команд;

входные данные для постановки новой задачи в очередь на исполнение;

входные данные для настройки работы приложения;

входные данные для настройки COM-портов;

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

входные данные для настройки модема;

служебные данные.

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

Таблица 3.7 - Входные данные к тестированию команд протокола

Название

Тип

Возможные значения

Режим теста

Список

Нормальный режим; Нагрузочный режим 1;

Нагрузочный режим 2

Проверка команды

(если режим теста -"Нагрузочный режим 1")

Список

Все команды; PING, PING с ошибками; ROUT; ROUT с ошибками

Тип маршрутизации

(если режим теста -"Нагрузочный режим 2")

Список

ADDR_M, ADDR_NR, ADDR_NRO, ADDR_NROM, ADDR_BR, ADDR_NBR

Последовательный порт

Список

COM 1 - COM 255 или в зависимости от системы

MAC-адрес первого модема

Целый

От 1 до 4294967295

MAC-адрес последнего модема

Целый

От 1 до 4294967295

MAC-адрес хоста

Целый

От 1 до 4294967295

Автоматически прокручивать списки

Логический

Истина/Ложь

Входные данные к тестированию AT-команд представлены в таблице 3.8.

Таблица 3.8 - Входные данные к тестированию AT-команд

Название

Тип

Возможные значения

Режим теста

Список

Нормальный режим; Нагрузочный

Последовательный порт

Список

COM 1 - COM 255 или в зависимости от системы

Нельзя принудительно останавливать тест

Логический

Истина/Ложь

Нельзя принудительно закрывать приложение

Логический

Истина/Ложь

Нельзя принудительно закрывать приложение планировщику

Логический

Истина/Ложь

Автоматически прокручивать список

Логический

Истина/Ложь

К служебным данным относятся:

настройки программы;

информация о настройке COM-портов;

информация о поставленных в очередь задачах.

3.7 Выходные данные

Выходные данные делятся на следующие группы:

данные из базы данных (совпадают с входными данными);

журнал тестирования команд протокола;

журнал тестирования AT-команд;

информация о задачах, поставленных в очередь (совпадают с входными данными);

выходные данные настройки модемов (совпадают с входными данными);

журнал монитора обмена конфигурирования модемов;

отчеты (сохраненные журналы тестирований);

служебная информация (совпадают с входными данными).

Журнал тестирования команд протокола NNCL представлены в виде двух списков, один из которых отображает отправленные модему данные, а второй - принятые.

Журнал тестирования AT-команд представлен в виде одного списка, в котором отправленные данные отображаются шрифтом красного цвета, а принятые данные - шрифтом синего цвета.

Журнал монитора обмена конфигурирования модемов в виде одного списка, в котором отправленные данные отображаются шрифтом красного цвета, а принятые данные - шрифтом синего цвета.

3.8 Описание тестовых прогонов

3.8.1 Общие сведения

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

Тестирование информационной подсистемы проводилось стратегии приближенной, к стратегии "черного ящика".

На рисунке 3.4 представлена схема, по которой проводилось тестирование информационной подсистемы тестирования PLC-модемов.

Рисунок 3.4 - Схема проведения тестирований информационной подсистемы

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

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

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

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

3.8.2 Тестирование модуля PLCTester

Тестирование модуля PLCTester осуществлялось по следующим направлениям:

проверка авторизации пользователей;

проверка работы тестирования команд протокола NNCL;

проверка остановки тестирования команд протокола NNCL;

проверка работы тестирования AT-команд;

проверка остановки тестирования AT-команд;

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

проверка сохранения журналов тестирования;

проверка сохранения входных данных;

проверка восстановления входных данных;

проверка работы планировщика задач;

проверка корректности конфигурирования модемов;

проверка работы встроенного терминала.

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

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

При формировании наборов входных данных, особое внимание уделялось граничным значениям.

Во время тестирований, были обнаружены и исправлены некритические ошибки.

3.8.3 Тестирование web-приложения

При тестировании web-приложения проверялись следующие функции:

авторизация пользователей;

обеспечение привилегий пользователей;

корректное предоставление информации (основная функция web-приложения);

загрузка файлов на сервер.

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

соединение с СУБД;

авторизация с пользователей;

работоспособности всех ссылок;

загрузка на сервер файлов различных размеров;

отображение дополнительной информации для привилегированных пользователей;

достоверность отображаемых данных.

Во время тестирований, ошибок не обнаружено.

Примечание - Основные формы модуля тестирования и страницы web-приложения представлены в приложении Д.

Выводы

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

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

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

Система разработана так, что её серверная часть недоступна пользователям напрямую, и они могут и не догадываться о её структуре, что повышает безопасность системы в целом.

4. технико-ЭКОНОМИЧЕСКОЕ ОБОСНОВАНИЕ ПРОЕКТА

4.1 Краткая характеристика проекта

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

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

К основным программным средствам относятся:

- серверная операционная система;

- СУБД (поддерживающая технологию клиент-сервер).

Можно рассмотреть несколько вариантов проектирования подсистемы:

- использовать коммерческое программное обеспечение;

- использовать свободное программное обеспечение.

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

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

- стоимость реализации подсистемы на дешёвом платном программном обеспечении может составить около 500 000 тысяч рублей, а некоторые СУБД стоят больше 1 000 000 миллиона рублей.

С точки зрения конкретной технологии можно выделить два варианта:

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

- использовать технологию толстого клиента (обработка информации осуществляется на машине клиента).

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

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

4.2 Трудоемкость выполняемых работ

Языки программирования, используемые при разработке проекта: C, C++, C#, SQL.

Число операторов системы - 2000.

Трудоемкость разработки программного обеспечения Tпо чел.-ч., определяется по формуле

, (4.1)

где То - затраты труда на описание задачи, чел.- ч.;

Ти- затраты на исследование предметной области, чел.- ч.;

Та- затраты на разработку блок схемы, чел.- ч.;

Тп- затраты на программирование, чел.- ч.;

Тотл- затраты на отладку программы, чел.- ч.;

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

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

, (4.2)

Где - число операторов, ед. (в данном случае 2000);

c - коэффициент сложности задачи (в данном случае 1,4);

p - коэффициент коррекции программы, учитывающий новизну проекта (в данном случае 0,1).

В результате из (4.2) следует

. (4.3)

Затраты труда на описание задачи То точно определить заранее невозможно, поэтому ориентировочно принимается То= 40 чел.-ч.

Затраты труда на исследование предметной области Ти, чел.-ч., с учетом уточнения описания и квалификации программистов определяются по формуле

, (4.4)

где D - общее число операторов, ед.;

b - коэффициент увеличения затрат труда, вследствие недостаточного описания задачи (в данном случае 1,4);

sи - количество операторов, приходящееся на один чел.-ч. (в данном случае 80);

- коэффициент квалификации программиста (в данном случае 0,8);

С учетом (4.4) следует

(чел.-ч). (4.5)

Затраты труда на разработку алгоритма решения задачи Та , чел.-ч., рассчитывается по формуле

, (4.6)

где sа - количество операторов, приходящееся на один чел.-ч. (в данном случае 25). Из (4.6) следует

(чел.-ч). (4.7)

Затраты труда на составление программы на ПК по готовой блок-схеме, Тп чел.-ч., вычисляют по формуле

, (4.8)

где sп - количество операторов, приходящихся на один чел.-ч.(в данном случае 25).

Из (4.8) следует

( чел.-ч). (4.9)

Затраты труда на отладку программы на ПК Тотл, чел.-ч., вычисляют по формуле

(4.10)

где sотл - количество операторов, приходящееся на один чел.-ч. (в данном случае 4).

Из (4.10) следует

( чел.-ч). (4.11)

Затраты труда на подготовку документации по задаче Тд, чел.-ч., вычисляют по формуле

(4.12)

где Тдр - затраты труда на подготовку материалов в рукописи, чел.-ч.

, (4.13)

где sдр - количество операторов, приходящееся на один чел.-ч. (в данном случае 20).

Тдо - затраты труда на редактирование, печать и оформление документов, чел.-ч.

(4.14)

Из (4.13) следует

(чел.-ч). (4.15)

Из (4.14) следует

(чел.-ч). (4.16)

Трудоемкость разработки программного обеспечения

(чел.-ч) (4.17)

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

, (4.18)

где = 0,8 - коэффициент, учитывающий уровень языка программирования.

Из (4.18) следует

( чел.-ч). (4.19)

4.3 Расчет себестоимости информационной системы подсистемы

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

а) основная заработная плата производственного персонала;

б) дополнительная заработная плата производственного персонала;

в) отчисления на социальные нужды;

г) затраты на электроэнергию;

д) затраты на амортизацию и ремонт вычислительной техники;

е) расходы на материалы и запасные части.

Основная заработная плата обслуживающего персонала Зо, руб., определяется по формуле

, (4.20)

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

- время работы программиста, ч (в данном случае 1372).

Из (4.20) следует

(руб.). (4.21)

Дополнительная заработная плата обслуживающего персонала Зд, руб., определяется по формуле

, (4.22)

где - коэффициент дополнительной заработной платы (в данном случае 0,1).

Из (4.22) следует

(руб.). (4.23)

Отчисления в социальные фонды Зс, руб., определяется по формуле

, (4.24)

где норматив социальных отчислений (= 34%).

(руб.). (4.25)

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

, (4.26)

где - мощность ЭВМ, кВт (в данном случае 0,45);

- время работы вычислительного комплекса, ч;

- стоимость 1 кВт-ч электроэнергии, руб./кВт-ч.

Фонд рабочего времени при создании программного продукта , ч, можно определить по формуле

, (4.27)

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

(руб.). (4.28)

(руб.). (4.29)

Расходы на материалы и запасные части Зм, руб., определяется по формуле

, (4.30)

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

- количество i-гo вида материалов, ед., шт.;

- цена одной единицы i-гo вида материалов, руб.

Из 4.30 следует

(руб.). (4.31)

Затраты на амортизацию

, (4.32)

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

- годовой фонд времени работы вычислительной техники (2112 ч);

- норма отчислений на ремонт.

Из (4.32) следует

(руб.). (4.33)

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

, (4.34)

Из (4.34) следует

(руб.). (4.35)

4.4 Оценка экономической эффективности внедрения программного продукта

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

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

, (4.36)

Где Э - стоимостная оценка результатов применения программного продукта в течение года, руб.;

3 - стоимостная оценка затрат при использовании программного продукта, руб.

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


Подобные документы

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

    дипломная работа [2,1 M], добавлен 29.06.2011

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

    дипломная работа [1,3 M], добавлен 25.12.2014

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

    дипломная работа [7,5 M], добавлен 24.06.2011

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

    курсовая работа [1,1 M], добавлен 16.01.2013

  • Общие сведения о платформе Microsoft NET Framework. Разработка приложения "Поставка и реализация программного обеспечения", содержащего базу данных о каталогах адресов в Internet. Описание логической структуры. Требования к техническому обеспечению.

    курсовая работа [2,4 M], добавлен 28.06.2011

  • Моделирование предметной области. Состав программного модуля. Разработка логической структуры единой базы данных банковской информационной системы "БИС". Создание экранных форм для ввода и корректировки информации. Разработка интерфейса пользователя.

    курсовая работа [1,8 M], добавлен 17.05.2016

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

    курсовая работа [926,7 K], добавлен 20.05.2015

  • Проектирование программного модуля: сбор исходных материалов; описание входных и выходных данных; выбор программного обеспечения. Описание типов данных и реализация интерфейса программы. Тестирование программного модуля и разработка справочной системы.

    курсовая работа [81,7 K], добавлен 18.08.2014

  • Проектирование функциональной структуры подсистемы "Склад". Даталогическое проектирование информационной базы данных и описание применяемых средств защиты информации. Особенности работы с NET Framework. Расчет экономической эффективности проекта.

    дипломная работа [5,6 M], добавлен 29.06.2011

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

    дипломная работа [1,2 M], добавлен 01.07.2011

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.