Организация работ по сопровождению и продвижению растрового графического редактора GIMP

Курсовая работа по предмету «Информатика»
Информация о работе
  • Тема: Организация работ по сопровождению и продвижению растрового графического редактора GIMP
  • Количество скачиваний: 5
  • Тип: Курсовая работа
  • Предмет: Информатика
  • Количество страниц: 23
  • Язык работы: Русский язык
  • Дата загрузки: 2014-10-09 01:41:45
  • Размер файла: 40.1 кб
Помогла работа? Поделись ссылкой
Информация о документе

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

Если Вы являетесь автором текста представленного на данной странице и не хотите чтобы он был размешён на нашем сайте напишите об этом перейдя по ссылке: «Правообладателям»

Можно ли скачать документ с работой

Да, скачать документ можно бесплатно, без регистрации перейдя по ссылке:

Федеральное агентство по рыболовству
Федеральное государственное бюджетное образовательное учреждение
высшего профессионального образования
«Астраханский государственный технический университет»
Разработка и предоставление образовательных услуг в области среднего, высшего и дополнительного профессионального образования,
послевузовского образования; воспитательная и научно-исследовательская работа сертифицированы DQS и ГОСТ Р по ISO 9001:2008

Факультет среднего профессионального образования



Курсовая работа на тему:

«Организация работ по сопровождению и продвижению растрового графического редактора GIMP »



Специальность
230701 Прикладная информатика (по отраслям)

Квалификация выпускника
Техник-программист

Форма обучения
Очная



Работу выполнил(ла):
Студент(ка) группы ДКЕ–41 _____________

Руководитель: _____________
Дата проверки: «___»______ 2014 г.

Дата защиты: «___»______ 2014 г.
Работа защищена с оценкой: _____________

Подписи членов комиссии: _____________ ___________
(Фамилия И.О.)
_____________ ___________
(Фамилия И.О.)



Астрахань 2013

Оглавление
Введение 3
1.Описание предметной области 5
2.Обоснование актуальности темы 8
3.Выбор и обоснования использования технических средств 9
4.ОПИСАНИЕ ПРОГРАММЫ 12



























Введение
Актуальностью данной темы является то, что тематические тесты позволяют быстро и объективно оценить уровень знаний ученика по определённой теме или в определённой области науки. Они также позволяют оценить большого количества людей за малый промежуток времени.
Язык программирования - это искусственный язык, являющийся промежуточным при переходе от человеческого к машинным двоичным кодам, они делятся на языки программирования высокого и низкого уровней, причем языки программирования высокого уровня являются более близкими к естественному человеческому языку по сравнению с языками низкого уровня. К языкам высокого уровня относятся: фортран, Basic, Pascal, C++, Алгол и сотни других. Все эти языки применяются для написания программного обеспечения для ПК.
С++ это компилируемый статически типизированный язык программированияобщего назначения.C++ широко используется для разработки программного обеспечения, являясь одним из самых популярных языков программирования. Область его применения включает создание операционныхсистем, разнообразных прикладных программ, драйверовустройств, приложений для встраиваемых систем, высокопроизводительных серверов, а также развлекательных приложений (игр). Синтаксис C++ унаследован от языка C. Одним из принципов разработки было сохранение совместимости с C. Тем не менее, C++ не является в строгом смысле надмножеством C; множество программ, которые могут одинаково успешно транслироваться как компиляторами C, так и компиляторами C++, довольно велико, но не включает все возможные программы на C.
Задачи:
• изучить теоретический материал по теме написание тематических тестов в С++.
• Изучить практическое состояние проблемы по написанию тематических тестов.
• Выбрать средство разработки программы.
• Создать тестирующую программу для оценки знаний обучающегося.
• Протестировать программу на работоспособность.
Целью данной курсовой работы является создать тестирующую программу по теме «С++» для объективной оценки учащихся.

