Автоматизована система тестування в системах дистанційного навчання

 

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

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

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

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







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

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

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

«Автоматизована система тестування в системах дистанційного навчання»





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

Москва Вікторії Василівни

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

Китова Валентина Олексіївна




Кривий Ріг


ЗАВДАННЯ

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

Москва Вікторії Василівни


1. Тема роботи: Автоматизована система тестування в системах дистанційного навчання, затверджена наказом по інституту від " 29 " жовтня 2008 р. № 62С-01

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

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

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

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

1.Головна форма серверної частини програми

2.Головна форма серверної частини програми після запуску тесту

.Головне меню тестової програми

.Перший крок майстра для створення тесту

.Другий крок майстра для створення тесту

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

.Форма редагування створених тестів

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


РозділКонсультантПідпис, датаЗавдання видавЗавдання прийнявСпеціальна частинаСтаріков О.М. Програмна частинаМурашко А.Г.Економічна частинаТимко Є.В.Охорона праціКлимович Г.Б.7. Дата видачі завдання 31.10.08 р.


Керівник

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


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


№ п/пНайменування етапів дипломної роботиТермін виконання етапів роботиПримітки1. Отримання завдання на дипломну роботу31.10.082. Огляд існуючих рішень20.02.093. Теоретичне дослідження систем автоматизованих систем контролю знань23.03.094. Програмна частина (постановка задачі, створення програмного забезпечення, опис алгоритму рішення задачі, проектування та опис інтерфейсу користувача, опис програми)28.04.095. Оформлення пояснювальної записки14.05.096. Оформлення графічної документації25.05.097. Оформлення електронних додатків до диплому27.05.098. Представлення дипломної роботи до захисту01.06.09

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

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

АНОТАЦІЯ


Система призначена для забезпечення автоматизації процесу формування тестів та всього процесу контролю знань у дистанційній навчальній системі. Вона передбачає автоматизацію процесу створення бази знань і автоматизацію генерації тестів. Система реалізована в середовищі Microsoft Visual Studio 2008 на мові C# з використанням новітньої технології .NET. Розділів 6, схем та малюнків 25, таблиць 7, бібліографічних посилань 27, загальний обсяг - 96.


АННОТАЦИЯ


Система предназначена для обеспечения автоматизации процесса формирования тестов и всего процесса контроля знаний в дистанционной системе обучения. Она предусматривает автоматизацию процесса создания базы знаний и автоматизацию генерации тестов. Система реализована в среде Microsoft Visual Studio 2008 на языке C# с использованием новейшей технологии .NET. Разделов 6, схем и рисунков 25, таблиц 7, библиографических ссылок 27, общий объем - 96.


THE SUMMARY

system is designed for automating the process of formation-ment tests and the entire process of verification of knowledge in distance education system. It automates the process of creating a knowledge base and automation generation tests. The system is implemented in Microsoft Visual Studio 2008 in C # using the latest technology .NET.6, circuits and figures 25, tables 7, bibliographic references 27, total amount - 96.

ЗМІСТ


ВСТУП8

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

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

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

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

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

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

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

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

.1 Тестологія як наука та основні її положення12

.2 Вимоги до діагностичних тестів14

.3 Основні форми і види тестів15

.4 Складання тестів і визначення їх області змісту17

.5 Принципи побудови автоматизованих систем контролю знань18

.6 Засоби автоматизованого контролю знань20

.7 Системи контролю знань в умовах Болонського процесу25

. ОГЛЯД МОЖЛИВОСТЕЙ МОВИ ПРОГРАМУВАННЯ Й СЕРЕДИ РОЗРОБКИ VISUAL STUDIO 200830

.1. Microsoft Visual Studio 200830

.1.1 Visual Studio 2008 Express Edition32

.2. Мови програмування .NET34

.2.1 Огляд двійкових файлів.NET35

.3.2 Мова програмування C#36

.3. Мова XML40

.3.1 Короткий огляд синтаксису40

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

.1 Мінімальні системні вимоги і технічна характеристика46

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

.3. Опис функціональних можливостей і інтерфейсу користувача програмного комплексу49

.3.1 Опис інтерфейсу серверної частини49

.3.2 Опис інтерфейсу редактора тестів51

.3.3 Проглядання результатів54

.3.4 Опис інтерфейсу клієнтської частини55

.4. Програмна реалізація та опис основних процедур і функцій розробленої системи57

.4.1 Опіс функціональної частини роботи сервера57

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

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

.1 Небезпечні і шкідливі виробничі чинники в інформаційно-обчислювальному центрі87

.2 Заходи щодо нормалізації шкідливих чинників89

.4 Пожежна безпека96

ВИСНОВКИ100

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


ВСТУП

програма тестування автоматизована дистанційне

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

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

Існують три основні сфери застосування тестування:

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

б) професійна підготовка і відбір - у зв'язку із збільшенням темпу зростання і ускладненням виробництва;

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

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

Як мова програмування для реалізації поставленого завдання була вибрана мова програмування С#, як середа розробки Microsoft Visual Studio 2008. Варто відзначити, що середа розробки Microsoft Visual Studio 2008 є абсолютно безкоштовною, але не дивлячись на безкоштовність, надає безліч зручних засобів для створення складних програмних продуктів.

Якщо сказати, що мова С# і пов'язана з ним середа .NET Framework є однією з найважливіших технологій для розробників за багато років, це не буде перебільшенням. .NET спроектована як нова середа, в рамках якої можна розробити практично будь-який додаток для Windows, тоді як С# - нова мова програмування, призначена спеціально для роботи з .NET. За допомогою С# можливо, наприклад, створити динамічну Web-страніцу, Web-службу XML, компонент розподіленого додатку, компонент доступу до бази даних, класичний настільний додаток Windows або навіть інтелектуальне клієнтське програмне забеспечення, що має засоби онлайнової і автономної роботи.


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


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


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


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


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

Початок робіт: 31.10.08. Закінчення робіт: 01.06.09.


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


Система розроблена в середовищі Microsoft Visual Studio 2008 Express Edition. База даних представлена у форматі Microsoft SQL Express Edition.

Склад розробленого програмного комплексу:

·TestServer.exe: сервер і редактор тестів, в якому створюватимуться тести, що містять питання і варіанти правильних відповідей;

·TestServerLib.dll: серверна бібліотека видаленої взаємодії клієнтської і серверної частини тестової програми.

·tests.mdf: файл бази даних тестів.

·TestClient.exe: оболонка, яка дозволяє завантажувати і використовувати створені тести;

·ClientLib.dll: клієнтська бібліотека видаленої взаємодії.

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


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


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


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

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

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

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

·IBM-сумісний комп'ютер, не нижче Pentium I-200ММХ, RAM-32Mb, SVGA-800*600*16bit

·Операційна система Windows 98/ME/2000/XP;

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


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


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

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

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

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

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


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


2.1 Тестологія як наука та основні її положення


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

Існують три основні сфери застосування тестування:

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

