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

Изучение и характеристика основных методов проектирования структуры информационной базы и модульной структуры программного обеспечения для защиты аттестационных работ. Разработка клиентского приложения для мобильных устройств на базе платформы Android.

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

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

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

Размещено на http://www.allbest.ru/

Оглавление

Реферат

Список сокращений

Введение

1. Серверная часть приложения

1.1 Исследование традиционной технологии проведения защит аттестационных работ

1.2 Структура базы данных MySQL

1.3 Модульная структура сайта и его возможности

1.4 Взаимодействие сервера и клиентского приложения

2. Методики проведения голосования

2.1 Индивидуальные предпочтения и правила голосования

2.1.1 Правило Борда

2.1.2 Правило Кондорсе

2.2 Голосования в два тура и с последовательным выбыванием

2.3 Правила голосования с подсчетом очков

2.4 Среднее арифметическое

2.5 Методики голосования, выбранные для реализации

3. Клиентская часть приложения

3.1 Текстовый формат обмена данными JSON в Java

3.2 Модульная структура и взаимодействие элементов в приложении

Реферат

Список ключевых слов: Android, PHP, Java, учебный процесс, аттестационные работы, сетевые и интернет ресурсы, голосование.

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

Список сокращений

АЗАР - Автоматизированная система информационной поддержки Защиты Аттестационных Работ

СУБД - система управления базами данных

ОС - операционная система

ПО - программное обеспечение

Введение

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

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

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

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

Для достижения вышеуказанной цели в работе ставятся и решаются следующие задачи:

1. Исследуется и документируется общепринятая технология проведения защит аттестационных работ.

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

3. Спроектированная структура информационной базы переносится в реляционную базу данных MySQLи на основе модульной структуры ПО создается сайт, являющийся серверной частью комплекса приложений.

4. Выбираются релевантные методики проведения голосования для предоставления дополнительных возможностей в процессе принятия коллегиальных решений по оценке аттестационных работ.

5. Для обеспечения мобильности и упрощенного доступа к базе данных разрабатывается клиентское приложение для мобильных устройств на базе платформы Android.

6. Осуществляется тестовое внедрение разработанного программно-информационного комплекса.

Помимо настоящего введения работа состоит из трех глав.

В первой главе разбирается структура информационной базы, и внутреннее взаимодействие модулей сервера.

Во второй главе рассматриваются методики проведения голосования и выбираются подходящие для достижения поставленной цели.

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

1. Серверная часть приложения

1.1 Исследование традиционной технологии проведения защит аттестационных работ

На факультете математики и компьютерных наук с 2009-2010 г. была введена балльно-рейтинговая система оценки и учета успеваемости студентов.

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

Суть балльно-рейтинговой системы:

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

· для того чтобы объективно оценить результаты работы студента, в учебный процесс вводится система разнообразных по форме и содержанию контрольных мероприятий (контрольных точек), каждое из которых оценивается определенным числом баллов (как правило, контрольными точками являются коллоквиумы, тестирования и др., за успешное выполнение которых студенту начисляются баллы);

· итоговый рейтинг по дисциплине представляет собой сумму баллов, полученных студентом за прохождение контрольных точек, включая финальные (зачет/экзамен);

· итоговый контроль (зачет/экзамен) является частью общей оценки, а баллы по нему - частью итогового рейтинга, который накапливается при изучении дисциплины.

Основные задачи балльно-рейтинговой системы оценки успеваемости студентов:

1. повышение мотивации студентов к активной систематической работе в процессе изучения учебной дисциплины, подготовки и защиты курсовой работы, квалификационной работы, магистерской диссертации, прохождения практики и т.п.;

2. обеспечение текущего систематического контроля за выполнением и усвоением студентами учебного материала;

3. получение дифференцированной оценки знаний, умений и навыков студентов;

4. обеспечение объективности и прозрачности оценки знаний, умений и навыков студентов;

5. повышение конкурсности, состязательности студентов в процессе обучения;

6. формирование у студентов навыков организации и проведения самостоятельной работы;

7. обеспечение взаимозачета оценок при реализации внутренней и международной мобильности студентов.

В основе балльно-рейтинговой системы лежит несколько понятий:

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