1. Описание предметной области
В настоящее время в области разработки и применения информационных технологий и систем имеется большая потребность в информатиках-прикладниках, обладающих развитыми компетенциями системных аналитиков и проектировщиков, которые способны формализовывать постановки задач автоматизации и информатизации прикладных процессов в различных предметных областях и участвовать в процессе создания и использования информационных систем на всех стадиях жизненного цикла.
Для построения качественных образовательных стандартов большое значение имеет их ориентация на реальные профессиональные стандарты, определяющие компетентностные и квалификационные требования к выполняемым работам ИТ-специалистами.
В этом плане направление подготовки кадров квалификации техник программистпо специальности «Прикладная информатика» обеспечивает формирование таких ключевых компетенций специалиста по информационным системам, как:
• проведение системного анализа прикладной области, формулирование требований к автоматизации и информатизации решения прикладных задач и их реализации с помощью специфических для этой области информационно-коммуникационных технологий;
• управление информационными ресурсами и знаниями для информатизации предприятий и организаций;
• проектная, организационно-управленческая, производственно-технологическая и аналитическая работа на различных стадиях жизненного цикла создания и эксплуатации информационной системы;
• осуществлять перечисленными видами деятельности как в организациях, разрабатывающих информационно-коммуникационные технологии, так и в организациях, их внедряющих и эксплуатирующих.
Выпускникисреднего профессионального учебного заведения по направлению «Прикладная информатика» способен решать широкий круг задач создания, внедрения, сопровождения и эксплуатации информационных систем в различных прикладных областях, реализуя связующие и интегрирующие функции во взаимодействии заказчиков автоматизации обработки информации и инженерного персонала, решающего технические задачи. При этом бакалавры прикладной информатики в большей степени ориентированы на проектно-технологическую работу, а магистры на организационно-управленческую, аналитическую и исследовательскую деятельность.
Одним из важных конкурентных преимуществ данного направления является сильная составляющая государственных образовательных стандартов и учебных планов, связанная с глубоким изучением студентами дисциплин конкретной прикладной области применения информационно-коммуникационных технологий и разработки проектов информатизации и автоматизации решения прикладных задач.
Разработка Федерального государственного образовательного стандарта 3-поколения по направлению «Прикладная информатика» на основе изложенных принципов обеспечит в полной мере реализацию требований профессионального стандарта «специалист по информационным системам» и высокую конкурентоспособность на рынке труда выпускаемых практических специалистов.
Система деканата вышла на новый уровень оценивания учащихся система компьютерного тестирования (СКТ), которое за маленькое количество времени может более точно оценить знание студента, сформированность общих и профессиональных компетенций. Для этого нужно пройти тест с десятью вопросами и четырьмя вариантами ответа. После прохождения теста оценка будет определятся по сумме набранных баллов и выводится на экран,

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


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

Основные достоинства С++:

