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

  • Вид работы:
    Дипломная (ВКР)
  • Предмет:
    Информационное обеспечение, программирование
  • Язык:
    Украинский
    ,
    Формат файла:
    MS Word
    2,93 Мб
  • Опубликовано:
    2012-10-05
Вы можете узнать стоимость помощи в написании студенческой работы.
Помощь в написании работы, которую точно примут!

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

Міністерство освіти і науки України

Криворізький інститут

Кременчуцького університету економіки, інформаційних технологій і управління

Кафедра технічної кібернетики




ДИПЛОМНА РОБОТА

зі спеціальності

.091402 “Гнучкі комп’ютеризовані системи та робототехніка“

ПОЯСНЮВАЛЬНА ЗАПИСКА

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



Студента групи

ГКС-05

Максименка Віталія Олександровича

Керівник роботи

 доц., к.т.н Моня Григорій Михайлович

Кривий Ріг

Міністерство освіти і науки України

Криворізький інститут

Кременчуцького університету економіки, інформаційних технологій і управління

Кафедра технічної кібернетики

Спеціальність 7.091402 “Гнучкі комп’ютеризовані системи та робототехніка“

ЗАТВЕРДЖУЮ

Зав. кафедрою доц., к.т.н. Старіков О.М.

" 1 " листопада 2009 р.

Завдання

на дипломну роботу студента

Максименка Віталія Олександровича

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

затверджена наказом по інституту від " 29 " жовтня 2009 р. № 73С-01

2. Термін здачі студентом закінченої роботи 25.05.10.

3. Вхідні дані до роботи: Вимоги до кінцевого програмного продукту, вихідні масиви даних, матеріали наукових досліджень, методичні матеріали.     

4. Зміст розрахунково-пояснювальної записки (перелік питань, що підлягають розробці): Дослідження інструментальних засобів для створення систем спільного навчання; Створення Windows-додатків на основі Visual C#; Функціональні можливості та програмна реалізація системи. Модуль прийому даних; Економічне обґрунтування доцільності розробки програмного продукту; Охорона праці.

