Система моделювання росту зерен в металах та сплавах

 

Міністерство освіти і науки, молоді та спорту України

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

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








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

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

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

Тема: Система моделювання росту зерен в металах та сплавах





Студента групи ГКС-06-з

Монаха Богдана Васильовича

Керівник роботи доц., к.т.н.

Моня Георгій Михайлович





Кривий Ріг


ЗАВДАННЯ

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

Монаха Богдана Васильовича


. Тема роботи: Система моделювання росту зерен в металах та сплавах, затверджена наказом по інституту від " 29 " жовтня 2010 р. № 55С-01

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

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

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

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

. Острівкова модель структури межі.;

. Схема зустрічі для трьох центрів зерен;

. Діаграма Вороного. Загальний вигляд;

. Логіко-функціональна схема роботи системи;

. Схема знаходження координат точок перетину;

. Алгоритм візуалізації зростання зерен і пошуку координат точки кристалізації;

. Алгоритм побудови меж зерна;

. Приклади робочих вікон системи.

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


РозділКонсультантПідпис, датаЗавдання видавЗавдання прийнявЕкономічна частинаТимко Є.В.Охорона праціКлимович Г.Б.

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


Керівник ____________________

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


КАЛЕНДАРНИЙ ПЛАН


№ п/пНайменування етапів дипломної роботиТермін виконання етапів роботиПримітки1. Отримання завдання на дипломну роботу01.11.102. Огляд існуючих рішень20.02.113. Теоретичне дослідження математичної моделі та інструментальних засобів реалізації проекту13.03.114. Програмна частина (постановка задачі, створення програмного забезпечення, опис алгоритму рішення задачі, проектування та опис інтерфейсу користувача, опис програми)28.04.115. Оформлення пояснювальної записки05.05.106. Оформлення графічної документації14.05.117. Оформлення електронних додатків до диплому20.05.118. Представлення дипломної роботи до захисту25.05.11

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

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

АНОТАЦІЯ


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

Крім побудови кристалічної решітки перед нами також стояло завдання візуалізації процесу зростання зерен. Тому даний матеріал може бути використаний викладачами для наочної ілюстрації даного процесу.

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


АННОТАЦИЯ


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

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

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


THE SUMMARY

purpose of the diploma work is creation of the corns growth design system in metals and alloys. The developed system can be applied in the process of engineers-physical metallurgy and other specialists of metallurgical industry researches.for the construction of crystalline grate the task of corns growth process visualization stood also before us. That is why this material can be used by teachers for the object-lesson of this process.6, circuits and figures 17, tables 1, bibliographic references 37, total amount - 103.

ЗМІСТ


ВСТУП

. ПОСТАНОВКА ЗАВДАННЯ

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

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

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

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

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

.6 Джерела розробки

. ДОСЛІДЖЕННЯ ФІЗИЧНИХ ТА МАТЕМАТИЧНИХ ОСНОВ ПОБУДОВИ РІВНОВАЖНИХ МЕЖ ЗЕРНА

.1 Фізичні основи моделювання структури межі зерна

.1.1 Будова металів. Межі зерен і субзерен

.1.2 Острівкова модель побудови межі зерна

.2 Діаграма Вороного та тріангуляція Делоне

. ТЕОРЕТИЧНІ ОСНОВИ ПРОЕКТУВАННЯ КОРИСТУВАЛЬНИ-ЦЬКОГО ІНТЕРФЕЙСУ

.1 Загальні положення

.2 Проблеми, що виникають при проектуванні інтерфейсу

.3 Проектування інтерфейсу з орієнтацією на користувача

.4 Типові етапи проектування

.5 Стилі користувальницького інтерфейсу

.6 Показники якості інтерфейсу

.7 Моделі користувальницького інтерфейсу

.8 Правила проектування користувальницького інтерфейсу

.9. Вимоги, стандарти та керівні принципи при побудові

.9.1 Вимоги

.9.2 Комп'ютерні стандарти

.9.3 Керівні принципи

. ОПИС ФУНКЦІОНАЛЬНИХ МОЖЛИВОСТЕЙ ТА ПРОГРАМНОЇ РЕАЛІЗАЦІЇ ПРОЕКТОВАНОЇ СИСТЕМИ

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

.2 Розробка логіко-функціональної схеми системи

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

.4 Розробка алгоритмів та програмна реалізація

.5 Опис інтерфейсу користувача

ЕКОНОМІЧНЕ ОБҐРУНТУВАННЯ ДОЦІЛЬНОСТІ РОЗРОБКИ ПРОГРАМНОГО ПРОДУКТУ

. ОХОРОНА ПРАЦІ

.1 Аналіз небезпечних та шкідливих факторів на робочому місці

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

.3 Пожежна безпека

ВИСНОВКИ

СПИСОК ЛІТЕРАТУРИ

ВСТУП

кристалічна решітка моделювання зерно

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

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

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

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

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

Спільно з діаграмою Вороного застосовується тріангуляція Делоне, суть побудови якої полягає в наступному. Якщо ми з'єднаємо сусідні центри осередків, то одержимо сітку, що складається з трикутників. При цьому сторони трикутників не повинні перетинатися.

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

1. ПОСТАНОВКА ЗАВДАННЯ


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


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

Крім побудови кристалічної решітки перед нами також стояло завдання візуалізації процесу зростання зерен. Тому даний матеріал може бути використаний викладачами для наочної ілюстрації даного процесу.


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


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

Початок робіт: 01.11.10. Закінчення робіт: 25.05.11.


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


Система моделювання росту зерен в металах та сплавах була створена за допомогою інструментального засобу прискореної розробки програмного забезпечення Delphi з використанням пакету альтернативних компонентів Development Express та Rsruler40, за допомогою яких був реалізований інтерфейс системи.


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


Метою дипломної роботи є створення системи моделювання росту зерен в металлах та сплавах.

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


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


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

·Робота в середовищі операційних систем Windows 2000/XP/Vista/7;

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

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

·IBM-Сумісний комп'ютер, не нижче Pentium III, RAM-512Mb, SVGA-монітор 17 дюймів, вільний простір на жорсткому диску біля 3 Мб.


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


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

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

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

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

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

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


2. ДОСЛІДЖЕННЯ ФІЗИЧНИХ ТА МАТЕМАТИЧНИХ ОСНОВ ПОБУДОВИ РІВНОВАЖНИХ МЕЖ ЗЕРНА


.1. Фізичні основи моделювання структури межі зерна


.1.1 Будова металів. Межі зерен і субзерен

Метали - це полікристалічні тіла, вони складаються з дрібних кристалів. Характеризуються металевими властивостями і складають 50 % всіх хімічних елементів. Будова металів і їх сплавів кристалічна.

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

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

У полікристалічних матеріалах розмір зерен від 1 до 1000 мкм. Зерна разорієнтовані, повернені одні щодо інших до десятків градусів. Межі є основним дефектом в металах. На межах між зернами атоми не мають правильного розташування. Існує перехідна область вширшки в декілька атомних діаметрів, в якій грати одного зерна переходять в грати іншого зерна з іншою орієнтацією. Будова перехідного шару (межі) сприяє скупченню в ньому дислокацій, оскільки під час переходу через межу ні площина ковзання, ні вектор Бюргерса не зберігаються незмінними. Порушення правильності розташування сприяє тому, що на межах зерен підвищена концентрація тих домішок, які знижують поверхневу енергію. Усередині зерен порушується правильна кристалічна будова.

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

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

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

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

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

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

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


2.1.2 Острівкова модель побудови межі зерна

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

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

Припустимо, що L-фаза має невпорядковану структура, аналогічну структурі розплаву. Для опису її структурного стану використовуємо поняття вільного об'єму. Припустимо, що вільний об'єм L-фази рівний вільному об'єму розплаву, тобто відносній величині стрибка об'єму, що виникає при плавленні кристала:

(2.1)


Припустимо, що S-фаза має деяку впорядковану структуру, і її вільний об'єм близький до нуля:


(2.2)


Припустимо, що вільний об'єм межі відомий. В цьому випадку відносний об'єм, займаний острівцями S- і L- фаз, і , відповідно, визначається наступним співвідношенням:


(2.3)


Рис. 2.1 Острівкова модель структури межі. R - радіус комірки межі; L - радіус L-острівця межі


Відмітимо, що при величина відносного вільного об'єму межі виявляється рівною :