· фактический рейтинг - это баллы, которые студент набирает по результатам текущего, рубежного и итогового контроля (зачета/экзамена);

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

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

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

Реализация поставленной цели требует более детального рассмотрения процесса оценивания защитыквалификационныхработ. Данный процессвключает в себя следующие оцениваемыеконтрольные точки:

1. Балл руководителя (не более 55 баллов) - оценка научного руководителя.

2. Представление на конференции или семинаре (до 15 баллов)- оценивается выступление студента и степень готовности его аттестационной работы на момент проведения конференции или семинара.

3. Оформление работы (до 15 баллов) - проверяется соответствие оформления аттестационной работы общепринятым нормам.

4. Доклад на защите (не более 15 баллов) - оценивается выступление студента и степень готовности его аттестационной работы на момент проведения защиты.

После прохождения вышеперечисленных этапов определяется конечный балл и выставляется итоговая оценка.

1.2 Структура базы данных MySQL

Баллы, накопленные студентом в процессе защиты квалификационной работы, удобно хранить и обрабатывать в базе данных.

Основываясь на следующих факторах, для хранения и обработки данных выбрана СУБД MySQL:

· многопоточность и поддержка нескольких одновременных запросов;

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

· записи фиксированной и переменной длины;

· ODBC драйвер;

· гибкая система привилегий и паролей;

· интерфейс с языками С, Perlи PHP;

· быстрая работа и масштабируемость.

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

· Аттестационные работы - хранит информацию о студентах, пишущих аттестационные работы и содержит следующие поля: ID, ФИО студента, Курс и группа, Тема работы, Руководитель, Балл руководителя, Представление на конференции или семинаре, Оформление, Доклад на защите (Рис.1.).

Рис. 1. Структура таблицы «Аттестационные работы»

· Пользователи - хранит информацию о пользователях. Содержит следующие поля: ID, ФИО пользователя, Логин, Пароль, Права доступа (Рис. 2.).

Рис. 2. Структура таблицы «Пользователи»

· Баллы на конференции - баллы, выставленные членами аттестационной комиссии во время проведения конференции. Содержит поля: ID, ФИО члена комиссии, Балл, ФИО студента (Рис. 3.).

Рис. 3. Структура таблиц «Баллы на конференции» и «Баллы на защите»

· Баллы на защите - баллы, выставленные членами аттестационной комиссии во время доклада на защите. Содержит поля: ID, ФИО члена комиссии, Балл, ФИО студента (Рис. 3.).

· Методика голосования - хранит одно из числовых значений: «0», «1» либо «2», определяющих выбор или отсутствие методики голосования (Рис. 4.).

Рис. 4. Методика голосования

На основании данных, хранящихся в таблицах «Баллы на конференции» и «Баллы на защите» и при условии, что включена одна из методик проведения голосования, определяется балл, хранящийся в таблице «Аттестационные работы» в полях «Представление на конференции или семинаре» и «Доклад на защите» соответственно. В случае, когда отключена методика голосования таблицы «Баллы на конференции» и «Баллы на защите» не используются.

1.3 Модульная структура сайта и его возможности

Сайт «Квалификационные работы студентов» разработан для отображения и управления содержимым таблиц. Он позволяет добавлять, удалять, редактировать данные о студенте и его аттестационной работе, фильтровать уже имеющиеся данные при этом сортируя фильтр. Так же производить регистрацию новых пользователей с установкой для них соответствующих прав доступа к информации.

На рисунке 5 в виде блок-схем изображена общая структура сайта.

Рис. 5. Сайт в блок-схемах

На главной странице сайта располагается таблица со списком всех студентов с указанием их курса и группы, темой аттестационной работы, ФИО руководителя и текущими баллами (Рис. 6.).

Рис. 6. Главная страница сайта

На главной странице также располагаются поля авторизации пользователя и поиск с сортировкой. По прохождению авторизации и при наличии соответствующих прав доступа, становятся доступны функции редактирования, удаления и добавления данных в таблицу «Аттестационные работы» (Рис. 7.). программный android мобильный

Рис. 7. Главная страница сайта после авторизации администратора

Нового студента можно добавить двумя способами:

· Ввод данных в соответствующие поля на странице сайта.

· Загрузка из файла Excel, сохраненного с расширением *.csv (разделители - запятые) - позволяет добавлять неограниченное число студентов одновременно.

