Подбор печатающего устройства

Автор работы: Пользователь скрыл имя, 16 Июня 2012 в 01:05, дипломная работа

Краткое описание

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

Содержание

Введение 5
1. Ис-следовательский раздел 7
1.1. Ана-лиз предметной области 8
1.1.1 Мат-ричные принтеры 10
1.1.2 Струйные принтеры 21
1.1.3 Ла-зерные принтеры 30
1.2. Ма-тематическая постановка задачи 41
1.3. Обоснование выбора программных средств 47
1.4. Вы-воды 49
2. Спе-циальный раздел 51
2.1 Разработка структурной схемы информационной системы подбора печатающих устройств 51
2.2 Разработка функциональной схемы информационной системы подбора печатающих устройств 53
2.3 Выводы 53
3. Технологический раздел 54
3.1 Технология разработки главного модуля 54
4. Экономическое обоснование разработки программного
продукта 63
4.1 Экономическая концепция бизнеса 63
4.2 Характеристика программного продукта 63
4.3 Исследование и анализ рынка 64
4.4 Производственный план 65
4.5 План маркетинговых действий 69
4.6 Потенциальные риски 60
4.7 Финансовый план 70
4.8 Расчет безубыточности 73
4.9 Выводы 75
5 Безопасность и экологичность проекта 76
5.1 Вредные и опасные факторы производства 76
5.2 Планировка рабочего места 86
5.3 Пожарная безопасность на рабочем месте 91
5.4 Утилизация отработанной техники 92
5.5 Выводы 93
Список литературы и нормативных документов 9

Вложенные файлы: 1 файл

rmaka.docx

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

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

        

Рисунок 2.1 – Структурная схема информационной системы подбора печатающих устройств 

      2.2 Функциональная схема информационной  системы подбора печатающих устройств 

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

      Функциональная  схема информационной системы подбора  печатающих устройств представлена на рисунке 2.2.

Рисунок 2.2 - Информационная система подбора  печатающих устройств 

      2.3 Выводы 

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

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

      3 Технологический раздел 

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

      В основном модуле программы были объявлены  все компоненты интерфейса, реализованы функции взаимодействия интерфейсного модуля с таблицей Microsoft Excel, а так же функции программы, связанные с выводом информации и переходом на интернет-страницу. Программный код основного модуля, выполненный на языке Object Pascal представлен в листинге 3.1

      Листинг 3.1 – реализация основного модуля информационной системы подбора  печатающих устройств на основе метода анализа иерархий

      unit Unit1; 

interface 

uses

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

  Dialogs, ExtCtrls, ComCtrls, StdCtrls, jpeg, ComObj,OleServer, ExcelXP, ShellAPI; 

type

  TForm1 = class(TForm)

    trckbr1: TTrackBar;

    trckbr2: TTrackBar;

    trckbr3: TTrackBar;

    trckbr4: TTrackBar;

    trckbr5: TTrackBar;

    trckbr6: TTrackBar;

    trckbr7: TTrackBar;

    trckbr8: TTrackBar;

    trckbr9: TTrackBar;

    trckbr10: TTrackBar;

    img1: TImage;

    img2: TImage;

    img3: TImage;

    img4: TImage;

    img5: TImage;

    img6: TImage;

    img7: TImage;

    img8: TImage;

    img9: TImage;

    img10: TImage;

    img11: TImage;

    img12: TImage;

    img13: TImage;

    img14: TImage;

    img15: TImage;

    img16: TImage;

    img17: TImage;

    img18: TImage;

    img19: TImage;

    img20: TImage;

    btn1: TButton;

    btn2: TButton;

    lbl1: TLabel;

    lbl2: TLabel;

    btn3: TButton;

    lbl3: TLabel;

    lbl4: TLabel;

    lbl5: TLabel;

    lbl6: TLabel;

    lbl7: TLabel;

    lbl8: TLabel;

    lbl9: TLabel;

    lbl10: TLabel;

    lbl11: TLabel;

    lbl12: TLabel;

    lbl13: TLabel;

    lbl14: TLabel;

    lbl15: TLabel;

    lbl16: TLabel;

    lbl17: TLabel;

    lbl18: TLabel;

    lbl19: TLabel;

    lbl20: TLabel;

    lbl21: TLabel;

    lbl22: TLabel; 

    procedure btn1Click(Sender: TObject);

    procedure btn2Click(Sender: TObject);

    procedure btn3Click(Sender: TObject);

  private

    { Private declarations }

  public

    { Public declarations }

  end; 

var

  Form1: TForm1;

  Ap: OleVariant;

  A: array [1..10] of Real;

  i,n: Integer;

  max:Real; 

implementation 

{$R *.dfm} 

procedure TForm1.btn1Click(Sender: TObject);

begin 

Ap := CreateOleObject('Excel.Application');

Ap.Workbooks.Open(GetCurrentDir+'\Base.xls'); 

if trckbr1.Position>=0 Then

Ap.Worksheets[4].Range['E2']:= trckbr1.Position+1

else

Ap.Worksheets[4].Range['E2']:= 1/(Abs(trckbr1.Position)+1); 

if trckbr3.Position>=0 Then

Ap.Worksheets[4].Range['F2']:= trckbr3.Position+1

else

Ap.Worksheets[4].Range['F2']:= 1/(Abs(trckbr3.Position)+1); 

if trckbr2.Position>=0 Then

Ap.Worksheets[4].Range['G2']:= trckbr2.Position+1

else

Ap.Worksheets[4].Range['G2']:= 1/(Abs(trckbr2.Position)+1); 

if trckbr4.Position>=0 Then

Ap.Worksheets[4].Range['H2']:= trckbr4.Position+1

else