5. Перелік графічного матеріалу (з точними вказівками обов'язкових креслень)

1. Загальна схема взаємодії комп’ютерів P2P-мережі

. Схема розподілу інформації в P2P - мережах

. Розподіл ключів ресурсів по вузлах мережі. Пошук ресурсу

. Головне вікно середовища розробки

. Схема інформаційних потоків системи

. Основне вікно системи

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

. Вікно з зображенням, одержуваним з камери

6. Консультанти з роботи, з вказівками розділів роботи, що належать до них

 Розділ

 Консультант

Підпис, дата



Завдання видав

Завдання прийняв

Спеціальна частина

Лукашенко Й.М.



Програмна частина

Вдовиченко І.Н.



Економічна частина

Тимко Є.В.



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

Климович Г.Б.




7. Дата видачі завдання 01.11.09 р.

Керівник                                          ____________________

Завдання прийняв до виконання             ____________________

Календарний план

№ п/п

Найменування етапів дипломної роботи

Термін виконання етапів роботи

Примітки

·

Отримання завдання на дипломну роботу

01.11.09


·

Огляд існуючих рішень

20.02.10



Теоретичне дослідження інструментальних засобів реалізації проекту

13.03.10



Програмна частина (постановка задачі, створення програмного забезпечення, опис алгоритму рішення задачі, проектування та опис інтерфейсу користувача, опис програми)

28.04.10



Оформлення пояснювальної записки

06.05.10



Оформлення графічної документації

14.05.10



Оформлення електронних додатків до диплому

20.05.10



Представлення дипломної роботи до захисту

25.05.10



Студент-дипломник     _________________

Керівник роботи          _________________

Анотація

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

Розділів 6, схем та рисунків 51, таблиць 1, бібліографічних посилань 30, загальний обсяг - 103.

Аннотация

Целью дипломной работе было исследование и представление модели интерактивного метода обучения, основанного на платформе Microsoft. NET и технологии ConferenceXP. А также разработать программную среду, которая может позволить многим студентам получить всесторонний опыт в обучении и увеличить привлечение преподавательского состава в процесс обучения.

Разделов 6, схем и рисунков 51, таблиц 1, библиографических ссылок 30, общий объем - 103.

The summary

The purpose of degree work was to study and present a model of interactive learning method based on the platform of Microsoft. NET technologies and ConferenceXP. And develop a software environment that can allow many students to get a comprehensive experience in education and increase faculty involvement in the learning process.

Sections 6, circuits and figures 51, tables 1, bibliographic references 30, total amount - 103.

Зміст

Вступ

1. Постановка завдання

1.1 Найменування та галузь використання

.2 Підстава для створення

1.3 Характеристика розробленого програмного забезпечення

1.4 Мета й призначення

1.5 Загальні вимоги до розробки

1.6 Джерела розробки

2. Дослідження інструментальних засобів для створення систем спільного навчання

2.1 ConferenceXP як платформа для побудови систем обміну інформацією в рамках учбового процесу

2.2 Загальна характеристика технології побудови розподіленої мережі Peer-to-Peer

2.3 Протоколи обміну даними та особливості організації P2P мереж

2.4 Концепція побудови інтерактивного інтерфейсу користувача

3. Створення Windows-додатків на основі Visual C#

3.1 Основи роботи з Visual Studio .NET

3.2 Форми

3.3 Вікно «Провідник проекту»

3.4 Вікно Class View

3.5 Вікно Properties Window

3.6 Вікно панелі інструментів

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

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

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

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

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

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

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

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

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

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

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

6.2 Заходи щодо нормалізації шкідливих і небезпечних факторів

6.3 Пожежна безпека

Висновки

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

Вступ


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

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

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

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

Архітектура, побудована на основі ConferenceXP, призначена для роботи в широкополосних мережах, надає розширювану інфраструктуру з широкими можливостями для спільної роботи і міжособової взаємодії. Так, відомі приклади впровадження ConferenceXP для навчання комп'ютерним наукам в університеті шт. Вашингтон, США і інших університетах США з використанням експериментальної мережевої інфраструктури наступного покоління Internet2. Разом з розробкою технології ConferenceXP, проект Microsoft Research університету шт. Вашингтон, відомий як Learning Experience Project, ставив собі мету досліджувати можливості дистанційного сумісного навчання, а також зробити його реальною і повноцінною альтернативою звичайному навчанню, за умови наявності доступу до технологій, які лише починають з'являтися на ринку, таким як: мережі високої пропускної спроможності, бездротові пристрої, планшетні комп'ютери і новітні можливості операційних систем Microsoft. ConferenceXP дозволяє університетам і дослідницьким організаціям витратити мінімум зусиль на створення необхідної інфраструктури і архітектури програмної системи і концентруватися на дослідженнях і розробці прототипів систем для спільної роботи, які б поліпшили процес навчання, як в рамках класної аудиторії, так і за її межами.

1. Постановка завдання

 

1.1 Найменування та галузь використання


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

1.2 Підстава для створення


Підставою для розробки є наказ № 73С-01 від 29 жовтня 2009 р. по Криворізькому інституту КУЕІТУ.

Початок робіт: 01.11.09. Закінчення робіт: 25.05.10.

1.3 Характеристика розробленого програмного забезпечення


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

Склад розробленої системи:

·        Conference System.exe - виконуваний файл розробленої системи;

·        DShowNET.dll - модуль для роботи з Direct Show;

·        Voice.dll - модуль P2P голосового чату.

 

1.4 Мета й призначення


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

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

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

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

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

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

1.5 Загальні вимоги до розробки


Вимоги до програмного забезпечення:

·    Робота в середовищі операційних систем Windows

·        Microsoft. NET Framework 2.0 і вище;

·        Відсутність додаткових вимог до розміщення здійснимих файлів;

·        Простота і зрозумілість інтерфейсу.

Мінімальні вимоги до апаратного забезпечення:

·    IBM-сумісний комп'ютер, не нижче Pentium IІI 500 MHz, RAM-128Mb, SVGA-800 * 600 * 16bit;

·        Наявність підключення до локальної мережі або мережі Інтернет;

·        Вільний простір на жорсткому диску не менше 10 Мб.

1.6 Джерела розробки


Джерелами розробки дипломної роботи є:

·   загальний опис технології процесу;

·   довідкова література;

·   наукова література;

·   технічна література;

·   програмна документація.

2. Дослідження інструментальних засобів для створення систем спільного навчання

 

2.1 ConferenceXP як платформа для побудови систем обміну інформацією в рамках учбового процесу


Проект ConferenceXP створений Microsoft Research і орієнтований на сферу освіти. Базовою складовою його є P2P-платформа, на основі якої розробники можуть створювати спеціалізовані рішення по обміну інформацією в рамках учбового процесу. ConferenceXP передбачає багаторівневу архітектуру, засновану на сучасних технологіях.Client версії 3.5 - це розвинена програма, що призначена для проведення презентацій і забезпечує відображення видалений Робочий столу, сумісний Web-серфінг і аналог «класної дошки». Природно, особливий акцент зроблений на підтримці технологій Microsoft, зокрема за рахунок інтеграції з Windows Media Player 10 і Microsoft OneNote. Обмін інформацією здійснюється в рамках класів (venues), список яких зберігається відповідною Web-службою - в системі необхідно вказати її точну адресу або вибрати одну з публічних.

Окремої уваги заслуговують технічні особливості реалізації. Архітектурно ConferenceXP складається з чотирьох рівнів - від нижнього, такого, що відповідає за передачу даних, до вищого - власне призначеної для користувача програми. Дані передаються по P2P-протоколу RTP (Real-time Transport Protocol) - реалізації транспортного протоколу IETF для передачі аудио- і відеоданих. Для управління ходом конференцій використовується RTDocuments API - інтерфейс, за допомогою якого розповсюджуються документи і надається можливість здійснювати їх видалене редагування. При цьому ConferenceXP оптимізована для роботи в середовищах з низькими пропускною спроможністю і надійністю каналів зв'язку, наприклад в бездротових мережах або Інтернеті.

В цілому ConferenceXP представляється достатньо привабливим вибором, коли йдеться про впровадження P2P-подхода в учбовому процесі в середовищі, заснованому на технологіях Microsoft. Початковий код проекту відкритий і може вільно застосуються в некомерційних цілях, а спеціалізація платформи у сфері освіти привернула увагу багатьох прогресивних західних вузів, які вже щосили використовують ConferenceXP для проведення конференцій, організації дистанційного навчання і т.д.надає розширювану основу для розробки систем для спільної роботи і проведення конференцій. За допомогою ConferenceXP користувачі можуть взаємодіяти один з одним усередині віртуального простору для спільної роботи, так званого VENUE. Збагачуючи традиційну методику навчання, технологія ConferenceXP полегшує створення розподілених застосувань для спільної роботи за допомогою ряду властивостей. У даній роботі були використані наступні:

·   ConferenceXP є застосуванням типу peer-to-peer, тобто дані пересилаються між клієнтами безпосередньо, а центральний сервер не використовується;

·   для підтримки багатьох користувачів і мінімізації мережевого трафіку ConferenceXP використовує технологію багатоадресного віщання (multicast);

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

2.2 Загальна характеристика технології побудови розподіленої мережі Peer-to-Peer

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

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

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

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

На початку 90-х років почали широко використовуватися технології мультикастинга, зокрема MBONE. Техніка мультикастинга в поєднанні з відповідними протоколами маршрутизації (наприклад, PIM) і засобами забезпечення якості обслуговування (RSVP-TE і MPLS-TE) ідеально підходить для транспортування мультимедіа і зокрема для цифрового телебачення через Інтернет.

На початку 90-х стали полягати пірінгові (peer-peer) угоди між провайдерами сервісу, але і це було лише новим підходом в політиці маршрутизації. Мережі ICQ, наприклад, як і раніше будуються за схемою клієнт-сервер, хоча в деяких режимах реалізується схема взаємодії точка-мультиточка.

Вперше термін «peer-to-peer» була використаний в 1984 році компанією IBM в розробці мережевої архітектури для побудови динамічної маршрутизації через комп'ютерні мережі з довільною топологією - «Advanced Peer to Peer Networking».

Рис. 2.1 Загальна схема взаємодії комп’ютерів P2P-мережі

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

Створювані системи на початку ставили вузьку мету - прискорення отримання копії файлу, іноді за рахунок скорочення смуги і мережевих можливостей конкуруючих процесів і користувачів. У цих системах використовувалася особливість протоколу ТСР, розподіляючого смугу пропускання порівну між конкуруючими процесами. Якщо один з користувачів запустив 10 обмінних процесів, а конкурент - тільки 1, останній одержить в 10 разів меншу смугу пропускання. Може здатися, що схема, показана на рис. 2.2 не є в чистому вигляді P2P, оскільки в ній реалізований принцип - декілька серверів обслуговують одного клієнта. Мережеві об'єкти тут не є рівноправними. Але завдяки тому, що клієнтом в наступний момент може стати будь-який інший вузол мережі або навіть група вузлів, цю схему можна вважати класичним випадком реалізації алгоритму Р2Р. Більш того, цей тип мережі є на даний момент найбільш масовим.

Рис. 2.2 Схема розподілу інформації в P2P - мережах

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

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

Для підтримки надійності обміну можуть використовуватися самі різні технології, зокрема, протокол FEC (Forward Error Correction) або MDC (Multi Description Coding) у разі транспортування мультимедійних даних, коли повторна передача пакетів неможлива або украй небажана.

Незамінними можуть виявитися системи Р2Р в банківському бізнесі, де важливе збереження даних і висока надійність розрахунків. Методики дублювання в банківських системи використовуються вже достатньо давно.

Широко використовувані зараз розподілені обчислювальні системи типу GRID є окремим випадком реалізації технології Р2Р.

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

Хоча в першу чергу P2P-сети використовуються зараз для розділення файлів, існує ще багато інших областей, де дана технологія також успішно застосовується. Це телебачення і аудіо трансляції, паралельне програмування, розподілене кешування ресурсів для розвантаження серверів, розсилка повідомлень і статей, підтримка системи доменних імен, індексування розподілених ресурсів і їх пошук, резервне копіювання і створення стійких розподілених сховищ даних, обмін повідомленнями, створення систем-серверів стійких до атак типу «відмова в обслуговуванні», розповсюдження програмних модулів. Є величезна кількість клієнтських програм для роботи з P2P-сетями, як комерційних, так і з відкритим кодом. Постійно йде робота по удосконаленню протоколів і збільшенню функціональності систем, і, судячи з усього, недалекий той момент, коли клієнтське програмне забезпечення для P2P буде інтегровано з операційними системами. Так, вже зараз крупні компанії виявляють цікавість, або впритул займаються Р2Р, наприклад, компанія Sun розробляє протокол, що підтримує доступ до основних P2P-сетям для кишенькових комп'ютерів і смартфонов, компанія Microsoft створила реалізацію протоколів P2P Scribe і Pastry.

2.3 Протоколи обміну даними та особливості організації P2P мереж


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

Рис. 2.3 Розподіл ключів ресурсів по вузлах мережі. Пошук ресурсу

На рис. 2.3 приведений приклад чистої P2P мережі, створеної по протоколу DHT Kademlia. На рисунку до мережі, здатної підтримувати максимум 16 вузлів і 16 ресурсів, під'єдналися 7 вузлів (чорні кухлі), що розділяють 12 ресурсів (номери в білих прямокутниках). Вузлам привласнені відповідні ID, ресурсам привласнені ключі. Ключі разом з адресами вузлів (адреси на малюнку не показані), що опублікували їх, рівномірно розподілені між вузлами мережі. На рисунку зображено, які ключі зберігаються і на яких вузлах.

Вузол з ID 0 хоче знайти ресурс, відповідний ключу 14, для цього посилає запит на пошук. Запит проходить певний маршрут і досягає вузла, на якому знаходиться ключ 14. Далі вузол ID 14 пересилає вузлу ID 0, адреси всіх вузлів, що володіють ресурсом, відповідним ключу 14.

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

Багато адміністраторів прагнуть заблокувати або відфільтрувати інформаційні потоки файлообменных мереж, наприклад, BitTorrent. Це достатньо легко зробити. Першим байтом в поле даних ТСР-сегменту є код 19 (=0х13), за яким слідує 19 байтів даних BitTorrent. Використовуючи цю сигнатуру, можна блокувати такий потік даних або привласнити йому потрібний пріоритет.

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

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

Існують модифікації протоколів, які дозволяють працювати з файлами метаданих, не прив'язаними до серверів.

Одна з перших пірінгових мереж, Gnutella, була створена в 2000 році. Мережа функціонує дотепер, хоча із-за серйозних недоліків алгоритму користувачі зараз віддають перевагу мережі Gnutella2. Клієнт, що підключився, одержує від вузла, з яким йому вдалося з'єднатися, список з 5 активних вузлів, посилає їм запит на пошук ресурсу по ключовому слову. Вузли шукають у себе відповідні запиту ресурси і, якщо не знаходять, пересилають запит своїм активним вузлам вгору по дереву, поки не знайдеться ресурс або не буде перевищене максимальне число кроків. Такий пошук називається розмноженням запитів. За допомогою протоколу також відстежується, щоб топологія створюваної мережі вузлів мала деревовидну структуру графа.

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

Недоліки протоколу Gnutella ініціювали розробки принципово нових алгоритмів пошуку маршрутів і ресурсів, і привели до створення групи протоколів DHT (Distributed Hash Tables), зокрема протоколу Kademlia, який зараз широко використовується в найбільш крупних мережах.

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

У 2003 році з'явився принципово новий протокол Gnutella2. Відповідно до даного протоколу, деякі вузли стають концентраторами, інші є звичайними вузлами. Кожен звичайний вузол має з'єднання з одним-двома концентраторами. У концентратора є зв'язок з сотнями звичайних вузлів і десятки з'єднань з іншими концентраторами. Кожен вузол періодично пересилає концентратору список ідентифікаторів ключових слів, по яких можуть бути знайдені публіковані даним вузлом ресурси. Ідентифікатори зберігаються в загальній таблиці на концентраторі. Коли вузол хоче знайти ресурс, він посилає запит по ключовому слову своєму концентратору, який або знаходить ресурс в своїй таблиці і повертає ID-вузла, що володіє ресурсом, або повертає список інших концентраторів, які вузол знов запрошує по черзі, випадковим чином. Такий пошук називається пошуком за допомогою методу блукань.

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

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

Мережа EDonkey2000 з'явилася в 2000 році. Інформація про наявність файлів публікується клієнтом на численних серверах у вигляді ed2k посилань, що використовують унікальний ID ресурсу. Серверне ПО доступно для установки будь-яким користувачем. Сервер забезпечує пошук вузлів і інформації. Зараз в мережі є від 100 до 200 серверів, обслуговуючих одночасно близько мільйона користувачів, що використовують близько мільярда різних файлів. Загальна кількість зареєстрованих користувачів складає близько 10 мільйонів. Коли клієнт копіює бажаний ресурс, він копіює його одночасно з декількох джерел за допомогою MFTP (Multisource File Transfer Protocol).

В даний час інформацію про доступні файли можна одержувати не тільки з серверів eDonkey. З 2004 року до складу мережі EDonkey2000 інтегрована мережа Overnet - повністю децентралізована мережа, що дозволяє здійснювати взаємодію між вузлами без прив'язки до серверів, для чого використовується DHT протокол Kademlia.

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

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

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

Тому користувачам залишилася тільки можливість використовувати локальні пірінгові мережі. Найбільш зручною для цього виявилася мережа Direct Connect (DC).

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

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

2.4 Концепція побудови інтерактивного інтерфейсу користувача


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

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

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

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

Вхідні повідомлення, які генеруються людиною за допомогою засобів вводу (клавіатури, миші і т.п.);

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

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

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

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

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

Процедурно-орієнтовані інтерфейси, в свою чергу, можна розділити на кілька підтипів: консольні, меню і з вільною навігацією.

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

Рис. 2.4 Приклади алгоритмів програми з консольним інтерфейсом

Інтерфейс-меню, на відміну від консольного інтерфейсу, дозволяє користувачеві вибирати необхідні операції зі спеціального списку, що виводиться йому програмою. У цьому типі інтерфейсів послідовність дій вибирається самим користувачем. Розрізняють однорівневі і ієрархічні меню. Перші використовують для порівняно простих випадків, коли варіантів небагато (не більше 5-7), і вони включають операції одного типу, наприклад, Створити, Відкрити, Закрити і т.п. Другі застосовуються при великій кількості варіантів, або їх очевидних відмінностях, наприклад, операції з файлами та операції з даними, що зберігаються в цих файлах.

Рис. 2.5 Структура програми с інтерфейсом-меню

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

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

3. Створення Windows-додатків на основі Visual C#

 

.1 Основи роботи з Visual Studio .NET


Існує величезна кількість версій продукту Visual Studio, причому до появи цієї нової версії видавалося, що в Microsoft забули про підтримку ентузіастів, які власне і зробили продукти для розробників найпопулярнішими. Не має сенсу говорити про те, що відчували користувачі, коли Microsoft намагалася зрушити їх від Visual Basic 6.0 до .NET-версії продукту, досить сказати, що деякі просто відмовлялися розуміти, що все змінилося.

У квітні 2008 року Microsoft випустила попередню версію Visual Studio, перероблену Visual Studio .NET 2008. Цей продукт був прив'язаний до випуску Windows 2008 і вважався невеликим оновленням. Випуск Visual Studio .NET 2008 мав на увазі глибоку інтеграцію з широкими новими можливостями Windows Server 2008, наприклад, UDDI, Web-службами і .NET Framework. Windows Server 2003 була першою версією Windows, що поставлялася з інтегрованою середою .NET Framework.

В даний час Visual Studio 2008 є високоефективною середою професійного розробника, яка вільно сполучає декілька технологій, що надають розробникам безпрецедентні можливості для створення додатків Windows, Web-служб, Web-додатків, сайтів і так далі. Звичайно, це зажадало від Microsoft набагато більше часу, чим планувалося для розробки даного комплекту продуктів. На думку фахівців Microsoft, це обумовлено тим, що рівень інтеграції, який вони пропонують у всіх продуктах Visual Studio і SQL Server, має особливий характер. Ось що сказав Девід Кемпбелл, генеральний менеджер SQL Server в Microsoft:

 "Ми починали інтеграцію, не маючи уявлення про те, як це робиться. Розробка зайняла дуже багато часу, і ми самі багато що взнали в процесі роботи".

У Visual Studio 2008 на самому нижньому рівні знаходяться нові Express-версії (Express Edition) для Visual Basic, Visual C#, Visual C і Visual J, а також новий продукт, званий Visual Web Developer, який коштуватиме дуже дешево. Цей продукт призначається для ентузіастів, незалежних розробників і студентів.

На верхньому сегменті ринку в Microsoft тепер є три нові версії Visual Studio: Team Edition for Software Architects, Team Edition for Software Developers і Team Edition for Software Testers - відповідно, версії для команд архітекторів, розробників і випробувачів програмного забезпечення. Додатково до цього розроблена версія Team Foundation Server - це серверний продукт, який надає засоби для контролю, тестування і автоматизації процесів.

Нові ж версії Express надають унікальну можливість навчання розробці програмного забезпечення або Web-сторінок. Ці продукти призначені для початкуючих користувачів, студентів і для представників малого бізнесу. Вони містять доступніші і стислі версії основних продуктів Visual Studio і відрізняються від повних комплектів продуктів. По суті, продукту Visual Studio 2008 Express Edition немає. Ви просто вибираєте комплекти Express Edition з Visual Basic, Visual C#, Visual C і Visual J . Plus і, додатково, новий Visual Web Developer, про яке я раніше згадував, і вільну версію SQL Server 2008, яка називається SQL Server 2008 Express Edition.

Кожен з цих продуктів включає декілька наборів для початківців - Starter Kit. Вони є заздалегідь побудованими додатками, які можуть вивчати початкуючі розробники. Проте додатки Start Kit служать не лише для демонстрації: вони повністю працездатні і надзвичайно корисні як реальні застосування. У Microsoft передбачають, що скоро з'явиться широкий спектр пропозицій безкоштовного і умовно безкоштовного програмного забезпечення, яке буде побудовано за допомогою Starter Kit. Наприклад, Visual Basic 2008 Express Edition і Visual C# 2008 Express Edition включають в Starter Kit приклади для побудови охоронця екрану і створення додатка для монтажу фільмів.

Кожна Express-редакція включає набір підручників, документацію для початківців і посилання на загальнодоступні ресурси, на зразок тематичних конференцій і форумів. Під час установки можна по вибору завантажити і встановити MSDN 2008 Express Edition Library, яка включає повний набір документації по кожному продукту серії Express. Вона призначається в основному для навчання розробників, це не зовсім традиційна документація MSDN Library. Частина цієї документації навіть посилається на відеоматеріали і презентації на сайті MSDN, що вельми коштовно.

Продукт Visual Web Developer 2008 Express Edition особливо хороший. Visual Web Developer 2008 Express має дві істотні переваги перед Frontpage: перше - можна відкривати і приховувати сегменти кодів, залишаючи відкритими лише ті частини коду, які потрібні для роботи; друге - для створення локального Web-сайта не потрібний Web-сервер Microsoft IIS. Так, Visual Web Developer 2008 Express Edition працює з сайтами IIS, FTP і Windows Sharepoint Services, але також можна створити повнофункціональний Web-сайт з порожньої Web-папки.

Обмеження існують в Express версіях: відсутній доступ до видалених даних; ці версії використовують лише локально встановлене джерело даних (включаючи безкоштовний продукт SQL Server 2008 Express Edition). Розробляти додатки для мобільних пристроїв в VB Express, Visual C# Express або Visual C Express не можна; необхідно буде відновити їх до Visual Studio 2008 Standard Edition, щоб дістати такі можливості. Звичайно, відсутні всі професійні можливості версій Visual Studio Team System, наприклад, моделювання додатків і кодів, перевірка модулів, статичний аналіз коду і т.д.

Продукти Express Edition уроздріб коштують всього 49 дол. за редакцію. Це вигідно для будь-якого розробника-початківця. Microsoft не чекає величезної прямої прибули від цих продуктів, добиваючись того, щоб вони стали відкритими для ширшої аудиторії. Ерік Раддер, віце-президент Microsoft, пояснив: "Це дійсно веде до розширення бази користувачів. Ми намагаємося розширити комерційну екосистему Microsoft. Дешеві і доступні продукти допоможуть початківцям і студентам підвищити свою кваліфікацію в простому і зручному середовищі".

Microsoft Visual Studio .NET - це інтегроване середовище розробки (Integrated Development Environment (IDE)) для створення, документування, запуску і відладки програм, написаних на мовах .NET. Це могутній інструмент професійної розробки складних додатків. Набір його функцій надзвичайно великий, розглянемо його основні елементи.

Коли ми запускаємо Visual Studio .NET, то бачимо наступне вікно:

Рис. 3.1 Головне вікно середовища розробки

Початкова сторінка (Start Page) містить наступні вкладки: Projects, Online Resources і My Profile. За умовчанням ми знаходимося на вкладці Projects, на якій розташований список недавніх проектів. Ми можемо перейти по гіперпосиланню від назви проекту і відразу продовжити роботу над ним. На цій же вкладці розташовані кнопки New Project і Open Project, по натисненню на які ми запустимо діалогові вікна створення нового або відкриття існуючого документа відповідно.

На вкладці Online Resources відображаються групи новин, заголовки і посилання ресурсів розробників. Ця опція доступна, коли комп'ютер підключений до Інтернету.

Вкладка My Profile дозволяє налаштувати інтерфейс Visual Studio .NET по своєму смаку. Якщо є досвід роботи з іншими пакетам розробки, то можна вибрати звичну розкладку клавіатури, розташування вікон в цій категорії. Тут же можна задати дію при запуску, наприклад, відкриття діалогового вікна створення проекту.

Рис. 3.2 Визначення дії при запуску програми

Панелі, що ховаються, розташовані з боків вікна, - такі як зображені на рис. 3.1 Server Explorer або Toolbox, - можна висунути, просто клацнувши на них. Ми можемо закріпити їх на екрані, натиснувши на значок, або зовсім прибрати з екрану, а потім знову відобразити, використовуючи відповідний пункт меню View (або еквівалентне поєднання клавіш).

Головне вікно Visual Studio.NET, подібно до інших додатків Windows, містить рядок меню, що включає наступні категорії (коли ми знаходимося на Start Page, частина категорій не видно - вона з'явиться пізніше, коли буде створений проект):

Рис. 3.3 Рядок меню Visual Studio .NET

У цих категоріях розташовані наступні команди:- відкриття, створення, додавання, закривання, друк і інш.- стандартні команди правки: копіювання, вставка, вирізування і інш.- команди для утаєння і відображення всіх вікон і панелей інструментів.- команди для роботи з проектом: додавання елементів, форм, посилань і інш.- команди компіляції програми.- команди для відладки програми.- команди для роботи з даними.- команди форматування елементів, що розташовуються (вирівнювання, інтервал і інш.).- команди додаткових інструментів і настройки Visual Studio .NET.- управління розташуванням вікон.- довідка.

3.2 Форми


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

Запускаємо Visual Studio .NET, вибираємо File/New/Project - з'являється діалогове вікно (Ctrl+Shift+N приводить до того ж результату), в якому вибираємо Visual C# Project і Windows Application.

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

Після того, як ми створили новий проект, можна побачити основні частини середовища розробки.

Рис. 3.4 Створення нового проекту

Рис. 3.5 Головне вікно програми в режимі розробки

3.3 Вікно «Провідник проекту»


Вікно Solution Explorer (провідник проекту, View -> Solution Explorer, або поєднання клавіш Ctrl+Alt +L) містить компоненти, що входять до складу проекту. Пункти контекстного меню цього вікна (що викликається натисненням правої кнопки миші) дозволяють змінювати вміст проекту, а також додавати нові компоненти.

Рис. 3.6 Контекстне меню вікна Solution Explorer

При створенні нового проекту Solution Explorer містить компоненти, створені шаблоном . Каталог References містить посилання на класи, використовувані в проекті за умовчанням.

Рис. 3.7 Компоненти, що входять до складу нового додатку

Подвійне клацання миші на підкаталогах References запускає вікно Object Browser (провідник об'єктів, View -> Object Browser, або поєднання клавіш Ctrl+Alt+J). Вікно Object Browser, у свою чергу, є вичерпним засобом отримання інформації про властивості об'єктів. Так абстрактний клас brush успадковується від класу System.MarshalByRefObject і містить методи Clone, Dispose(bool), Dispose і Finalize. visual програмний інтерактивний модуль

Рис. 3.8 Вікно Object Browser

Можна одержувати короткий опис будь-якого методу, класу або властивості, просто клацнувши на ньому, - на інформаційній панелі негайно відобразиться коротка довідка. Для досвідченого розробника Object Browser - незамінний помічник в роботі, набагато зручніший, ніж довідка.

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

 

3.4 Вікно Class View


Вікно Class View - (огляд класів, View -> Class View, або поєднання клавіш Ctrl+Shift+C), дозволяє переміщатися в коді по вибраному об'єкту; містить методи, класи, дані всього лістингу проекту. Для переходу, наприклад, в метод Main клацаємо на відповідній назві у вікні Class View.

Рис. 3.9 Вікно Class View. Дозволяє швидко переміщатися за кодом всього проекту

3.5 Вікно Properties Window


Вікно властивостей Properties - основний інструмент настройки форми і її компонентів. Вміст цього вікна є всім списком властивостей вибраного в даний момент компоненту або форми. Викликається це вікно декількома способами - в меню View вибираємо пункт Properties Window (або використовуємо клавішу F4), на вибраному об'єкті клацаємо правою кнопкою миші і в контекстному меню пункт Properties вибираємо об'єкт і натискаємо F4 або просто вибираємо об'єкт і переходимо у вікно Properties. Коли ми тільки створили проект, у вікні Properties відображаються властивості самої форми.

Рис. 3.10 Вікно властивостей Properties

3.6 Вікно панелі інструментів


Вікно Toolbox (панель інструментів, View -> Toolbox, або поєднання клавіш Ctrl+Alt+X) містить компоненти Windows-форм, звані також елементами управління, які розміщуються на формі. Воно складається з декількох закладок: My User Controls, Components, Data, Windows Forms і General:

Рис. 3.11 Вікно Toolbox

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

Рис. 3.12 Представлення елементів у вигляді списку

Рис. 3.13 Представлення елементів у вигляді значків

У вікні Toolbox доступно відображення всіх закладок.

Рис. 3.14 Встановлюємо галочку "Показати всі закладки"

Рис. 3.15 Повний список закладок

Закладка My User Controls дозволяє зберігати власні списки елементів управління:

Рис. 3.16 Додавання закладки

Рис. 3.17 Власна закладка "Моя закладка для First Form"

Рис. 3.18 Відновлення значень за умовчанням

Створені таким чином закладки можна перейменувати або видалити, вибравши в контекстному меню пункти Rename Tab і Delete Tab відповідно.

Якщо в результаті всіх експериментів ми побачимо, що поточний вид вікна Toolbox сильно відрізняється від первинного, для відновлення значень за умовчанням виберіть в контекстному меню будь-якої закладки пункт Add/Remove Items. У вікні, що з'явилося, натисніть на кнопку Reset. З'являється вікно попередження - "Настройки Toolbox будуть відновлені. Всі призначені для користувача закладки будуть видалені. Продовжувати?" Погодившись з попередженням, ви побачите вид Toolbox за умовчанням.

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

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

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

 

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


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

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

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

 

using System;System.Drawing;System.Collections;System.ComponentModel;System.Windows.Forms;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 включає наступні властивості:Name - назва збірки.Type - тип компільованого додатку. За умовчанням для Windows-додатків стоїть Windows Application.Namespace - назва простору імен в коді. За умовчанням співпадає з ім'ям проекту.Object - назва класу, що містить точку входу в програму - метод Main.Icon - шлях до файлу з іконкою додатку.File - ім'я файлу з інформацією про проект. Знаходиться усередині каталогу з проектом;Folder - шлях до файлу з проектом.File - назва файлу, що створюється при компіляції, - вихідного файлу. Співпадає з ім'ям проекту.

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

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

Code - оптимізація програми, значення цієї властивості true може значно збільшити продуктивність додатку.Unsafe Code Blocks - вирішити використання ключового слова unsafe в коді проекту.Level - рівень попереджень, що відображаються при компіляції програми.Warnings As Errors - сприймати всі попередження як помилки. Якщо оголосити змінну в коді, але ніде не використовувати її, при значенні цієї властивості False додаток скомпілюється, при значенні True - ні.Path - шлях, де формується вихідний файл. Тека bin знаходиться усередині теки проекту.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.       можливість голосового спілкування;

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

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

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

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

//

// menuItem1

// .menuItem1.Index = 0;.menuItem1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {.menuItem3,.menuItem14,.menuItem5,.menuItem12,.menuItem11,.menuItem4,.menuItem7,.menuItem8

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

//

// menuItem3

// .menuItem3.Index = 0;.menuItem3.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {this.menuItem2});.menuItem3.Text = "Видео конференция";

//

// menuItem2

// .menuItem2.Index = 0;.menuItem2.Text = "Изображение с камеры";.menuItem2.Click += new System.EventHandler(this.menuItem2_Click);

//

// menuItem14

// .menuItem14.Index = 1;.menuItem14.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {.menuItem15});.menuItem14.Text = "Голосовая конференция";

//

// menuItem15

// .menuItem15.Index = 0;.menuItem15.Text = "Начать передачу голоса";.menuItem15.Click += new System.EventHandler(this.menuItem15_Click);

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

//

// statusBar1

// .statusBar1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Italic, System.Drawing.GraphicsUnit.Point, ((byte)(178)));.statusBar1.Location = new System.Drawing.Point(0, 244);.statusBar1.Name = "statusBar1";.statusBar1.Size = new System.Drawing.Size(560, 22);.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()

{.components = new System.ComponentModel.Container();.mainMenu1 = new System.Windows.Forms.MainMenu(this.components);.menuItem2 = new System.Windows.Forms.MenuItem();.menuItem3 = new System.Windows.Forms.MenuItem();.menuItem1 = new System.Windows.Forms.MenuItem();.saveFileDialog1 = new System.Windows.Forms.SaveFileDialog();.pictureBox1 = new System.Windows.Forms.PictureBox();.textBox1 = new System.Windows.Forms.TextBox();.label1 = new System.Windows.Forms.Label();.timer1 = new System.Windows.Forms.Timer(this.components);

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

//

// mainMenu1

//.mainMenu1.MenuItems.AddRange(new System.Windows.Forms.MenuItem[] {.menuItem2,.menuItem3,.menuItem1});

//

// menuItem2

//.menuItem2.Index = 0;.menuItem2.Text = "Подключиться";.menuItem2.Click += new System.EventHandler(this.menuItem2_Click);

//

// menuItem3

//.menuItem3.Enabled = false;.menuItem3.Index = 1;.menuItem3.Text = "Отключиться";.menuItem3.Click += new System.EventHandler(this.menuItem3_Click);

//

// menuItem1

//.menuItem1.Index = 2;.menuItem1.Text = "Сохранить";.menuItem1.Click += new System.EventHandler(this.menuItem1_Click);

//

// pictureBox1

//.pictureBox1.BackColor = System.Drawing.Color.WhiteSmoke;.pictureBox1.Dock = System.Windows.Forms.DockStyle.Fill;.pictureBox1.Location = new System.Drawing.Point(0, 43);.pictureBox1.Name = "pictureBox1";.pictureBox1.Size = new System.Drawing.Size(368, 223);.pictureBox1.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage;.pictureBox1.TabIndex = 7;.pictureBox1.TabStop = false;

//

// textBox1

//.textBox1.BackColor = System.Drawing.Color.White;.textBox1.Dock = System.Windows.Forms.DockStyle.Top;.textBox1.Location = new System.Drawing.Point(0, 23);.textBox1.Name = "textBox1";.textBox1.Size = new System.Drawing.Size(368, 20);.textBox1.TabIndex = 8;.textBox1.Text = "127.0.0.1";.textBox1.KeyPress += new System.Windows.Forms.KeyPressEventHandler(this.textBox1_KeyPress);

//

// label1

//.label1.BackColor = System.Drawing.Color.Silver;.label1.Dock = System.Windows.Forms.DockStyle.Top;.label1.Font = new System.Drawing.Font("Microsoft Sans Serif", 9.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(178)));.label1.ForeColor = System.Drawing.Color.FromArgb(((int)(((byte)(0)))), ((int)(((byte)(0)))), ((int)(((byte)(64)))));.label1.Location = new System.Drawing.Point(0, 0);.label1.Name = "label1";.label1.RightToLeft = System.Windows.Forms.RightToLeft.Yes;.label1.Size = new System.Drawing.Size(368, 23);.label1.TabIndex = 9;.label1.Text = "Группа";

//

// timer1

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

//

// Receiver

//.AutoScaleBaseSize = new System.Drawing.Size(5, 13);.ClientSize = new System.Drawing.Size(368, 266);.Controls.Add(this.pictureBox1);.Controls.Add(this.textBox1);.Controls.Add(this.label1);.Menu = this.mainMenu1;.Name = "Receiver";.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen;.Text = "Прием изображения";.TopMost = true;.WindowState = System.Windows.Forms.FormWindowState.Maximized;.Load += new System.EventHandler(this.Receiver_Load);.Closing += new System.ComponentModel.CancelEventHandler(this.Receiver_Closing);

((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit();.ResumeLayout(false);.PerformLayout();

}

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

void Image_Receiver()

{{sock = new UdpClient(5020);.JoinMulticastGroup(IPAddress.Parse(textBox1.Text));iep = new IPEndPoint(IPAddress.Any, 0);[] data = sock.Receive(ref iep);ms = new MemoryStream(data);.Image = Image.FromStream(ms);.Close();

}catch(Exeption e){

}

}

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

void timer1_Tick(object sender, System.EventArgs e)

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

}

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


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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

o= Q•B/(75…85•K),

де B - коефіцієнт збільшення витрат праці унаслідок недостатнього опису завдання, уточнень і деякої недоробки, B=1,2…5;- коефіцієнт кваліфікації розробника, для тих, що працюють до 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)б = 3500/(71•0,8)=61,62 (люд-год).

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

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

п= Q/(60…75•K)п = 3500/(72•0,8)=60,76 (люд-год).

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

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

от=1.5• tAот,

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

tAот= Q/(40…50•K)Aот = 3500/(48•0,8)=91,15 (люд-год)

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

 

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

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

д= tдр+ tдо,

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

др= Q/(150…200•K)др = 3500/(180•0,8) = 24,31 (люд-год)до=0,75•tдр

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

Звідси

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

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

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

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

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

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

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

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

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

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

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

Тобто

грн • 37,2%=654,72 грн

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

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

 

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

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

Змвспп час•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 •∑Зіокл,

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

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

У штат обслуговуючого персоналу повинні входити інженер-електронщик з місячним окладом 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, розроблена програма за умови тиражування обійдеться значно дешевше, ніж аналоги.

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

,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 лк).

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

Штучне освітлення може бути загальним (рівномірним або локалізованим) і комбінованим (до загального додається місцеве). Застосування тільки місцевого освітлення забороняється.

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

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

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

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

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

У виробничому інтер'єрі колір також відіграє попереджуючу роль, використовується для зображення технологічних символів і всіляких сигналів. Наприклад, при будівництві промислових об'єктів трубопроводи різного призначення (для води, кислоти, газу) пофарбовані в різний колір. Усім відомі сигнально-попереджуючі кольори: червоний - стоп, небезпечно; жовтий - можлива небезпека; зелений - повна безпека. З економічної точки зору раціональне фарбування робочих приміщень і встаткування підвищує продуктивність праці на 5-20%, зменшує число нещасних випадків.

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

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

Серед столів найбільш ергономічною визнана криволінійна кутова форма. За рахунок увігнутості більша частина їхньої площі виявляється використовуваної, оскільки попадає в зону охоплення руками людини, рівну 35-40 см.

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

6.2 Заходи щодо нормалізації шкідливих і небезпечних факторів


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

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

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

Системи опалення - це комплекс елементів, необхідних для опалення приміщень в холодний період року, нормованої температури повітря не нижче встановленої Держстандарт 12.1. 005-88 і СНіП 2.04. 05-91. У приміщеннях з електронно-обчислювальною технікою передбачають центральне опалення в сполученні із приточною вентиляцією або кондиціювання повітря при одне- і двозмінному режимах роботи, а при трьохзмінному - тільки повітряне опалення.

Гранично допустимі рівні напруги дотику і струмів при експлуатації і ремонті обладнання забезпечені:

застосуванням малої напруги;

ізоляцією струмоведучих мереж;

обґрунтуванням і оптимальним вибором елементної бази, що виключає передумови поразки електричним струмом;

правильного компонування, монтажу приладів і елементів;

дотриманням умов безпеки при настанові і заміні приладів і інше.

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

застосування захисного заземлення або обнуління;

ізоляцією струмопровідних частин;

дотриманням умов безпеки при настанові і заміні агрегатів;

надійним контактним сполученням з урахуванням перепаду кліматичних параметрів.

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

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

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

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

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

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

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

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

Засобами захисту від „м’якого” рентгенівського випромінювання є застосування поляризаційних екранів, а також використання в роботі моніторів, що мають біо-керамічне покриття і низький рівень радіації. В якості засобів захисту від чинності м’яких рентгенівських променів застосовуються екрани з сталевого листа (0,5-1 мм) або алюмінію (3 мм), спеціальної гуми.

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

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

достатнє, щоб очі без напруги могли розрізняти деталі;

постійна напруга в мережі не коливається більше ніж на 4%;

рівномірно розподілено по робочим поверхням, щоб очам не приходилося зазнавати різкого контрасту кольорів;

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

не викликає різких тіней на робочих місцях.

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

вибрати тип джерела світла - рекомендуються газорозрядні лампи, за винятком місць, де температура повітря може бути менш +5°С і напруга в мережі падати нижче 90 % номінального, а також місцевого освітлення (у цих випадках застосовуються лампи розжарювання);

визначити систему освітлення (загальна локалізована або рівномірна, комбінована);

вибрати тип світильників з урахуванням характеристик світорозподілення, умов середовища (конструктивного виконання) та інше;

розподілити світильники і визначити їх кількість (світильники можуть матися в своєму розпорядженні рядами, в шаховому порядку, ромбоподібно);

визначити норму освітленості на робочому місці.

Для розрахунку штучного освітлення використовують в основному три методи. Найчастіше її розраховують по світловому потоку. Для цього визначається світловий потік кожної лампи по нормуючій мінімальній горизонтальній освітленості Еmin (лк) з вираження:

=(Emin·S·K·z) / n1·n·N,

де F - світловий потік лампи в світильнику, лм; - площа приміщення, м2; - коефіцієнт запасу;- коефіцієнт нерівномірного освітлення;1 - коефіцієнт використання світлового потоку;- кількість ламп в світильнику;- число світильників.

Якщо освітлення здійснюється рядами люмінесцентних ламп, те вираження вирішується відносно N. Значення коефіцієнта n1 визначається по довіднику в залежності від типу світильника, коефіцієнтів відбивання стін Рс, стелі Рп, робітничій поверхні і від розмірів приміщення. Показник приміщення fi визначається з виразу:

i= А·В/Нр·(А+В),

де А і В - довжина і ширина освітленого приміщення, м;

Нр - висота підвісу світильника над робітничою поверхнею, м.

У випадку застосування люмінесцентних ламп потрібна кількість світильників N, яка визначається за формулою:

=Emin·S·K·z/F·n1·n

Поділивши число світильників N на число вибраних рядів світильників, визначають число світильників у кожному ряду.

Нехай зал має розміри А=8м, В=5м, h=3м, стеля обладнується світильниками Л201Б з люмінесцентними лампами ЛБ80.

Рівень робітничої поверхні над полом 0,8 м, при цьому Нр=2,2 м.

Показник приміщення рівний:

i=40/2,2 (8+5)=1,3986

По довіднику визначаємо значення коефіцієнта n1 (для значень Рс=0,5, Рп=0,3): n1=0,7. Значення коефіцієнта нерівномірного освітлення приймаємо рівним 1,1, а коефіцієнта запасу - 1,5. При загальному типі освітлення значення Emin=400 лк.

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

=400·8·5·1,5·1,1/5220·0,7·2=3(штук)

Загальна потужність освітлювальної установки рівна:

Р=2·80·3=480(Вт)

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

6.3 Пожежна безпека


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

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

Причини пожежі :

паління за робочим місцем;

- використовувати нагрівальні прилади в приміщеннях з ПЕОМ;

від’єднувати і приєднування кабелів за не справності і наявності напруги в мережі;

за наявністю не визначення напруги в ланцюзі, замиканням клем.

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

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

Для гасіння можливих пожеж передбачена наявність первинних засобів пожежогасіння, згідно «Правил пожежної безпеки в Україні» так і пожежні крани із брезентовими рукавами, пожежні щити (1 щит на 5000м2).

В кожній кімнаті знаходяться вогнегасники. Вогнегасники діляться на хімічні, пінні, повітряно-пінні, СО2 - вогнегасники і порошкові.

Вогнегасники допускаються до експлуатації якщо їхні технічні характеристики відповідають нормативним значенням, встановленим експлуатаційно-технічною документацією. Зменшення змісту вогнегасочої речовини і тиску у вогнегасниках не повинне перевищувати 10 % від встановленого номінального значення.

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

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

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

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

У приміщенні знаходиться розроблений і розміщений на видному місці план евакуації людей і матеріальних цінностей при пожежі з яким ознайомлені працівники підприємства.

Висновки


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

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

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

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

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

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

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

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

Як було відмічено раніше, це середовище є технологічною основою для інтерактивного сумісного навчання в режимі реального часу (Real Time Interactive Collaborative Education). Таким чином, використання технології ConferenceXP є кроком вперед до нової якості освіти.

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

1.   Агуров П.В. C#. Сборник рецептов - СПб.: БХВ-Петербург, 2007.

2.       Арчер Т.. Основы С#. - М.: Русская Редакция, 2002.

3.       Бишоп Дж. C# в кратком изложении. -М.: Бином. Лаборатория знаний, 2005.

4.       Гарнаев А.Ю. Самоучитель Visual Studio .NET 2003. - СПб.: БХВ-Петербург, 2003.

5.       Грэхем И. Объектно ориентированные методы. - М.: Издательский дом "Вильямс", 2004.

6.       Гуннерсон Э. Введение в C#. - СПб.: Питер, 2001.

7.       Дубовцев А. Microsoft .Net в подлинеке. - СПб.: БВХ-Петербург, 2008.

8.       Кариев Ч.А. Разработка Windows-приложений на основе Visual C# . БИНОМ. Лаборатория знаний, Интернет-университет информационных технологий - ИНТУИТ.ру, 2007.

9.       Кент Бек. Экстремальное программировнаие. - СПб.: Питер, 2002.

10.     Мартин Ф. Архитектура корпоративных программных приложений. - М.: Издательский дом "Вильямс", 2004 .

11.     Нейлгел К., Ивьен Б., Глинн Дж. С# 2008 для профессионалов. -М.: Издательский дом "Вильямс", 2008.

12.     Петцольд Ч. Программирование для Microsoft Windows на C#. - М.: Русская Редакция, 2009.

.        Прайс Дж., Гандерлой М. Visual C# .NET : Пер. с англ. - М.: ВЕК+, 2005.

.        Прайс Дж. Visual C# .NET Полное руководство. - М.: ВЕК+, 2004.

.        Рихтер Дж.. Программирование на платформе Microsoft .Net Framework. - М.: Русская Редакция, 2007.

.        Робинсон С., Корнес О., Глинн Дж. С# для профессионалов. - М.: Лори, 2008.

.        Сидни Фейт. TCP/IP. Архитектура, протоколы, реализация. - М.: Лори, 2000.

.        Смайли Дж. Учимся программировать на C# вместе с Джоном Смайли. - СПб.: Диасофт-ЮП, 2008.

.        Таненбаум. Э. Компьютерные сети. - СПб.: Питер, 2007.

.        Троелсен Э. Язык программирования С# 2005 и платформа .Net 2.0. - М.: Издательский дом "Вильямс", 2007.

.        Троелсен Э. С# и платформа .NET. Библиотека программиста. - СПб.: Питер, 2004.

22. Фролов А.В. Язык C#. Самоучитель. - М.: Диалог-МИФИ, 2003.

23.     Чакработи А., Кранти Ю., Сандху Р. Microsoft .NET Framework: разработка профессиональных проектов: Пер. с англ. - СПб.: БХВ-Петербург, 2006.

.        Microsoft Corporation. Разработка Web-сервисов XML и серверных компонентов на Microsoft Visual Basic .NET и Microsoft Visual C# .NET. Учебный курс MCAD/MCSD. /Пер. с англ. - М.: Издательско-торговый дом "Русская Редакция", 2004.

25. j@alba.ua - адрес автора

26. http://algolist.manual.ru // Исходные коды и книги по алгоритмам

27.     http://www.intuit.ru // Интернет-университет информационных технологий

.        http://ru.wikipedia.org // Свободная Интернет-энциклопедия

.        http://www.rsdn.ru // Russian Software Developer Network

30.     http://www.opennet.ru //Портал по открытому ПО, Linux, BSD и Unix системам

31.     http://www.gotdotnet.ru // GotDotNet.Ru: Сообщество .Net разработчиков

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

 

Не нашли материал для своей работы?
Поможем написать уникальную работу
Без плагиата!