(2.4)


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

Припустимо, що острівці L-фази мають форму циліндрів висоти і радіусу і хаотично розподілені в площині межі (рис. 2.1). Для опису такої структури умовно розіб'ємо об'єм межі на циліндрові області радіусу R і припустимо, що центр L-острівця може з рівною імовірністю знаходитися в будь-якій точці цієї R-області. Оскільки відносна площа, займана острівцями L-фази, визначається співвідношенням (2.3), величина R може бути легко виражена через значення і , або :


(2.5)


2.2 Діаграма Вороного та тріангуляція Делоне


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

Рис. 2.2 Схема зустрічі для трьох центрів зерен


Через деякий достатній час кожне зерно, що виросло, буде представлено у вигляді осередку. В результаті буде одержана діаграма Вороного (рис. 2.3).


Рис. 2.3 Діаграма Вороного. Загальний вигляд


Діаграма Вороного є дуже цікавим і корисним математичним інструментом. Перше використання подібної діаграми зустрічається у Декарта. У «Початках філософії» (1644) Декарт запропонував ділення Всесвіту на зони гравітаційного впливу зірок. Відомий німецький математик Іоганн Петер Густав Лежен-Діріхле (1805 - 1859) незадовго до своєї смерті ввів діаграми для двух- і тривимірного випадків. Тому їх іноді називають діаграмами Діріхле.

У 1908 році російський математик Георгій Феодосьєвич Вороной (1868 - 1908) описав ці діаграми для багатовимірного випадку і з тих пір діаграми носять його ім'я.

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

Розглянемо формальне визначення діаграми Вороного (рис. 2.4). Вона складається з вершин (v) діаграми і її сторін (e). Нехай P - множина з n різних точок площини.

Діаграма Вороного - це ділення площини на n осередків, по одній на кожну точку P. Точка q належить осередку, що відноситься до pi з P, якщо відстань від q до pi менше, ніж відстань від q до будь-якої іншої точки P.


Рис. 2.4 Розбиття площини за допомогою Діаграми Вороного


У 1934 році учень Вороного Борис Делоне ввів так звану тріангуляцію Делоне. Ці дві конструкції повязані між собою. Тобто з однієї можна просто одержати іншу. Якщо ми з'єднаємо сусідні центри областей, то одержимо сітку трикутників. При цьому сторони трикутників не повинні перетинатися (рис. 2.5).


Рис. 2.5 Тріангуляція Делоне


Тріангуляцією Делоне для безлічі точок S (іноді іменованих сайтами) на площині називають тріангуляцію DT(S), таку що ніяка точка A з S не міститься усередині кола, описаного навколо будь-якого трикутника з DT(S), такого, що жодною з вершин його не є точка A.

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

Властивості тріангуляції Делоне.

. Тріангуляція Делоне максимізує мінімальний кут серед всіх кутів всіх побудованих трикутників, тим самим уникають «тонкі» трикутники (це дозволяє понизити погрішність методу кінцевих елементів до мінімуму).

. Тріангуляція Делоне взаємно однозначно відповідає діаграмі Вороного для того ж набору сайтів.

. Тріангуляція Делоне максимізує суму радіусів вписаних куль.

. Тріангуляція Делоне мінімізує дискретний функціонал Діріхле.

. Тріангуляція Делоне мінімізує максимальний радіус мінімальної охоплюючої кулі.

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

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

. Металургія - моделювання зростання зерен металу.

. Кристалографія. Розрахунок міцності по методу кінцевих елементів. Допомагає створити оптимальну сітку для розрахунку. Реконструкція тривимірних фігур по точках (наприклад даних лазерних вимірювань).

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

. Астрономія. Ідентифікація груп зірок і галактик.

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

. Антропологія. Визначення зон впливу.

. Фізіологія. Аналіз тканин

. Маркетинг. Оптимальне розбиття території.

. Робототехніка. Планування руху роботів з урахуванням перешкод.


3. ТЕОРЕТИЧНІ ОСНОВИ ПРОЕКТУВАННЯ КОРИСТУВАЛЬНИЦЬКОГО ІНТЕРФЕЙСУ


3.1 Загальні положення


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

Інтерфейс користувача компютерного додатку включає:

·засоби відображення інформації, відображувану інформацію, формати і коди;

·командні режими, мову «користувач-інтерфейс»;

·пристрої та технології введення-виведення;

·діалоги, взаємодію та транзакції між користувачем та компютером, зворотній звязок з користувачем;

·підтримку прийняятя рішень в конкретній предметній області;

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

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

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

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

·використовувана системою метафора (наприклад, робочий стіл Windows);

·елементи управління системою;

·навігація між блоками системи;

·візуальний (і не тільки) дизайн екранів програми;

·засоби відображення інформації, відображувана інформація і формати;

·пристрої та технології введення даних;

·діалоги, взаємодія і транзакції між користувачем і компютером;

·зворотній звязок з користувачем;

·підтримка прийняття рішення в конкретній предметній області;

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

На загальному рівні проектування КІ здається простою справою. Дійсно, спроектувати будь-який фрагмент КІ не складно, однак мало хто може впоратись з розробкою повного інтерфейсу з врахуванням всіх аспектів аж до етапу розгортки КІ.

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


3.2 Проблеми, що виникають при проектуванні інтерфейсу


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

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

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

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

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

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

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

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

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


3.3 Проектування інтерфейсу з орієнтацією на користувача


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

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

·розуміння користувачів та їх задач, залучення користувачів в усі аспекти життєвого циклу продукта;

·постановка цілей, які можна виміряти; встановлення критеріїв успіху з точки зору користувачів та підприємств;

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

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

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

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

В традиційних процесах проектування використовуються різні підходи. Основні змінні, повязані з процесом розробки, характеризують ступінь, в якій цей процес може бути віднесений до одного з типів. Це, наприклад, такі типи процесу проектування, як проектування ззовні-всередину (outside-in) або зсередини-назовні (inside-out); однократне (без ітерацій) або багатократне (ітеративне) проектування; проектування за типом великого вибуху (big bang, все або нічого) або еволюційне.

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

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

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

Найкращий підхід до розробки - еволюційний ітеративний підхід ззовні всередину.

Орієнтоване на користувача проектування продукту (UCD - User-Centered Design) - міждисциплінарний та ітеративний процес розробки ПЗ, спрямований на досягнення користувацьких цілей у відношенні продукта, на практичність та інші вимірювані властивості продукту на протязі його життєвого циклу.


3.4 Типові етапи проектування


Крупні етапи процесу проектування і розробки КІ:

1.планування;

2.вимоги;

.проектування;

.конструювання;

.розгортка.

Даний процес проектування не передбачає якогось певного стиля КІ.

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

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

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

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

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

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

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

Етапи проектування КІ, орієнтованого на користувача:

1)план - план створення продукту сконцентрований на побудові КІ та забезпеченні практичності; план враховує календарні терміни для кожного з етапів процесу, визначає основні фактори ризику, обєднує всі можливі методи, встановлює цілі та критерії по відношенню до КІ;

2)вимоги - на етапі встановлення вимог виконуються наступні задачі: опис користувачів, постановка задач користувачів, оцінка поточного рівня практичності, аналіз можливостей КІ, аналіз тенденцій;

3)концептуальне проектування - концептуальний проект представляє собою сукупність високорівневих описів, абстракцій та оглядової інформації, яка дає розробникам та кінцевим користувачам загальне уявлення про програмний продукт, його структуру та КІ;

4)проектування - проект КІ представляє сукупність характеристик програми, які сприймаються користувачем (вхідні сигнали, взаємодія користувача, відзив системи на вхідні сигнали та взаємодію користувача);

5)прототипування - створення прототипів та моделювання - ефективні засоби ранньої оцінки проекту; прототип - це матеріалізація побудованого проекту з використанням його передбачуваної платформи реалізації, включаючи обладнання, ОС, мови і засоби реалізації;

6)специфікація - матеріалізація проекту програмного продукту в документальній формі, яка описує і показує дії користувачів, а також вигляд та поведінку ПЗ в специфічних ситуаціях;

7)конструювання - написання коду та автономне тестування;

8)оцінка - всі методи оцінки повязані з залученням потенційних користувачів програмного продукту;

9)ітеративний підхід - загальні критерії досягнення цілей створення КІ повинні бути чітко визначені, зрозумілі й прийняті керівництвом та розробниками; досягнення поставлених цілей може вимагати багатократних ітерацій;

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