б) професійна підготовка і відбір - у зв'язку із збільшенням темпу зростання і ускладненням виробництва;

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

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

) вибір тесту (визначається метою тестування і мірою достовірності і надійності тесту);

) його проведення (визначається інструкцією до тесту);

) інтерпретація результатів (визначається системою теоретичних допущень щодо предмету тестування).

На всіх трьох етапах необхідна участь кваліфікованого психолога.

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

завдання закритої форми, ЗЗФ (multiple-choice item) (ТМВ - тест множинного вибору, завдання з вибором вірної/вірних відповіді/відповідей, виборчі тести - приведені найменування є термінами-дублетами основного);

завдання відкритої форми, ЗВФ (free response item, recall-tupe ts.) (відкриті завдання, завдання на доповнення, завдання з вільно конструйованою відповіддю, тест по методиці доповнення, методика відновлення, клоуз-тест - перелік дублетних найменувань);

завдання на встановлення відповідності, ЗВВ (matching item) (завдання на відповідність, тест перехресного вибору);

завдання на встановлення правильної послідовності, ЗВПП (тест на систематизацію, тест на угрупування).

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

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

кожне завдання має еталон правильної відповіді;

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

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

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

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

До характеристик тестових завдань відносяться:

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

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


2.2 Вимоги до діагностичних тестів


Виділяють п'ять загальних вимог до тестів контролю знань:

·валідність;

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

·простота;

·однозначність;

·надійність.

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

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

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

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

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


2.3 Основні форми і види тестів


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

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

В даний час найбільшого поширення набули наступні форми тестових завдань:

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

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

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

·форма на встановлення правильної послідовності.

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

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


2.4 Складання тестів і визначення їх області змісту


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

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

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

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

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

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

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

) задати обмеження і вибрати підходи до процесу розробки, створити план тесту і його специфікацію;

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

) провести пробне тестування і проаналізувати його результати;

) вибрати стандарти оцінювання;

) оцінити надійність і валідність тесту;

)кінцеве доопрацювання тесту і його паралельних форм.


.5 Принципи побудови автоматизованих систем контролю знань


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

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

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

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

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

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

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

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

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

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


.6 Засоби автоматизованого контролю знань


Інформатизація навчального процесу сприяє впровадженню нових організаційних форм і методів навчання. Доцільність застосування інформаційних технологій зумовлена:

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

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

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

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

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

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

·засоби надання навчальної інформації;

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

·засоби опрацювання, оформлення та презентації результатів самостійної роботи;

·засоби автоматизованого контролю знань;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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


2.7 Системи контролю знань в умовах Болонського процесу


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

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

Головні цілі Болонского процесу: (1998/99 - 2010). Створення системи чітких і зіставних кваліфікацій (зокрема, за рахунок введення додатків до дипломів - Diploma Supplement):

зростання зайнятості європейських громадян;

підвищення міжнародної конкурентноздатності європейської освіти. . Реформа систем вищої освіти:

перехід на 2-х рівневу систему підготовки: бакалавр і магістр;

доступ до другого циклу вимагає успішного завершення першого (тривалість не менш 3-х років).. Введення системи кредитних одиниць:

по типу європейської системи залікового перекладу ECTS;

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

студентів;

викладачів;

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

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

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

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

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

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

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

Пріоритетними напрямами державної політики щодо розвитку вищої освіти є:

·особистісна орієнтація вищої освіти;

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

·створення для громадян рівних можливостей у здобутті вищої освіти;

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

·запровадження освітніх інновацій та інформаційних технологій;

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

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

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

·інтеграція вітчизняної вищої освіти до європейського та світового освітніх просторів.

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

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

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

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

·піднесення вищої освіти України до рівня вищої освіти в розвинутих країнах світу та її інтеграція у міжнародне науково-освітнє співтовариство.

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

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

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

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

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


3. ОГЛЯД МОЖЛИВОСТЕЙ МОВИ ПРОГРАМУВАННЯ Й СЕРЕДИ РОЗРОБКИ VISUAL STUDIO 2008


3.1 Microsoft Visual Studio 2008


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

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

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

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

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

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


Рис. 3.1 Головне вікно Microsoft Visual Studio 2008


