- •Введение
- •Компилятор в машинный код:
- •Объектно-ориентированные модули и компоненты:
- •Средства для построения баз данных:
- •1 Проектная часть
- •1 .1 Структура и функции отдела (предприятия)
- •1.2 Характеристика программного продукта и комплекса, к которому он относится
- •Характеристика области применения программы:
- •Функциональные характеристики:
- •Технические характеристики:
- •1.4 Методы решения (алгоритм решения)
- •1.5 Программная реализация
- •1.6 Программная документация
- •1.7 Оценка качества программы с точки зрения пользователя
- •1.8 Защита информации от несанкционированного доступа
- •2 Выводы
- •3 Список литературы
1.4 Методы решения (алгоритм решения)
Чтобы создать программу, мало просто знать язык программирования. Программу надо сконструировать, разбить на определенные блоки и выстроить эти блоки один за другим в соответствии с заранее заданным порядком действий. Этот порядок называется алгоритмом.
Рисунок 7 - Алгоритм решения задачи
Рисунок 8 - Продолжение алгоритма решения задачи
нет
да
нет
да
да
нет
да
Рисунок 9 - Блок-схема алгоритма работы программы
нет
да
Рисунок 10 - Продолжение блок-схемы алгоритма работы программы
1.5 Программная реализация
Для программной реализации был выбран язык Delphi. Все созданные программы Delphi разрабатываются как экранные формы, которые играют функцию окна и диалоговой панели одновременно. Форма содержит элементы управления: поля ввода, списки, текстовые метки, кнопки, которые поддерживают интерфейс пользователя с базой данных, обеспечивает запуск управляемых событий процедур. Программа создается на визуальном уровне, т.е. разработчик размещает в форме интерфейсные элементы, каждый из которых рассматривается как объект, имеющий список свойств, реагирует на наступление указанных событий.
Структура данных (информационная модель):
В Database Desktop типа Dbase for Windows существует 8 типов данных. Основные из них:
Character - текстовый тип (длина от 1 до 254).
Float - тип чисел с плавающей запятой (длина от 1 до 254).
Number - это целочисленный тип чисел (длина от 1 до 254).
Date. Дата и время хранятся в специальном фиксированном формате дат.
Logical – может быть представлена в виде 2 значений: истина или ложь.
МЕМО. Поле этого типа предназначено для хранения небольших текстовых данных (до 64000 символов). Поле этого типа не может быть ключевым или проиндексированным.
OLE. Включает звукозапись, рисунок и прочие типы данных. Поле этого типа не может быть ключевым или проиндексированным.
Binary - хранение большого объема информации.
В программе имеется база данных в соответствии с рисунком 11.
Рисунок 11 - База данных
Таблица 1 - Входные данные
Шифр массива |
Наименование реквизита |
Шифр реквизита |
Форма представления |
Длина (Байт) |
специальность.DBF |
Индекс |
INDEX |
Строка |
25 |
Специальность |
SPEZ |
Строка |
250 |
|
Область профессиональной деятельности |
INFO |
Строка |
250 |
|
Государственные требования |
GOST |
Строка |
250 |
Рисунок 12
Продолжение таблицы 1
|
Рабочий учебный план |
PLAN |
Строка |
250 |
dan.DBF |
Индекс |
INDEX |
Строка |
25 |
Квалификация (базовый уровень) |
CV |
Строка |
50 |
|
Срок обучения (базовый уровень) |
SROC |
Строка |
20 |
|
Форма обучения |
FORM |
Строка |
20 |
|
Квалификация (повышенный уровень) |
CV2 |
Строка |
30 |
|
Срок обучения (повышенный уровень) |
SROC2 |
Строка |
20 |
|
Обозначение специальности (базовый уровень) |
OBOZN |
Строка |
4 |
|
Обозначение специальности (повышенный уровень) |
OBOZN2 |
Строка |
4 |
|
Курс |
KURS |
Строка |
5 |
|
дисциплина.DBF |
Курс |
KURS |
Строка |
5 |
Сокращение |
COKR |
Строка |
25 |
|
Цикл дисциплин |
DIZIP |
Строка |
250 |
|
Максимальная нагрузка |
MAX |
Строка |
25 |
|
Всего |
VSEGO |
Строка |
25 |
Продолжение таблицы 1
|
Лабораторные |
LAB |
Строка |
25 |
Курсовые |
CURS |
Строка |
25 |
|
предметы.DBF |
Сокращение |
COKR |
Строка |
25 |
Дисциплина |
PRED |
Строка |
250 |
|
Всего |
VSEGO |
Строка |
25 |
|
Лабораторные |
LAB |
Строка |
25 |
|
Курсовые |
CURS |
Строка |
25 |
|
Самостоятельные работы |
SAM |
Строка |
25 |
|
Карта контрольных точек |
ККТ |
Строка |
25 |
|
Практические работы |
PRAKT |
Строка |
25 |
|
Рабочая программа |
RP |
Строка |
25 |
|
Базовые учебники |
LITER |
Строка |
25 |
Таблица 2 - Программная реализация
Форма |
Название |
Функции |
zastavka |
Заставка |
|
pred |
Добавление дисциплины |
|
Рисунок 13
Продолжение таблицы 2
glavna |
Данные по дисциплине |
|
spes |
Добавление специальности |
|
dis |
Добавление цикла дисциплин |
|
Dpred |
Удаление дисциплины |
|
Dspes |
Удаление специальности |
|
Продолжение таблицы 2
Ddis |
Удаление цикла дисциплин |
|
Chpred |
Изменение дисциплины |
|
Chspes |
Изменение специальности |
|
Chdis |
Изменение цикла дисциплин |
|
Parol |
Пароль |
|
Следующим этапом моей работы было создание ссылки в УМКС на сайт Башкирского строительного колледжа. В программной реализации это выглядит так:
procedure Tzastavka.Label3Click(Sender: TObject);
begin
shellexecute(application.MainForm.Handle,nil,pchar
('index.html'),'',pchar(''),sw_show);
end;
При этом используется функция ShellExecute, у которой следующие параметры:
Программа, отвечающая за запуск приложения;
Строка, указывающая на операцию, которую необходимо выполнить. Указываю nil для запуска файла.
Строка, содержащая полный путь к файлу. В данном случае на поле в базе данных.
Строка параметров, передаваемых программе в командной строке.
Директория по умолчанию. В данном случае директория хранения файлов и директория самого УМКС совпадают, поэтому её можно не указывать.
Команда показа. Sw_show – нормальное отображение окна..
Эта процедура назначается объекту label, значение которого – Башкирский строительный колледж, на форме «Заставка».
Далее мне требовалось добавить такую информацию как Государственные требования к специальности и рабочие учебные планы. Для этого в базе данных, в таблице специальность.dbf я создала два новых поля GOST и PLAN, в которых хранятся имена файлов текстовых документов, содержащих эту информацию. Для открытия этих файлов используется следующая процедура:
begin
if basa1.table1.FieldByName('gost').asstring<>'' then
shellexecute(application.MainForm.Handle,nil,pchar(extractfilepath(application.ExeName) + basa1.table1.FieldByName('GOST').AsString),'',pchar(''),sw_show)
else showmessage ('Извините, но данная информация отсутствует');
end;
При выполнении этой функции происходит обращение к таблице в базе данных, в поле которой хранится имя текстового файла, в котором содержится необходимая информация. Если нужного файла нет, выводится следующее сообщение: «Извините, но данная информация отсутствует».
Далее требовалось удалить из комплекса функцию изменения пароля, которая угрожала безопасности информации тем, что каждый, знавший пароль, мог его изменить на свой собственный.