>>>Поддерживаются различные стили и технологии программирования, включая традиционное директивное программирование, ООП, обобщённое программирование, метапрограммирование (шаблоны, макросы).
>>>Предсказуемое выполнение программ является важным достоинством для построения систем реального времени. Весь код, неявно генерируемый компилятором для реализации языковых возможностей (например, при преобразовании переменной к другому типу), определён в стандарте. Также строго определены места программы, в которых этот код выполняется. Это даёт возможность замерять или рассчитывать время реакции программы на внешнее событие.
>>>Автоматический вызов деструкторов объектов при их уничтожении, причём в порядке, обратном вызову конструкторов. Это упрощает (достаточно объявить переменную) и делает более надёжным освобождение ресурсов (память, файлы, семафоры и т. п.), а также позволяет гарантированно выполнять переходы состояний программы, не обязательно связанные с освобождением ресурсов (например, запись в журнал).
>>>Пользовательские функции-операторы позволяют кратко и ёмко записывать выражения над пользовательскими типами в естественной алгебраической форме.
>>>Язык поддерживает понятия физической (const) и логической (mutable) константности. Это делает программу надёжнее, так как позволяет компилятору, например, диагностировать ошибочные попытки изменения значения переменной. Объявление константности даёт программисту, читающему текст программы дополнительное представление о правильном использовании классов и функций, а также может являться подсказкой для оптимизации. Перегрузка функций-членов по признаку константности позволяет определять изнутри объекта цели вызова метода (константный для чтения, неконстантный для изменения). Объявление mutable позволяет сохранять логическую константность при использовании кэшей и ленивых вычислений.
>>>Используя шаблоны, возможно создавать обобщённые контейнеры и алгоритмы для разных типов данных, а также специализировать и вычислять на этапе компиляции.
>>>Возможность имитации расширения языка для поддержки парадигм, которые не поддерживаются компиляторами напрямую. Например, библиотека Boost.Bind позволяет связывать аргументы функций.
>>>Возможность создания встроенных предметно-ориентированных языков программирования. Такой подход использует, например библиотека Boost.Spirit, позволяющая задавать EBNF-грамматику парсеров прямо в коде C++.
>>>Используя шаблоны и множественное наследование можно имитировать классы-примеси и комбинаторную параметризацию библиотек. Такой подход применён в библиотеке Loki, класс SmartPtr которой позволяет, управляя всего несколькими параметрами времени компиляции, сгенерировать около 300 видов «умных указателей» для управления ресурсами.
>>>Кроссплатформенность: стандарт языка накладывает минимальные требования на ЭВМ для запуска скомпилированных программ. Для определения реальных свойств системы выполнения в стандартной библиотеке присутствуют соответствующие возможности (например, std::numeric_limits <T>). Доступны компиляторы для большого количества платформ, на языке C++ разрабатывают программы для самых различных платформ и систем.
>>>Эффективность. Язык спроектирован так, чтобы дать программисту максимальный контроль над всеми аспектами структуры и порядка исполнения программы. Ни одна из языковых возможностей, приводящая к дополнительным накладным расходам, не является обязательной для использования — при необходимости язык позволяет обеспечить максимальную эффективность программы.
>>>Имеется возможность работы на низком уровне с памятью, адресами.
>>>Высокая совместимость с языком C, позволяющая использовать весь существующий C-код (код на C может быть с минимальными переделками скомпилирован компилятором C++; библиотеки, написанные на C, обычно могут быть вызваны из C++ непосредственно без каких-либо дополнительных затрат, в том числе и на уровне функций обратного вызова, позволяя библиотекам, написанным на C, вызывать код, написанный на С++).












4.ОПИСАНИЕ ПРОГРАММЫ
Программа тестирования должна считать вопросы из файла, затем в цикле задавать очередной вопрос, предлагать варианты ответов и получать от сту-дента номер выбранного им варианта. Эта же программа должна оценивать ответы студентов: за каждый правильный ответ студенту начисляется I балл. Баллы суммируются, и после прохождения всего теста выставляется оценка по следующему правилу: если правильных ответов менее 5, то оценка — 2; если правильных ответов 5 или б, то оценка — 3; четверка выставляется за 7 или 8 правильных ответов, а 5 можно получить, если ответишь правильно на 9 или 10 вопросов.
Принцип инкапсуляции требует объединить все данные об одном вопросе в единую структуру, можно использовать один из контейнеров STL, например вектор.
Непосредственно считывать вопросы из файла и размещать их в элементах
вектора мы не можем, т. к. определили макет с разделителями. Поэтому для
ввода вариантов ответа нам потребуется символьный массив, куда мы будем
считывать варианты ответов. Далее будем заносить их в массив answer
структуры соответствующего элемента вектора. Оформим процедуру чтения
как функцию, параметром которой будет наш вектор. Тем самым мы инкапсулируем все, что касается чтения из файла вопросов в одном месте, и в дальнейшем нам будет проще вносить изменения.
В функции нужно обратить внимание на несколько важных моментов:
1 мы не закрываем файл — т. к. переменная from является локальной, при
выходе из функции система сама его закроет;
2 поскольку в конце второй строки в каждом вопросе у нас стоит символ