Посеред цього сімейства продуктів знаходяться версії Standard і Professional і більшість автономних продуктів (Visual Basic, Visual C#, Visual C++ и Visual J++).

3.1.1 Visual Studio 2008 Express Edition

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

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

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

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

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

3.2 Мови програмування .NET


Під час анонса платформи .NET на конференції 2000 Professional Developers Conference (PDC) доповідачі називали фірми, що працюють над створенням .NET-версій своїх компіляторів. На даний момент компілятори для створення .NET-версій додатків розроблялися більш ніж для 30 різних мов. Окрім чотирьох мов, що поставляються з Visual Studio.NET (C#, Visual Basic.NET, «Managed C » і Jscript.NET), очікуються .NET-версії Smalltalk, COBOL. Pascal, Python, Perl і безліч останніх відомих мов програмування. Спільна картина представлена на рис. 3.2.


Рис. 3.2 Всі компілятори, орієнтовані на .NET, генерують IL-інструкції й метадані


Двійкові файли .NET, для яких використовуються стандартні розширення DLL і ЕХЕ, по своєму внутрішньому вмісту не мають абсолютно нічого спільного із звичайними виконуваними файлами. Наприклад, файли DLL не надають свої методи в розпорядження додатків на комп'ютері. На відміну від компонентів СОМ двійкові файли .Net не описуються за допомогою коду IDL і реєструються в системному реєстрі. Проте, мабуть, найважливіша відзнака полягає в тому, що двійкові файли NET не містять залежних від платформи команд. Вміст двійкових файлів .NET - це платформено-незалежний «проміжна мова», яка офіційно називається Microsoft Intermediate Language (MSIL, проміжна мова Microsoft), або просто IL.


3.2.1 Огляд двійкових файлів.NET

Коли за допомогою компілятора для платформи .NET створюється модуль DLL або ЕХЕ, вміст цього модуля - це так звана збірка (assembly) на мові IL. Зборка містить код на «проміжній мові» - IL. Призначення IL концептуально аналогічно байт-коду Java - він компілюється в платформено-специфічні інструкції, лише коли це абсолютно необхідно. «Абсолютна необхідність» виникає тоді, коли до блоку інструкцій IL (наприклад, реалізації методу) звертається для використання середа виконання .NET.

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

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

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


3.3.2 Мова програмування C#

Спеціально для платформи .NET Microsoft була розроблена нова мова програмування С#. С# - це мова програмування, синтаксис якої дуже схожий на синтаксис Java (але не ідентичний йому). Наприклад, в С# (як в Java) визначення класу складається з одного файлу (*.cs), на відміну від C, де визначення класу розбите на заголовок (*.h) і реалізацію (*.срр). Проте називати С# клоном Java було б невірно. Як С#, так і Java засновані на синтаксичних конструкціях C . Якщо Java у багатьох відношеннях можна назвати очищеною версією С, то С# можна охарактеризувати як очищену версію Java.

Синтаксичні конструкції С# успадковані не лише від C, але і від Visual Basic. Наприклад, в С#, як і в Visual Basic, використовуються властивості класів. Як C, С# дозволяє проводити перевантаження операторів для створених вами типів (Java не підтримує ні ту, ні іншу можливість). С# - це фактично гібрид різних мов. При цьому С# синтаксично не менш (якщо не більш) чистий, чим Java, також простий, як Visual Basic, і володіє практично тією ж потужністю і гнучкістю, що і C . Основні особливості С#:

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

·Управління пам'яттю проводиться автоматично.

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

·У С# залишилася можливість перенавантажувати операторів, успадкованих від C . При цьому значна частина складнощів, що виникали при цьому, ліквідована.

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

·Також передбачена повна підтримка аспектно-орієнтірованних програмних технологій (таких як атрибути). Це дозволяє привласнювати типам характеристики (що багато в чому нагадує COM IDL) для опису в майбутньому поведінки даної суті.

Можливо, найважливіше, що необхідно сказати про мову С#, - це те, що він генерує код, призначений для виконання лише в середі виконання .NET. Наприклад, немає можливості використовувати С# для створення класичного Сом-сервера. Згідно термінології Microsoft код, призначений для роботи в середі виконання .NET, - це керований код (managed code). Двійковий файл, який містить керований файл, називається збіркою (assembly).

Версія 1.0

Проект C# був початий в грудні 1998 і отримав кодову назву COOL (C-style Object Oriented Language). Версія 1.0 була анонсована разом з платформою .NET у червні 2000 року, тоді ж з'явилася і перша загальнодоступна бета-версия; C# 1.0 остаточно вийшов разом з Microsoft Visual Studio .NET у лютому 2002 року.

Перша версія C# нагадувала по своїх можливостях Java 1.4, декілька їх розширюючи: так, в C# були властивості (що виглядають в коді як поля об'єкту, але що на ділі викликають при зверненні до них методи класу), індексатори (подібні до властивостей, але що приймають параметр як індекс масиву), події, делегати, цикли foreach, структури, що передаються за значенням, автоматичне перетворення вбудованих типів в об'єкти при необхідності (boxing), атрибути, вбудовані засоби взаємодії з неуправляємим кодом (DLL, COM) і інше.

Крім того, в C# вирішено було перенести деякі можливості C, відсутні в Java: беззнакові типи, перевизначення операцій (з деякими обмеженнями, на відміну від C ), передача параметрів в метод по засланню, методи із змінним числом параметрів, оператор goto. Також в C# залишили обмежену можливість роботи з покажчиками - в місцях коду, спеціально позначених словом unsafe і при вказівці спеціальній опції компілятору.

Версія 2.0

Проект специфікації C# 2.0 вперше був викладений Microsoft в жовтні 2003 року; у 2004 році виходили бета-версиі (проект з кодовою назвою Whidbey), C# 2.0 остаточно вийшов 7 листопада 2005 року разом з Visual Studio 2005 і .NET 2.0.

Нові можливості в версії 2.0

Часткові типи (розділення реалізації класу більш ніж на один файл). Узагальнені, або типи, що параметризуються (generics). На відміну від шаблонів C, вони підтримують деякі додаткові можливості і працюють на рівні віртуальної машини. В той же час, параметрами узагальненого типа не можуть бути вирази.

Нова форма ітегратора, що дозволяє створювати співпрограми за допомогою ключового слова yield, подібно Python і Руби.

Анонімні методи замикання, що забезпечують функціональність.

Оператор '??': return obj1 ?? obj2; означає (в нотації C# 1.0) return obj1!=null ? obj1 : obj2;.

Типи-значення (що позначаються знаком питання, наприклад, int? i = null;), що обнуляються ('nullable'), є ті ж самі типи-значення, лише можуть набувати також значення null. Такі типи дозволяють поліпшити взаємодію з базами даних через мову SQL.

Версія 3.0

У червні 2004 року Андерс Хейлсберг вперше розповів на сайті Microsoft про плановані розширення мови в C#3.0. У вересні 2005 року вийшли проект специфікації C# 3.0 і бета-версия C# 3.0, що встановлюється у вигляді доповнення до існуючих Visual Studio 2005 і .NET 2.0.

Нові можливості у версії 3.0В C# 3.0 з'явилися наступні радикальні додавання до мови:

·Ключові слова select, from, where, що дозволяють робити запр си з SQL, XML, колекцій і тому подібне (запит, інтегрований в мову, LINQ)

·Ініціалізація об'єкту разом з його властивостями:

Customer c = new Customer(); c.Name = "James";

перетвориться вc = new Customer { Name = "James" };

·Ламбда-висловлення:

listOfFoo.Where(delegate(Foo x) { return x.size > 10; });

перетвориться в.Where(x => x.size > 10);

·Тип локальної змінної, що мається на увазі: var x = "hello"; замість string x ="hello";

·Безіменні типи: var x = new { Name = "James" };

·Методи-розширення - додавання методу в існуючий клас за допомогою ключового слова this при першому параметрі статичної функції.

C# 3.0 буде сумісний з C# 2.0 по Msil-коду, що генерується; поліпшення в мові - чисто синтаксичні і реалізуються на етапі компіляції. Наприклад, багато з інтегрованих запитів LINQ можна вже зараз здійснити, використовуючи безіменні делегати у поєднанні з предикативними методами над контейнерами начеб List.FindAll и List.RemoveAll.


3.3 Мова XML <#"justify">(англ. eXtensible Markup Language - розширювана мова розмітки; рекомендована Консорціумом Усесвітньої павутини мова розмітки, що фактично є зводом спільних синтаксичних правил. XML призначена для зберігання структурованих даних (замість існуючих файлів баз даних), для обміну інформацією між програмами, а також для створення на його основі більш спеціалізованих мов розмітки (наприклад, XHTML), інколи званих словниками. XML є спрощеною підмножиною мови SGML.

Метою створення XML було забезпечення сумісності при передачі структурованих даних між різними системами обробки інформації, особливо при передачі таких даних через інтернет. Словники, засновані на XML (наприклад, RDF, RSS, MATHML, XHTML, SVG), самі по собі формально описані, що дозволяє програмно змінювати і перевіряти документи на основі цих словників, не знаючи їх семантики, тобто не знаючи смислового значення елементів. Важливою особливістю XML також є вживання так званих просторів імен (англ. namespace).


3.3.1 Короткий огляд синтаксису

Нижче наведений приклад простого кулінарного рецепту, розміченого з допомогою XML:

<?xml version="1.0" encoding="UTF-8"?>

<recipe name="хліб" prep_time="5 мин" cook_time="3 час">

<title>Простий хліб</title>

<ingredient amount="3" unit="стакан">Мука</ingredient>

<ingredient amount="0.25" unit="грам">Дрожи</ingredient>

<ingredient amount="1.5" unit="стакан">Тепла вода</ingredient>

<ingredient amount="1" unit="чайна ложка">Сіль</ingredient>

<Instructions>

<step> Змішати всі інгредієнти і ретельно замісити.</step>

<step> Закрити тканиною і залишити на одну годину в теплому приміщенні.</step>

<step> Замісити ще раз, покласти на деко і поставити в духовку.</step>

</Instructions>

</recipe>

Перший рядок Xml-документа називається оголошенням XML - це необязательная рядок, вказуючий версію стандарту XML (звичайно це 1.0), так-же тут може бути вказана кодування символів і зовнішні залежності. Остання частина цього Xml-документа складається з вкладених елементів, деякі з яких мають атрибути і вміст. Елемент зазвичай складається з того, що відкриває і закриваючого тегов (міток), що обрамували текст і інших елементів. Відкриваючий тег складається з імені елементу в кутових дужках, наприклад «step»; закриваючий тег складається з того ж імені в кутових дужках, але перед ім'ям ще додається коса межа, наприклад «/step». Вмістом елементу називається все, що розташоване між тим, що відкриває і закриваючим тегамі, включаючи текст і інші (вкладені) елементи. Нижче наведений приклад Xml-елемента, який містить відкриваючий тег, закриваючий тег і вміст елементу:

<step> Замісити ще раз, покласти на деко і поставити в духовку.</step>

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

<ingredient amount="3" unit="стакан">Мука</ingredient>

У наведеному прикладі в елементу «ingredient» є два атрибути: «amount», що має значення «3», і «unit», що має значення «стакан». З точки зору Xml-разметки, приведені атрибути не несуть жодного сенсу, а є просто набором символів. Окрім тексту елемент може містити інші елементи:

<Instructions>

<step> Змішати всі інгредієнти і ретельно замісити.</step>

<step> Закрити тканиною і залишити на одну годину в теплому приміщенні.</step>

<step> Замісити ще раз, покласти на деко і поставити в духовку.</step>

</Instructions>

В даному випадку елемент «Instructions» містить три елементи «step». XML не допускає елементів, що перекриваються. Наприклад, приведений нижче фрагмент некорректен, оскільки елементи «em» і «strong» перекриваються.

<!-- УВАГА! Некоректний XML! -->

<p>Звичайний <em>акцентований <strong> виділений і акцентований </em> виділений</strong></p>

Кожен Xml-документ повинен містити в точності один кореневий елемент, таким чином, наступний фрагмент не може вважатися коректним Xml-документом.

<!-- УВАГА! Некоректний XML! -->

<thing>Cущність №1</thing>

<thing>Cущність №2</thing>

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

<foo></foo>

<foo />

<foo/>

У XML визначено два методи запису спеціальних символів: заслання на суть і заслання по номеру символу. Суттю в XML називаються іменовані дані, зазвичай текстові, зокрема спецсимволи. Заслання на суть вказується в тому місці, де має бути суть і складається з амперсанда («»), імені суті і крапки з комою («;»). У XML є декілька зумовленої суті, таких як «lt» (посилатися на неї можна написавши «<») для лівої кутової дужки і «amp» (заслання - «») для амперсанда, можливо також визначати власну суть. Окрім запису за допомогою суті окремих символів, їх можна використовувати для запису текстових блоків, що часто зустрічаються. Нижче наведений приклад використання зумовленої суті для уникнення використання знаку амперсанда в назві:

<company-name>AT&amp;T</company-name>

Повний список зумовленої суті складається з («») < («<»), > («>»), apos; («'»), і " ("") - останні дві корисні для запису роздільників усередині значень атрибутів. Визначити свою суть можна в Dtd-документі. Інколи буває необхідно визначити неразривний пропуск, який в HTML позначається як в XML його записують &#160;

Посилання по номеру символу виглядає як заслання на суть, але замість імені суті вказується символ # і число (у десятковому або шестнадцатерічному запису), що є номером символу в кодовій таблиці Юнікод. Це звичайно символи, які неможливо закодувати безпосередньо, наприклад буква арабського алфавіту в Ascii-кодірованном документі. Амперсанд може бути представлений таким чином:

<company-name>AT&#038;T</company-name>

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

Переваги:

·XML(людино-орієнтирований) - це формат, одночасно зрозумілий і людині і комп'ютеру;

·XML підтримує Юнікод;

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

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

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

·XML також широко використовуєтся для зберігання й обробки документів;

·XML - формат, заснований на міжнародних стандартах;

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

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

·XML не залежить від платформи;

·XML є підмножиною SGML (який використовується з 1986 року). Вже накопичений великий досвід роботи з мовою і створені спеціалізовані застосування;

·XML не накладує вимоги на розташування символів на строці.

Недоліки

·Синтаксис XML надлишковий.

oРозмір XML документа істотно більше бінарного представлення тих же даних. У грубих оцінках величину цього чинника приймають за 1 порядок (у 10 разів).

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

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

oДля великої кількості завдань не потрібна вся потужність синтаксису XML і можна використовувати значно простіші і продуктивніші вирішення.

·XML не містить вбудованої в мову підтримки типів данних. В нёму нема понять «цеілих чисел», «строк», «дат», «булевих значень» і т.і.

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

oВираження не ієрархічних даних (наприклад графів) вимагає додаткових зусиль.

oКрістофер Дейт відзначав, що «XML є спробою заново винайти ієрархічні бази даних …».

·Простори імен XML складно використовувати і їх складно реалізовувати в XML парсерах;

·Існують інші, що володіють схожими з XML можливостями, текстові формати даних, які володіють вищою зручністю читання людиною.

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


4.1 Мінімальні системні вимоги і технічна характеристика


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

Як мова програмування для реалізації поставленого завдання була обрана C#.

Склад розробленого програмного комплексу:

·TestServer.exe: сервер і редактор тестів, в якому створюватимуться тести, що містять питання і варіанти правильних відповідей;

·TestServerLib.dll: серверна бібліотека видаленої взаємодії клієнтської і серверної частини тестової програми.

·tests.mdf: файл бази даних тестів.

·TestClient.exe: оболонка, яка дозволяє завантажувати і використовувати створені тести;

·ClientLib.dll: клієнтська бібліотека видаленої взаємодії.

Мінімальні системні вимоги:

·IBM-сумісний комп'ютер, не нижче Pentium I-200ММХ, RAM-32Mb, SVGA-800*600*16bit

·Операційна система Windows 95/98/ME/2000/XP;

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

Технічні характеристики програми:

·програма не вимагає інсталяції;

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

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


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



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


Рис. 4.2 Логіко-функціональна схема роботи тестової оболонки (клієнтська частина)


.3 Опис функціональних можливостей і інтерфейсу користувача програмного комплексу


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

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

Рис 4.3 Головна форма серверної частини програми


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

Рис 4.4 Головна форма серверної частини програми після запуску тесту


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


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

Для того що б створити новий тест, необхідно вибрати відповідний пункт меню головної форми серверної частини тестової програми (рис. 4.5).


Рис. 4.5 Головне меню тестової програми


Після чого запуститься модальна форма майстра створення нового тесту.

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


Рис 4.6 Перший крок майстра для створення тесту


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


Рис 4.7 Другий крок майстра для створення тесту


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


Рис. 4.8 Форма для завдання відповіді на питання тесту


Задавши необхідної кількості відповідей і натиснувши кнопку «Вихід» управління повертається до попередньої форми (рис 4.7), де можна буде додати ще питань з відповідями, або ж завершити створення тесту.

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

Редактор тесту є окремою формою зовнішній вигляд якої приведений на малюнку 4.9.


Рис. 4.9 Форма редагування створених тестів


Форма редагування тестів, також представлена у формі майстра, після вибору елементу стає активним наступний і так далі від вибору конкретного тесту для редагування до варіантів відповідей на питання (рис.4.10).


Рис. 4.10 Повний вид форми редагування тестів


4.3.3 Проглядання результатів

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

Рис 4.11 Повний вид форми проглядання результатів тестування


4.3.4 Опис інтерфейсу клієнтської частини

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


Рис. 4.12 Вікно реєстрації клієнтської частини тестуючої програми


Потім відбувається перехід безпосередньо до питань тесту.

Рис. 4.13 Основна форма клієнтської частини тестуючої програми


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


Рис 4.14 Результат тестування


.4 Програмна реалізація та опис основних процедур і функцій розробленої системи


.4.1 Опіс функціональної частини роботи сервера

Для роботи сервер тестуючої програми використовує таблиці users, tests _sessions, а і q структура яких приведена на рисунках 4.15, 4.16, 4.17, 4.18 і 4.19.


Рис. 4.15 Структура таблиці users


Рис. 4.16 Структура таблиці tests


Рис. 4.17 Структура таблиці tests_sessions


Рис. 4.18 Структура таблиці а


Рис 4.19 Структура таблиці q


Таблиця «users» потрібна для зберігання інформації про тих, що пройшли тест і має поля:

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

Поле name - текстове поле, що містить ім'я того, що проходить тест.

Поле gr - текстове поле, що містить групу того, що проходить тест.

Поле test_id - містить id тесту.

Поле points - кількість набраних очок.

Таблиця test призначена для зберігання імен створених тестів:

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

Поле name - текстове поле ім'я тесту, що містить.

Таблиця «tests_sessions» необхідна для збереження сесій тестування і містить наступні поля:

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

Поле test_id - ідентифікатор тесту, узятий з таблиці test.

Поле name - ім'я сесії тестування.

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

Таблиця «q» містить всі питання всіх створених тестів і складається з наступних полів:

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

Поле test_id - ідентифікатор тесту, якому належить питання.

Поле q - текстове поле, що містить текст питання.

Поле type - зарезервовано для можливості розширення.

Таблиця «а» містить відповіді на питання тестів і складається з наступних полів:

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

Поле а - текстове поле, що містить текст відповіді

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

Запуск сервера

Відразу після запуску програми і ініціалізації всіх елементів інтерфейсу, виконується закриття всіх незакритих сесій тестування для запобігання колізіям, оскільки в одну одиницю часу може бути запущена тільки одна сесія. Очищення виконується за допомогою функції flush_sess бібліотеки slib.void flush_sess(){(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "UPDATE test_sessions SET closed=1";.Open();.ExecuteNonQuery();.Close();

}

}

}

Потім виконується заповнення списку готових тестів за допомогою функції fill_test_list:void fill_test_list()

{l = new slib(Application.StartupPath);<int, List<string>> tests = l.get_tests();(KeyValuePair<int,List<string>> item in tests)

{li = new ListViewItem();.Tag = item.Key.ToString();.Text = item.Value[0];.SubItems.Add(item.Value[1]);.SubItems.Add(item.Value[2]);.Items.Add(li);

}

}

Функція fill_test_list одержує інформацію про тести за допомогою функції get_tests() бібліотеки slib, яка повертає словник, що містить необхідну інформацію про тести:Dictionary<int, List<string>> get_tests()

{<int, List<string>> tests = new Dictionary<int, List<string>>();(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "SELECT * FROM tests as t ORDER by t.id";.Open();dr = (SqlDataReader)cmd.ExecuteReader();(dr.Read())

{<string> l = new List<string>();.Add(dr["name"].ToString());cn2 = new SqlConnection(connStr);cmd2 = cn2.CreateCommand();.CommandText = "select count(*) from q where test_id=@test_id";.Parameters.Add("@test_id", dr["id"].ToString());.Open();sum_q = cmd2.ExecuteScalar().ToString();.Add(sum_q);.Close();cn3 = new SqlConnection(connStr);cmd3 = cn3.CreateCommand();.CommandText = "select sum(weight) from а WHERE test_id=@test_id";.Parameters.Add("@test_id", dr["id"].ToString());.Open();sum_weight = cmd3.ExecuteScalar().ToString();.Close();.Add(sum_weight);.Add(Convert.ToInt32(dr["id"].ToString()), l);

}.Close();

}

}tests;

}


Створення нового тесту

Додавання нового тесту в базу даних проводиться поетапно. Спершу записується ім'я тесту в таблицю test. Цим займається функція addTest бібліотеки slib, яка приймає як параметр строкове значення ім'я тесту, що містить, і що повертає як результат роботи ідентифікатор створеного тесту.int addTest(string name){id = 0;(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "INSERT INTO tests (name) VALUES (@name)";.Parameters.Add("@name", name);.Open();.ExecuteNonQuery();.CommandText = "SELECT MAX(id) FROM tests";= (int)cmd.ExecuteScalar();.Close();

}

}id;

}

Функція q_insert() бібліотеки slib служить для додавання питань тесту. Вхідними значеннями для неї є ідентифікатор тесту, і сам текст питання, а результатом її роботи - числовий ідентифікатор поміщеного в таблицю «q» питання.int q_insert(int test_id, string q, int type)

{q_id = -1;(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "INSERT INTO q (test_id, q, type) VALUES (@test_id, @q, @type)";.Parameters.Add("@test_id" test_id.ToString());.Parameters.Add("@q", q);.Parameters.Add("@type", type.ToString());.Open();.ExecuteNonQuery();.CommandText = "SELECT max(id) FROM q";_id = (int)cmd.ExecuteScalar();.Close();

}

}q_id;

}_insert() - ще одна необхідна для створення тесту функція бібліотеки slib, службовка для додавання відповідей до питань, які зберігаються в таблиці «а».int a_insert(int q_id, string а, string weight, int test_id)