При нажатии на кнопку редактирования открывается дополнительное окно с данными выбранного пользователя (Рис. 8.).

Рис. 8. Редактирование записи

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

1.4 Взаимодействие сервера и клиентского приложения

Для предоставления данных клиентскому приложению из баз данных используются отдельные PHP скрипты, не связанные между собой и с сайтом. Их основное назначение - возврат результатов запроса из базы данных в JSON-представлении данных (Листинг 1.)[5].

Листинг 1. Получение всех строк из базы данных «Аттестационные работы»

<?php //Получение всех строк из БД

$response = array();

require 'db_connect.php';

$db = new DB_CONNECT(); //подключениекБД

$result = mysql_query("SELECT * FROM students ORDER BY fio") or die(mysql_error()); //SQLзапросданныхизтаблицыstudents

if (mysql_num_rows($result) > 0) {

$response["students"] = array();

while ($row = mysql_fetch_array($result)) { //формируемJSON-текст

$stud = array();

$stud["id"] = $row["id"];

$stud["fio"] = $row["fio"];

$stud["year_group"] = $row["year_group"];

$stud["theme"] = $row["theme"];

$stud["supervisor"] = $row["supervisor"];

$stud["ball_sup"] = $row["ball_sup"];

$stud["ball_conference"] = $row["ball_conference"];

$stud["ball_clearance"] = $row["ball_clearance"];

$stud["ball_report"] = $row["ball_report"];

array_push($response["students"], $stud);

}

$response["success"] = 1; //SQL-запросвернулнеnull

echojson_encode($response);

} else {

$response["success"] = 0; //SQL-запросвернулnull

$response["message"] = "No students found";

echojson_encode($response);

}

?>

Результатом выполнения такого PHPскрипта, при условии, что в базе данных students всего одна запись [5]:

{

"students":[{

"id":"1",

"fio":"СорокинА.",

"year_group":"5МОАИС",

"theme":"Модуль учета посещаемости студентов академической группы",

"supervisor":"БучацкаяВ.В.",

"ball_sup":"0",

"ball_conference":"15",

"ball_clearance":"0",

"ball_report":"0"

}],

"success":1

}

В случае отсутствия записей будет возвращена следующая строка:

{

"success":0,

"message":"No students found"

}

По данному принципу построены PHP-скрипты получения данных о выбранном студенте и изменения данных в таблице «Аттестационные работы».

Отдельно рассмотрим систему реализации методик голосования. При попытке изменения данных в таблице «Аттестационные работы» PHP-скрипт проверяет, включена ли одна из методик голосования, или нет. Для этого производится обращение к единственной записитаблицы «Методика голосования» и проверяется какое значение она имеет. Если значение «0», значит методика не выбрана и данные в таблице «Аттестационные работы» изменяются на переданное от клиента значение. Если значение «1», значит выбрана смешанная методика голосования и PHP-скрипт производит голосование, по окончании которого данные в таблице «Аттестационные работы» изменяются на полученное в результате значение.

Если же значение «2», то выбрана методика среднее арифметическое и PHP-скрипт вычисляет его, основываясь на данных хранящихся в таблице «Баллы на конференции» и «Баллы на защите» (Листинг 2.).

Листинг2. Реализация среднего арифметического

//SQL-запрос всех выставленных баллов студенту с именем $name_stud

$res_balls = mysql_query("SELECT * FROM balls_with_conf WHERE name_stud='$name_stud'");

$tmp = 0;

while(list($a0, $a1, $a2, $a3) = mysql_fetch_row($res_balls)) {

$tmp = round(($tmp + $a2)/2);

}

2. Методики проведения голосования

2.1 Индивидуальные предпочтения и правила голосования

Правило голосования решает задачу коллективного принятия решения, в котором несколько индивидуумов, будем называть их выборщиками, должны совместно выбрать один лучший объект из нескольких объектов, будем называть их кандидатами, относительно которых их мнения могут расходиться [1].

Предположим, что конечное множествоMвыборщиков должно выбрать одного кандидата из конечного множества кандидатовS.Предположим, что индивидуальные мнения (предпочтения) не допускают случаев безразличия. Это предположение не приводит к существенным потерям общности.