("новая строка"), мы считываем правильный ответ методом getline.
Для этого необходимо изменить определение поля right в структуре
Questions на char right, т. к. требуется место для нуля;
3 при вводе правильного ответа в строке А мы опять прописали стандарт-
ный разделитель явным образом, т. к. иначе считывание просто не вы-
полняется.
Первое, самое очевидное улучшение — возмож-
ность добавлять в файл вопросы. Когда вопросов станет много, нам потре-
буется из множества вопросов выбирать некоторое ограниченное количест-
во, например, 10 или 15. Мы уже писали подобную функцию. Это количество должно быть параметром, который можно настраивать от запуска к запуску. Параметр естественно нужно хранить в отдельном файле настроек, который мы назовем test.ini. Для этого потребуется написать две функции: одна записывает настройки в файл, другая их считывает.
Второе улучшение — кодирование (шифрование) файла вопросов. Если
файл так и будет храниться в текстовом виде, то его всегда можно будет
просмотреть и/или распечатать на принтере стандартными средствами опе-
рационной системы. Тогда вся система тестирования становится абсолютно
бесполезной, т, к. любой студент, заранее зная ответы на вопросы, естест-
венно, ответит на "отлично". Поэтому надо зашифровать (закодировать)
в файле вопросов по крайней мере вторую строку каждого вопроса, содер-
жащую информацию о вариантах ответа и номер правильного ответа, При
чтении вопроса его придется расшифровывать. Эти два действия лучше вы-
делить в отдельные функции — что позволит нам заменять их другими, если
шифр будет раскрыт.
Кроме ввода вопросов нужна еше функция просмотра вопросов на экра-
не по одному. В этой функции мы постепенно сможем добавлять реализа-
цию операций редактирования файла вопросов. Первой реализуемой опера-
цией пусть будет операция удаления показанного на экране вопроса. Опе-
рация совершенно необходимая, поскольку вопрос или ответы к нему могут
быть введены неправильно, поэтому эту запись надо удалить. Можно бу-
дет добавить также операцию замены показанного вопроса на новый. Для
объединения всего этого "хозяйства" в единую программу нам потребуется
главная программа-меню. Таким образом, в нашей (уже достаточно боль-
шой) программе тестирования требуется реализовать следующий набор
функций:
1. Главная функция-меню.
2. Функция для обработки файла настроек.
3. Функция записи файла вопросов. Вызывает функцию кодирования.
4. Функции кодирован и я -декодирования.
5. Функция чтения файла вопросов в вектор. Эта функция будет исполь-
зоваться в нескольких других функциях. Вызывает функцию декодирова-
ния.
6. Функция просмотра и редактирования. Вызывает функцию чтения.
7. Функция выборки конкретного теста. Вызывает функцию чтения.
8. Функция тестирования. Вызывает функцию выборки.
В будущем нам еще понадобится целая подсистема администрирования,
в которой надо будет реализовать функции обработки списка пользователей:
функции регистрации нового пользователя и назначение ему логина и па-
роля, просмотра и обработки списка пользователей, идентификации поль-
зователя при тестировании, сохранения и просмотра результатов тестирова-
ния и т. д. А пока напишем главную функцию-меню. Само меню, очевидно,
представляет собой массив строк, который задает предоставляемые про-
граммой возможности:
С каждым пунктом меню, кроме пункта "Выход", должна быть связана со-
ответствующая функция. После возврата из этой "рабочей" функции на
экран опять надо выдавать меню. Так как в стандартном C++ нет никаких
специальных средств для работы непосредственно с экраном, нам придется
использовать стандартный поток cout. Сначала реализуем функцию полной
очистки экрана. Такая функция пригодится нам во многих случаях, поэтому
нам надо написать отдельную функцию. Тут мы поступим просто: выведем
на экран 25 символов
:
Манипулятор flush используется для принудительного освобождения буфе-
ра вывода. Функция вывода на экран меню тоже проста. Она получает параметр -вектор строк меню, выводит меню на экран и запрашивает у пользователя ввод номера пункта. Для выравнивания по центру экрана строк меню мы использовали строковую константу из 29 пробелов. Теперь можно написать главную функцию. Основу ее составляет оператор переключатель.
Как видим, программа очень проста. Естественно, русские строки при вы-
воде надо перекодировать. Для отладки программы нам нет необходимости
иметь все вызываемые функции. Мы можем использовать функцию-
заглушку, выводящую на экран сообщение.
Наша программа ввода вопросов осуществляет "одноразовый" ввод. Если мы сейчас попытаемся ввести новый вопрос в файл question.txt, то окажется, что ранее записанные вопросы исчезнут. Программа записывает новый вопрос в начало файла, стирая то, что уже было записано. Это очень неудобно. Вообщето с файлом вопросов необходимо выполнять разнообразные операции: добавлять вопросы в файл, удалять от дельные вопросы или группы вопросов, заменять вопрос и/или варианты ответов. Все эти операции являются совершенно стандартными при работе с базами данных, однако потоки C++ — это не система управления базой данных, они намного проще. Поэтому все эти операции требуется реализовать.
Памятуя о том, что программы создаются постепенно, сначала реализуем
операцию добавления вопросов в файл. Это можно сделать, если открыть
файл question.txt в режиме добавления - надо просто заменить строку
объявления потока в программе ввода вопросов
of stream to ("с: /tests/question. txt", ios_base: :app) ;
Вся остальная программа остается без изменения. Константа арр определена
в базовом классе ios__base библиотеки ввода/вывода, что и подчеркивает
операция глобального доступа. В этом классе определены и другие констан-
ты, определяющие режимы открытия файла.
Названия констант — почти "говорящие", поэтому их назначение, за от-
дельными исключениями, понятно:
1 in — открыть файл для ввода. По умолчанию в этом режиме открывается
ВХОДНОЙ поток if stream;
О out — открыть файл для вывода. По умолчанию в этом режиме открыва-
ется выходной поток ofstream;
О арр — открыть для добавления. Так можно открывать либо выходной по-
ток ofstream, либо двунаправленный поток fstream;
О trunc — открыть в режиме усечения. Если файл существует, то все дан-
ные в нем стираются; по умолчанию в этом режиме открывается выход-
ной ПОТОК ofstream;
2 ate — в справке открыть и немедленно перейти в конец. Отличие от арр
в том, что не предполагается немедленной дозаписи в конец файла, по-
этому таким образом можно открывать и входной поток;
3 binary — открыть в двоичном режиме.
Как предупреждал Б. Сграуструп, в вашей системе могут быть и другие ре-
жимы открытия. Например, в заголовке ios.h системы Visual C++ б и в за-
головке iostream.h системы Borland C++ 5 определены еще две константы:
CJ nocreate -- открывает только существующий файл, не создавая нового,
если файла нет;
4ncrepiace — наоборот, только создает новый файл; если файл существу-
ет, то он не открывается.
Мы не будем подробно на них останавливаться. Гораздо более важно разо-
браться с режимом binary. Тем более что свойство это нам понадобится для
шифрования файла вопросов.