Ap.Worksheets[4].Range['H2']:= 1/(Abs(trckbr4.Position)+1); 

if trckbr5.Position>=0 Then

Ap.Worksheets[4].Range['F3']:= trckbr5.Position+1

else

Ap.Worksheets[4].Range['F3']:= 1/(Abs(trckbr5.Position)+1); 

if trckbr6.Position>=0 Then

Ap.Worksheets[4].Range['G3']:= trckbr6.Position+1

else

Ap.Worksheets[4].Range['G3']:= 1/(Abs(trckbr6.Position)+1); 

if trckbr7.Position>=0 Then

Ap.Worksheets[4].Range['H3']:= trckbr7.Position+1

else

Ap.Worksheets[4].Range['H3']:= 1/(Abs(trckbr7.Position)+1); 

if trckbr8.Position>=0 Then

Ap.Worksheets[4].Range['G4']:= trckbr8.Position+1

else

Ap.Worksheets[4].Range['G4']:= 1/(Abs(trckbr8.Position)+1); 

if trckbr9.Position>=0 Then

Ap.Worksheets[4].Range['H4']:= trckbr9.Position+1

else

Ap.Worksheets[4].Range['H4']:= 1/(Abs(trckbr9.Position)+1); 

if trckbr10.Position>=0 Then

Ap.Worksheets[4].Range['H5']:= trckbr10.Position+1

else

Ap.Worksheets[4].Range['H5']:= 1/(Abs(trckbr10.Position)+1); 

a[1]:=Ap.Worksheets[2].Range['B53'];

a[2]:=Ap.Worksheets[2].Range['B54'];

a[3]:=Ap.Worksheets[2].Range['B55'];

a[4]:=Ap.Worksheets[2].Range['B56'];

a[5]:=Ap.Worksheets[2].Range['B57'];

a[6]:=Ap.Worksheets[2].Range['B58'];

a[7]:=Ap.Worksheets[2].Range['B59'];

a[8]:=Ap.Worksheets[2].Range['B60'];

a[9]:=Ap.Worksheets[2].Range['B61'];

a[10]:=Ap.Worksheets[2].Range['B62']; 

max:=0; 

for i:=1 to 10 do begin

  if a[i]> max then begin

   max:=a[i];

   n:=i;

   end;

   end; 

case n of

1: ShellExecute(0,'open',PChar(GetCurrentDir+'\docs\M1.doc'),'','',SW_SHOW);

2: ShellExecute(0,'open',PChar(GetCurrentDir+'\docs\M2.doc'),'','',SW_SHOW);

3: ShellExecute(0,'open',PChar(GetCurrentDir+'\docs\M3.doc'),'','',SW_SHOW);

4: ShellExecute(0,'open',PChar(GetCurrentDir+'\docs\M4.doc'),'','',SW_SHOW);

5: ShellExecute(0,'open',PChar(GetCurrentDir+'\docs\M5.doc'),'','',SW_SHOW);

6: ShellExecute(0,'open',PChar(GetCurrentDir+'\docs\M6.doc'),'','',SW_SHOW);

7: ShellExecute(0,'open',PChar(GetCurrentDir+'\docs\M7.doc'),'','',SW_SHOW);

8: ShellExecute(0,'open',PChar(GetCurrentDir+'\docs\M8.doc'),'','',SW_SHOW);

9: ShellExecute(0,'open',PChar(GetCurrentDir+'\docs\M9.doc'),'','',SW_SHOW);

10: ShellExecute(0,'open',PChar(GetCurrentDir+'\docs\M10.doc'),'','',SW_SHOW);

end; 

Ap.DisplayAlerts := False;

Ap.save;

Ap.quit; 

end; 

procedure TForm1.btn2Click(Sender: TObject);

begin

case n of

1: ShellExecute(TForm(Owner).Handle,nil,PChar('http://www.foroffice.ru/products/description/30090.html'), nil, nil,SW_SHOWNORMAL);

2: ShellExecute(TForm(Owner).Handle,nil,PChar('http://www.foroffice.ru/products/description/25196.html'), nil, nil,SW_SHOWNORMAL);

3: ShellExecute(TForm(Owner).Handle,nil,PChar('http://www.foroffice.ru/products/description/30091.html'), nil, nil,SW_SHOWNORMAL);

4: ShellExecute(TForm(Owner).Handle,nil,PChar('http://www.foroffice.ru/products/description/21383.html'), nil, nil,SW_SHOWNORMAL);

5: ShellExecute(TForm(Owner).Handle,nil,PChar('http://www.foroffice.ru/products/description/663.html'), nil, nil,SW_SHOWNORMAL);

6: ShellExecute(TForm(Owner).Handle,nil,PChar('http://www.foroffice.ru/products/description/26947.html'), nil, nil,SW_SHOWNORMAL);

7: ShellExecute(TForm(Owner).Handle,nil,PChar('http://www.foroffice.ru/products/description/32703.html'), nil, nil,SW_SHOWNORMAL);

8: ShellExecute(TForm(Owner).Handle,nil,PChar('http://www.foroffice.ru/products/description/32705.html'), nil, nil,SW_SHOWNORMAL);

9: ShellExecute(TForm(Owner).Handle,nil,PChar('http://www.foroffice.ru/products/description/24437.html'), nil, nil,SW_SHOWNORMAL);

10: ShellExecute(TForm(Owner).Handle,nil,PChar('http://www.xerox.ru/ru/catalog/460/2987/?id=kry'), nil, nil,SW_SHOWNORMAL);

end;

end; 

procedure TForm1.btn3Click(Sender: TObject);

begin

Close;

end; 

end. 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

     4. Экономическое обоснование разработки программного продукта 

      4.1. Экономическая концепция бизнеса

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

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

Информация о работе Подбор печатающего устройства