Розробка гнучкої системи інтерактивної взаємодії для підтримки спільного навчання на основі платформи Microsoft .NET. Модуль прийому даних

Дослідження інструментальних засобів для створення систем спільного навчання. Створення Windows-додатків на основі Visual C#. Функціональні можливості та програмна реалізація системи інтерактивної взаємодії. Програмна реалізація модулю прийому зображення.

Рубрика Программирование, компьютеры и кибернетика
Вид дипломная работа
Язык украинский
Дата добавления 22.10.2012
Размер файла 4,5 M

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Всі закладки, окрім Clipboard Ring і General, містять компоненти, які можна перетягнути на форму. Закладка Clipboard Ring є аналогом буфера обміну в Microsoft Office 2003, буфера, що відображає вміст, за декілька операцій копіювання або вирізування. Для вставки фрагмента достатньо двічі клацнути по ньому.

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

Рис. 3.19 Ергономічне розташування вікон, що максимально звільняє робочу область

3.7 Режими дизайну і коду

При створенні нового проекту запускається режим дизайну -- форма є основою для розташування елементів управління. Для роботи з програмою слід перейти в режим коду. Це можна зробити декільком способами: клацнути правою кнопкою миші в будь-якій частині форми і в меню, що з'явилося, вибрати View Code, у вікні Solution Explorer зробити те ж саме на компоненті Form 1.cs або просто двічі клацнути на формі -- при цьому згенерується метод Form1_Load. Після хоч би одноразового переходу в режим коду в цьому проекті з'явиться вкладка Form1.cs*, натискаючи на яку, теж можна переходити в режим коду. Для переходу в режим коду також можна використовувати клавішу F7, а для повернення в режим дизайну -- поєднання Shift+F7.

Перемкнемося в режим коду і розглянемо деякі блоки.

Даний блок визначає, які простори імен використовуються в цьому проекті:

using System;

using System.Drawing;

using System.Collections;

using System.ComponentModel;

using System.Windows.Forms;

using System.Data;

Для проглядання інформації про вміст кожного з цих просторів можна скористатися вікном Object Browser.

Далі визначається власний простір імен, ім'я якого співпадає з назвою проекту: namespace FirstForm

При необхідності цю назву можна міняти.

Клас форми Form1, успадкований від System.Windows.Forms.Form, містить в собі майже весь код:

public class Form1 : System.Windows.Forms.Form

{

... }

Усередині цього класу знаходиться конструктор форми:

public Form1()

{

//

// Required for Windows Form Designer support

//

InitializeComponent();

//

// TODO: Add any constructor code after InitializeComponent call

//

}

Подія Initiliaze відбувається у момент запуску додатку; код, що додається після InitializeComponent, може змінювати вміст форми або елементи управління у момент запуску.

Область Windows Form Designer generated code містить код графічного інтерфейсу елементів управління і форми, що автоматично генерується середовищем. Порожня форма містить опис розмірів і заголовка. Клацнемо на знак (+) для перегляду це області:

#region Windows Form Designer generated code

/// <summary>

/// Required method for Designer support -- do not modify

/// the contents of this method with the code editor.

/// </summary>

private void InitializeComponent()

{

this.components = new System.ComponentModel.Container();

this.Size = new System.Drawing.Size(300,300); // розмір форми в пікселях

this.Text = "Form1";// заголовок форми.

}

#endregion

Можна міняти значення параметрів, що створюються середовищем, і тоді зміни негайно відіб'ються на графічному інтерфейсі. Концепція області Windows Form Designer generated code схожа з концепцією WYSIWYG 1) редакторів HTML-коду, де можна розміщувати компоненти перетяганням, а середовище само генерує HTML-код.

Метод Main реалізує головну точку входу в програму -- тобто місце, звідки починається виконання написаного нами коду:

static void Main()

{

Application.Run(new Form1());

}

При відладці великих програм зручно використовувати нумерацію рядків, яку можна включити в пункті меню Tools/Options./Text Editor/C# -- на формі Display -- перемикач Line Numbers.

Рис. 3.20 Відображення нумерації рядків коду

При довгій роботі над кодом контрастні чорні букви на білому фоні викликають втому, тому бажано як фоновий колір встановити інший -- наприклад, сірий. Це можна зробити в Options на вкладці Environments/Font and Colors. Тут же можна змінити шрифт коду -- наприклад, встановити Times New Roman.

Рис. 3.21 Вкладка Environments/Font and Colors.

В результаті режим коду приймає наступний вигляд:

Рис. 3.22 Ергономічний вид режиму коду

3.8 Властивості проекту

Розглянемо властивості проекту. У вікні Solution Explorer виділяємо назву проекту -- FirstForm, клацаємо правою кнопкою миші і вибираємо в меню пункт Properties. У вікні, що з'явилося, містяться всі властивості поточного проекту.

Рис. 3.23 Вікно Common Properties / General

У вікні властивостей міститься досить багато параметрів. Розглянемо деякі, найбільш вживані.

Вкладка Common Properties / General включає наступні властивості:

Assembly Name -- назва збірки.

Output Type -- тип компільованого додатку. За умовчанням для Windows-додатків стоїть Windows Application.

Default Namespace -- назва простору імен в коді. За умовчанням співпадає з ім'ям проекту.

Startup Object -- назва класу, що містить точку входу в програму - метод Main.

Application Icon -- шлях до файлу з іконкою додатку.

Project File -- ім'я файлу з інформацією про проект. Знаходиться усередині каталогу з проектом;

Project Folder -- шлях до файлу з проектом.

Output File -- назва файлу, що створюється при компіляції, -- вихідного файлу. Співпадає з ім'ям проекту.

На вкладці Configuration Properties / Build розглянемо деякі властивості.

Рис. 3.24 Вікно Configuration Properties / Build

Optimize Code -- оптимізація програми, значення цієї властивості true може значно збільшити продуктивність додатку.