3.5 Стилі користувальницького інтерфейсу


Існує ряд стилів КІ, які завоювали популярність в індустрії програмних засобів.

Графічний користувацький інтерфейс (GUI - Graphical User Interface) - стиль взаємодії користувач-компютер, в якому застосовуються 4 елемента: вікна, піктограми, меню та покажчики. Іноді ГКІ називають WIMP-інтерфейсом (Windows, Icons, Menus, Pointers). Вікно - це область пристрою відображення, використовувана для представлення взаємодії з обєктами, інформації про обєкти або для виконання дій над обєктом. Піктограма - це область пристрою відображення, використовувана для наглядного представлення обєкта. Меню відображає набір альтернатив, за допомогою яких користувач може здійснити свій вибір. Покажчики - це графічні символи, які візуально показують місце розташування входа в систему для координатно-вказівного пристрою (миші або шарового маніпулятора). Найважливішими властивостями ГКІ є можливість безпосереднього маніпулювання, підтримка миші або покажчика, використання графіки та наявність області для функцій і даних додатку. Кожній основній системі властиві свої унікальні стильові принципи побудови ГКІ, причому всі додатки даної системи повинні бути витримані в цьому стилі. ГКІ не гарантує більш високого рівня практичності, однак належним чином спроектований ГКІ-орієнтований додаток може перевершувати його аналог з неграфічним інтерфейсом за рахунок ефективності роботи користувача та ступеня його задоволеності.

Користувацький Web-інтерфейс (WUI - Web User Interface) - дуже схожий на меню ієрархічної структури. Необхідна навігація виконується в рамках одного або декількох додатків з використанням текстових або візуальних гіперпосилань. Основні особливості WUI-додатків: інформація відображається в єдиному вікні (броузері), броузер забезпечує меню для Web-додатку; вибір дій обмежений; Web-сторінка має невисокий ступінь внутрішнього контроля над клієнтською областю для відкриття спеціалізованих спливаючих меню; створення спеціалізованих меню потребує додаткової роботи по програмуванню; функційні можливості додатку повинні відображатись в методи для виклику команд; клієнтська область не містить традиційні піктограми; велика кількість додатків використовують графіку та анімацію в естетичних або навігаційних цілях, що несе в собі загрозу зовнішнього візуального шума і збільшення часу відзиву при завантаженні та вдікритті файлів; броузер і додатки забезпечують можливість відключення графіки, щоб на екрані відображалась лише текстова версія; підтримка покажчика здійснюється для вибору за допомогою одного кліка миші або вибору за навігаційними посиланнями; технологія drag-and-drop не підтримується, обмежені дії правої кнопки миші. До найбільш поширених компонентів WUI-інтерфейса відносяться баннери (заголовки), навігаційні панелі та візуальні або текстові гіперпосилання, впорядковані різними способами. Банер - це візуальний заголовок, відображуваний в верхній частині Web-сторінки. Навігаційна панель - це список варіантів вибору гіперпосилань, які забезпечують доступ до інформації. Гіперпосилання - це варіант вибору, який відображає наступну сторінку інформації або пересуває фокус відображення на іншу область тієї ж сторінки.

Користувацький інтерфейс кишенькових пристроїв (HUI) - користувацький інтерфейс кишенькових компютерів, для введення даних в яких застосовують жестикуляційний стиль з пером та сенсорним маленьким екраном. HUI-інтерфейс забезпечує деякі можливості ГКІ, а саме піктограми меню і аналогічна поведінка покажчика. У вікні пристроя одночасно відображається лише один обєкт. Загальний стиль КІ для НUI-інтерфейса можна назвати SIMP-стилем (Screen, Icons, Menus, Pointers). Основні проблеми проектування HUI-інтерфейсу: спрощення вимог до користувача по введенню даних і взаємодії; використання обмеженої області дисплею. Основна перевага КПК - заміна фізичних кишенькових органайзерів. Введення великих обсягів інформації в КПК складний, але досить ефективний.

Прикладний рівень КІ програмного забезпечення - GUI, WUI, HUI-інтерфейси представляють собою загальні стилі КІ. До факторів, повязаних з прикладним КІ, які впливають на практичність, належить спосіб використання GUI-стиля з компонентами КІ прикладного рівня. Побудований на основі КІ додаток в тій чи іншій мірі використовує компоненти стиля КІ або компоненти КІ прикладного рівня. Сполучення компонентів GUI-інтерфейса та прикладного КІ призводить до загального підвищення рівня практичності. Заснований на застосуванні КІ додаток не лише здійснює виведення інформації та взаємодію з користувачем за допомогою екрану, а й надає користувачу піктограми та покажчики. Прикладний рівень додатку, заснованого на застосуванні КІ, містить всі функційні можливості, які виходять за межі оформлення діалогових вікон. Прикладний рівень включає всі видимі користувачу можливості і взаємодії, реалізовані із застосуванням різних стилів КІ. Можливості прикладного рівня включають наступні аспекти: концептуальне проектування; семантика і властивості обєктів і операцій; наочне представлення та стиль поведінки обєктів в межах клієнтської області; синтаксис (структуру) обєктів - формати даних, діапазони вхідних даних та послідовність зміни вікон; методи взаємодії, які виходять за межі простого введення даних, та безпосереднього маніпулювання; унікальні дії; використання фізичиних пристроїв.

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


3.6 Показники якості інтерфейсу


Думка користувача про те, що деякий КІ «хороший», тобто кращий за інші, залежить від невеликої кількості характеристик, які стають очевидними після півгодинного знайомства з будь-яким додатком незалежно від стилю КІ. Хороший GUI-, Web- або HUI-орієнтований додаток заснований на 5 головних принципах, які позначаються абревіатурою SAPCO (Simple - простий, Aesthetic - естетичний, Productive - продуктивний, Customisable - пристосовуваний, Other - інший).

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

Ключові положення, які впливають на принцип простоти:

·додаток - це не ракетно-космічна техніка;

·обєкти повинні бути мінімально складними та багаторівневими;

·помилятись краще в бік простоти.

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

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

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

Ключові положення, які впливають на принцип естетичності:

·додаток повинен в меншій мірі походити на компютерні артефакти, а в більшій мірі - на користувацькі обєкти;

·додаток повинен бути привабливим;

·слід прагнути до максимальної візуалізації інформації.

Хороший прикладний КІ повинен справляти гарне враження.

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

Ключові положення, які впливають на принцип продуктивності:

·додаток повинен відповідати задачі;

·для оптимізації інтерфейса слід використовувати правило 80/20;

·кількість кроків роботи необхідно звести до мінімума;

·слід забезпечити зручність додатку;

·додаток повинен бути поблажливим до користувача і не наказувати його за невеликі помилки.

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

Пристосовуваний. Програмні обєкти доступні в різних формах для задоволення індивідуальних потреб. Програмні обєкти КІ повинні мати властивість пристосовуваності.

Ключові положення, які впливають на принцип пристосовуваності:

·при проектуванні не відступайте від моделі інтсрументального набору;

·включайте в початкові обєкти можливості початкового рівня;

·забезпечуйте множинні представлення, шрифти і колір, щоб надати користувачу шанс вибору;

·всі можливості слід розкривати поступово, щоб користувач виявляв їх послідовно.

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

Інші принципи. Крім принципів простоти, естетичності, продуктивності та пристосовуваності існує безліч інших принципів, більшість яких - різновиди принципів SAPC.


3.7 Моделі користувальницького інтерфейсу


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

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

Розглянемо 4 моделі КІ - ментальну, користувальницьку, програміста, проектувальника.

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

Ментальні моделі дозволяють користувачам:

·передбачати (або позначити невидимі) події;

·знайти причини поміченних подій;

·визначити необхідні дії для здійснення потрібних змін;

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

·забезпечити розуміння аналогічних пристроїв;

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

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

·аналіз їх задач;

·інтервю з справжніми та потенційними користувачами;

·відвідування місць їх роботи;

·відзиви клієнтів;

·тести по придатності.

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

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

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


3.8 Правила проектування користувальницького інтерфейсу


Золоте правило проектувальника: Ніколи не робити іншим того, що вони зробили тобі. Згадайте, що вам не подобається в ПЗ, яким ви користуєтесь, і не робіть того ж в програмі, над якою працюєте (Трейсі Леонард).

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

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