{a_id = -1;(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "INSERT INTO а (q_id, а, weight test_id) VALUES (@q_id, @a, @weight, @test_id)";.Parameters.Add("@q_id" q_id.ToString());.Parameters.Add("@a", а);.Parameters.Add("@weight", weight);.Parameters.Add("@test_id" test_id);.Open();.ExecuteNonQuery();.CommandText = "SELECT max(id) FROM а";_id = (int)cmd.ExecuteScalar();.Close();

}

}a_id;

}

Редактор тестів

У редакторі тестів використовуються ще декілька функцій бібліотеки slib, які здійснюють не вставку нових даних в базу даних, а редагування тих, що вже існують. Так, наприклад, функція set_test_name(), що приймає як вхідні значення цифровий ідентифікатор тесту і нове ім'я, змінює запис name в таблиці tests по вказаному ідентифікатору.void set_test_name(int test_id, string name)

{(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "UPDATE tests SET name=@name WHERE id=@test_id";.Parameters.Add("@name", name);.Parameters.Add("@test_id" test_id.ToString());.Open();.ExecuteNonQuery();.Close();

}

}

}

А функція set_q_name робить теже дії, але тільки для питання тесту. Приймаючи як вхідні параметри числовий ідентифікатор питання і його новий текст.void set_q_name(int q_id, string name)