5 техническое задание
Программе для нормальной работы необходим компьютер, удовлетворяющий следующим требованиям: WindowsXP, 7,8, Vista; процессор: Pentium4/ AthlonXP 28Ггу; оперативная память:512Mb и выше; место на жестком диске: 30Mb; монитор с любым расширением, устроиства ввода клавиатура мышь. Интерфейс должен быть интуитивно понятным, максимально простой удобный.
При разработке данного программного продукта использовались следующие программные средства:
1. С++
2. Блокнот
Сама программа состоит из двух частей первая программа создания теста вторая сама программа тестирования



Программа тестирования
Программа устанавливается на выбранный жесткий диск с помощью файла “Testor.exe”
При запуске программы появляется “Приветствие”, ниже есть меню для выбора действий пользователем:
1) Создание теста – Нажатие на кнопку открывает окно редактора тестов, которое позволяет самостоятельно создать тест или отредактировать имеющийся тест.
Кнопки в редакторе тестов:
а) Создать новый тест – Кнопка позволяет создать тест с нуля
б) Открыть тест – Кнопка позволяет открыть тест для последующего изменения
в) Сохранить тест – Кнопка позволяет сохранить тест либо в новый файл либо в имеющийся
г) Сохранить как – Кнопка позволяет сохранить тест в новый файл
д) Добавить вопрос – Кнопка позволяет добавить строчку с ячейками для ввода данных
е) Убавить вопрос – Кнопка позволяет сократить строчку с ячейками для ввода данных
ж) Помощь - ?
з) О проге (Программе) – Кнопка позволяет увидеть создателя программы тестирования
е) Забить (Выход) – Кнопка позволяет выйти из программы редактора тестов и предлагает сохранить текущий прогресс
2) Открыть тест - После нажатия на кнопку появляется окно с помощью которого
предоставляется возможность выбрать файл Теста. После выбора теста программа
подсвечивает кнопку “Начать тест”
3) Начать тест - Кнопка активирует тест, программа открывает тестовое окно для
выбора вариантов ответа. Программа предоставлять возможность пройти тест
отвечать на вопросы путём выбора одного варианта ответа из предложенных.
По завершении теста программа предоставляет информацию о пройденном тесте
(показывает количество набранных баллов)
4) Выйти - Закрытие программы тестирования
Приложения

