Автор: Пользователь скрыл имя, 24 Февраля 2013 в 13:20, курсовая работа
Целью разработки проекта «Программный симулятор формирования каталога файлов» является создание программного приложения.
Основными функциями, которого будут являться: начальное формирование каталога файлов, вывод каталога файлов, удаление файлов, дата создания которых меньше заданной, выборку файла с наибольшим количеством обращений, поиск файлов по имени, по расширению.
Пояснительная записка состоит из шести разделов, содержащих необходимую информацию по организации эксплуатации программного приложения.
В первом разделе «Постановка задачи» раскрывается организационная сущность задачи, и круг задач, которые должна выполнять программа. Описывается задача, перечисляются основные функции программы. Строится информационная модель, отражающая сущности задачи, их свойства и взаимосвязи.
Каждое взаимодействие описывается совокупностью сообщений, которыми участвующие в нем объекты обмениваются между собой. Сообщение - законченный фрагмент информации, который отправляется одним объектом другому. Прием сообщения инициирует выполнение определенных действий, направленных на решение отдельной задачи тем объектом, которому это сообщение отправлено, т.е. сообщения могут инициировать выполнение операций объектом соответствующего класса, а параметры этих операций передаются вместе с сообщением. На диаграмме последовательности все сообщения упорядочены по времени своего возникновения в моделируемой системе.
Диаграмма последовательности для проектируемой системы представлена в графической части на листе 4.
Диаграмма компонентов описывает объекты реального мира – компоненты программного обеспечения. Эта диаграмма позволяет определить архитектуру разрабатываемой системы, установив зависимости между программными компонентами, в роли которых может выступать исходный, бинарный и исполняемый код.
Диаграмма компонентов для проектируемой системы представлена в графической части на листе 5.
3.2 Концептуальный прототип
Концептуальный прототип состоит из описания внешнего пользовательского интерфейса – системы меню, диалоговых окон и элементов управления. При создании приложения важную роль играют формы, так как только они являются основным диалоговым средством работы пользователя. Разрабатываемое приложение будет многооконное. Оно будет содержать пять форм (модули). В приложении, для облегчения работы предусмотрено меню, которое будет включать все основные компоненты необходимые для работы. На главной форме, которая будет загружаться автоматически после запуска ехе - файла, будет изображена компонента TreeView, на которой будет представлено дерево, если таковое было ранее создано.
Правее компоненты TreeView будут размещаться компоненты Textbox и MaskedTextbox, благодаря которым, пользователь сможет увидеть информацию о выделенном элементе дерева. Там будет отображаться принадлежность элемента к типу «FILE» или «DIR»,
дата его создания, количество обращений к элементу, имя элемента. Также на главной форме расположены компоненты saveFileDialog и contextMenuStrip, данные компоненты отвечают за сохранение информации и панель меню.
В меню будут разработаны вкладки:
- «Create Dir» – данная вкладка отрывает новую форму, на которой будут изображены компоненты Textbox – куда будет вводиться имя создаваемого каталога, label – где будет осуществляться вспомогательная информация, и две кнопки (типа button) – с надписью «ОК» и «Cancel»;
- «Create File» – данная вкладка отрывает новую форму, на которой будут изображены компоненты Textbox – куда будет вводиться имя создаваемого файла, label – где будет осуществляться вспомогательная информация, и две кнопки (типа button) – с надписью «ОК» и «Cancel»;
При выделении элемента дерева и нажатии в меню на вкладку:
- «Delete Dir/File» – будет открыта форма, на которой будет вопрос – подтверждение об удалении элемента;
- «Delete by Date» – при нажатии на этот текст меню будет отрыта форма, на которой будут располагаться компоненты MaskedTextbox – куда будет вводиться критерий (дата) удаления, label – где будет осуществляться вспомогательная информация, и две кнопки (типа button) – с надписью «ОК» и «Cancel». После введения даты в MaskedTextbox и нажатия кнопки «ОК» все элементы дата создания, которых раньше введенной будут удалены из дерева.
На вкладке «Find» предусмотрена возможность поиска информации по критериям.
При нажатии на вкладку «Find» вправо будет выведено меню содержащее информацию по представляемым вариантам поиска, а именно:
- «By Name» – это вариант поиска элемента по его имени. При нажатии будет выведено форма, на которой будут находиться компоненты: Textbox – куда будет вводиться имя искомого элемента, label – где будет осуществляться вспомогательная информация (например «Введите имя искомого элемента»), и две кнопки (типа button) – с надписью «ОК» и «Cancel»;
- «By Extension» – это вариант поиска элемента по его расширению. При нажатии будет выведена форма, на которой будут находиться компоненты: Textbox – куда будет вводиться название расширения, label – где будет осуществляться вспомогательная информация, и две кнопки (типа button) – с надписью «ОК» и «Cancel»;
- «By Request» – это вариант поиска элемента c максимальным количеством обращений к нему. При нажатии элемент с максимальным количеством обращений будет подсвечен желтым цветом. Если же файл находится, в каком либо каталоге, и получается что пользователь его не видит, то дерево будет раскрыто, что бы пользователь мог увидеть искомый элемент.
В меню так же существует вкладка «Help» при нажатии которой открывается форма на которой находятся компоненты Textbox и button. Textbox – отображает справочную информацию о разработчике и программном приложении, а компонента button – предназначена для возврата на главную форму и продолжения работы.
3.3 Функции: логическая и физическая организация и элементы
управления
Рассмотрим основные функции программы.
Функция создания каталога в дереве закреплена за пунктом меню «Create Dir» и обрабатывается событием «On_Click». Реализация данной функции представлена ниже.
private void createDirToolStripMenuItem_
{
form2.form1 = this;
form2.label1.Text = "Cоздать новый каталог:";
form2.ShowDialog();
if (DirName != "")
{
node = treeView1.SelectedNode;
DirNameCreate = false;
for (int i = 0; i < node.Nodes.Count; i++)
{
if (node.Nodes[i].Text == DirName)
{
oldTag = new ClassTag();
oldTag = (ClassTag)node.Nodes[i].Tag;
if (Convert.ToString(oldTag.tag) == "DIR")
DirNameCreate = true;
}
}
if (!DirNameCreate)
{
oldTag = new ClassTag();
oldTag = (ClassTag)node.Tag;
if (Convert.ToString(oldTag.tag) == "DIR")
{
TreeNode NewNode = new TreeNode();
NewNode.Text = DirName;
NewNode.ImageIndex = 0;
NewNode.SelectedImageIndex = 0;
newTag = new ClassTag(); // создание экземпляра класса Tag
newTag.tag = "DIR"; // присваивание значения «Каталога»
newTag.request = 0; // количество обращений при создании устанавливается 0
newTag.date = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, DateTime.Now.Hour, DateTime.Now.Minute, DateTime.Now.Second);
newTag.extencion = "";
NewNode.Tag = newTag;
node.Nodes.Add(NewNode); // добавляем в дерево
saveTreeStructure();
}
else
MessageBox.Show("Ошибка!\n Каталог не может быть создан");
}
else
MessageBox.Show("Ошибка!\n Каталог уже существует");
}
}
После введения на форме имени создаваемого элемента и нажатия кнопки «ОК», элемент сразу же отобразится в дереве.
Функция создания файла в дереве закреплена за пунктом меню «Create File» и обрабатывается событием «On_Click». Реализация данных функции представлена ниже.
private void createFileToolStripMenuItem_
{
form2.form1 = this;
form2.label1.Text = "Cоздать новый файл:";
form2.ShowDialog();
if (DirName != "")
{
node = treeView1.SelectedNode;
DirNameCreate = false;
for (int i = 0; i < node.Nodes.Count; i++)
{
if (node.Nodes[i].Text == DirName)
{
oldTag = new ClassTag();
oldTag = (ClassTag)node.Nodes[i].Tag;
if (Convert.ToString(oldTag.tag) == "FILE")
DirNameCreate = true;
}
}
if (!DirNameCreate)
{
oldTag = new ClassTag();
oldTag = (ClassTag)node.Tag;
if (Convert.ToString(oldTag.tag) == "DIR")
{
TreeNode NewNode = new TreeNode();
NewNode.Text = DirName;
NewNode.ImageIndex = 1;
NewNode.SelectedImageIndex = 1;
newTag = new ClassTag();
newTag.tag = "FILE"; // присваиваем значение файла
newTag.request = 0; // количество ображений при создании присваиваем 0
newTag.date = new DateTime(DateTime.Now.Year, DateTime.Now.Month, DateTime.Now.Day, DateTime.Now.Hour, DateTime.Now.Minute, DateTime.Now.Second);
newTag.extencion = CopyExt(DirName);
NewNode.Tag = newTag;
node.Nodes.Add(NewNode);
saveTreeStructure();
}
else
MessageBox.Show("Ошибка!\n Файл не может быть создан");
}
else
MessageBox.Show("Ошибка!\n Файл уже существует");
}
После введения на форме имени создаваемого элемента и нажатия кнопки «ОК», элемент сразу же отобразится в дереве.
4 Описание программного средства
4.1 Общие сведения
Для того, что начать работу с программой необходимо запустить файл «Курсовой проект.exe». При запуске программы происходит считывание информации из файла «FileStructure.xml». В этом файле хранится всё ранее созданное дерево, и при открытии формы в компоненте TreeView будут отображены все элементы дерева. Для запуска приложения требуется наличие установленного Framework 2.0 и выше.
4.2 Функциональное назначение
Назначением данного программного приложения является работа с файлами и каталогами. Существует возможность поиска элементов по имени, по расширению, нахождение элемента с максимальным количеством обращений. Добавление или удаление новых файлов или каталогов. Также присутствует возможность удаления элементов дата создания которых, меньше заданной. Данный программный продукт способен дать представления о работе с файловыми менеджерами, показать их возможности.
5 Методика испытаний
5.1 Технические требования
Минимальные системные требования к данному приложению представлены в таблице 1.
Таблица 1 – Минимальные системные требования
Элементы конфигурации |
Описание характеристик |
Процессор |
AMD/Intel 300Ghz + |
Оперативная память |
64mb + |
Видео адаптер |
32mb + |
Дисковой накопитель |
3 mb для хранения архива,5 mb для распаковки |
Клавиатура |
Совместимая с персональным компьютером |
Мышь |
Совместимая с персональным компьютером |
Блок питания |
200W + |
Монитор |
15 + |
Операционная система |
98\2000\XP\Vista |
5.2 Функциональное тестирование
При функциональном тестировании осуществляется проверка каждого пункта меню, каждой операции, которую выполняет приложение. Функциональное тестирование должно гарантировать работу всех элементов управления в автономном режиме.
Протестируем функцию «
Рисунок 2 – Элемент созданный 01.06.2009
Рисунок 3 – Форма для ввода «критической» даты
Рисунок 4 – Результат выполнения функции «Delete by Date»
Рассмотрим функцию поиска «Find by Name». Данная функция предназначена для поиска элемента в дереве по его имени. Для поиска элемента необходимо нажать на меню «File» затем выбрать вкладку «Find» и в открывшемся подменю выбрать «Find by Name». В открывшейся форме пользователю будет предложено ввести имя искомого файла, после введения имени элемента и подтверждения нажатием на кнопку «Искать» найденный элемент будет подсвечен желтым цветом, а все дерево, если находилась в закрытом состоянии, станет открытым. Работа данной функции представлена на рисунках 5,6,7,8.