Технология разработки программного обеспечения. Курсовая работа. Симулятор нормальных алгоритмов Маркова на бинарных строках.
Состав работы
|
|
|
|
|
|
Работа представляет собой rar архив с файлами (распаковать онлайн), которые открываются в программах:
- Microsoft Word
Описание
Задания
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 – время выполнения программы в миллисекундах.
Вариант 9. Симулятор нормальных алгоритмов Маркова на бинарных строках. Вариант аналогичен варианту 3. Но: 1) вместо текстовых строк в качестве преобразуемой строки берутся произвольные бинарные (т.е. такие, где байты могут иметь любые значения от 0 до 255), 2) в правилах вместо символов используются шестнадцатеричные коды.
Пример:
Обрабатываемая строка в шестнадцатеричном представлении:
00 ff ff fe 80 80 79 32
Правила:
ff ff -> fe fe fe
fe fe fe fe -> 00
00 00 -> 01
01 -> 02
Промежуточные и конечный результаты будут такими:
1. 00 fe fe fe fe 80 80 79 32
2. 00 00 80 80 79 32
3. 01 80 80 79 32
4. 02 80 80 79 32
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 – время выполнения программы в миллисекундах.
Вариант 9. Симулятор нормальных алгоритмов Маркова на бинарных строках. Вариант аналогичен варианту 3. Но: 1) вместо текстовых строк в качестве преобразуемой строки берутся произвольные бинарные (т.е. такие, где байты могут иметь любые значения от 0 до 255), 2) в правилах вместо символов используются шестнадцатеричные коды.
Пример:
Обрабатываемая строка в шестнадцатеричном представлении:
00 ff ff fe 80 80 79 32
Правила:
ff ff -> fe fe fe
fe fe fe fe -> 00
00 00 -> 01
01 -> 02
Промежуточные и конечный результаты будут такими:
1. 00 fe fe fe fe 80 80 79 32
2. 00 00 80 80 79 32
3. 01 80 80 79 32
4. 02 80 80 79 32
Дополнительная информация
Работа зачтена в ноябре 2014 г. Качество так себе.
Можно скачать для примера. В файле отчет и рецензия. Программная часть отсутствует. Замечания преподавателя выложены ниже.
1. формирование требований
Нет сформулированных нефункциональных требований и детализации функциональных (подробнее формулировки задания по Вашему варианту).
2. проектирование
Нет обоснования выбранной платформы. Нет описания модульной или классовой структуры и используемых алгоритмов.
3. реализация
3.1. по тексту программы
Жестко заданы размеры строк. Правила хранятся в массиве фиксированной длины. Это ограничивает максимальное количество правил. Пожалуйста, используйте линейный список или иную структуру данных, обеспечивающую более-менее произвольное число правил.
3.2. документирование
Раздел отсутствует
4. оценка производительности
+
Можно скачать для примера. В файле отчет и рецензия. Программная часть отсутствует. Замечания преподавателя выложены ниже.
1. формирование требований
Нет сформулированных нефункциональных требований и детализации функциональных (подробнее формулировки задания по Вашему варианту).
2. проектирование
Нет обоснования выбранной платформы. Нет описания модульной или классовой структуры и используемых алгоритмов.
3. реализация
3.1. по тексту программы
Жестко заданы размеры строк. Правила хранятся в массиве фиксированной длины. Это ограничивает максимальное количество правил. Пожалуйста, используйте линейный список или иную структуру данных, обеспечивающую более-менее произвольное число правил.
3.2. документирование
Раздел отсутствует
4. оценка производительности
+
Похожие материалы
Технология разработки программного обеспечения. Курсовая работа
fitaria
: 2 февраля 2015
Вариант 0. Конвертор для текстов, переводящий буквенные символы из заглавных в строчные или наоборот. В минимальном виде конвертор – это утилита, которой в качестве параметров передается имя входного файла, имя выходного файла, режим перекодировки: перевод в строчные, перевод в заглавные. Утилита 1) считывает входные параметры и проверяет их корректность, 2) открывает исходный и результирующий файл, обрабатывая возможные ошибочные ситуации, 3) производит конвертацию текста, 4) закрывает файлы и
300 руб.
Курсовая работа по дисциплине: Технология разработки программного обеспечения
NikolaSuprem
: 9 февраля 2021
В рамках данной курсовой работы по дисциплине предлагается научится формировать техническое задание, требования к продукту, проектирование, реализацию и тестирование программы.
Задача: разработать простейший калькулятор, выполняющий минимальные арифметические задачи(+, -, *, /, =, %), с функцией отчистки экрана. Сделать приятный интерфейс. Покрыть тестами.
470 руб.
Технология разработки программного обеспечения.
studypro3
: 4 августа 2019
Вопрос 1. Разработать ПО ИС сборки компьютера: с применением структурного подхода;
Система предполагает решение следующих задач: формирование заявки на новый компьютер, определение области использования данного компьютера, подбор необходимых компонент для решения поставленных задач, сборка компьютера, передача компьютера заказчику. Перечень решаемых задач в процессе работы информационной системы сборки компьютера, перечень входной и выходной информации приведены в таблице 6.
Таблица 6.
Перечень
500 руб.
Технология разработки программного обеспечения
Проходимец
: 16 июня 2017
Экзаменационная работа по предмету Технология разработки программного обеспечения. Вариант билета №3
100 руб.
Технология разработки программного обеспечения
piligrim-24
: 17 января 2012
Зачетное задание по дисциплине «Технология разработки программного обеспечения»
вариант №5
Вопрос 1. Общие вопросы и коллективная разработка (гл. 1, 5 и 7)
Вариант 5. Каковы вопросы, которые необходимо прояснить каждому участнику коллектива до начала выполнения работ?
Вопрос 2. Разработка требований
Вариант 5. На какие основные вопросы отвечает анализ осуществимости?
Вопрос 3. Проектирование
Вариант 5. В чем заключается понятие паттерна? Какими свойствами оно обладает?
Вопрос 4. Программиров
50 руб.
Курсовая работа. ВАРИАНТ 3. Технологии разработки программного обеспечения
Алёна25
: 31 марта 2025
Вариант 3. Поиск пути в лабиринте. Лабиринт описывается двумерным массивом с кодами в ячейках: 0 - проход, 1 - стена, 2 - проход, начальная точка, 3 - проход, конечная точка, 4 - проход, часть пути. Минимальный набор функций - редактирование описания лабиринта, поиск пути, показ лабиринта и пути в нем.
Задания к курсовой работе
В рамках данной курсовой работы предлагается осуществить формирование требований, проектирование, реализацию и тестирование программы. Типовые темы заданий приводятся
350 руб.
Технология разработки программного обеспечения. Курсовая работа. Вариант 0.
nik200511
: 24 марта 2022
Требования.
Разработать конвертор для текстов, переводящий буквенные символы из заглавных в строчные или наоборот. Конвертер должен иметь удобный, интуитивно понятный, графический интерфейс с нейтральными тонами. Конвертер должен выполнять: 1) Запоминать выбранный путь до входных и выходных файлов 2) Открывать исходный и результирующий файл, обрабатывая возможные ошибочные ситуации 3) Производить конвертацию текста 4) Закрывать файлы и завершать работу 5) При возникновении ошибки со стороны по
297 руб.
Технология разработки программного обеспечения. Курсовая работа. Вариант №2
Отличник1
: 30 января 2021
Вариант №2. Задание: Калькулятор для выражений с инфиксной формой записи. В минимальном виде калькулятор – это утилита, которой в качестве параметров передается имя входного файла, содержащего выражение. Утилита 1) считывает входные параметры и проверяет их корректность, 2) открывает исходный, обрабатывая возможные ошибочные ситуации, 3) производит вычисление результата выражения, 4) печатает и завершает работу.
Выражение для калькулятора– это:
• десятичная константа;
• (выражение)
• -выражение
300 руб.
Другие работы
Моторный цех для АТП, имеющий грузовые автомобили КамАЗ 55111, с разработкой технологического процесса восстановления стакана первичного вала коробки передач автомобиля КрАЗ
Рики-Тики-Та
: 25 августа 2012
Содержание
ВВЕДЕНИЕ
1. ПЛАНИРОВАННАЯ ЧАСТЬ
1.1 Назначение участка
1.2 Режим работы участка, годовые фонды времени рабочих, рабочих мест и оборудования
1.3 Трудоёмкость участка
1.4 Расчёт количества производственных рабочих
1.5 Штатная ведомость списочного состава рабочих
участка и ИТР
1.6 Расчёт количества рабочих мест и оборудования
1.6.1 Расчёт площади, занимаемой оборудованием
1.6.2 Ведомость оборудования на участке
1.6.3 Расчёт площади участка
1.7 Краткое описание технологического про
825 руб.
Расчет времени нагрева изолированных проводников
Aronitue9
: 7 мая 2012
Расчет времени нагрева изолированных проводников от наибольшего значения допустимой температуры при коротком замыкании продолжительностью до 5 сек. По ГОСТ Р 50571.5-
94. Содержание: расчте тока однофазного КЗ, селективность, расчет времени нагрева, помощь.
20 руб.
Формирование физической активности молодёжи в семье
alfFRED
: 4 февраля 2014
Введение
Здоровье человека в современном обществе является наивысшей ценностью. Существенным фактором, определяющим состояние здоровья населения, является поддержание оптимальной физической активности в течение всей жизни каждого человека.
Однако статистика свидетельствует о том, что в настоящее время Российская Федерация значительно отстает по показателю регулярных занятий физической культурой от развитых стран, в которых физическими упражнениями постоянно занимаются до 40 - 50 процентов населе
10 руб.
Зачетная работа по дисциплине: «Основы аудита», Вариант 7
Albinashiet
: 21 сентября 2015
1. Совет по аудиторской деятельности осуществляет следующие функции:
2. Найдите ошибку:В состав совета по аудиторской деятельности входят:
А) 10 представителей пользователей бухгалтерской (финансовой) отчетности. Представители пользователей бухгалтерской (финансовой) отчетности подлежат ротации один раз в три года не менее чем на 25 процентов их общего числа;
Б) три представителя уполномоченного федерального органа;
В) по одному представителю от федерального органа исполнительной власти, осущест
100 руб.