Смекни!
smekni.com

Создание клиентских частей SQL БД под ОС Windows'95 и WindowsNT (стр. 27 из 27)

Первый тест на правильность отражения информации. Программа должна отражать именно ту информацию, которая находится в базе данных. Для проверки правильности функционирования необходимо проводить визуальное сравнение данных на экране и содержимого базы данных. Содержимое базы данных выводится на экран при помощи стандартного SQL запроса (SELECT * FROM <имя таблицы>). Расхождение информации на экране и в базе данных свидетельствует об ошибке в программе при формировании запроса к базе данных или при выводе данных на экран.

Второй тест на отработку логики базы данных. Для этого вводится заведомо неправильная информация, такая как отсутствие или пустые поля, которые не могут быть пустыми; дублирование уникальных полей, т.е. первичного (Идентификатор клиента) или альтернативного (ИНН) ключей. Для локализации возможной ошибки, сначала тестируется логика работы базы данных, при помощи стандартных запросов INSERT или UPDATE. Отрицательный результат теста обозначает ошибку в логике базы данных. При тестировании программы, возникающая ошибка свидетельствует о неправильном формировании запроса к базе данных, или неправильной проверке вводимых пользователем данных.

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

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

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

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

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

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

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

Второй тест для подпрограммы журнала счетов ориентирован в первую очередь на правильность вывода информации. Для этого вводится заведомо неправильная информация: дубликат первичного ключа (идентификатор счета плюс номер товара), отсутствие клиента (внешний ключ) или товара, отсутствие или пустые поля, которые не могут быть пустыми. Отрицательный результат теста означает либо ошибку в подпрограмме, при формировании запроса и выдачи информации, либо в логике базы данных. Последнее можно проверить при помощи стандартной программы SQL Query, поставляемой вместе SQL Server.

Третий тест на правильность отработки фильтрации и поиска. Поиск осуществляется при помощи встроенного в Delphi поиска, поэтому необходимо проверить только правильность передачи аргументов. Фильтрация информации разделена на три компонента: фильтрация по типу счета-фактуры (невидимый для пользователя компонент), фильтрация по дате счета-фактуры и расширенная фильтрация в виде SQL предложения. Для проверки фильтрации информации по дате, необходимо варьировать параметрами даты, и визуально проверять правильность отражения в программе.

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

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

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

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

Сетевое тесторование программы может выявить ошибки совместного изменения данных. Ошибки могут возникнуть, например, при удалении записи одним пользователем и обращении к ней другим. Устранение подобных ошибок берет на себя SQL Server, которых при записи быдаст сообщение об ошибке.

Заключение

Заданием являлось создание клиентских частей под SQL базу данных для операционных систем Windows’95 и Windows NT Workstation.

В данной работе был выполнен обзор систем управления базами данных (СУБД), реализованных на технологии «клиент-сервер».

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

Затем была проанализирована существующая программа учета счетов-фактур фирмы «ИНФИН» и составлен проект переноса структуры базы данных для работы в архитектуре «клиент-сервер». Также был составлен алгоритм переноса необходимых для дальнейшей работы данных.

Для разработки программного обеспечения, платформой для создания серверной части SQL базы данных бала выбрана операционная система сервера Microsoft Windows NT Server 4.0 и система управления базами данных Microsoft SQL Server 6.5. Для разработки пользовательского интерфейса был выбран язык программирования Borland Delphi.

Был разработан и отлажен клиентский интерфейс к SQL базе данных под операционные системы Windows’95 и Windows NT. Разработанное программное обеспечение общим объемом занимает около 2,5 тысяч строк программного кода.

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

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

Сейчас программа успешно функционирует на предприятии, заменив старую.

Литература

1. С.Орлов. Windows NT 5.0: что на горизонте?.LAN Спец. выпуск к #5.1997

2. К.Пьянзин. Сетевые ОС в гетерогенной среде. LAN Magazine/ русское издание #7/96

3. Ф.Зубанов. Выбор «профи». М: Издательский отдел «Русская Редакция». 1996

4. К.Стинсон. Эффективная работа в Windows 95. С-П: ПИТЕР. 1997

5. С.Дунаев. UNIX SYSTEM V. Release 4.2. M: Диалог-МИФИ.1995

6. К.Дейта. Введение в системы баз данных. М:Наука.1980

7. Дж.Ульман. Основы систем баз данных.М:Финансы и статистика.1983

8. А.Шуленин. Microsoft SQL Server.СУБД #1/97

9. И.Игнатович. Семейство реляционных баз данных IBM DB2. СУБД #2/97

10. О.Твердова. СУБД Progress. СУБД #2/97

11. С.Бобровски. Oracle7 и вычисления клиент/сервер. М: ЛОРИ. 1996

12. В.Шнитман. Серверы баз данных: проблемы оценки конфигурации системы. СУБД #5-6/96

13. А.Тандоев. Sybase SQL Anywhere Pofessional. СУБД #1/97

14. А.Тандоев. Архитектура Sybase System 11. СУБД #2/96

15. М.Грабер. Введение в SQL. М: ЛОРИ. 1994

16. Р.Ахаян, А.Горев, С.Макашарипов. Эффективная работа с СУБД. С-П: ПИТЕР. 1997

17. К.Маркелов. «Классические» стратегии авоматизации в период нестабильность рынка АБС. Банк и Технологии #3/97

18. К.Маркелов. Опросы Форума как отражение на рынке АБС. Банк и Технологии #4/97

19. А.Сень, Ю.Юшков. Телекоммуникации в банковских системах. Банковские технологии #6/96

20. Дж.Матчо, Д.Фолкнер. Delphi. М: БИНОМ. 1995

21. Т.Сван. Секреты 32-разрядного програмирования в Delphi. К: Диалектика. 1997