{(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "UPDATE q SET q=@name WHERE id=@q_id";.Parameters.Add("@name", name);.Parameters.Add("@q_id" q_id.ToString());.Open();.ExecuteNonQuery();.Close();

}

}

}

Також в бібліотеці slib присутні функції для видалення вже існуючих записів в таблицях бази даних тестів. Наприклад функція test_del() що приймає як вхідний параметр числовий ідентифікатор тесту, здійснює очищення відразу трьох таблиць бази даних.void test_del(int id)

{(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "DELETE FROM а WHERE test_id=@id";.Parameters.Add("@id", id.ToString());.Open();.ExecuteNonQuery();.CommandText = "DELETE FROM q WHERE test_id=@id";.ExecuteNonQuery();.CommandText = "DELETE FROM tests WHERE id=@id";.ExecuteNonQuery();.Close();

}

}

}

Програмна реалізація запуску сесії тесту

Після натиснення кнопки «Запустити тест» і ініціалізації об'єкту видаленої взаємодії відбувається запис поточної сесії із заданим ім'ям в базу за допомогою функції create_session() бібліотеки slib.int create_session(int test_id, string name)

{test_session = -1;(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "Insert into test_sessions (test_id, name, closed) VALUES(@test_id, @name,0)";.Parameters.Add("@test_id" test_id.ToString());.Parameters.Add("@name", name);.Open();.ExecuteNonQuery();.CommandText = "SELECT max(id) FROM test_sessions";_session = (int)cmd.ExecuteScalar();.Close();

}

}test_session;

}

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

