Воскресенье, 24.11.2024, 21:47
Приветствую Вас, Гость
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
Технология разработки программного обеспечения. Вариант №0
engineerklubДата: Пятница, 23.06.2023, 17:16 | Сообщение # 1
Генералиссимус
Группа: Администраторы
Сообщений: 28530
Репутация: 0
Статус: Offline
Технология разработки программного обеспечения. Вариант №0 

Тип работы: Работа Курсовая
Форматы файлов: Microsoft Word
Сдано в учебном заведении: СибГУТИ

Описание:
Вариант 0. Конвертор для текстов, переводящий буквенные символы из заглав-ных в строчные или наоборот. В минимальном виде конвертор – это утилита, которой в качестве параметров передается имя входного файла, имя выходного файла, режим перекодировки: перевод в строчные, перевод в заглавные. Утилита 1) считывает входные параметры и проверяет их корректность, 2) открывает исходный и результи-рующий файл, обрабатывая возможные ошибочные ситуации, 3) производит конвер-тацию текста, 4) закрывает файлы и завершает работу.

------------------------------------------------------------------------------

Задание:

1. Формирование требований

Представьте себя заказчиком и потенциальным пользователем программы, кото-рая решала бы задачу Вашего варианта. Сформируйте требования пользователя к ней. Можно использовать как неформальное описание на естественном языке (русском, английском), так и какой-либо формальный язык для спецификаций.

2. Проектирование

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

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

2.3.  Нарисуйте диаграмму с набором модулей, на которые будет разбита про-грамма. Стрелками для каждого модуля укажите, какие модули используются данным модулем.

3. Реализация
3.1. Программирование

По результатам проектирования реализуйте программу на выбранной платформе и на выбранном языке.
В процессе реализации для устранения ошибок пользуйтесь отладчиком. Для это-го соберите программу в отладочном варианте. Если Вы выбрали GNU C/C++, то ко-мандная строка для сборки может быть такой: gcc –g –o program.bin program.c. Запу-стите собранный бинарный файл в отладчике. Пример для GCC и GDB приведен в гл. 6.

Результат выполнения задания 3 – все тексты программы и использовавшаяся для ее компиляции команда. Тексты программы оформляются в соответствии с рекомен-дациями по стилю, которые приведены в гл. 4.

3.2. Документирование – разработка модели

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

3.3. Документирование

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

4. Оценка производительности

Проведите измерение времени выполнения получившейся в задании 4 программы зависимости от объема данных. Если Вы выбрали в качестве языка программирования C/C++, то для замеров можно воспользоваться функциями из файла benchmark.1.c (или benchmark.2.c). При этом функция main будет иметь такой вид:

main()
{
 benchmark_start();

// …

 рrintf(“duration = %d\\n”, benchmark_stop());
}

Сделайте это для нескольких вариантов, изменив флаги для компилятора, которые отвечают за уровни оптимизации. Можно попробовать и флаги, включающие и вы-ключающие отдельные виды оптимизации. Если Вы выбрали GNU C/C++, то мини-мальный рекомендуемый набор вариантов для тестирования таков:

gcc –o program.bin program.c
gcc –O2 –o program.bin program.c
gcc –O3 –o program.bin program.c
gcc –O4 –o program.bin program.c

Постройте графики, где по ось X задана в соответствии с Вашим вариантом, а ось Y – время выполнения программы в миллисекундах.

СКАЧАТЬ
 
  • Страница 1 из 1
  • 1
Поиск:

Рейтинг@Mail.ru