Информационная система «Видеопрокат»

Автор работы: Пользователь скрыл имя, 03 Мая 2015 в 20:54, курсовая работа

Описание работы

Целью курсовой работы является разработка программного продукта, позволяющего автоматизировать документооборот в магазине. Для разработки будет использоваться язык UML и программный пакет Rational Rose.
UML включает набор графических элементов, используемых на диаграммах, и правила для объединения этих элементов. Диаграммы используются для отображения различных представлений системы. Этот набор представлений называется моделью.

Содержание работы

ВВЕДЕНИЕ 3
1 Описание информационной системы для организации товарооборота и обработки платежей в магазине видеопроката 4
1.1 Характеристика существующей организации обработки информации в магазине видеопроката 4
1.2 Информационные данные, обеспечивающие вариантность решения задачи 4
1.3 Словарь специальных терминов, характеризующих объект 5
2 Разработка автоматизированной системы для организации товарооборота и обработки платежей в магазине видеопроката 6
2.1 Техническое задание на разработку ПП 6
2.2 Разработка модели использования для системы «Видеопрокат» 13
2.3 Построение концептуальной модели «Товарооборот и обработка платежей в магазине видеопроката» 14
2.3.1 Описание поведения системы 14
2.3.1.1 Диаграмма последовательностей системы 15
2.3.1.2 Диаграммы кооперации 16
2.3.1.3 Диаграммы действий 17
2.3.2 Разработка структуры программного обеспечения 19
2.3.2.1 Определение отношений между объектами 19
2.3.2.2 Проектирование классов 21
2.3.2.3 Диаграммы состояний объектов 22
2.4 Обоснования проектных решений по программному решению задачи 23
2.4.1 Компоновка программных компонентов 23
2.4.2 Проектирование размещения программных компонентов для распределённых программных систем 24
2.5 Обоснование выбора средств моделирования и языка программирования 25
3 Разработка интерфейса пользователя 26
3.1 Стандарт интерфейса пользователя проекта 26
3.2 Руководство пользователя 27
4 Тестирование разработанного ПП 29
5 Результаты исследований 31
5.1 Анализ экономической эффективности 31
5.2. Характеристика разработанного ПП 31
Список литературы 32

Файлы: 1 файл

Видеопрокат.doc

— 651.50 Кб (Скачать файл)

 

2.3.2.3 Диаграммы состояний объектов

Прецеденты и сценарии применяются для описания поведения системы, то есть взаимодействия объектов в ней. Иногда требуется рассмотреть поведение внутри самого объекта. Диаграмма состояний (statechart diagram) показывает положение одиночного объекта, события или сообщения, которые вызывают переход из одного состояния в другое, и действия, являющиеся результатом смены состояния.

Состояние (state) - это некое положение в жизни объекта, при котором он удовлетворяет определенному условию, выполняет некоторое действие или ожидает события. Состояние объекта можно описать с помощью значений одного или нескольких атрибутов класса. В языке UML состояние изображается в виде прямоугольника с закругленными углами.

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

Рисунок 7 – Диаграмма состояний «Прокат»

 

2.4 Обоснования проектных решений по программному решению задачи

2.4.1 Компоновка программных компонентов

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

Для разрабатываемой автоматизированной системы «Товарооборот и обработка платежей в магазине видеопроката» диаграмма программных компонентов приведена на рисунке 8.

Рисунок 8 – Компоновка программных компонентов

 

2.4.2 Проектирование размещения программных компонентов для распределённых программных систем

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

Рисунок 9 – Проектирование размещения программных компонентов для ИС

 

 

 

 

2.5 Обоснование выбора средств моделирования и языка программирования

Реализация поставленной задачи будет проводиться с использованием средства моделирования Rational Rose и языка UML, а также среды разработки Delphi 7, в которой использован язык программирования высокого уровня Object Pascal. Данный язык программирования ориентирован на разработку приложений для баз данных. Delphi 7 позволяет программисту быстро и качественно создавать приложения любой сложности для работы с базами данных.

 

3 Разработка интерфейса пользователя

3.1 Стандарт интерфейса пользователя проекта

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

Рисунок 10 – Организация взаимодействия пользователя с компьютером

Рисунок 11 – Организация интерфейса ИС «Видеопрокат»

 

 