Принципи розробки користувацького інтерфейса:

·контроль користувачем інтерфейса;

·зменшення завантаження памяті користувача;

·послідовність користувацького інтерфейса.

Хансен представив найкоротший список прицнипів проектування:

·знати користувача;

·скоротити запамятовування;

·оптимізувати операції;

·позбутися помилок.

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

Основне правило проектування - дати користувачу контроль над системою. Проста аналогія - водій автомобіля та пасажир потягу. Рішення - їхати власним авто або потягом - повинен приймати саме пасажир (в нашому випадку користувач).

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

Досвідчені проектувальники дозволяють користувачам вирішувати деякі задачі за власним розсудом. Так, наприклад, архітектори по завершенні будівництва складного комплексу будівель повинні прокласти між ними доріжки для пішоходів. Доки вони не знають, в якому саме місці люди перетинатимуть майданчики, тому хороші архітектори ніколи не прокладають доріжки одночасно з побудовою будівель. На майданчиках між домами ставлять таблички: Ходіть, будь-ласка, по траві. Через деякий час будівельники повертаються і лише тепер, згідно волевиявленню населення, асфальтують протоптані доріжки.

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

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

·безрежимність - використання режимів розважливо;

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

·можливість переривання - дозвіл користувачу сфокусувати увагу;

·корисність - демонстрація повідомлень, які допомагатимуть йому в роботі;

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

·можливість орієнтування - забезпечення відповідних шляхів і виходів;

·доступність - пристосування системи до користувачів з різним рівнем підготовки;

·полегшення в користуванні - створення більш зрозумілого КІ;

·пристосовуваність - надання можливості користувачу налагоджувати інтерфейс за своїм смаком;

·інтерактивність - дозвіл користувачу напряму маніпулювати обєктами інтерфейса.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

·запамятовування - не потрібно завантажувати короткочасну память;

·розпізнавання - потрібно опиратись на розпізнавання, а не на повторення;

·інформування - потрібно представляти візуальні заставки;

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

·швидкість - потрібно передбачити швидкі шляхи;

·інтуїтивність - потрібно активізувати синтаксис дій з обєктами;

·перенос - потрібно використовувати метафори з реального світу;

·контекст - потрібно застосовувати розкриття та пояснення понять та дій;

·організація - потрібно збільшити візуальну ясність.

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

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

Не змушуйте користувачів запамятовувати та потворювати те, що може й повинен робити компютер.

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

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

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

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

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

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

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

Є два основних способи для установки ярликів: прискорюючі та мнемонічні. Мнемонічні (або доступні) - це одиночні буквенно-цифрові символи, які пересувають курсор на потрібний обєкт та дозволяють зробити вибір. Вони використовують різні меню (панель, спадні, які зявляються) та списки. Мнемонічні символи повинні бути унікальними для кожного роду дій. Наприклад, типове меню вікна використовує стандартні клавіші - F для файлу, E для редагування, V для перегляду, H для виклику довідкової системи. Наступний рівень меню (спадні) використовують свої установки мнемонічних клавіш. Наприклад, N - новий документ, O - відкрити, C - закрити, S - зберегти. Мнемонічні символи пришвидшують рух і вибір потрібного меню або списка.

Прискорювачі (або клавіші швидкого доступу) - це клавіша або комбінація клавіш, які користувачі повинні натиснути для здійснення якої-небудь дії. Наприклад, Ctrl+P - прискорювач для друку.

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

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

ОО синтаксис дозволяє людині зрозуміти взаємозвязок між обєктами та діями в програмному продукті.

Перенос. Метафори реального світу дозволяють користувачу переносити свої знання з реального світу в світ компютерів. Наприклад, не потрібно для програми Калькулятор розробляти новий інтерфейс, він повинен збігатись з інтерфейсом звичайного калькулятора, який добре засвоїли користувачі. Але потрібно бути обережними при виборі та використанні метафор для інтерфейсу. Обираючи метафору, зафіксуйте її та слідуйте ній весь час. Якщо ви виявите, що метафора не відповідає свому призначенню в усьому інтерфейсі, оберіть нову метафору. Продовжуйте метафору, не перериваючи її.

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

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

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

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

Компютерні графіки та оформлювачі книг добре засвоїли мистецтво подання інформації. Цю навичку повинні мати й члени команди по розробці КІ.

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

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

Принципи створення сумісного інтерфейсу:

·послідовність - проектування послідовного інтерфейсу;

·досвід - спільна сумісність всіх програм;

·прогнозування - збереження результатів взаємодії;

·відношення - естетична привабливість та цілісність;

·передбачуваність - заохочення вивчення.

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

Досвід. Один з головних аспектів в розробці інтерфейсу - можливість навачння користувача голвним концепціям системи та програмного продукту., які можуть застосовуватись на нових ситуаціях та інших програмах. Сумісність проявляється на 3 рівнях: подання інформації, поведінка програми та техніка взаємодії. Сумісність - одна з головних властивостей КІ.

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

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

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

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

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

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

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

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

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


3.9. Вимоги, стандарти та керівні принципи при побудові


.9.1 Вимоги

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

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

Орієнтований на користувачів колектив розробників формує наступні вимоги:

·аналіз задач та прецедентів;

·можливості (функції, користувальницький інтерфейс і т.д.);

·критерії (практичність, продуктивність, якість і т.д.);

·конкуренти та кращі зразки;

·користувачі, технології, обмеження;

·методи залучення користувачів;

·візуалізація проектних рішень.

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

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

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

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

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

Є чимало джерел інформації у вигляді галузевих публікацій.

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

Типовий сценарій збирання вимог:

·кінцевий користувач звертається до керівника;

·керівник звертається до представника ІТ-підрозділу;

·представник ІТ-підрозділу звертається до менеджера ІТ-підрозділу;

·менеджер ІТ-підрозділа звертається до спеціаліста з планування продуктів;

·спеціаліст з планування розвитку продуктів звертається до колективу розробників.

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

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

Очевидні питання, які повинні увійти у вимоги:

·стиль КІ;

·платформа та інші стандарти КІ для додатку;

·сумісність з провідним ПЗ, працюючим на даній платформі;

·вміст екрану;

·поведінка екрану;

·характеристики звонішнього вигляду екрану;

·методи взаємодії користувачів із системою;

·можливості роботи з клавіатурою;

·зворотній зв'язок користувача у відповідь на стан системи та час відзиву;

·користувацький контроль над різними функціями;

·запам'ятовування результатів операцій розташування та зміни розмірів вікна, а також даних, стану та контекста;

·можливості навігації для додатку;

·збереження даних користувача при навігації;

·запам'ятовування проміжних даних користувача при навігації;

·інтерактивне навчання, підтримка продуктивності та довідкова система;

·попередження помилок та відновлення системи після помилок;

·методи прямого введення для усунення діалогу;

·перевірка правильності значень полів, а також ідентифікація потрібних полів;

·стандартне використання кольору, індикаторів, графіки і т.д.;

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

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

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

Перелік найбільш важливих характеристик, пов'язаних з виконанням користувачем задач та потоками робіт:

·кількість підтримуваних переривань задач;

·функційні можливості, які підтримуються під час переривань та навігації;

·підтримка КІ під час переривань.


3.9.2 Комп'ютерні стандарти

Стандарти роблять наше життя простішим, розкриваючи характеристики об'єктів і систем, які нас оточують. Стандарти є всюди - це основа індустріалізації. Стандарти комп'ютерного проектування розробляються державними та суспільними організаціями, іншими локальними та міжнародними формаціями. Найвідоміші організації по розробці стандартів - Американський національний інститут стандартів ANSI, Німецький інженерний стандарт DIN та Міжнародна організація по стандартизації ISO. Стандарти існують для дисплеїв, клавіатур, системних деталей та ін. Стандарти на ПЗ звичайно застосовні для основних характеристик КІ. Стандарти повинні постійно оновлюватись та вдосконалюватись, інашке вони починають гальмувати розвиток технології та перешкоджати впровадженню новацій. Деякі з сьогоднішінх стандартів не повністю відповідають нинішньому комп'ютерному програмному та апаратному забезпеченню, а також всім потребам користувача.


3.9.3 Керівні принципи

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

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