Будем считать, что каждый из выборщиков имеет свой индивидуальный порядок предпочтений кандидатов. Если выборщик предпочитает кандидата кандидату, будем обозначать это следующим образом: . Индивидуальный порядок предпочтений выборщика представляет собой некоторую перестановку кандидатов, в которой кандидаты расположены в порядке их предпочтения данным выборщиком. Совокупность индивидуальных порядков предпочтений всех выборщиков назовем профилем предпочтений выборщиков.

Основная задача - выбор лучшего представителя из множества с точки зрения сообщества выборщиков.

Если кандидатов только два, то правило голосования большинством голосов бесспорно является наиболее справедливым методом определения победителя. Каждый из выборщиков имеет один голос и отдает свой голос за кандидата, который по его мнению является наилучшим. Победителем объявляется тот кандидат, который получил больше половины голосов выборщиков (мажоритарная избирательная система). Можно спорить о силе победы одного кандидата над другим, степени ее убедительности (например, со счетом 51:49 или 87:13), но сам факт предпочтения одного кандидата перед другим сомнения не вызывает [1].

Пусть теперь количество кандидатов больше, чем два. Здесь точно так же можно провести голосование (один выборщик - один голос), и если какой-то из кандидатов набрал больше половины от общего числа голосов выборщиков, то обычно он и объявляется победителем.

Однако, в случае, когда , даже выбор победителя по правилу строгого большинства может вызвать сомнения в справедливости результата. Рассмотрим следующий простой пример:пусть имеется 29 выборщиков и три кандидата , и . Пусть у 15 выборщиков индивидуальные порядки предпочтений имеют вид , а у остальных 14 выборщиков индивидуальные порядки предпочтений имеют вид . Таким образом, профиль предпочтений выборщиков представляется в следующем виде:

15: ,

14: .

Здесь кандидат набирает 15 голосов выборщиков, т.е. больше половины голосов, и становится победителем по правилу строгого большинства. Но,по сути, лучшим может быть посчитан кандидат , поскольку ему отдадут голос 14 выборщиков, и у остальных 15 выборщиков он тоже занимает высокое второе место. Тем более, если у этих 15 выборщиков степень предпочтения кандидата кандидату существенно меньше, чем степень предпочтения кандидата кандидату и, тем более, кандидату у 14 выборщиков, имеющих индивидуальный порядок предпочтения .

Еще более сложный случай возникает, когда кандидатов больше двух, и ни один из кандидатов не набирает больше половины числа голосов выборщиков.

Достаточно популярным правилом голосования является правило относительного большинства (ОБ). Каждый выборщик отдает свой голос одному кандидату, и победителем объявляется кандидат, получивший больше всех голосов.

Рассмотрим следующий пример: пусть имеется 21 выборщик и 4 кандидата, обозначим их как ,, и . Пусть 3 выборщика имеют индивидуальные порядки предпочтений .Пусть, далее, 5 выборщиков имеют одинаковые индивидуальные порядки предпочтения ,7 выборщиков имеют индивидуальные порядки предпочтения , и оставшиеся6 выборщиков -. Таким образом, профиль предпочтений выборщиков относительно заданных четырех кандидатов представляется в следующем виде:

3: ,

5: ,

7: ,

6: .

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

2.1.1 Правило Борда

При заданном профиле предпочтений выборщиков кандидат, занимающий последнее место в индивидуальном порядке предпочтений выборщика, получает от этого выборщика ноль очков. Если он занимает предпоследнее место, то получает одно очко и т.д. Кандидат, занимающий первое место в индивидуальном порядке предпочтений выборщика, получает от него очко (при общем числе кандидатов ). Победителем объявляется кандидат с наибольшей суммой очков [1].

В рассматриваемом примере 2 с четырьмя кандидатами, за первое место они получают по три очка, за второе место - два очка, за третье место - одно очко и за последнее четвертое место - ноль очков. Обозначим через количество очков, набираемое кандидатом по правилу Борда. Тогда в примере 2 кандидат получает по три очка у восьми выборщиков за первое место в их индивидуальных порядках предпочтений и больше не получает очков, потому что у остальных 13 выборщиков он стоит на последнем месте, т.е. в сумме кандидат набирает очка. Остальные кандидаты получают соответственно , и . Таким образом, победителем по Борда в рассматриваемом примере является кандидат , набирающий очков больше всех других кандидатов. На втором месте кандидат с 38-ю очками, а кандидат , побеждающий по правилу относительного большинства, по правилу Борда занимает только третье место с результатом в 24 очка. Таким образом, победитель по правилу относительного большинства может иметь очень посредственный результат по правилу Борда.