Allow Unsafe Code Blocks -- вирішити використання ключового слова unsafe в коді проекту.

Warning Level -- рівень попереджень, що відображаються при компіляції програми.

Treat Warnings As Errors -- сприймати всі попередження як помилки. Якщо оголосити змінну в коді, але ніде не використовувати її, при значенні цієї властивості False додаток скомпілюється, при значенні True -- ні.

Output Path -- шлях, де формується вихідний файл. Тека bin знаходиться усередині теки проекту.

Generate Debugging Information -- виводити інформацію при відладці. Ця властивість повинна бути включена: саме ці повідомлення допомагають виправляти код.

3.9 Компіляція програми

Для перевірки програми використовуються два способи відладки. Перший спосіб -- Build Solution, який перевіряє код і компілює програму, не запускаючи її. Це дуже зручно, коли ви працюєте над окремим модулем великої розробки, і немає можливості перевіряти весь продукт в цілому. Для запуску цього способу вибираємо в головному меню пункт Build --> Build Solution (або поєднання клавіш Ctrl+Shift+B).

Рис. 3.25 Пункт головного меню Build

При цьому з'являється вікно Output, в якому виводиться інформація про всі стадії компіляції.

Рис. 3.26 Вікно Output, додаток не містить помилок

Якщо в коді є помилки, вікно Output виведе повідомлення про помилки, потім з'явиться їх список, причому для відладки достатньо двічі клацнути на відповідній помилці для переходу до потрібної ділянки коду:

Рис. 3.27 Вікно Output, в коді не вистачає фігурної дужки

Інший спосіб компіляції програми -- Debug, при якому перевіряється код, компілюється програма і формується призначений для користувача інтерфейс.

Рис. 3.28 Пункт головного меню Debug

Для запуску цього способу натискаємо клавішу F5. На екрані знову з'являється вікно Output, що інформує нас про хід компіляції. Якщо додаток не містить помилок, то на екрані з'явиться готова форма:

Рис. 3.29 Додаток запущено

При запуску додатку в каталозі bin\Debug усередині каталогку проекту виникає файл FirstForm.exe і файли, необхідні для відладки. Файл FirstForm.exe і є готовий додаток. Готовий додаток для розповсюдження необхідно скомпілювати в режимі Release -- тоді з'явиться каталог bin\Release, яка міститиме тільки FirstForm.exe. Ми можемо просто скопіювати його на інший комп'ютер, і якщо там є .NET Framework, все працюватиме.

У меню Debug також розташовані всі засоби для покрокової відладки коду, які ми вже зустрічали при роботі з консольними додатками.

Яка різниця між компіляціями Build і Debug? Припустимо, що ми розробляємо додаток, який підключатиметься до бази даних на видаленому комп'ютері, недоступному у момент розробки. Додаток одержуватиме дані відразу ж при запуску. Для відладки коду програми зручніше використовувати режим Build, оскільки відладка в режимі Debug супроводжуватиметься повідомленнями про помилки, що виникають із-за неможливості підключення до іншого комп'ютера. Саме підключення також займатиме якийсь час.

4. Функціональні можливості та програмна реалізація системи. Модуль прийому даних

4.1 Функціональне призначення та технологічні особливості розробки

Розроблена в результаті виконання дипломної роботи система написана на мові програмування C# для платформи Microsoft .NET і використовує Microsoft Research ConferenceXP в якості платформи для розробки функцій спільної роботи і передачі мультимедійного вмісту в реальному режимі часу. Архітектура, побудована на основі ConferenceXP, призначена для роботи в широкосмугових мережах і надає собою розширювану інфраструктуру з широкими можливостями для спільної роботи і міжособової взаємодії.

Розроблена система - це рішення, реалізоване на основі многоагентного підходу для побудови системи для сумісного навчання. Це дозволяє викладачу використовувати розроблену систему для запуску трансляції своєї презентації в мережу, а студентам, в незалежності від їх місцеположення, переглядати на свої персональних комп'ютерах трансльовані дані.

Для прийому голосової інформації була використана бібліотека voice.dll написана, так само як і основна програма, на мові С#, в якій були надані всі необхідні класи для організації голосового спілкування. А для отримання і перетворення зображення видаленого робочого столу були використані імпортовані стандартні функції бібліотек Windows API user32.dll і gdi32.dll.

Розроблена система надає наступні можливості:

1. захоплення і передача зображення з відеокамери;

2. можливість голосового спілкування;

3. можливість обміну текстовими повідомленнями;

4. захоплення і передача зображення області робочого столу.

4.2 Розробка схеми інформаційних потоків системи

Схема інформаційних потоків розробленої системи наведена на рис. 4.1

4.3 Інтерфейс взаємодії користувачів та програмного комплексу

Весь інтерфейс взаємодії користувача з програмою «Система конференцій» був розроблений в спеціалізованому середовищі розробки Microsoft Visual Studio C# 2008 Express Edition з використанням технології Windows.Form та об'єктно-орієнтованої мови програмування C#.

Середовище розробки Microsoft Visual Studio C # 2008 Express Edition надає візуалізовані компоненти розробки інтерфейсів користувача (рис 4.2).

Рис. 4.2 Інтерфейс Visual Studio C# 2008

За допомогою Microsoft Visual Studio C # 2008 є можливість розробляти інтерфейси будь-якої складності, не замислюючись про програмування. Тому, дуже легко можна розподілити комплексне завдання написання програми на дві - розробку інтерфейсу взаємодії користувача і програми і безпосередньо програмування. При цьому Microsoft Visual Studio сама подбає про реєстрацію всіх компонентів інтерфейсу, згенерувати відповідний код і забезпечивши його коментарями. На лістингу нижче показан приклад генеруємого коду при додаванні до вікна програми компоненту «Меню» з кількома пунктами:

//

// mainMenu1

//

this.mainMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {this.menuItem1});

//

// menuItem1

//

this.menuItem1.Index = 0;