Більшість програмних продуктів створені для роботи на різних платформах. З тих пір, як ці платформи мають різні операційні системи, інструменти та стилі інтерфейсу, дуже складно розробляти інтерфейс, який задовольняє всі платформи або навіть просто працюючий на кожній з платформ. Недавнє доповнення - підбірка індустріальних керівництв по проектуванню - було розроблене Беллкором. Воно мітсить опис та керівні принципи для основних компонентів проектування КІ для таких компаній та операційних систем, як IBM CUA, OSF Motif, Microsoft Windows та ін.

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

Найпростіші принципи по розробці ПЗ, сформульовані Берстом:

·для свого програмного середовища оберіть відповідні промислові керівні принципи;

·створіть корпоративне керівництво за стилем оформлення вашого програмного інтерфейса;

·орієнтуйтесь на кінцевий додаток, використовуючи дані керівних принципів;

·при розробці власного додатку та купівлі програмних продуктів слідуйте керівним принципам.

Стандарти, промислові керівництва по розробці та стилю оформлення в порядку спадання пріоритету:

·міжнародні стандарти;

·галузеві керівні принципи по платформах;

·корпоративне керівництво по оформленню стилю інтерфейсу;

·керівництво по оформленню стилю групи продуктів;

·керівництво по оформленню стилю продукту.

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

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

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

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

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

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

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


4. ОПИС ФУНКЦІОНАЛЬНИХ МОЖЛИВОСТЕЙ ТА ПРОГРАМНОЇ РЕАЛІЗАЦІЇ ПРОЕКТОВАНОЇ СИСТЕМИ


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


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

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

Система моделювання росту зерен в металах та сплавах була створена за допомогою інструментального засобу прискореної розробки програмного забезпечення Delphi з використанням пакету альтернативних компонентів Development Express та Rsruler40, за допомогою яких був реалізований інтерфейс системи.

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

·Робота в середовищі операційних систем Windows 2000/XP/Vista/7;

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

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

·IBM-Сумісний комп'ютер, не нижче Pentium III, RAM-512Mb, SVGA-монітор 17 дюймів, вільний простір на жорсткому диску біля 3 Мб.


4.2 Розробка логіко-функціональної схеми системи


В загальному вигляді логіко-функціональну роботи системи можна представити наступним чином (рис. 4.1).


Рис. 4.1 Логіко-функціональна схема роботи системи


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


Нехай задані два кола, перше з центром в точці 1 з координатами X1,Y1 і радіусом R1. Друге з центром в точці 2 з координатами X2,Y2 і радіусом R2. В точках перетину знаходяться шукані точки 3 і 4 з координатами, відповідно X3,Y3 і X4,Y4. Центральна точка 0 - точка перетину всіх ліній, з координатами X,Y.

Рис. 4.2 Координати точок кіл, що перетинаються


Розглянемо два прямокутні трикутники 103 і 203 із загальним катетом 03. Гіпотенузи нам відомі - це радіуси R1 і R2 (рис. 4.3).

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

Знаючи координати X1,Y1 і X2,Y2 легко можна знайти відстань D між ними:


(4.1)


Рис. 4.3 Схема знаходження координат точок перетину

Одержимо умову перетину кіл:


(4.2)


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


(4.3)


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


(4.4)


Відстань від центру першого кола до точки перетину всіх ліній:


(4.5)


Відстань від точки перетину всіх ліній до точок перетину кіл:


(4.6)


Координати центру перетину всіх ліній:


(4.7)

Координати точок перетину кіл:


(4.8)


4.4 Розробка алгоритмів та програмна реалізація


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


procedure Tmain.Image1MouseDown(Sender: TObject; Button: TMouseButton;: TShiftState; X, Y: Integer);flag then exit; // якщо запущений режим моделювання додавати нові зерна заборонено

// Встановлюємо колір та товщину лінії границі зерен

Image1.Canvas.Brush.Style:=bsClear;.Canvas.Pen.Color:=col_c;.Canvas.Pen.width:=w_c;

// Заборона побудови кіл, якщо вони виходять за зону області побудови

if (x-radius)<0 then exit;(x+radius)>Image1.ClientWidth then exit;(y-radius)<0 then exit;(y+radius)>Image1.ClientHeight then exit;.Canvas.Brush.Style:=bsClear;Button=mbLeft then // якщо натиснута ліва клавіша мишки

image1.canvas.Ellipse(x-radius,y-radius,x+radius,y+radius); // будуємо коло з заданими параметрами

cxMemo1.Lines.Add(inttostr(j+1)+'. X='+inttostr(x)+'; Y='+inttostr(y)+'; R='+inttostr(radius)); // виводимо данні в текстовому вікні

j:=j+1; // підраховуємо кількість створених центрів кристалізаціїї

x1[j]:=x; y1[j]:=y; r1[j]:=radius; r[j]:=r1[j]; // заносимо до відповідних масивів координати центрі та радіусів побудованих кіл

end;

При переміщені курсору в області побудови в StatusBar відображаються поточні координати перехрестя.

procedure Tmain.Image1MouseMove(Sender: TObject; Shift: TShiftState; X,: Integer);.HairLinePos := X; // визначення координати х

RsRuler2.HairLinePos := y; // визначення координати y

StatusBar1.Panels[0].Text:=Format('X=%d, Y=%d pt', [X,Y]);.Panels[1].Text:=Format('X=%d, Y=%d мм', [round(X/96*25.4),round(X/96*25.4)]); // вивід значень на панель в пікселях та міліметрах

end;

Зміна одиниць вимірювання відбувається наступним чином.

procedure Tmain.RsRulerCorner1Click(Sender: TObject);RsRulerCorner1.Units=ruPixel then // якщо поточна одиниця - пікселі

begin.Units:=ruMilli;.Units:=ruMilli;.Units:=ruMilli;// якщо поточна одиниця - міліметри

begin.Units:=ruPixel;.Units:=ruPixel;.Units:=ruPixel;;;

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

procedure Tmain.dxBarSpinEdit2CurChange(Sender: TObject);.Interval:=round(dxBarSpinEdit2.Value*1000); // встановлюємо інтервал таймеру

end;

За очищення області побудови відповідає наступна процедура.

procedure Tmain.dxBarButton5Click(Sender: TObject);i:integer;.Enabled:=true; // область побудови є доступною

dxBarButton6.Caption:='Моделирование';:=0; w1:=0;.Canvas.Brush.Style:=bsSolid;.Canvas.Brush.Color:=clwhite;.canvas.FillRect(ClientRect); // очищення області побудови

cxMemo1.Clear;:=0; // кількість побудованих зерен

Timer1.Enabled:=false; // таймер відключений

flag:=false; // ознака того, що процес моделювання не запущений

Image1.Canvas.Pen.Width:=1;.Canvas.Pen.Color:=clblack;.Canvas.Brush.Style:=bsClear;.Enabled:=true;;

Розглянемо процес моделювання зросту зерен. Алгоритм візуалізації зростання зерен і пошуку координат точки кристалізації наведений на рис. 4.4. Далі наведено фрагмент процедури, за допомогою якої цей алгоритм був реалізований.

procedure Tmain.Timer1Timer(Sender: TObject);i,k,n,z,m:integer;,B,H,D:Real;,y,X3,x33,X4,x44,Y3,y33,Y4,y44:Integer;:boolean;:boolean; //ознака того, що процес моделювання закінчено:integer; //кількість зерен, що зростають.Interval:=round(dxBarSpinEdit2.Value*1000);

// Встановлюємо колір та стиль заливки.Canvas.Brush.Style:=bssolid;.Canvas.Brush.Color:=clWhite;

// Заливка області побудови.canvas.FillRect(ClientRect);

// Колір заливки чорний, стиль - заливка відсутня.Canvas.Brush.Style:=bsClear;

// Встановлюємо колір та товщину лінії границі зерен

Image1.Canvas.Pen.Color:=col_c;.Canvas.Pen.width:=w_c; kol:=0;

// Перебираємо в циклі всі кола окрім утворюючого

for i:=1 to j-1 do

// Якщо розміри кіл не виходять за область побудови

if not(((x1[i]-r[i])<0) or((x1[i]+r[i])>Image1.ClientWidth) or((y1[i]-r[i])<0)((y1[i]+r[i])>Image1.ClientHeight)) then begin[i]:=r[i]+1; kol:=kol+1; end; //збільшуємо радіус кола на 1 піксель

// Побудова кіл з новим радіусом