Програмна реалізація проглядання результатів

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

{<List<string>> sess = new List<List<string>>();(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "SELECT * FROM test_sessions ORDER by id DESC";.Open();dr = (SqlDataReader)cmd.ExecuteReader();(dr.Read())

{<string> l = new List<string>();.Add(dr["id"].ToString());.Add(dr["name"].ToString());.Add(l);

}.Close();

}

}sess;

}

Для того, щоб безпосередньо подивитися результати тієї або іншої сесії тестування, необхідно вибрати необхідне ім'я сесії з наданого списку. Після вибору відбувається заповнення ListView форми результатами, це робиться за допомогою функції get_sess_info(), яка як вхідний параметр приймає цифровий ідентифікатор сесії.List<List<string>> get_sess_info(int sess_id)

{<List<string>> users = new List<List<string>>();(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "SELECT * FROM users WHERE sess_id=@sess_id ORDER by id DESC";.Parameters.Add("@sess_id" sess_id.ToString());.Open();dr = (SqlDataReader)cmd.ExecuteReader();(dr.Read())

{<string> l = new List<string>();.Add(dr["name"].ToString());.Add(dr["gr"].ToString());.Add(dr["points"].ToString());.Add(dr["max_points"].ToString());.Add(dr["test_id"].ToString());.Add(dr["id"].ToString());.Add(l);

}.Close();

}

}users;

}

Програмна реалізація клієнтської частини програми

Відразу після запуску клієнтської частини тестової програми користувачу надається можливість ввести інформацію про себе, без якої запуск сесії тесту для конкретного користувача, буде неможливий. Після успішного введення інформації, клієнтська частина одержує від серверної числовий ідентифікатор поточного тесту за допомогою функції start_test() беблиотеки видаленої взаємодії.int start_test(){test_id = -1;(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "SELECT test_id FROM test_sessions WHERE closed=0";.Open();_id = Convert.ToInt32(cmd.ExecuteScalar().ToString());.Close();

}

}test_id;

}

Повернення функцією start_test() позитивного значення означає успішний запуск сесії, після чого відбувається отримання списку питань з допомога функції get_all_q() бібліотеки видаленої взаємодії.List<List<string>> get_all_q(int test_id) {<List<string>> q = new List<List<string>>();(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "SELECT * FROM q WHERE test_id=@test_id ORDER by id";.Parameters.Add("@test_id" test_id.ToString());.Open();dr = (SqlDataReader)cmd.ExecuteReader();(dr.Read())

{<string> l = new List<string>();.Add(dr["id"].ToString());.Add(dr["q"].ToString());.Add(l);

}.Close();

}

} q;

}

Відповіді, на відміну від питань, виходять не одноразово. А при переході від одного питання до іншого. Відповідає за це функція get_a(), яка як вхідний параметр приймає числовий ідентифікатор поточного питання, а вдалим результатом її роботи є список відповідей. List<List<string>> get_a(int q_id){<List<string>> а = new List<List<string>>();(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "SELECT * FROM а WHERE q_id=@q_id ORDER by id";.Parameters.Add("@q_id" q_id.ToString());.Open();dr = (SqlDataReader)cmd.ExecuteReader();(dr.Read())

{<string> l = new List<string>();.Add(dr["id"].ToString());.Add(dr["а"].ToString());.Add(dr["weight"].ToString());

а.Add(l);

}.Close();

}

}а;

}

Після відповідей на всі питання тесту і висновку на екран результату тестування, за допомогою функції insert_result() бібліотеки видаленої взаємодії результати передаються на сервер, де і зберігаються в базу даних.void insert_result(string name, string gr, int points, int max_points, int test_id)

{(SqlConnection cn = new SqlConnection(connStr))

{(SqlCommand cmd = cn.CreateCommand())

{.CommandType = CommandType.Text;.CommandText = "SELECT id FROM test_sessions WHERE closed=0";.Open();sess_id = Convert.ToInt32(cmd.ExecuteScalar().ToString());.CommandText = "Insert into users (test_id, name gr,points,max_points, sess_id) VALUES(@test_id, @name,@gr,@points,@max_points,@sess_id)";.Parameters.Add("@test_id" test_id.ToString());.Parameters.Add("@name", name);.Parameters.Add("@gr", gr);.Parameters.Add("@points", points.ToString());.Parameters.Add("@max_points" max_points.ToString());.Parameters.Add("@sess_id" sess_id.ToString());.ExecuteNonQuery();.Close();

}

}

}


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


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

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

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


Зспп=Ззпспп мвсппобщ,


де

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

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

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

Зобщ - загальні витрати.

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


Ззпспп=tTчас.


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

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


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


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

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

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

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

o= QB/(75…85K),


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

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

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


to= 3502/(780,8) = 11,23 (люд-год).


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

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

tа = Q/(60…75K) а = 350/700.8=6,25 (люд-год).


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

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


tб= Q/(60…75K)б = 350/710.8=6,16 (люд-год).


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

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

п= Q/(60…75K)п = 350/720.8=6,18 (люд-год).


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

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

от=1.5 tAот,


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

Aот= Q/(40…50K)Aот = 350/(480.8)=9,12 (люд-год)

Звідси tот=1.59,12=13,68 (люд-год).

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

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