3.2 Руководство пользователя

Типы пользовательских интерфейсов – представляют собой совокупность ПО обеспечивающее взаимодействие пользователя с компьютером.

 

Рисунок 12 – Интерфейс «Меню»

 

Рассмотрим каждый режим формы «меню».

При  нажатии  на  кнопку  «Клиенты»,  открывается  форма  «Клиенты» (рис. 13).

 

Рисунок 13 – Интерфейс «Клиенты»

При нажатии на кнопку «Выход» происходит закрытие формы.

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

При нажатии на кнопку «Регистрация» появляется форма «Регистрация нового клиента» (рис. 14)

 

Рисунок 14 - Интерфейс «Регистрация нового клиента»

 

При нажатии на кнопку «Сохранить» происходит сохранение введенных данных в таблицу «Клиенты».

При  нажатии  на  кнопку  «Видео»  на форме «меню», открывается  форма  «Видео» (рис. 15).

 

Рисунок 15 - Интерфейс «Видео»

 

При нажатии на кнопку «Выход» происходит закрытие формы.

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

При нажатии кнопки «Выход» на форме «Меню» происходит закрытие формы.

4 Тестирование разработанного ПП

Тестирование - это процесс выполнения программы, целью которого является выявление ошибок.

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

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

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


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

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

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

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

Рисунок 16 - Диаграмма тестирования

 

 

 

 

 

5 Результаты исследований

5.1 Анализ экономической эффективности

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

5.2. Характеристика разработанного ПП

Данная система имеет такие характеристики как:

  • надежность;
  • применимость;
  • эффективность;
  • сопровождаемость;
  • переносимость. 

 

 

 

 

 

 

 

 

 

 

 

Список литературы

1. Норенков И.П. Основы автоматизированного  проектирования: Учеб. для вузов. – М.: Изд-во МГТУ им. Н.Э. Баумана, 2000. : ил. (Сер. «Информатика в техническом университете»).

2.  Бобров «Объектно-ориентированное программирование» - М.: 2000г.

3. Липаев В.В., Филинов Е.Н. Мобильность  программ и данных в открытых  информационных системах. – М.: Научная книга, 1997.

4. Вендор А.М. Проектирование программного  обеспечения экономических  информационных  систем: Учебник. – М.: Финансы и  статистика, 2000.

5. Системы автоматизированного  проектирования: Учеб. Пособие для  вузов /  Под ред. И.П. Норенкова. М.: Высш. Шк., 1986.

6.  Мацяшек, Лешек А. анализ требований  и проектирование систем. Разработка  информационных систем с ипользованием UML.: Пер. с англ. – М.: Издательский дом «Вильямс», 2002.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Приложение А

Программный код формы «Меню»

unit Ras;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, DB, Grids, DBGrids, ADODB, StdCtrls, jpeg, ExtCtrls, ImgList;