image1.canvas.Ellipse(x1[i]-r[i],y1[i]-r[i],x1[i]+r[i],y1[i]+r[i]);;not (w1=(j-1)) then // якщо ще не знайдені всі точки кристалізації[j]:=r[j]+1;

// Побудова утворюючого кола з новим радіусом

image1.canvas.Ellipse(x1[j]-r[j],y1[j]-r[j],x1[j]+r[j],y1[j]+r[j]);kol=0 then f:=false;(not f) then// моделювання закінчене.Enabled:=false; // відключення таймеру

dxBarButton6.Caption:='Моделировать'; // зміна назви кнопки

dxBarButton6.Enabled:=false; // кнопка „Моделювання

стає недоступною

end;

// Знаходимо точки перетину всіх кіл із утворюючим

if not (w1=(j-1)) then // якщо ще не знайдені всі точки кристалізаціїi:=1 to j-1 do // перебираємо в циклі всі створені кола окрім утворюючого:=sqrt(sqr(X1[i]-X1[j])+sqr(Y1[i]-Y1[j])); // відстань між центрами кіл(D<=(R[i]+R[j])) AND (D>=ABS(R[i]-R[j])) Then // якщо кола перетинаються

Begin:=(sqr(R[i])-sqr(R[j])+sqr(D))/(2*D); // відстань від центру другого кола до точки перетину всіх ліній

A:=D-B; // відстань від центру першого кола до точки перетину всіх ліній

H:=sqrt(sqr(R[i])-sqr(B)); // відстань від точки перетину всіх ліній до точок перетину кіл

// X,Y - координати центру перетину всіх ліній:=round(X1[j]+(X1[i]-X1[j])/(D/A));:=round(Y1[j]+(Y1[i]-Y1[j])/(D/A));

// X3,Y3 - координати першої точки перетину кола з утворюючим

//X4,Y4 - координати другої точки перетину кола з утворюючим:=round(X-(Y-Y1[i])*H/B); :=round(Y+(X-X1[i])*H/B);:=round(X+(Y-Y1[i])*H/B);:=round(Y-(X-X1[i])*H/B);

// Установка параметрів для побудови точок перетину.Canvas.Brush.Style:=bsSolid;.Canvas.Brush.Color:=clgreen;.Canvas.Pen.Color:=clgreen;

// Побудова точок перетину кіл

image1.canvas.Ellipse(x33-3,y33-3,x33+3,y33+3);.canvas.Ellipse(x44-3,y44-3,x44+3,y44+3);;;

// Пошук точок перетину всіх кіл між собою і перехоплення точок кристалізації

for i:=1 to j-2 do

// Пошук точок перетину i-го кола з утворюючим

D:=sqrt(sqr(X1[i]-X1[j])+sqr(Y1[i]-Y1[j])); // відстань між центрами кіл (D<=(R[i]+R[j])) AND (D>=ABS(R[i]-R[j])) Then // якщо кола перетинаються

Begin:=(sqr(R[i])-sqr(R[j])+sqr(D))/(2*D); // відстань від центру другого кола до точки перетину всіх ліній

A:=D-B; // відстань від центру першого кола до точки перетину всіх ліній

H:=sqrt(sqr(R[i])-sqr(B)); // відстань від точки перетину всіх ліній до точок перетину кіл

// X,Y - координати центру перетину всіх ліній:=round(X1[j]+(X1[i]-X1[j])/(D/A));:=round(Y1[j]+(Y1[i]-Y1[j])/(D/A));

// X3,Y3 - координати першої точки перетину кола з утворюючим

//X4,Y4 - координати другої точки перетину кола з утворюючим:=round(X-(Y-Y1[i])*H/B); :=round(Y+(X-X1[i])*H/B);:=round(X+(Y-Y1[i])*H/B);:=round(Y-(X-X1[i])*H/B);;k:=i+1 to j-1 do

// Пошук точок перетину i-го та k-го кола

D:=sqrt(sqr(X1[k]-X1[i])+sqr(Y1[k]-Y1[i])); // відстань між центрами кіл (D<=(R[i]+R[k])) AND (D>=ABS(R[i]-R[k])) Then // якщо кола перетинаються

Begin:=(sqr(R[k])-sqr(R[i])+sqr(D))/(2*D); // відстань від центру другого кола до точки перетину всіх ліній

A:=D-B; // відстань від центру першого кола до точки перетину всіх ліній

H:=sqrt(sqr(R[k])-sqr(B)); // відстань від точки перетину всіх ліній до точок перетину кіл

// X,Y - координати центру перетину всіх ліній:=round(X1[i]+(X1[k]-X1[i])/(D/A));:=round(Y1[i]+(Y1[k]-Y1[i])/(D/A));

// X3,Y3 - координати першої точки перетину кола з утворюючим

//X4,Y4 - координати другої точки перетину кола з утворюючим:=round(X-(Y-Y1[k])*H/B);:=round(Y+(X-X1[k])*H/B);:=round(X+(Y-Y1[k])*H/B);:=round(Y-(X-X1[k])*H/B);

// Установка параметрів для побудови точок перетину.Canvas.Brush.Style:=bsSolid;.Canvas.Brush.Color:=clRed;.Canvas.Pen.Color:=clRed;// Побудова точок перетину кіл.canvas.Ellipse(x3-3,y3-3,x3+3,y3+3);.canvas.Ellipse(x4-3,y4-3,x4+3,y4+3);

// Різниця між координатами перетину i-го кола із утворюючим та i-го кола з k-м

if ((abs(y3-y33)<=1) and (abs(x3-x33)<=1) )begin:=w+1;[w]:=x3; yy[w]:=y3; // формуємо масиви координат точок кристалізації

end;((abs(y4-y44)<=5) and (abs(x4-x44)<=5) ) then:=w+1;[w]:=x4; yy[w]:=y4; // формуємо масиви координат точок кристалізації

end; end; end; end;

// Установка параметрів для побудови точок кристалізації.Canvas.Brush.Style:=bsSolid;.Canvas.Brush.Color:=col_p;.Canvas.Pen.Color:=col_p;

// Побудова точок кристалізаціїi:=1 to w1 do.canvas.Ellipse(xxx[i]-w_p,yyy[i]-w_p,xxx[i]+w_p,yyy[i]+w_p);;


Рис. 4.4 Алгоритм візуалізації зростання зерен і пошуку координат точки кристалізації


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


procedure Tmain.dxBarButton6Click(Sender: TObject);:=true;.Enabled:= not Timer1.Enabled; // відключення таймеру

if Timer1.Enabled then // якщо таймер активний

dxBarButton6.Caption:='Стоп' // зміна назви кнопки

else // якщо таймер неактивний.Caption:='Моделирование';;

Розглянемо процедуру побудови меж зерна. На рис. 4.5 наведений фрагмент алгоритму цієї процедури.

procedure Tmain.dxBarButton10Click(Sender: TObject);i,n,min,k1,k2,b,b1,m,nl:integer;,ym,xb,xm:array[1..100] of integer;

begin

// Встановлюємо колір та стиль заливки.Canvas.Brush.Style:=bssolid;.Canvas.Brush.Color:=clWhite;

// Заливка області побудови.canvas.FillRect(ClientRect);.Canvas.Brush.Style:=bsSolid;

// Встановлюємо колір та діаметр точок кристалізації

Image1.Canvas.Brush.Color:=col_p;.Canvas.pen.Color:=col_p;:=0; k2:=0;

// Будуємо точки кристалізації

for i:=1 to w1 do.canvas.Ellipse(xxx[i]-w_p,yyy[i]-w_p,xxx[i]+w_p,yyy[i]+w_p);

// Пошук координати з мінімальним значенням по осі Х

min:=xxx[1];

// Перебираємо в циклі елементи масиву, що містить координати точок по осі Х

for i:=2 to w1 domin>xxx[i] then:=xxx[i];:=i; // запам'ятовуємо номер точки кристалізації в масиві;i:=1 to w1 doxxx[i]<>xxx[nl] then // якщо це не стартова точкаyyy[i]>=yyy[nl] then// формуємо масив координат точок розташованих нижче стартової

k1:=k1+1; [k1]:=yyy[i];[k1]:=xxx[i];else // формуємо масив координат точок розташованих вище стартової

k2:=k2+1;[k2]:=yyy[i]; [k2]:=xxx[i];;

// Сортування по зростанню координати Х масивів координат точок нижче за стартовуi:=2 to k1 do // перебір номерів упорядковуваних елементів