д= tдр+ tдо,


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

др= Q/(150…200K)др = 350/(1800.8) = 2,43 (люд-год)до=0.75tдр

tдо =0.752,43=1,82 (люд-год)


Звідси

д=2,43+1,82=4,25 (люд-год).


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

= 11,23 +6,25 +6,16 +6,18 +13,68+4,25 =47.75(люд-год).


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

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

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

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

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

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

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

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

Тобто 1408грн37,2%=520,96 грн

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


Ззпспп= 1408+520,96=1928,96 грн.


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


Змвспп часtэвм,


де

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

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

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


tеом = tп + tдо + tот ;еом =6,18 +1,82 +13,68 = 21,68 часа


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

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


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


де

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

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

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

Загальна кількість днів в році - 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 іокл,


де

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

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

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


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


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


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


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

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


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


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


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


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


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


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


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


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

Змвспп = 3 21,68= 65,04 грн.


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

Загальні витрати - 643


Зспп=Ззпспп мвсппзаг

Зспп =1928,96+65,04+643=2637 грн.


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

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

Ц = Зспп + Р,


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

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


Ц = 2637 +395,55 =3032,55 грн.


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

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

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

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


ЕК = $700 * 7,7-3032,55 = 2357,45 грн.

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


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

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

Закон України «Про охорону праці» - містить ряд статей: «Загальні положення», «Гарантії прав громадян на охорону праці», статті про охорону праці жінок, недосконало літніх, інвалідів, «Організацію охорони праці», «Стимулювання охорони праці», «нормативно-правові акти по охороні праці», «Державне управління охороною праці», «Державний і цивільний контроль за охороною праці», «Відповідальність за порушення законодавства про охорону праці».

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

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

В Україні затверджено положення про складання державних нормативних актів по охороні праці ДНАОП. Це норми, інструкції, вказівки і інші види державних нормативних актів по охороні праці обов'язкові по виконанню і керівництво підприємствами і установами, на які розповсюджується сфера дії цих актів.

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

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

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

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

6.1 Небезпечні і шкідливі виробничі чинники в інформаційно-обчислювальному центрі


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

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

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

Сильний шум викликає труднощі з розпізнаванням слухових сигналів, знижує швидкість сприйняття кольори, гостроту зору, зорову адаптацію, порушує сприйняття візуальної інформації, зменшує на 5 - 12% продуктивність праці. Тривала дія шуму з рівнем звукового тиску 90 дБ знижує продуктивність праці на 30 - 60 %.

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

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

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

Системний блок комп'ютера має напруги сигналів ТТЛ рівнів (1,+4 В), цифрові і аналогові мікросхеми харчуються постійними напругами ±5 і ±12В, які виходять шляхом перетворення змінної напруги 220В в блоці живлення. Блок живлення містить в собі схеми перетворення напруги, схеми стабілізації і схему захисного відключення при короткому замиканні. Оскільки корпус комп'ютера виконаний з металу, то існує небезпека пробою фази на корпус. Монітори сучасних комп'ютерів практично завжди виготовляються з пластика, тому, не дивлячись на велику напругу, присутню в моніторі, поразка струмом людини практично виключена.


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


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

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

) робити короткі перерви для відпочинку (через 30 хвилин роботи)

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

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

Для регулювання мікроклімату в лабораторії АСУ використовується кондиціонер.

Для зменшення дії навантаження на зорову систему і для зменшення дії монотонності роботи дисплей розміщуємо на столі або підстаІОЦі так, щоб відстань від очей до екрану не перевищувала 700 мм (оптимальна відстань 460-500 мм). У загальному випадку відстань спостереження вибирається залежно від висоти (Н) і кутових розмірів (a) знаку: L = H / tg (a / 2) - відстань від очей до дисплея. Для букв і цифр рекомендується значення a від 15 до 18. Екран дисплея по висоті розташовуємо так, щоб кут між нормаллю до центру екрану і горизонтальною лінією погляду складав 200. У горизонтальній площині кут спостереження екрану не повинен перевищувати 600. Клавіатуру розміщуємо на стіл або підставку так, щоб висота розташування клавіатури по відношенню до підлоги складала 650-720 мм. При розміщенні пульта на стандартному столі заввишки 750 мм необхідно використовувати крісло з регульованою висотою сидіння (380-450мм) і підставку для ніг. Бажано використання стільця з жорсткою спинкою замість м'якого, щоб уникнути сутулості оператора.

Документ (бланк) для введення даних розташовуємо на відстані 450-500мм від очей оператора, переважно зліва, при цьому кут між екраном дисплея і документом в горизонтальній площині повинен складати 30-400. Кут нахилу клавіатури встановлюється рівним 150 .

Екран дисплея, документи і клавіатуру розташовуємо так, щоб перепад яскравості поверхонь, залежний від їх розташування щодо джерела світла, не перевищував 1:10 (рекомендоване значення 1:3). При номінальних значеннях яскравості зображення на екрані 50-100 кд. м3 освітленість документа повинна складати 300-500 лк.

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

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

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

Коефіцієнти віддзеркалення стелі, стін, підлоги відповідно 70%, 50% і 30%. Робоча поверхня знаходиться на висоті 1 м від підлоги. Оскільки приймаємо систему загального освітлення люмінесцентними лампами, то висота свеса рівна 0,7м.

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

Джерело світла в приміщенні - люмінесцентні лампи, висота підвіски світильників 2,9 м, відстань між світильниками 1 м. У даному приміщенні якість освітлення відповідає нормативним даним, приведеним в таблиці 6.1


Таблиця 6.1

Оптимальні параметри освітленості приміщень з ЕОМ

Характеристика зорової роботиРозділ і підрозділКонтраст об'єкту з фономХарактеристика фонуШтучне освітлення, лкПри комбінованому освітленніПри загальномуСередньої точності 0,5-1,0IV ввеликийсвітлий400150

Вибираємо світильники ОД з газорозрядними лампами;

Тип проводки - закрита в будівельних конструкціях під штукатуркою, дроти - АППВ, вимикач нормального виконання;

Світильники розташовані паралельними рядами;

Характеристика виконуваної роботи - розряд IV, підрозділ-в (контраст - великий, фон - світлий). Мінімальне загальне освітлення 150 лк.

Система освітлення - комбінована: загальне рівномірне плюс місцеве;

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

Необхідний коефіцієнт запасу (по пилу, що виділяється) 1,6;

Найбільш відношення відстані між світильниками до висоти підвіски світильників : 1,6;


1,6*2 = 3,2 м; 1.2 м;


Відстань між світильниками по ширині приймемо рівним довжині світильника плюс 0.05 м;

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


0.30.3 * 3,2 = 0.96 м;


Відстань між крайніми рядами по ширині приміщення:


28-2* 0,96 = 6,08 м;


Число рядів, яке можна розташувати між крайніми рядами по ширині приміщення:


6,08/1.2 - 1 = 4;


Загальне число рядів світильників по ширині:


4 + 2 = 6;


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

9 - 2* 0.96 = 7,08 м;


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


7,08/3,2-1 =1:


Загальне число рядів світильників по довжині