this.menuItem1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {

this.menuItem3,

this.menuItem14,

this.menuItem5,

this.menuItem12,

this.menuItem11,

this.menuItem4,

this.menuItem7,

this.menuItem8

});

this.menuItem1.Text = "Конференция";

//

// menuItem3

//

this.menuItem3.Index = 0;

this.menuItem3.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {this.menuItem2});

this.menuItem3.Text = "Видео конференция";

//

// menuItem2

//

this.menuItem2.Index = 0;

this.menuItem2.Text = "Изображение с камеры";

this.menuItem2.Click += new System.EventHandler(this.menuItem2_Click);

//

// menuItem14

//

this.menuItem14.Index = 1;

this.menuItem14.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {

this.menuItem15});

this.menuItem14.Text = "Голосовая конференция";

//

// menuItem15

//

this.menuItem15.Index = 0;

this.menuItem15.Text = "Начать передачу голоса";

this.menuItem15.Click += new System.EventHandler(this.menuItem15_Click);

А для панелі статусу буде згенерований наступний код:

//

// statusBar1

//

this.statusBar1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(178)));

this.statusBar1.Location = new System.Drawing.Point(0, 244);

this.statusBar1.Name = "statusBar1";

this.statusBar1.Size = new System.Drawing.Size(560, 22);

this.statusBar1.TabIndex = 2;

Одразу після запуску, інтерфейс програми «Менеджер конференцій» представлений єдиним вікном з меню й рядком привітання знизу (рис. 4.3).

Рис. 4.3 Головне вікно системи

Весь подальший процес взаємодії користувача з програмою «Менеджер конференцій» ведеться за допомогою ієрархічного меню «Конференція» (рис. 4.4).

Рис. 4.4 Головне меню системи

При виборі відповідного пункту меню, відкривається додаткове вікно з налаштуваннями відповідної служби, якою бажає скористатися користувач.

Рис. 4.5 Пункт меню «Зображення з камери»

Після вибору пункту меню «Відео конференція-> Зображення з камери» (рис. 4.6), відкривається вікно налаштувань відеокамери:

Рис. 4.6 Вікно налаштувань відеокамери

І вже після завдання параметрів відкривається вікно із зображенням, що одержується за допомогою відеокамери. Це вікно має наступний вигляд:

Рис. 4.7 Вікно з зображенням, що одержується з камери

Наступним пунктом меню є «Голосова конференція-> Почати передачу голосу». При виборі цього запускається вікно налаштувань, необхідних для початку голосового мовлення. Воно показано на рисунку нижче.

Рис. 4.8 Запуск голосової конференції

Рис. 4.9 Вікно налаштунків голосової конференції

Після встановлення всіх налаштувань за допомогою кнопки «Старт» дозволено запустити сеанс голосового зв'язку, а за допомогою кнопки «Стоп» зупинити його і за допомогою хрестика в правому верхньому куті закрити вікно, при цьому сеанс голосового зв'язку автоматично перерветься.

Пункт меню «Презентаційна конференція-> Почати передачу робочого столу» викликає ще одне вікно програми, яке має наступний вигляд:

Рис. 4.10 Презентація робочого столу

Це вікно складається з простого меню, компонента TextBox, в якому задається IP адреса і область, на якій показується поточне утримання робочого столу, яке буде передаватися на віддалений комп'ютер. Це вікно зроблено таким чином, щоб завжди бути поверх всіх інших запущених вікон операційної системи і для того щоб прибрати його можна скористатися або стандартним засобом звичайного Windows вікна, або, вибравши пункт меню «Приховати». При цьому, в першому випадку вікно згорнеться на панель завдань, а в другому - в системний трей.

Після вибору пункту меню «Старт» вікно «Презентація робочого столу» матиме наступний вигляд:

Рис. 4.11 Вигляд вікна «Презентація робочого столу» після початку трансляції

Поки йде трансляція зображення робочого столу, вікно не можна закрити. І тільки зупинивши трансляцію вибравши пункт меню «Стоп» з'являється така можливість.

Для прийому переданого зображення на цільовому комп'ютері необхідно вибрати пункт меню «Конференція-> Отримання зображення». Вікно «Прийом зображення» буде мати наступний вигляд:

Рис. 4.12 Вікно «Прийом зображення»

Вікно «Прийом зображення», так само як і вікно «Презентація робочого столу» складається з меню, компонента TextBox, за допомогою якого можливо вказати IP-адресу віддаленого комп'ютера, який веде мовлення, і області на якій буде виводитися зображення. Ця область знаходиться відразу під компонентом TextBox.

Рис. 4.13 Діалог збереження зображення віддаленого робочого столу.

Після підключення та отримання зображення з віддаленого комп'ютера, одержуване зображення є можливість зберегти на диск у вигляді графічного файлу, скориставшись пунктом меню «Зберегти» вікна «Прийом зображення». Після натискання на пункт меню «Зберегти» відкривається стандартний Windows діалог для збереження файлів, який налаштований таким чином, що б у полі «Тип файлу» вже було вибрано необхідне розширення зберігається файлу.

Після вибору пункту меню «Чат-> Почати чат сесію» відкривається вікно програми «Чат», яке складається з меню, компонента TextBox в якому необхідно вказати IP адрес або віддаленого комп'ютера, на якому вже відкрита чат-сесія, або локальний адреса комп'ютера користувача, для відкриття власної чат-сесії. Так само до складу компонентів вікна входять ще два компоненти TextBox, в одному з яких користувач може писати своє повідомлення, а друге для виведення повідомлень клієнтів чату. При цьому перший компонент TextBox, в якому пишеться повідомлення, стає активним лише після підключення до існуючої чат-сесії або після відкриття нової.

Рис. 4.14 Вікно «Чат»

Меню вікна чат містить три пункти «Підключитися», «Відключитися» і «Шрифт». Після вибору пункту меню «Підключитися» відбувається або підключення до існуючої чат-сесії, або відкриття нової залежно від зазначеної IP-адреси у відповідному компоненті TextBox. Пункт меню «відключитися» служить для переривання чат-сесії, причому поки чат-сесія активна вікно не можна закрити.