begin:=xb[i]; m:=i; // запам'ятовується упорядковуваний елемент і номер його місця :=yb[i];n:=i-1 downto 1 doxb[n]<=b then break; // знайдене місце для упорядковуваного елементу, оператор Break перериває виконання циклу

xb[m]:=xb[n];[m]:=yb[n];:=n; // зсув менших елементів;[m]:=b; // установка елементу на необхідне місце[m]:=b1;;

// Сортування по убуванню координати Х масивів координат точок вище за стартову

for i:=2 to k2 do // перебір номерів упорядковуваних елементів:=xm[i]; m:=i; // запам'ятовується упорядковуваний елемент і номер його місця :=ym[i];n:=i-1 downto 1 doxm[n]>=b then break; // знайдене місце для упорядковуваного елементу, оператор Break перериває виконання циклу[m]:=xm[n];[m]:=ym[n];:=n; // зсув менших елементів;[m]:=b; // установка елементу на необхідне місце[m]:=b1;;

// Встановлюємо колір та товщину лінії кристалічної решітки

Image1.Canvas.Pen.Width:=w_z;.Canvas.Pen.Color:=col_z;.Canvas.MoveTo(xxx[nl],yyy[nl]); // переміщення курсора у стартову точку

// Перебір елементів масивів що містять координати точок нижче за стартову

for i:=1 to k1 do.Canvas.LineTo(xb[i],yb[i]); //проводимо лінію.Canvas.MoveTo(xb[i],yb[i]); //переміщаємо курсор;

// Перебір елементів масивів що містять координати точок вище за стартову

for i:=1 to k2 do.Canvas.LineTo(xm[i],ym[i]); //проводимо лінію.Canvas.MoveTo(xm[i],ym[i]); //переміщаємо курсор;.Canvas.lineTo(xxx[nl],yyy[nl]); // замикаємо багатокутник;


Рис. 4.5 Алгоритм побудови меж зерна


4.5 Опис інтерфейсу користувача


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

Рис. 4.6 Вікно визначення параметрів області зростання зерен


Головне вікно системи має наступний вигляд.


Рис. 4.7 Головне вікно системи на початку роботи


Як вже було зазначено вище, інтерфейс системи був спроектований за допомогою пакету альтернативних компонентів Development Express. Однією з особливостей використання цього пакету є можливість настроювати зовнішній вигляд панелей інструментів (додавати або видаляти кнопки (рис. 4.8), переміщувати панелі). Головне вікно системи має наступні панелі:

Головна


Параметри

Рис. 4.8 Зовнішній вигляд панелей інструментів


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

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

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

Рис. 4.9 Вікно системи на етапі моделювання


Зеленим кольором відмічені точки перетину утворюючого кола та інших кіл. Червоними кольором - точки перетину всіх інших кіл.

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

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

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

Рис. 4.10 Відображення ліній тріангуляції


З'єднавши одержані вершини (тиснемо кнопку Побудувати межі зерна), ми зможемо побачити форму осередку утворюючого зерна.


Рис. 4.11 Зображення осередку утворюючого зерна


Кнопка „Настройка дозволяє вивести на екран вікно (рис. 4.12), в якому можна налаштувати параметри зображення, такі як товщина і колір лінії.


Рис. 4.12 Вікно настройки параметрів зображення


Одержане зображення, а також всі проміжні побудови ми можемо зберегти у файлі формату bmp, натиснувши кнопку „Зберегти.


5. ЕКОНОМІЧНЕ ОБҐРУНТУВАННЯ ДОЦІЛЬНОСТІ РОЗРОБКИ ПРОГРАМНОГО ПРОДУКТУ


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

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

В ході розробки програмного продукту було використане програмне забезпечення Turbo Delphi 2006 Explorer, яке є безкоштовним.

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

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


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


де:

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

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

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

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


Ззпспп=tTчас

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

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


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


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

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

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

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

o= QB/(75…85K),


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

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

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


to= 18002/(780,8) = 57,69 (люд-год).


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

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


tа = Q/(60…75K) а = 1800/(700,8)=32,14 (люд-год).


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

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


tб= Q/(60…75K)б = 1800/(710,8)=31,69 (люд-год).


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

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

п= Q/(60…75K)п = 1800/(720,8)=31,25 (люд-год).


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

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

от=1.5 tAот,

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

Aот= Q/(40…50K)Aот = 1800/(480,8)=46,88 (люд-год).


Звідси tот=1,546,88=70,32 (люд-год).


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

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

д= tдр+ tдо,


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

др= Q/(150…200K)др = 1800/(1800,8) = 12,5 (люд-год)до=0.75tдр

tдо =0,7512,5=9,38 (люд-год)


Звідси:

д=12,5+9,38=21,88 (люд-год).


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

t= to+ tа+ tб+ tп+ tд+ tот,= 57,69 +32,14 +31,69+31,25 +21,88+70,32 = 244,97 (люд-год).


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

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

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

Єдине соціальне нарахування становить 37,2%.

Тобто 4409,46 грн37,2%= 1640,32 грн.

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


Ззпспп= 4409,46+1640,32 = 6 049,78 грн.


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

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


Змвспп час tеом,


де:

Счас - ціна машино-години, грн/год;еом - фактичний час відладки програми на ЕОМ.

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

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

tеом = tп + tдо + tот ;еом =31,25 +9,38 +70,32 = 110,95 годин


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

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


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


де:

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

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

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

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

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

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


Теом = 8(365-114)-523=1852 год.


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

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


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


де:

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

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

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

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

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

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

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

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


ЗамбалНам,


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

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

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


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


де:

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

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

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


Зуст = 10% Срин

Зуст =0.15000=500 грн.

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

а Зам=55000,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 іокл,


де:

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

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

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


Зоснзп = 12(1800+1500)/20=1980 грн.


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


Здопзп = 0.6 1980 = 1188 грн.


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

Зотчзп = 0,372(1980+1188) = 1178.49 грн.


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


Ззп = 1980 +1188 +1178.49 = 4346.49 грн.


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


Зеом = 4346.49 + 1375+ 29.78 + 55 + 275+ 275= 6081.27 грн.


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


Сгод = 6081,27 /1852 = 3.28 грн.


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


Змвспп годtеом

Змвспп = 3 110,95=332,85 грн.


Розрахунок економічного ефекту.


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

Зспп =6 049,78 + 332,85= 6 382,63 грн.


Тобто собівартість програмного продукту 6 382,63 грн.

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


Ц = Зспп + Р,

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

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


Ц = 6 382,63 + 957,40= 7 340,03 грн.


Ціна програмного продукту дорівнює 7 340,03 грн.

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

Наприклад вартість системи SOLIDCast від компанії Finite Solutions становить 3999 $.

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

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


ЕК = $3999 * 8,0- 7 340,03 = 24 651,97 грн.


6. ОХОРОНА ПРАЦІ


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

Одна з найважливіших задач охорони праці - забезпечення безпеки працюючих, тобто забезпечення такого стану умов праці, при якому виключено дію на працюючих небезпечних і шкідливих виробничих чинників. Законодавство України про охорону праці складається із загальних законів України та спеціальних законодавчих актів. Загальними законами України, що визначають основні положення з охорони праці є Конституція України, Закон України «Про охорону праці», Кодекс законів про працю (КЗпП), Закон України «Про загальнообов'язкове державне соціальне страхування від нещасного випадку на виробництві та професійного захворювання, які спричинили втрату працездатності», Закон України „Про забезпечення санітарного та епідемічного благополуччя населення де вказані основні вимоги гігієни та санітарії, параметри мікроклімату на робочих місцях регламентовані ДОСТ 12.1.005-88 і СанПіН 2.24.548-96. Норми штучного та природного освітлення визначені БНіП ІІ-4-79/85. Пожежна безпека викладена в законі України „Про пожежну безпеку і „Правила про пожежну безпеку в Україні.

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

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


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

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

Оператор ЕОМ може зіткнутися з наступними фізично небезпечними й шкідливими факторами:

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

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

·недостатнє або надмірне освітлення.

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

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

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

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

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

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

Мікроклімат виробничих приміщень і стан повітряної середи в робочій зоні - головні чинники, які визначають умови праці. Основні параметри мікрокліматичних умов - температура, вологість, швидкість руху повітря і барометричний тиск впливають на теплообмін і загальний стан організму людини. Норми виробничого мікроклімату встановлені системою стандартів безпеки праці ГОСТ 12.1.005-88 та СанПіН 2.24.548-96.

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

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

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

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

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