2.1.2 Правило Кондорсе

Для заданного профиля предпочтений выборщиков победителем по Кондорсе называется кандидат (с необходимостью единственный), который побеждает любого другого кандидата при парном сравнении по правилу большинства, т.е. для всякого кандидата , , выборщиков, предпочитающих кандидата кандидату , больше, чем тех, кто считает, что кандидат предпочтительнее кандидата[1].

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

Обозначим через количество выборщиков, у которых в индивидуальном порядке предпочтений кандидат предпочтительнее кандидата . В примере 2 кандидата кандидату предпочитают 8 выборщиков, т.е. , а кандидата кандидату предпочитают 13 выборщиков, т.е.(Таблица 1.).

Таблица 1. Значения для примера 2

-

8

8

8

13

-

10

21

13

11

-

14

13

0

7

-

Из таблицы видно, что кандидат выигрывает у каждого из остальных кандидатов в попарном сравнении по правилу большинства. Действительно, 13 выборщиков предпочитают кандидата кандидату (), в то время как только 8 выборщиков предпочитают кандидата кандидату (), т.е. кандидат побеждает кандидата . Если бы в голосовании участвовали только кандидаты и, то победил бы кандидат с тринадцатью голосами против восьми у кандидата . Аналогично, 11 выборщиков предпочитают кандидата кандидату против десяти выборщиков, предпочитающих кандидата кандидату . Наконец, четырнадцать выборщиков предпочитают кандидата кандидату против семи выборщиков, у которых обратное предпочтение.

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

2.2 Голосования в два тура и с последовательным выбыванием

Рассмотрим два популярных правила голосования:

· Правило голосования в два тура - сначала проводится обычный тур голосования. Каждый выборщик подает свой голос за одного наиболее предпочтительного для него кандидата. Если какой-либо кандидат набирает строгое большинство голосов, то он и объявляется победителем. В противном случае проводится второй тур голосования по правилу большинства для двух кандидатов, набравших наибольшее число голосов в первом туре.

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

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

Рассмотрим следующий пример: пусть имеются 4 кандидата и 23 выборщика. Профиль предпочтений выборщиков имеет следующий вид.

6: ,

7: ,

8: ,

2: .

Отметим вначале, что здесь по правилу Борда за первое место в индивидуальных порядках предпочтений выборщиков кандидаты получают по три очка, за второе место они получают по два очка, за третье место кандидаты получают по одному очку, а за четвертое место кандидаты очков не получают. Таким образом, в данном примере по правилу Борда кандидаты набирают следующие очки: ,, и , и победителем по Борда является кандидат , набирающий больше всех очков.

Этот же кандидат является здесь и победителем по Кондорсе (Таблица 2.).

Таблица 2. Значения для примера 3

6

16

8

17

16

15

7

7

13

15

8

10

Из таблицы 2 видно, что кандидат уверенно побеждает в попарном сравнении каждого из других кандидатов: кандидата со счетом 17:6, кандидата со счетом 16:7, кандидата со счетом 15:8.

Итак, в данном примере кандидат является победителем по Кондорсе и уверенно побеждает по правилу Борда, т.е. является лучшим из кандидатов.

Рассмотрим теперь, как работают правила голосования в два тура и с последовательным выбыванием.

В первом туре голосования кандидаты получают следующие количества голосов: ,, и . Таким образом, максимальное число голосов набирает кандидат , но он не набирает строгого большинства голосов, поэтому как по правилу голосования в два тура, так и по правилу голосования с последовательным выбыванием проводится второй тур голосования.

Во втором туре голосования по правилу в два тура остаются кандидаты и, набравшие в первом туре больше голосов, чем остальные кандидаты. После проведения второго тура голосования (в отсутствие кандидатов и), кандидат получает голосов, а кандидат получает голосов, и по правилу голосования в два тура побеждает кандидат . Заметим, что кандидат является худшим кандидатом по правилу Борда - он набирает по правилу Борда меньше всех голосов .