1 + 2 = 3;


Загальне число рядів світильників, які необхідно встановити по довжині і ширині:


6 * 3 = 18;


Коефіцієнти віддзеркалення від стін () і стель () - по забарвленню стін і стель: 56%, 73%;

Коефіцієнт, що враховує рівномірність освітлення залежно від типу світильників і відношення : 1.13;

Площа підлоги освітлюваного приміщення:


9 * 8 = 72 кв.м;


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

72 /(2,8* 17) = 1.5;


Коефіцієнт використання світлового потоку: 0.53;

Розрахунковий (потрібний) світловий потік однієї лампи:


150* 1.6 *1.13 *72/(18*0.53) = 2046 лм;


По напрузі в мережі і світловому потоку однієї лампи 2046 лм по довідкових таблицях (ГОСТ 2239-70) визначаємо необхідну потужність електролампи ЛД40-4 40 Вт. У кожному світильнику є лампа ЛД40-4 з світловим потоком 2340 лм;

Дійсна освітленість:


2340 * 18 * 0.6 / (1,6 * 1.13 * 72) = 171,48 лк.


Згідно вище приведеному розрахунку освітленість відповідає нормі.

Залежно від енерговитрат організму ДОСТ 12.1.005-88 ССБТ Повітря робочої зони, загальні санітарно-гігієнічні вимоги передбачає три категорії робіт. Відповідно до ДОСТ, робота оператора ЕОМ може бути віднесена до легкої фізичної роботи категорії 1б з енерговитратами організму 138-172 Дж/с або 120-150 ккал/час. Слід пам'ятати, що в теплий період року середньодобова температура зовнішнього повітря складає вище +100С, у холодний період року середньодобова температура зовнішнього повітря складає -100С і нижче. Оптимальна відносна вологість коливається в межах 40-60%.

Оптимальні норми параметрів мікроклімату з урахуванням категорії даної роботи наступні: у холодний період року температура повітря 21-230С, швидкість руху повітря не більше 0,1 м/с; у теплий період року температура повітря повинна складати 22-240С, швидкість руху повітря не більше 0,2м/с. Допустимі значення відносної вологості в холодний період року 75% і 60% в теплий період року при температурі 270С. Для забезпечення даних умов мікроклімату в холодну пору року застосовують систему центрального опалювання, а в теплу пору року кондиціонери.

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

) Оскільки напруга в мережі перетвориться в окремому блоці (блоці живлення), то необхідно виконати його в закритому металевому корпусі з'єднати його з корпусом всього пристрою в цілому;

) Заземлити корпус всього комп'ютера, за допомогою заземлюючого канала в електричному шнурі або окремим заземлюючим дротом;

) Застосувати електричний шнур з подвійною ізоляцією.

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

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

При цьому вертикальні електроди розміщуються на відстані а=5 м один від одного. Розрахунок проводимо для однорідної землі, де ґрунтом є суглинок, з питомим опором ґрунту р=100 Ом /м.

Заземлюючий елемент виконується з вертикальних стрижньових електродів завдовжки lв = 2,5 м, діаметром d = 12 мм, верхні кінці яких з'єднуються за допомогою горизонтальних електродів - сталевих смуг сумарною довжиною

= 2 ´ A + 2 ´ B; (5.6)

L = 2 ´ 20 + 2 ´ 15 = 70 м. (5.7)


і перетином 254 мм. Горизонтальні електроди укладені на глибину t0 = 0,8 м. Кількість вертикальних електродів n = 70/5 = 14 шт.

В цілях профілактики рекомендується один раз в рік визначати опір ґрунту.


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


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

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

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

Джерелами спалаху у ІОЦ можуть бути:

·електронні схеми від ЕОМ, де в результаті різних порушень утворюються перегріті елементи;

·прилади, пристрої електроживлення, кондиціонування повітря;

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

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

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

По категорії пожежної небезпеки, будівля ІОЦ відноситься до категорії «В». Для виготовлення будівельних конструкцій використовуються: цеглина, залізобетон, скло, метал і інші негорючі матеріали. У ІОЦ протипожежні перешкоди у вигляді перегородок з матеріалів, що не згорають, встановлюють між машинними залами. У самій лабораторії АСУ розміщені засоби первинної пожежегасінні (вогнегасники, ящик з піском).

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

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

Для виявлення початкової стадії загоряння і сповіщення службу пожежної охорони використовують системи автоматичної пожежної сигналізації (АПС), система спінклер. Крім того, вони можуть самостійно приводити в дію установки пожежегасінні, коли пожежа ще не досягла великих розмірів. Системи АПС складаються з пожежних серен, ліній зв'язку і приймальних пультів (станцій). Також в лабораторії АСУ розміщені кнопки пожежної сигналізації.

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

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

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

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

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


ВИСНОВКИ


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

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

Як мова програмування для реалізації поставленого завдання була обрана С#, як середовище розробки Microsoft Visual C# 8.0 Express Edition. Середовище розробки Microsoft Visual C# 8.0 Express Edition, не дивлячись на безкоштовність, надає всі необхідні засоби для розробки запланованого функціонала, при цьому спростивши створення як інтерфейсу користувача, так і реалізацію функціонально-інструментальної частини програми. Використані при розробці програмні продукти є безкоштовними і тому впровадження розробленого програмного продукту є економічно ефективним.

Якщо сказати, що мова С# і пов'язана з ним середа .NET Framework є одній з найважливіших технологій для розробників за багато років, це не буде перебільшенням. .NET спроектована як нова середа, в рамках якої можна розробити практично будь-яке застосування для Windows, тоді як С# - нова мова програмування, призначена спеціально для роботи з .NET. За допомогою С# можливо, наприклад, створити динамічну Web-сторінку, Web-службу XML, компонент розподіленого застосування, компонент доступу до бази даних, класичний настільний додаток Windows або навіть інтелектуальне клієнтське програмне забезпечення, що має засоби онлайнової і автономної роботи.

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


1.Алексей В. Технология XSLT. - BHV - Санкт-Петербург. - 544 с.

2.Алексей Дубовцев. Microsoft .Net в подлинеке. - БВХ-Петербург, 2004. - 704с.

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

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

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

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

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

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

.Ричард Стивенс. Протоколы TCP/IP. Практическое руководство. - BHV - Санкт-Петербург, 2003. - 672 с.

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

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

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

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

.Филимонов А. Построение мультисервисных сетей Ethernet. - БВХ-Петербург, 2007. - 592 с.

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

.Эрик Аллен. Типичные ошибки проектирования. - Питер, 2003. - 224 с.

.Эрик Гуннерсон. Введение в C#. - Питер, 2001. - 304 с.

18.#"justify">19.#"justify">.#"justify">.#"justify">.#"justify">.#"justify">.#"justify">.http://www. Dotnetgrains.ru


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

Больше работ по теме:

КОНТАКТНЫЙ EMAIL: [email protected]

Скачать реферат © 2017 | Пользовательское соглашение

Скачать      Реферат

ПРОФЕССИОНАЛЬНАЯ ПОМОЩЬ СТУДЕНТАМ