type

  TFormRas = class(TForm)

    DataSource1: TDataSource;

    RasTable: TADOTable;

    DBGrid1: TDBGrid;

    Button1: TButton;

    RasTableDSDesigner: TWideStringField;

    RasTableDSDesigner2: TWideStringField;

        Button2: TButton;

    ADOConnection1: TADOConnection;

    Image1: TImage;

    Image2: TImage;

    procedure Button1Click(Sender: TObject);

    procedure DBGrid1DblClick(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure FormCreate(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  FormRas: TFormRas;

  Fmess:TForm;

implementation

     uses newnapr,pass;

{$R *.dfm}

procedure TFormRas.Button1Click(Sender: TObject);

begin

       formpokupatel.ShowModal;

end;

procedure TFormRas.Button2Click(Sender: TObject);

begin

   FormPass.ShowModal;

end.

Программный код формы «Видео»

unit Pass;

interface

uses

  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

  Dialogs, DB, ADODB, Grids, DBGrids, StdCtrls, ExtCtrls, Buttons, DBCtrls,

  ComCtrls, jpeg;

type

  TFormKonsultant = class(TForm)

    ADOTable1: TADOTable;

    DataSource1: TDataSource;

    DBGrid1: TDBGrid;

    ADOTable1DSDesigner: TWideStringField;

    ADOTable1DSDesigner2: TWideStringField;

    ADOTable1DSDesigner3: TWideStringField;

    ADOTable1DSDesigner4: TWideStringField;

    ADOTable1DSDesigner5: TWideStringField;

    ADOTable1DSDesigner6: TWideStringField;

        Button1: TButton;

    Label1: TLabel;

    Button2: TButton;

    Edit1: TEdit;

    Label2: TLabel;

    Button3: TButton;

    Button4: TButton;

    Button5: TButton;

    Button6: TButton;

    BitBtn1: TBitBtn;

    RadioGroup1: TRadioGroup;

    Button7: TButton;

    Edit2: TEdit;

    Edit3: TEdit;

    CheckBox1: TCheckBox;

    Label4: TLabel;

    Button8: TButton;

    Button9: TButton;

    Button10: TButton;

    Button11: TButton;

    Button12: TButton;

    Label5: TLabel;

    RadioGroup2: TRadioGroup;

    Label3: TLabel;

  procedure Button1Click(Sender: TObject);

    procedure DBGrid1DblClick(Sender: TObject);

    procedure Button2Click(Sender: TObject);

    procedure Button3Click(Sender: TObject);

  procedure Button4Click(Sender: TObject);

    procedure Button5Click(Sender: TObject);

    procedure BitBtn1Click(Sender: TObject);

    procedure CheckBox1Click(Sender: TObject);

    procedure ADOTable1FilterRecord(DataSet: TDataSet; var Accept: Boolean);

    procedure RadioGroup2Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end;

var

  FormKonsultant: TFormKonsultant;

  po:string;

implementation

    uses ras, newnapr, report, NewKonsultant, Unit3;

{$R *.dfm}

procedure TFormPass.Button1Click(Sender: TObject);

begin

     Adotable1.Insert;

     FormNewKonsultant.ShowModal;

end;

procedure TFormKonsultant.DBGrid1DblClick(Sender: TObject);

begin

     adotable1.Edit;

     formnewpokupat.ShowModal;

end;

procedure TFormKonsultant.Button2Click(Sender: TObject);

begin

Adotable1.Edit;

Adotable1.Delete;

end;

procedure TFormKonsultant.Button3Click(Sender: TObject);

begin

with adotable1 do

  begin

  first;

   while not eof do

   begin

   if (ADOTable1DSDesigner.Text=edit1.Text) then

   showmessage('фамилия: '+ADOTable1DSDesigner.Text+'    имя: '+ADOTable1DSDesigner2.Text+'    VIN: '+ADOTable1DSDesigner4.Text+'     дата продажи авто: '+ADOTable1DSDesigner11.Text);

   next;

   end;

  end;

end;

procedure TFormKonsultant.Button4Click(Sender: TObject);

begin

form1.QRLabel12.Caption:=ADOTable1DSDesigner.Text;

form1.QRLabel13.Caption:=ADOTable1DSDesigner2.Text;

form1.QRLabel14.Caption:=ADOTable1DSDesigner3.Text;

form1.QRLabel15.Caption:=ADOTable1DSDesigner4.Text;

form1.QRLabel21.Caption:=ADOTable1DSDesigner5.Text;

form1.QRLabel16.Caption:=ADOTable1DSDesigner11.Text;

form1.QuickRep1.Preview;

end;

procedure TFormKonsultant.Button5Click(Sender: TObject);

begin

label2.Visible:=false;

edit1.Visible:=false;

edit1.Text:='';

button3.Visible:=false;

ADOtable1.Filtered:=false;

button5.Visible:=false;

button10.Visible:=true;

end;

procedure TFormKonsultant.Button6Click(Sender: TObject);

begin

FormKonsultant.close;

end;

procedure TFormKonsultant.Button7Click(Sender: TObject);

var Pole : Shortstring;

begin

case RadioGroup1.ItemIndex of

   0 : Pole := 'Жанр';

   1 : Pole := 'Название';

   2 : Pole := 'Режисер';

   end;

ADOtable1.Locate(Pole,(Edit2.Text),[])

end;

procedure TFormKonsultant.CheckBox1Click(Sender: TObject);

begin

ADOTable1.Filtered:=CheckBox1.Checked

end;

procedure TFormKonsultant.ADOTable1FilterRecord(DataSet: TDataSet;

Информация о работе Информационная система «Видеопрокат»