Итак, по правилу голосования в два тура в данном примере побеждает кандидат, худший по Борда, а в первом туре голосования выбывает кандидат - победитель по Борда и победитель по Кондорсе одновременно.

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

2.3 Правила голосования с подсчетом очков

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

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

Очки, полученные каждым кандидатом у всех выборщиков, суммируются, и победителем объявляется кандидат с максимальной суммой очков.

Правило Борда является частным случаем правила голосования с подсчетом очков, т.к. оно получается при выборе

, , , … , .

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

, ,

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

2.4 Среднее арифметическое

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

Пусть имеется объектов (кандидатов) и экспертов (выборщиков). У каждого эксперта есть свой индивидуальный строгий порядок предпочтений объектов. Эксперты назначают очки каждому объекту согласно своему предпочтению либо в балльной шкале (например, от 0 до 100 баллов), либо в числовой шкале (например, числа от 0 до 10), отражая в своих оценках относительную степень своих предпочтений каждого объекта. Чем больше степень предпочтения эксперта относительно объекта, тем выше его оценка этого объекта.

Пусть - оценка, данная -м экспертом -му объекту, , . После этого обычно вычисляется оценка каждого объекта в виде среднего арифметического индивидуальных оценок:

(1)

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

Члены группы экспертов могут использовать, явно или неявно, разные принципы и системы начисления очков. У разных экспертов могут быть разные масштабы измерения (единицы измерения) и точки отсчета.

Таким образом, даже столь простая и привычная процедура, как использование среднего арифметического индивидуальных оценок, приводит к различным затруднениям, поэтому на практике проведение экспертиз - это достаточно серьезное мероприятие. После того, как экспертная комиссия сформирована, фиксируется процедура ее работы, т.е. способ экспертного оценивания и способ выражения экспертами своих оценок, например, анонимный опрос или открытое обсуждение. Далее в соответствии с принятой процедурой каждый эксперт выставляет оценки объектам, после чего производится обработка и анализ результатов экспертизы. Прежде всего оценивается согласованность оценок разных экспертов. Иногда мнения сильно расходятся. Для устранения таких расхождений прибегают к различным процедурам обмена мнениями. Проводится анализ точек зрения экспертов, оценка компетентности экспертов по их оценкам объектов и корректировка групповых оценок с учетом компетентности экспертов. Если полученные результаты не дают возможности принять решение, то экспертиза производится повторно. Обычно достаточно трех туров. Так работает, например, известный метод проведения экспертиз Дельфи.

2.5 Методики голосования, примененные в дипломной работе

У каждого метода голосования есть свои достоинства и недостатки, а так же области применения. Вследствие чего были выбраны две методики голосования:

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

· среднее арифметическое оценок.

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

1. Отрезок с возможными значениями баллов делится на три группы: a, b и c (например, если у нас отрезок от 0 до 15, то a=[0; 5], b=(5; 10], c=(10; 15]) .

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

3. Применяется правило относительного большинства среди групп. Если возникает равенство среди набравших наибольшее число баллов групп, то они все переходят во второй раунд.

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

3. Клиентская часть приложения

3.1 Текстовый формат обмена данными JSON в Java

JSON - текстовый формат обмена данными, основанный на JavaScript [7]. Не смотря на происхождение от JavaScriptявляется языком независимым и может использоваться практически с любым языком программирования.

JSON-текст представляет собой одну из двух структур:

· Набор пар “ключ”: “значение” - может быть реализовано как объект, запись, структура, словарь, хэш-таблица, список с ключом или ассоциативный массив.

· Упорядоченный набор значений - может быть реализовано как массив, вектор, список или последовательность.

Языку программирования Java, для работы с JSON необходима сторонняя библиотека, после подключения которой становятся доступны следующие классы, необходимые для обработкиJSONсообщений полученных от сервера [4]:

· JSONObject - класс реализующий JSONValue (может представлять три примитива: boolean, number и string) и интерфейс IMap(String, IJSONValue) таким образом, чтобы с его парами «ключ:значение» можно было обращаться как со словарем (Рис. 9.).

· JSONArray - наследует интерфейсы IVector (IJSONValue) и IIterable(IJSONValue), предоставляющие методы итерации элементов в массиве и обновления его содержимого.