Приложение А. Техническое задание на разработку программы «Тестирование»
Постановка задачи
Необходимо создать программу «Тестирование» для проведения внутриколледжных тестов по окончании пройденного семестра.
С помощью разрабатываемой программы можно проводить тестирование студентов, школьников, аттестацию сотрудников и кандидатов на работу.
Для выполнения программы необходимо учесть следующие пункты:. Основные характеристики и возможности программы:
1) Безопасность. Для того чтобы изменить параметры программы нужно знать пароль.
2) Информация по ходу тестирования. В тесте можно определить, что нужно показать пользователю во время тестирования: Ф.И.О. испытуемого, кол-во вопросов в тесте, номер текущего вопроса, кол-во правильных ответов.
3)Регистрация пользователей. Администратор может разрешить или запретить самостоятельную регистрацию пользователей.
4) Процесс тестирования. Администратор может:
 Запретить выходить из программы до окончания тестирования;
 Отключить доступ к рабочему столу и панели задач. При этом программа может работать в полноэкранном режиме;
 Настроить программу таким образом, что после одного тестирования она сразу закроется.. Дополнительные возможности программы:
) Удобная система ответа на вопрос;
) Удобная система выбора тестов.

Приложение Б. Руководство программиста на программу «Тестирование»

Программа предназначается для проведения тестирования студентов, окончивших определенный этап обучения (семестр) для проверки и контроля полученных знаний за пройденный этап (семестр).
Для ответа на поставленный вопрос необходимо выбрать один из вариантов ответа на вопрос, а именно:
 выбор одного из предложенных вариантов ответа;
 выбор нескольких вариантов ответа;
 ввод своего ответа с клавиатуры.
Функции программы:
 возможность создавать самостоятельный тест;
 управление с помощью клавиатуры, возможность выбора нескольких вариантов ответа или последовательности, вопросы в которых пользователь вводит свой текст ответа, возможность ввести более длинный текст вопроса;
 подсчет максимального количества баллов в отдельном файле.
Характеристика программы:
Каждый тест представляет собой набор вопросов, задача учащегося может заключаться в следующем:
 выбрать один верный вариант;
 отметить все верные утверждения;
Количество вопросов в каждом тесте не ограничено. При запуске теста преподаватель определяет, сколько вопросов будет использовано в текущем тесте. Вопросы выбираются из базы случайным образом, при этом все рабочие станции получают одинаковый набор вопросов, но в разном порядке.


Приложение В. Руководство оператора на программу «Тестирование»
Выполнение программы:
Для начала работы в программе «Тестирование», пользователь должен обязательно ввести данные о себе:
 Фамилия;
 Имя;
 Отчество;
 Наименование (название) своей группы.
После ввода необходимых данных, пользователь может начать тестирование. Он выбирает необходимую ему тему и начинает тест. Время, отводимое на каждый вопрос равняется 1 минуте. Если пользователь не успевает ответить за данное время, программа автоматически переходит на следующий вопрос.
После окончания теста, программа показывает результат пользователю. В окне выводятся: количество правильных и не правильных ответов, а так же оценка и средний балл.


Приложение Г. Основной вид разработанной программы «Тестирование»






























Приложение Д. Исходный код программы «Тестирование»