При роботі на ПЕОМ людина наражається на шумовий вплив з боку багатьох джерел, наприклад, шум, викликаний роботою принтера (70 дБА). Діючи на слуховий аналізатор, шум змінює функціональний стан багатьох систем органів людини внаслідок взаємодії між ними через центральну нервову систему. Це виявляє вплив на органи зору людини, вестибулярний апарат і рухові функції, а також призводить до зниження мускульної дієздатності. При роботі в умовах шуму спостерігається підвищена втомлюваність і зниження дієздатності, погіршується увага і мовна комутація, створюються передумови до помилкових дій працюючих. Згідно з вимогами СанПіН 2.2.2.542-96 гранично допустимий рівень шуму становить 50 дБА.

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

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

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

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


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


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

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

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

Освітленість на поверхні стола в зоні розміщення робочого документа повинна бути 300 - 500 лк, також допускається установка світильників місцевого освітлення для підсвічування документів, але з такою умовою, щоб воно не створювало відблисків на поверхні екрана й не збільшувало освітленість екрана більш ніж на 300 лк. Як джерела світла при штучному висвітленні повинні застосовуватися переважно люмінесцентні лампи типу ЛБ. Допускається застосування ламп накалювання у світильниках місцевого освітлення. Для розрахунку штучного освітлення використовують метод світлового потоку. Розрахунок за даним способом зводитися до визначення необхідної кількості світильників N для установки в приміщеннях, що визначається по формулі:

(6.1)


Де: Ф - світловий потік лампи, люмен;

Е - нормована освітленість, люкс;з - коефіцієнт запасу (для люмінесцентних ламп kз = 1,1);- площа освітлювального приміщення, м2;- коефіцієнт мінімальної освітленості (для люмінесцентних ламп= 1,1);- кількість електричних ламп;

? - коефіцієнт використання світлового потоку.

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


(6.2)


Де: L і b - довжина та ширина приміщення, м;n - висота підвісу світильника над робітничою поверхнею, м.

В приміщенні з розмірами L = 6 м, b = 4 м, h = 3 м робітнича поверхня знаходиться на рівні 0,8 м від полу, тому hn = 2,2 м.

Отже, показник приміщення рівний:


По довіднику визначаємо величину коефіцієнту використання світлового потоку ? = 0,45 для і = 1,1 та коефіцієнтів відбивання світла - 70%, 50%, 30%.

Для освітлення використовується люмінесцентна лампа типу ЛБ, потужністю 40 Вт, світловий потік лампи 3000 лм. При загальному типі освітлення значення Е = 300 лк.

Підставимо всі отримані дані в формулу і визначимо необхідну кількість світильників:


(штук)


Отже, за результатами проведених розрахунків можна зробити висновок, що для оптимального освітлення у приміщенні площею 24 м2, необхідно встановити 7 світильників з люмінесцентними лампами потужністю 40 Вт.

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

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

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

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

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

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

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

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

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


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


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

Причинами пожежі можуть бути:

паління;

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

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

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

використання електроприладів у важко провітрених приміщень.

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

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

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

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

ВИСНОВКИ


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

Метою дипломної роботи є створення системи моделювання росту зерен в металлах та сплавах. Крім побудови кристалічної решітки перед нами також стояло завдання візуалізації процесу зростання зерен.

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

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

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

СПИСОК ЛІТЕРАТУРИ


1.Адлер А.. Теория геометрических построений, М., Учпедгиз, 1940

2. Бобровский С. Delphi 5 - CПб.: Питер, 2000.

. Гаевский А. Разработка программных приложений на Delphi 6 - М.: Киев, 2000.

. Глинский Я.Н., Анохин В.Е., Ряжская В.А. Turbo Pascal 7.0 и Delphi. Учебное пособие. СПб.: ДиаСофтЮП, 2003.

. Гофман В., Хомоненко А. Delphi 6. CПб.: БХВ-Петербург, 2004.

6. Грибачев К. Г. Delphi и Model Driven Architecture. Разработка приложений баз данных. - СПб.. Питер, 2004.

. Дарахвелидзе П. Г., Марков Е. П. Delphi - среда визуального программирования. СПб.: BHV- Санкт-Петербург, 1999.

.Кайбышев OA, Валиев Р.З. Границы зерен и свойства металлов. - М.: Металлургия, 1987.

. Калверт Ч. Delphi 5. Энциклопедия пользователя. СПб.: ДиаСофтЮП, 2003.

. Климова Л. М. "Delphi 7. Самоучитель. М.: ИД КУДИЦ-ОБРАЗ, 2005.

. Копецкий Ч.В., Орлов А.Н., Фионова Л.К. Границы зерен в чистых материалах. -М.: Наука, 1987.

. Коцюбинский А.О., Грошев С.В. Язык программирования Delphi 5 - М.: "Издательство Триумф", 1999.

. Леонтьев В. Delphi 5 - М.: Москва "Олма-Пресс", 1999.

. Мадрел Тео. Разработка пользовательского интерфейса/ Пер. с англ.- М.:ДМК,2001.

. Немнюгин С.А. Программирование - CПб.: Питер, 2000.

. Озеров В. Delphi. Советы программистов (2-е издание). - СПб.: Символ- Плюс, 2002.

. Орлов А.Н., Переверзенцев В.Н., Рыбин В.В. Границы зерен в металлах. - М.: Металлургия, 1980.

. Певзнер С. Л., Инверсия и ее приложения, Хабаровск, 1988

. Пономарев В. Самоучитель Delphi 7. CПб.: БХВ-Петербург, 2005.

. Ревнич Ю. В. Нестандартные приемы программирования на Delphi. - СПб.: БХВ-Петербург, 2005.

. Ремизов Н. Delphi - CПб.: Питер, 2000.

.Фараонов В. Система программирования Delphi. CПб.: БХВ-Петербург, 2005.

.6. Фионова Л.К. Обычные границы зерен //ФММ. 1991. № 4.

. Ханекамп Д. Вилькен П. Программирование под Windows/ Пер. с нем. -М.: ЭКОМ, 1996.

.4. Харт Э. Фазовые переходы на границах зерен. В сб. Атомная структура межзе-ренных границ. - М.: Мир, 1978.

. Хомоненко А. Д Delphi 7. CПб.: БХВ-Петербург, 2005.

. Четверухин Н. Ф. Методы геометрических построений, М., Учпедгиз, 1952

. Daw S.M., Baskes M.I. Embedded atom method: derivation and application to impurities, surfaces and other defects in metals // Phys. Rev. B. 1984. Vol. 29. No. 12. P. 6443 - 6453.

29. Morris J.R., Ye Y.Y., Но K.M., Chan C.T. Structures and energies of compression twin boundaries in hep Ti and Zr II Phil. Mag. A. 1995. V. 72. № 3. P. 751 - 763.

30. Pinsook U., Ackland G.J. Calculation of anomalous phonons and hcp-bcc phase tran sition in zirconium // Phys. Rev. B. 1999. V. 59. № 21. P. 13642 - 13649; Pinsook U. Ackland G.J. Simulation of martensitic microstructural evolution in zirconium // Phys. Rev B. 1998. V. 58. P. 11252- 11259.

31. Van Swygenhoven H. , Саго A., Farkas D. Grain boundary structure and its influence on plastic deformation of polycrystalline FCC metals at the nanoscale: a molecular dynamics study//Scripta mater. 2001. Vol. 44. P. 1513-1516.

32. Zhao S.J., Wang S.Q., Zhang T.G., Ye H.Q. A cluster-induced structural disorder and melting transition in the grain boundary of B2 NiAl: a molecular-dynamics simulation on parallel computers. - J.Phys.: Condens. Matter. 2000. Vol. 12. P. L549 - L555.

[email protected] <mailto:[email protected]> - адрес автора

. <http://www.delphikingdom.ru> // Королевство Delphi. Виртуальный клуб программистов

. <http://www.delphiworld.narod.ru> //Профессиональные программы для разработчиков

. <http://www.delphisources.ru> // Программирование на Delphi

. <http://www.delphibasics.ru> // Справочник - «Основы Delphi»

. <http://www.delphimaster.ru> // Мастера Delphi


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

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