Пункт меню «Шрифт» включає в себе ще два підпункти «Колір» та «Розмір».

При виборі підпункту меню «Колір» відкривається стандартне модальне діалогове вікно для вибору кольору шрифту, яким буде забарвлений текст у вікні чату:

Рис. 4.15 Діалог вибору кольору шрифту

А при виборі підпункту меню «Розмір», відкривається стандартне модальне діалогове вікно для вибору стилю та розміру шрифту, який буде відображатися у вікні чату:

Рис. 4.16 Діалог вибору розміру і стилю шрифту

Інтерфейс програми «Система конференцій» був розроблений таким чином, що б користувачі могли комбінувати надані програмою сервіси як їм буде завгодно. Наприклад, можна одночасно почати сесію текстового або голосового чату та передачу зображення робочого столу, що є дуже зручним при проведенні різних конференцій.

4.4 Програмна реалізація модулю прийому зображення

Рис. 4.17 Вікно прийому зображення

При завантаженні форми відбувається ініціалізація об'єктів і виконується наступний програмний код:

private void InitializeComponent()

{

this.components = new System.ComponentModel.Container();

this.mainMenu1 = new System.Windows.Forms.MainMenu(this.components);

this.menuItem2 = new System.Windows.Forms.MenuItem();

this.menuItem3 = new System.Windows.Forms.MenuItem();

this.menuItem1 = new System.Windows.Forms.MenuItem();

this.saveFileDialog1 = new System.Windows.Forms.SaveFileDialog();

this.pictureBox1 = new System.Windows.Forms.PictureBox();

this.textBox1 = new System.Windows.Forms.TextBox();

this.label1 = new System.Windows.Forms.Label();

this.timer1 = new System.Windows.Forms.Timer(this.components);

((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit();

this.SuspendLayout();

//

// mainMenu1

//

this.mainMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {

this.menuItem2,

this.menuItem3,

this.menuItem1});

//

// menuItem2

//

this.menuItem2.Index = 0;

this.menuItem2.Text = "Подключиться";

this.menuItem2.Click += new System.EventHandler(this.menuItem2_Click);

//

// menuItem3

//

this.menuItem3.Enabled = false;

this.menuItem3.Index = 1;

this.menuItem3.Text = "Отключиться";

this.menuItem3.Click += new System.EventHandler(this.menuItem3_Click);

//

// menuItem1

//

this.menuItem1.Index = 2;

this.menuItem1.Text = "Сохранить";

this.menuItem1.Click += new System.EventHandler(this.menuItem1_Click);

//

// pictureBox1

//

this.pictureBox1.BackColor = System.Drawing.Color.WhiteSmoke;

this.pictureBox1.Dock = System.Windows.Forms.DockStyle.Fill;

this.pictureBox1.Location = new System.Drawing.Point(0, 43);

this.pictureBox1.Name = "pictureBox1";

this.pictureBox1.Size = new System.Drawing.Size(368, 223);

this.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;

this.pictureBox1.TabIndex = 7;

this.pictureBox1.TabStop = false;

//

// textBox1

//

this.textBox1.BackColor = System.Drawing.Color.White;

this.textBox1.Dock = System.Windows.Forms.DockStyle.Top;

this.textBox1.Location = new System.Drawing.Point(0, 23);

this.textBox1.Name = "textBox1";

this.textBox1.Size = new System.Drawing.Size(368, 20);

this.textBox1.TabIndex = 8;

this.textBox1.Text = "127.0.0.1";

this.textBox1.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.textBox1_KeyPress);

//

// label1

//

this.label1.BackColor = System.Drawing.Color.Silver;

this.label1.Dock = System.Windows.Forms.DockStyle.Top;

this.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(178)));

this.label1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(64)))));

this.label1.Location = new System.Drawing.Point(0, 0);

this.label1.Name = "label1";

this.label1.RightToLeft = System.Windows.Forms.RightToLeft.Yes;

this.label1.Size = new System.Drawing.Size(368, 23);

this.label1.TabIndex = 9;

this.label1.Text = "Группа";

//

// timer1

//

this.timer1.Interval = 300;

this.timer1.Tick += new System.EventHandler(this.timer1_Tick);

//

// Receiver

//

this.AutoScaleBaseSize = new System.Drawing.Size(5, 13);

this.ClientSize = new System.Drawing.Size(368, 266);

this.Controls.Add(this.pictureBox1);

this.Controls.Add(this.textBox1);

this.Controls.Add(this.label1);

this.Menu = this.mainMenu1;

this.Name = "Receiver";

this.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;

this.Text = "Прием изображения";

this.TopMost = true;

this.WindowState = System.Windows.Forms.FormWindowState.Maximized;

this.Load += new System.EventHandler(this.Receiver_Load);

this.Closing += new System.ComponentModel.CancelEventHandler(this.Receiver_Closing);