· JSONParser - проверяет на валидностьJSON код.

· JSONException - указывает на проблему с APIJSON.

Рис. 9. Общий вид JSONObject

На примере клиентской программы рассмотрим некоторые ключевые моменты работы Javaс JSON сообщениями. Перед обращением к PHP-скрипту для получения списка всех студентов из таблицы «Аттестационные работы» необходимо назначить JSONParser. Далее получаем данные от сервера, проверяя их на валидность, и сохраняем их в переменной типа JSONObject. И после чего необходимо проверить, успешно ли получены данные и есть ли записи в таблице (Листинг 3.) [2].

Листинг 3. Использование JSON в клиентском приложении

//создаем JSONParser

JSONParserjParser = newJSONParser();

//получаем данные с сервера и проверяем их на валидность

JSONObjectjson = jParser.makeHttpRequest(url_all_students, "GET", params);

try {

// получаем SUCCESS тег для проверки статуса ответа сервера

int success = json.getInt(TAG_SUCCESS);

if (success == 1) {

// студенты найдены

// получаем массив из Студентов

students = json.getJSONArray(TAG_STUDENTS);

//производим обработку данных с сервера

}else {

//студенты не найдены

}

} catch (JSONExceptione) { //выводим код ошибки

e.printStackTrace();

}

3.2 Модульная структура и взаимодействие элементов в приложении

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

Нарисунке10изображенпроектприложенияввидеблоксхемы.

Рис.10.Проектприложения

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

Рис. 11. Главное меню приложения

Размещено на Allbest.ru


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

  • Разработка клиент-серверного игрового приложения на примере игры в шашки для мобильных устройств на базе операционной системы Android. Обзор мобильных платформ. Экраны приложения и их взаимодействие. Графический интерфейс, руководство пользователя.

    курсовая работа [2,6 M], добавлен 15.06.2013

  • Анализ популярных игровых приложений. Жанр – аркады с геймплеем Runner. Получение продукта, ориентированного на людей, использующих мобильные устройства на базе Android, и предназначенный для развлечения пользователей. Визуальная составляющая приложения.

    дипломная работа [742,7 K], добавлен 10.07.2017

  • Google Android как программный стек для мобильных устройств, который включает операционную систему, программное обеспечение промежуточного слоя и пользовательские приложения. Структура платформы и ее основные элементы: ядро, программы, каркас приложений.

    реферат [600,4 K], добавлен 08.01.2015

  • Разработка программного обеспечения для платформы Android версии 2.3: информационное приложения для поклонников футбольной команды, с возможностью просмотра событий, статистики и иной информации о команде и ее успехах. Листинг JsonDataManager.java.

    дипломная работа [4,1 M], добавлен 24.04.2013

  • Обзор особенностей операционной платформы для мобильных телефонов, смартфонов и коммуникаторов. История обновлений и модифицированные версии. Прошивка устройств. Приборы на платформе Android. Изучение основных достоинств операционной системы Android 4.2.

    реферат [885,8 K], добавлен 19.10.2015

  • Электронные носители и их преимущества. Создание приложения электронного журнала для учета посещаемости и выполнения студентами лабораторных работ для мобильных устройств на базе Android. Автоматизация заполнения журнала, упрощение ведения учета.

    курсовая работа [681,5 K], добавлен 13.06.2017

  • Архитектура и история создания операционной системы Android. Язык программирования Java. Выбор средства для реализации Android приложения. Программная реализация Android приложения. Проведение тестирования разработанного программного обеспечения.

    курсовая работа [167,8 K], добавлен 18.01.2017

  • Анализ деятельности группы компаний "Инрэко ЛАН". Общая характеристика, основы проектирования и разработка операционной системы Android. Этапы разработки программного игрового приложения с использованием физики. Скриншоты, отображающие игровой процесс.

    отчет по практике [2,7 M], добавлен 19.07.2012

  • Современное состояние рынка мобильных приложений. Основные подходы к разработке мобильных приложений. Обоснование выбора целевой группы потребителей приложения. Этапы проектирования и разработки мобильного приложения для операционной системы Android.

    курсовая работа [987,1 K], добавлен 27.06.2019

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

    дипломная работа [2,7 M], добавлен 03.04.2015

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