((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();

this.ResumeLayout(false);

this.PerformLayout();

}

Всю роботу з прийому зображення робочого столу виконує один єдиний метод Image_Receiver () класу Receiver. Лістинг цього методу наведено нижче:

void Image_Receiver()

{

Try{

UdpClient sock = new UdpClient(5020);

sock.JoinMulticastGroup(IPAddress.Parse(textBox1.Text));

IPEndPoint iep = new IPEndPoint(IPAddress.Any, 0);

byte[] data = sock.Receive(ref iep);

MemoryStream ms = new MemoryStream(data);

pictureBox1.Image = Image.FromStream(ms);

sock.Close();

}catch(Exeption e){

}

}

Для отримання зображення створюється підключення за вказаною у відповідному компоненті TextBox Ip-адресою на порт 5020 і отримані дані виводяться на компонент pictureBox, розташований у тому ж вікні. Зображення оновлюється кожні 300ms.

private void timer1_Tick(object sender, System.EventArgs e)

{

Thread myth;

myth= new Thread (new System.Threading .ThreadStart(Image_Receiver));

myth.Start ();

}

5. Економічне обґрунтування доцільності розробки програмного продукту

Функції спільної роботи і інтерактивної взаємодії в реальному режимі часу є важливою частиною багатьох видів людської діяльності, у тому числі і навчання. Проте, часто вони не можуть бути реалізовані, оскільки в умовах середньостатистичного учбового класу недоступні дороге спеціальне устаткування і відповідне програмне забезпечення. У даній дипломній роботі пропонується підхід для досягнення позитивних ефектів, пов'язаних з сумісним навчанням і взаємодією всіх учасників учбового процесу, відносно простим і недорогим способом. Запропонована система написана на мові програмування C# для платформи Microsoft .NET і використовує Microsoft Research ConferenceXP в якості платформи для розробки функцій спільної роботи і передачі мультимедійного вмісту в реальному режимі часу.

Визначення витрат на створення програмного продукту.

Оскільки середа розробки є безкоштовною, витрати на створення програмного продукту складаються з витрат по оплаті праці розробника програми і витрат по оплаті машинного часу при відладці програми:

Зсппзпспп мвспп,

де Зспп - витрати на створення програмного продукту;

Ззпспп - витрати на оплату праці розробника програми;

Змвспп - витрати на оплату машинного часу;

Витрати на оплату праці розробника програми (Ззпспп) визначаються шляхом множення трудомісткості створення програмного продукту на середню годинну оплату програміста (з урахуванням коефіцієнта відрахувань на соціальні потреби):

Ззпспп=t*Tчас.

Розрахунок трудомісткості створення програмного продукту.

Трудомісткість розробки програмного продукту можна визначити таким чином:

t= to+ tа+ tб+ tп+ tд+ tот,

де to - витрати праці на підготовку опису завдання;

tа - витрати праці на розробку алгоритму рішення задачі;

tб - витрати праці на розробку блок-схеми алгоритму рішення задачі

tп - витрати праці на складання програми по готовій блок-схемі;

tд - витрати праці на підготовку документації завдання;

tот - витрати праці на відладку програми на ЕОМ при комплексній відладці завдання.

Складові витрат можна виразити через умовне число операторів Q. У нашому випадку число операторів у відлагодженій програмі приймаємо Q=3500.

Розрахунок витрат праці на підготовку опису завдань.

Оцінити витрати праці на підготовку опису завдання не можливо, оскільки це пов'язано з творчим характером роботи, натомість оцінимо витрати праці на вивчення опису завдання з урахуванням уточнення опису і кваліфікації програміста:

to= Q*B/(75…85*K),

де B - коефіцієнт збільшення витрат праці унаслідок недостатнього опису завдання, уточнень і деякої недоробки, B=1,2…5;

K - коефіцієнт кваліфікації розробника, для тих, що працюють до 2 років K=0,8;

Коефіцієнт В приймаємо рівним 2.

Таким чином отримаємо

to= 3500*2/(78*0,8) = 112,18 (люд-год).

Розрахунок витрат праці на розробку алгоритму.

Витрати праці на розробку алгоритму рішення задачі:

tа = Q/(60…75*K) tа = 3500/(70*0,8)=62,5 (люд-год).

Розрахунок витрат праці на розробку блок-схеми.

Витрати праці на розробку блок-схеми алгоритму рішення задачі обчислимо таким чином:

tб= Q/(60…75*K)

tб = 3500/(71*0,8)=61,62 (люд-год).

Розрахунок витрат праці на складання програми.

Витрати праці на складання програми по готовій блок-схемі обчислимо таким чином:

tп= Q/(60…75*K)

tп = 3500/(72*0,8)=60,76 (люд-год).

Розрахунок витрат праці на відладку програми.

Витрати праці на відладку програми на ЕОМ при комплексній відладці завдання:

tот=1.5* tAот,

де tAот - витрати праці на відладку програми на ЕОМ при автономній відладці одного завдання;

tAот= Q/(40…50*K)

tAот = 3500/(48*0,8)=91,15 (люд-год)

Звідси tот=1,5*91,15=136,73 (люд-год).

Розрахунок витрат праці на підготовку документації.

Витрати праці на підготовку документації по завданню визначаються:

tд= tдр+ tдо,

де tдр - витрати праці на підготовку матеріалів в рукопису;

tдо - витрати на редагування, друк і оформлення документації;

tдр= Q/(150…200*K)

tдр = 3500/(180*0,8) = 24,31 (люд-год)

tдо=0,75*tдр

tдо =0,75*24,31=18,23 (люд-год)

Звідси

tд=24,31+18,23=42,54 (люд-год).

Отже, загальну трудомісткість програмного продукту можна розрахувати:

t = 112,18+62,5+61,62+60,76+42,54+136,73 =476,33 (люд-год).

Розрахунок середньої зарплати програміста.

Середня зарплата програміста в сучасних ринкових умовах може варіюватися в широкому діапазоні. Для розрахунку візьмемо середню годинну оплату праці, яка складає Тчас.=10 грн/година, що означає 1760 грн/мес при 8-ми годинному робочому дні і 5-ти денному робочому тижню.

Витрати на оплату праці програміста складаються із зарплати програміста і нарахувань на соціальні потреби. Нарахування на соціальні потреби включають:

33,2% - пенсійний фонд;

1,4% - соціальне страхування;

1.6% - відрахування до державного фонду зайнятості на випадок безробіття;

1% - на соціальне страхування від нещасного випадку на виробництві і професійних захворювань, які спричинили втрату працездатності.

Разом нарахування на соціальні потреби складають 37,2%.

Тобто

1760 грн * 37,2%=654,72 грн

Звідси витрати на оплату праці програміста складають:

Ззпспп= (1760+654,72)*3= 7244,16 грн.

Витрати на оплату машинного часу.

Витрати на оплату машинного часу при відладці програми визначаються шляхом множення фактичного часу відладки програми на ціну машино-години орендного часу:

Змвспп час*tЕОМ,

де Счас - ціна машино-години орендного часу, грн/год;

tЕОМ - фактичний час відладки програми на ЕОМ;

Розрахунок фактичного часу відладки.

Фактичний час відладки обчислимо за формулою:

tеом = tп + tдо + tот ;

tеом =62,5+18,23+136,73 = 217,46 години

Розрахунок ціни машино-години.

Ціну машино-години знайдемо по формулі:

Сгод = Зеомеом,

де Зеом - повні витрати на експлуатацію ЕОМ на протязі року;

Теом - дійсний річний фонд часу ЕОМ, год/рік.

Розрахунок річного фонду часу роботи ПЕОМ.

Загальна кількість днів в році - 365. Число святкових і вихідних днів - 114(10 святкових і 52*2- вихідні).

Час простою в профілактичних роботах визначається як щотижнева профілактика по 3 години.

Разом річний фонд робочого часу ПЕОМ складає:

Теом = 8*(365-114)-52*3=1852 год.

Розрахунок повних витрат на експлуатацію ЕОМ.

Повні витрати на експлуатацію можна визначити по формулі:

Зеом = (Ззп+ Зам+ Зэл+ Здм+ Зпр+ Зін),

де, Ззп - річні витрати на заробітну плату обслуговуючого персоналу, грн/рік;

Зам - річні витрати на амортизацію, грн/рік;

Зэл - річні витрати на електроенергію, споживану ЕОМ, грн/рік;

Здм - річні витрати на допоміжні матеріали, грн/рік;

Зпр - витрати на поточний ремонт комп'ютера, грн/рік;

Зін - річні витрати на інші і накладні витрати, грн/рік.

Амортизаційні відрахування.

Річні амортизаційні відрахування визначаються по формулі:

Замбал*Нам,

Нам =25%.

де Сбал - балансова вартість комп'ютера, грн/шт.;

Нам - норма амортизації, %;

Балансова вартість ПЕОМ включає відпускну ціну, витрати на транспортування, монтаж устаткування і його відладку:

Сбал = Срин +Зуст ;

де Срин - ринкова вартість комп'ютеру, грн/шт.,

Зуст - витрати на доставку і установку комп'ютера, грн/шт;

Комп'ютер, на якому велася робота, був придбаний за ціною

Срин =5000 грн, витрати на установку і наладку склали приблизно 10% від вартості комп'ютера.

Зуст = 10%* Срин

Зуст =0.1*5000=500 грн.

Звідси, Сбал = 5000 +500 =5500 грн./шт.;

а Зам=5500*0,25= 1375 грн/год.

Розрахунок витрат на електроенергію.

Вартість електроенергії, споживаної за рік, визначається по формулі:

Зел = Реом * Теом * Сел * А,

де Реом - сумарна потужність ЕОМ,

Теом - дійсний річний фонд часу ЕОМ, год/рік;

Сел - вартість 1кВт*год електроенергії;

А - коефіцієнт інтенсивного використання потужності машини.

Згідно технічному паспорту ЕОМ Реом =0.22 кВт, вартість 1кВт*год електроенергії для споживачів Сел =0,2436 грн., інтенсивність використання машини А=0.98.

Тоді розрахункове значення витрат на електроенергію:

Зел = 0.22 * 1852* 0.2436* 0.30 = 29,78 грн.

Розрахунок витрат на поточний ремонт.

Витрати на поточний і профілактичний ремонт приймаються рівними 5% від вартості ЕОМ:

Зтр = 0.05* Сбал

Зтр = 0.05* 5500 = 275 грн.

Розрахунок витрат на допоміжні матеріали.

Витрати на матеріали, необхідні для забезпечення нормальної роботи ПЕОМ, складають близько 1 % від вартості ЕОМ:

Звм =0,01* 5500 =55 грн.

Інші витрати по експлуатації ПЕОМ.

Інші непрямі витрати, пов'язані з експлуатацією ПЕОМ, складаються з вартості послуг сторонніх організацій і складають 5% від вартості ЕОМ:

Зпр = 0,05* 5500 =275 грн.

Річні витрати на заробітну плату обслуговуючого персоналу.

Витрати на заробітну плату обслуговуючого персоналу складаються з основної заробітної плати, додаткової і відрахувань на заробітну плату:

Ззп = Зоснзп +Здопзп +Зотчзп.

Основна заробітна плата визначається, виходячи із загальної чисельності тих, що працюють в штаті:

Зоснзп =12 *іокл,

де Зіокл - тарифна ставка і-го працівника в місяць, грн;

12 - кількість місяців.

У штат обслуговуючого персоналу повинні входити інженер-електронщик з місячним окладом 1500 грн. і електрослюсар з окладом 1200 грн. Тоді, враховуючи, що даний персонал обслуговує 20 машин, маємо витрати на основну заробітну плату обслуговуючого персоналу, які складуть:

Зоснзп = 12*(1500+1200)/20=1620 грн.

Додаткова заробітна плата складає 60 % від основної заробітної плати:

Здопзп = 0.6 *1620 = 972 грн.

Відрахування на соціальні потреби складають 37,2% від суми додатковою і основною заробітних плат:

Зотчзп = 0,372*(1620 + 972) = 959,04 грн.

Тоді річні витрати на заробітну плату обслуговуючого персоналу складуть:

Ззп = 1620 +972 +959,04 = 3551,04 грн.

Повні витрати на експлуатацію ЕОМ в перебігу року складуть:

Зеом = 3551,04 + 1375+ 29,78 + 55 + 275+ 275= 5560,82 грн.

Тоді ціна машино-години часу, що орендується, складе

Сгод = 5560,82 /1852 = 3 грн.

А витрати на оплату машинного часу складуть:

Змвспп =Сгод*tеом

Змвспп = 3 * 217,46 = 652,38 грн.

Розрахунок загальних витрат.

Зсппзпспп +Змвспп

Зспп = 7244,16 +652,38 = 7896,54 грн.

Тобто собівартість програмного продукту 7896,54 грн.

А зараз визначимо ціну програмного продукту:

Ц = Зспп + Р,

Где Ц - ціна програмного продукту;

Р - 15% від витрат на створення програмного продукту.

Ц = 7896,54 + 1184,48 = 9081,02 грн.

Ціна програмного продукту дорівнює 9081,02 грн.

В порівнянні з іншими програмними продуктами в комплекті з необхідним устаткуванням, які виконують подібні функції та мають вартість орієнтовно $4000, розроблена програма за умови тиражування обійдеться значно дешевше, ніж аналоги.

Економія від використання однієї розробленої програми представлятиме:

8,1 - курс долара Національного банку України

ЕК = $4000 * 8,1 - 9081,02 = 23318,98 грн.

6. Охорона праці

Охорона праці - це система законодавчих актів, соціально-економічних, організаційних, технічних, гігієнічних та лікувально-профілактичних заходів і засобів, що забезпечують безпеку, збереження здоров'я і працездатності людини в процесі праці.

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

Законодавство України про охорону праці базується на:

- Конституція України, яка гарантує права громадян на працю, відпочинок, охорону здоров'я, медичну допомогу і страхування;

- Закон України „Про охорону праці”, де вказано, що державна політика в області охорони праці базується на пріоритеті життя і здоров'я людей в умовах їх трудової діяльності. Відповідальність за створення нормальних і безпечних умов труда несе роботодавець незалежно від форми власності підприємства чи установи які здійснюють розробку виробництва та застосування ПЕОМ і ПК;

- Норми штучного та природного освітлення визначені СНиП;

- Закон України „Про забезпечення санітарного та епідемічного благополуччя населення” де вказані основні вимоги гігієни та санітарії;

- Параметри мікроклімату на робочих місцях регламентовані Держстандартом і ДСН;

- Категорія робіт по величині загальних енергозатрат встановлена ДСН;

- Закон України „Про загальнообов'язкове державне соціальне страхування від нещасного випадку на виробництві та професійного захворювання, які спричинили втрату працездатності”, який гарантує право трудящих на соціальний захист і компенсацію постраждалим матеріальних втрат при травмуванні і професійного захворювання;

- Кодекс законів про працю (КЗпП) де викладені окремі вимоги охорони праці;

- Пожежна безпека викладена в законі України „Про пожежну безпеку” і „Правила про пожежну безпеку в Україні”

Крім того є ряд Державних стандартів, правил, норм, інструкцій та інших нормативних документів, регламентуючих питання охорони праці.

6.1 Аналіз небезпечних і шкідливих факторів

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

Нанесення травми людині в умовах виробництва обумовлене наявністю небезпечних виробничих чинників:

- несприятливі мікрокліматичні умови;

- підвищений рівень шуму;

- недостатнє або надмірне освітлення;

- підвищений рівень рентгенівських випромінювань;

- рівня електромагнітних випромінювань;

- психофізіологічні шкідливі і небезпечні виробничі чинники.

Держстандарт 12.1.005-88 розповсюджується на повітря робочої зони підприємств, встановлює загальні санітарно-гігієнічні вимоги до показників мікроклімату й допустимому вмісту шкідливих речовин в повітрі робочої зони. Вимоги на допустимий вміст шкідливих речовин в повітрі робочої зони розповсюджуються на робочі місця незалежно від їх розташування.

Показники, якими характеризується мікроклімат є: температура повітря, відносна вологість повітря, швидкість руху повітря, інтенсивність теплового випромінювання. Низька температура повітря впливає на оператора, як на організм людини так і на обладнання ПЕОМ. Великий вплив виявляє відносна вологість. При відносній вологості повітря більш 75-80% знижується опір ізоляції, змінюються робочі характеристики елементів, зростає інтенсивність відмов елементів ПЕОМ. Швидкість руху повітря і запиленість повітряного середовища виявляють вплив на функціональну діяльність людини і роботу приладів ПЕОМ.

В холодні періоди року температура повітря, швидкість його руху і відносна вологість повітря відповідно складають: 22-24 С?; 0,1 м/с; 40-60%; в теплі періоди року температура повітря - 23-25 С?; відносна вологість 40-60 %; швидкість руху повітря - 0,1 м/с.

Кондиціювання - це автоматична підтримка в закритих приміщеннях всіх або окремих параметрів повітря з метою забезпечення оптимальних мікрокліматичних умов.

Згідно СНіП 2.04. 05-91 система вентиляції, кондиціювання повітря й повітряного опалення передбачена для суспільних, адміністративно-побутових і виробничих категорій.

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

Несприятливий мікроклімат в процесі роботи викликає недомагання і втому організму, порушує нервову і розумову діяльність, сприяє зниженню спостережливості і швидкості реакції.

Психофізіологічні шкідливі і небезпечні виробничі чинники по характеру дії поділяються на фізичні і нервово-психічні перевантаження.

При експлуатації ПЕОМ можуть виникнути негативні явища в організмі людини. Розлади, що виникають в результаті постійного виконання дій, що повторюються, стосуються працівників, що використовують в своїй роботі клавіатуру. При цьому виникає синдром тунельного зап'ястя, який викликає розпухання сухожиль, і що супроводжується постійною біллю при виконанні будь-яких дій, навіть не зв'язаних безпосередньо з професійною діяльністю.

Відповідно діючим нормативним документам (СН 512-78 и ДСанПіН 3.3.007-98) дана площа приміщення розрахована на одну людину 13,0 м2; об'єм -35,1м3. Стіна, стеля, підлога приміщення виготовляються з матеріалів, дозволених для оформлення приміщень санітарно-епідеміологічним наглядом. Підлога приміщення вкрита діелектричним килимком, випробуваним на електричну міцність.

Висота робочої поверхні столу для персонального комп'ютера (ПК) - 690 мм, ширина повинна забезпечувати можливість виконання операцій в зоні досягнення моторного ходу; висота столу 725 мм, ширина 800 мм, глибина 900 мм. Простір для ніг: висота 600 мм, ширина 500 мм, глибина на рівні колін 500 мм, на рівні витягнутої ноги 650мм.

Ширина й глибина сидіння 400 мм, висота поверхні сидіння 450 мм, кут нахилу поверхні від 15? вперед до 5? назад. Поверхня сидіння плоска, передній край закруглений.

Заземлення конструкцій, які знаходяться в приміщенні надійно захищені діелектричними щитками. В приміщенні з ПЕОМ кожен день проводиться вологе прибирання.

В доступних місцях знаходяться аптечки першої медичної допомоги.

Приміщення з ПЕОМ оснащено системою автоматичної пожежної сигналізації, а також устатковане засобами пожежегасіння. Підходи до засобів пожежегасіння вільні. Приміщення має кімнати для відпочинку, приймання їжі, психологічного розвантаження та інші побутові приміщення.

Для забезпечення безпеки життєдіяльності працівників у приміщенні варто підтримувати необхідну якість повітря, тобто оптимальні (у крайньому випадку припустимі) параметри мікроклімату, сталість газового складу й відсутність (у крайньому випадку не вище ГПК) шкідливих домішок у повітрі. Для цього необхідно подавати в ці приміщення певну кількість чистого зовнішнього повітря, потреба в якому регламентується СНіП 2.04.05-91. Для підтримки певних параметрів мікроклімату використовується опалення, вентиляція, кондиціювання, що є найважливішою частиною інженерного спорудження.

Таблиця 6.1

Оптимальні норми температури, відносній вологості й швидкості руху повітря.

Період

року

Категорія праці

Температура, С

Відносна вологість повітря, %

Швидкість руху повітря, не більше м/с

Холодний і перехідний

легка

20-23

60-40

0,2

Теплий

легка

22-25

60-40

0,2

При роботі на ПЕОМ людина наражається на шумовий вплив з боку багатьох джерел, наприклад, шум викликаний роботою принтера (70 дБ).

Під впливом шуму відбувається зниження слухової чутливості, що тим значні, ніж вище інтенсивність шуму і більше його експозиція. Діючи на слуховий аналізатор, шум змінює функціональний стан багатьох систем органів людини внаслідок взаємодії між ними через центральну нервову систему. Це виявляє вплив на органи зору людини, вестибулярний апарат і рухові функції, а також призводить до зниження мускульної дієздатності.

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

Джерелами випромінювання електромагнітних полів (ЕМП) в ПЕОМ є система відхилення випромінювання монітору, а також елементи блоків живлення системного модуля, монітору, принтера.

Дія електромагнітних полів на організм людини виявляється у функціональному розладі центральної нервової системи. В результаті тривалого перебування в зоні дії електромагнітних полів наступають передчасна стомлюваність, сонливість або порушення сну, з'являються часті головні болі.

Систематичний вплив на працюючого ЕМП з рівнями, що перевищують допустимі, призводить до порушення стану його здоров'я. При цьому можуть виникати зміни в нервовій, серцево-судинній та інших системах організму людини. При впливі ЕМП значної інтенсивності на організм можуть виникати поразки кришталиків ока, нервово-психічні захворювання і трофічні явища (випадення волосся, ломкість нігтів). Ступінь шкідливого впливу ЕМП на організм людини визначається напругою електромагнітного поля, довжиною хвилі і тривалістю перебування організму в зоні діяльності ЕМП.

Електронно-променеві трубки, які працюють при напрузі понад 6 кВ є джерелами „м'якого” рентгенівського випромінювання. При напрузі понад 10 кВ рентгенівське випромінювання виходить за межі скляного балону і розсіюється в навколишньому просторі виробничого приміщення.

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

Значення освітлення в процесі життєдіяльності і особливо виробничої діяльності сучасного суспільства величезне. Організація раціонального освітлення робочих місць - одне з основних питань охорони праці. Залежно від джерела світла виробниче освітлення може бути трьох видів: природне, штучне і суміщене.

Для природного освітлення характерна висока дифузна (неуважність) денного світла від небозводу, що вельми сприятливе для зорових умов роботи. Природне освітлення підрозділяють на бічне, здійснюване через світлові віконні отвори; верхнє, здійснюване через аераційні і зенітні ліхтарі, отвори в перекриттях; комбіноване - бічне з верхнім. Природне освітлення характеризується тим, що створювана освітленість змінюється в надзвичайно широких межах залежно від часу дня, року, метеорологічних чинників. Тому природне освітлення неможливе кількісно задавати величиною освітленості. Як нормована величина для природного освітлення прийнята відносна величина - коефіцієнт природної освітленості (КЕО), який є вираженим у відсотках відношенням освітленості в даній крапці усередині приміщення до одночасного значення зовнішньої горизонтальної освітленості, створюваної світлом повністю відкритого небозводу, тобто

Штучне освітлення передбачається у всіх виробничих і побутових приміщеннях, де не досить природного світла, а також для освітлення приміщень в нічний час. По функціональному призначенню штучне освітлення підрозділяють на робоче, аварійне, евакуаційне, охоронне, чергове. Робоче освітлення забезпечує зорові умови нормальний роботи, проходу людей і руху транспорту. Аварійне освітлення влаштовують для продовження роботи при раптовому відключенні робочого освітлення. При цьому нормована освітленість повинна складати 5 % від робочого освітлення. Евакуаційне освітлення передбачається для евакуації людей з приміщень при аваріях в місцях, небезпечних для проходу людей, на сходових клітках (повинно бути в приміщеннях не менше 0,5, а на відкритих територіях - не менше 0,2 лк).

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


Подобные документы

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.