Разработано: И.В. Глазыриной, канд. пед. наук, доц.; Т.А. Лабзиной, доц.
Под ред. А.П. Пятибратова, д-ра техн. наук, проф., засл. деятеля науки и техники РСФСР
советом в качестве учебного пособия
для студентов СГА
Методические рекомендации
по выполнению курсовой работы
по дисциплине “Программирование
на языке высокого уровня”
В предлагаемом пособии изложены основные требования и рекомендации по выполнению курсовой работы. Приводится перечень тем курсовых работ и список литературы.
Для студентов Современной Гуманитарной Академии
Оглавление
1 общие положения.. 4
2 Выполнение курсовой работы. 4
3 Содержание разделов курсовой работы. 5
3.1 Оглавление. 5
3.3 Разработка эскизного и технического проектов программы.. 5
3.3.2 Назначение и область применения. 6
3.3.3 Технические характеристики. 6
3.3.3.1 Постановка задачи. 6
3.3.3.2 Описание алгоритма. 9
3.3.3.3 Организация входных и выходных данных. 11
Отличие эскизного проекта от рабочего. Часть 1.
3.3.3.4 Выбор состава технических и программных средств. 12
3.3.3.5 Источники, использованные при разработке. 12
3.4 Разработка рабочего проекта. 12
3.4.1 Разработка программы.. 13
3.4.2 Спецификация программы.. 19
3.4.3 Текст программы.. 20
3.4.4 Описание программы.. 25
3.4.5 Тестирование программы.. 26
3.5 Внедрение. 26
3.6 Список использованных источников. 27
4 Оформление пояснительной записки.. 29
5 Тематика курсовых работ. 29
5.2 Строковые данные и текстовые файлы.. 30
5.3 Записи. Базы данных. 32
5.4 Динамические структуры.. 33
6 Литература.. 36
Приложение а Форма спецификации. 36
1 общие положения
Курсовая работа предусмотрена тематическим планом изучения дисциплины “Программирование на языке высокого уровня”. Курсовая работа является самостоятельной работой студента, позволяет оценить качество знаний и отражает приобретенные студентом практические навыки.
Курсовая работа позволяет расширить объем знаний студентов в области программирования и создать реальную основу использования своих знаний для решения на ЭВМ задач по другим дисциплинам и в своей дальнейшей практической деятельности.
Тема назначается руководителем курсовой работы и утверждается на заседании учебно-методической комиссии.
Перед студентом ставится задача разработать приложение для Windows с целью решения конкретной задачи. Результатом решения является:
а) пояснительная записка, составленная с учетом требования стандартов ЕСПД;
б) исполняемый файл программы, прилагаемый к пояснительной записке на диске/дискете.
Для решения поставленной задачи студенту необходимо предварительно ознакомиться с литературой, посвященной теме задания. При этом следует обратить внимание на средства, используемые для решения аналогичных задач или для решения каких-либо ключевых моментов задачи. Этап работы с литературой должен закончиться обзором, в котором собраны полученные сведения из литературы, дан их анализ с точки зрения приложения к поставленной задаче.
Технический дизайн-проект. 100 проектов спустя.
Сформулированные в настоящих указаниях задания на курсовую работу представляют студенту простор для творчества. В текстах задач умышленно опущены некоторые детали и необходимые требования. После ознакомления с литературой студент должен оценить возможности языка программирования и вычислительной техники, на которой предлагается реализовать решение. Результатом этой работы должна быть точная формулировка задачи со всеми ограничениями и требованиями.
При решении задачи необходимо придерживаться техники пошаговой детализации, использовать стандартные структуры, не забывая при этом о развитии программного окружения программиста, расширяя возможности языка за счет включения новых процедур и функций.
При разработке алгоритма необходимо предусмотреть средства проверки и тестирования программы, удобство работы пользователя, возможные модификации.
При написании программы не следует забывать о хорошем стиле программирования, о таких понятиях, как читабельность, эффективность, надежность. Необходимо искать наиболее простые и естественные приемы и методы решения.
В программе, кроме решения непосредственно задачи, студент должен предусмотреть вывод справки о программе и информации о разработчике с указанием ФИО, группы и даты разработки.
На диске вместе с программой должны быть представлены файлы, подготовленные для проверки ее работоспособности.
Выполнение курсовой работы
Выполнение курсовой работы состоит из трех этапов.
1. Подготовительный этап (разработка эскизного и технического проектов).
2. Практическая работа за компьютером (разработка рабочего проекта).
3. Оформление пояснительной записки.
Содержание разделов курсовой работы
Все этапы разработки программы отражаются в пояснительной записке.
Пояснительная записка состоит из следующих разделов:
1 Разработка эскизного и технического проектов программы (ГОСТ 19.404–79)
1.2 Назначение и область применения
1.3 Технические характеристики
1.4 Источники, использованные при разработке
2 Разработка рабочего проекта
2.1 Разработка программы
2.2 Спецификация программы
2.3 Текст программы
2.4 Описание программы
2.5 Тестирование программы
Список используемой литературы.
При написании пояснительной записки необходимо придерживаться требований единой системы программной документации (ЕСПД) и методических указаний по выполнению письменной курсовой работы, принятых в СГА.
Оглавление
Введение
Во введении кратко характеризуется проблема, решению которой посвящена курсовая работа, определяются цель и задачи, которые надо решить для раскрытия темы, описываются средства, посредством которых реализуется разрабатываемая программа, например, среда разработки приложений Delphi.
Разработка эскизного и технического проектов программы
Стандарт ГОСТ 19.404–79 устанавливает требования к содержанию и оформлению программного документа “Пояснительная записка”, входящего в состав документов на стадиях разработки эскизного и технического проектов программы.
Задание
В разделе “Задание” указывается тема курсовой работы и приводится условие решаемой задачи.
Тема: Разработка приложения для Windows, представляющего собой компьютерную игру “Лабиринт”.
Игра “Лабиринт” состоит в том, что играющий перемещается в двухмерном пространстве по помещениям здания, план которого играющему неизвестен. Начиная с произвольного помещения, путешественник должен найти выход из здания. Каждое помещение может иметь четыре двери: север, восток, юг, запад. План здания необходимо считать из текстового файла в связанный список.
Порядок следования помещений в списке должен быть произвольным. Находясь в N–ом помещении, игрок может получить подсказку о правильном направлении движения, если верно выполнит тестовое задание по теме “Программирование на языке высокого уровня”.
Технические характеристики
Раздел “Технические характеристики” должен содержать следующие подразделы:
1 Постановка задачи
2 Описание алгоритма
3 Организация входных и выходных данных
4 Выбор состава технических и программных средств.
Постановка задачи
Решение задачи начинается с ее постановки. Постановка задачи — точная формулировка решения задачи на компьютере с описанием входной и выходной информации. Входная информация по задаче – это данные, поступающие на вход задачи и используемые для ее решения. Выходная информация может быть представлена в виде документов, кадров на экране монитора, информации в базе данных, выходного сигнала устройству управления.
В данном разделе дается точное описание исходных данных, условий задачи и целей ее решения. На этом этапе условия задачи, записанные в форме различных словесных описаний, необходимо выразить на формальном языке математики. Обычно математическая модель – это набор уравнений, неравенств и ограничений, приближенно описывающих задачу. При построении математической модели отбрасываются некоторые свойства реальной задачи, мало влияющие на решение.
В этом разделе могут быть описаны основные приемы программирования и типы данных, используемые при решении аналогичных задач. Например, если в задаче используются динамические структуры, то перечисляются виды динамических структур данных и основные процедуры по работе с динамическими структурами. Если задача заключается в формировании базы данных и дальнейшей работе с базой, то приводится описание используемых типов данных (характеристика данных записного типа) и приемы работы с файлами.
Далее описываются возможные пути решения задачи с указанием их достоинств и недостатков. Выбирается и обосновывается метод решения задачи. Описываются ограничения, накладываемые на исходные данные, необходимая разрядность и точность представления исходных данных и результатов решения. Указываются возможные пределы изменения входных параметров задачи.
Разработать программу, моделирующую игру «Лабиринт», с использованием динамической структуры «связанный список». Играющий должен найти выход из двумерного лабиринта. Лабиринт состоит из смежных комнат. Каждая комната может иметь четыре двери, направленные на север, юг, запад и восток. Одна из комнат содержит выход из лабиринта.
Играющий, попав в очередную комнату, может попросить подсказку о направлении движения в сторону выхода из лабиринта. Подсказка представляет собой вопрос теста и четыре варианта ответа по дисциплине «Программирование на языке высокого уровня». Правильный ответ соответствует двери, ведущей к выходу. Представляемые играющему вопросы и варианты ответа должны считываться из файла, хранящегося на диске.
После описания общих положений тематики работы, необходимо указать конкретные методы решения поставленной задачи. Математическая формулировка в данном случае заменяется словесным описанием.
Предположим, что помещения здания соединяются между собой так, как показано на рисунке 1.
Рисунок 1. Пример плана помещений
Информация о плане здания должна храниться в файле в последовательности: номер комнаты; номера комнат, смежных с данной. Смежные комнаты перечислены в порядке: север, восток, юг, запад (рисунок 2). Порядок следования помещений в этом списке может быть любым, как и последовательность номеров помещений на плане.
Рисунок 2. Информация о плане здания, представленном на рисунке 3
Для последующей обработки файл с данными считывается и помещается в список, исходя из номера помещения (рисунок 3). Spi – указатель на начало списка.
Рисунок 3. Начало списка помещений после первого прочтения,
представленного на рисунке 2 файла
Затем файл считывается еще раз и с учетом наличия дверей генерируется связь помещений (рисунок 4).
Рисунок 4. Начало списка помещений после второго прочтения,
представленного на рисунке 4 файла
Звездочкой помечены ссылки, равные Nil.
Перемещение игрока в лабиринте осуществляется путем выбора им одного из вариантов направления движения. Игрок вводит номер комнаты, с которой начинается путешествие. Если такого помещения в лабиринте нет, то об этом выдается сообщение. Если такая комната существует, то играющему предлагается выбрать направление движения, которое можно определить, воспользовавшись подсказкой.
Помощь заключается в том, что на экран высвечивается вопрос по теме курса “Программирование на языке высокого уровня” и 4 варианта ответа. Правильный ответ указывает направление дальнейшего движения. Неправильный ответ дает неверное направление или вызывает сообщение о невозможности передвижения. Вывод подсказки на экран и выбор правильного ответа осуществляются с помощью специальной процедуры, которая обращается к файлу на диске.
Признаком окончания игры является ссылка на помещение с номером 999.
В программе необходимо предусмотреть возможность создания и корректирования файлов плана помещения и подсказки.
Описание алгоритма
В разделе дается обобщенное словесное описание алгоритма решения поставленной задачи, излагаются основные требования к алгоритму и пути их реализации. Приводится схема алгоритма, состоящая из укрупненных модулей. Дается пояснение назначения и состава каждого модуля. Обобщенный алгоритм обычно использует обозначения и термины исходной задачи.
На следующем этапе каждый модуль детализируется. Выделяются укрупненные команды, реализуемые по вспомогательным алгоритмам. Тот же подход применяется при разработке вспомогательных алгоритмов.
В программе решаются три независимые друг от друга подзадачи.
1. Перемещение по лабиринту.
2. Запись на диск плана помещений здания.
3. Запись на диск файла подсказки.
Задача “Перемещение по лабиринту” решается в два этапа: 1) формирование списка помещений; 2) выбор направления движения и переход из одного помещения в другое.
Обобщенная схема алгоритма приведена на рисунке 5.
Рисунок 5. Обобщенная схема алгоритма
При формировании списка плана помещений сначала производится считывание номеров комнат из текстового файла и построение связанного списка, затем построение многосвязанного списка, содержащего в себе план помещений здания (рисунок 6).
Рисунок 6. Формирование списка плана помещений
Перемещение по лабиринту начинается с выбора номера помещения для начала путешествия. Если такого помещения нет, то игра заканчивается. Если такое помещение в лабиринте есть, то игроку предоставляется возможность выбрать направление движения или воспользоваться файлом подсказки. Укрупненная схема алгоритма приведена на рисунке 7.
Рисунок 7. Схема алгоритма этапа “Перемещение по лабиринту”
Блок “Выбор направления движения” может быть детализирован на этапе разработки программы.
Аналогично детализируются все составляющие алгоритма.
На этапе разработки технического проекта детализация на уровне операторов программы необязательна.
Разработка рабочего проекта
Этап разработки рабочего проекта включает в себя разработку программы и программной документации, а также испытание программы.
Разработка программы
Современные программы разрабатываются для функционирования в среде Windows. Приложение для Windows студенты разрабатывают в среде визуального программирования. Визуальное программирование строится на тесном взаимодействии двух процессов:
· процесс конструирования Windows-окна;
· процесс написания кода, придающего элементам этого окна и программе в целом необходимую функциональность.
Проект Windows-окна должен быть представлен в виде графической схемы, на которой расположены все визуальные и невизуальные компоненты, разрабатываемого интерфейса. Компоненты на схеме должны быть пронумерованы. После схемы приводится расшифровка изображенных на схеме компонентов: название и имя компонента; назначение в программе; события, на которые данный компонент откликается. Для каждого компонента должны быть указаны свойства, измененные при проектировании окна.
Для разработки приложения игры “Лабиринт” используется среда визуального программирования Delphi. Проект программы содержит три окна:
1. Form1 – перемещение по лабиринту.
2. Form2 – запись на диск плана помещений здания.
3. Form3 – запись на диск файла подсказки.
Окно Form1 Перемещение по лабиринту (рисунок 8).
Рисунок 8. Главное окно программы – Form1
Сaption – Игра “Лабиринт”;
Источник: zdamsam.ru
Технический проект.
Это техническая документация, содержащая общесистемные и проектные решения алгоритмы решения задач, оценку экономической эффективности АИС, и перечень мероприятий по подготовки к внедрению АИС. На этом этапе осуществляется комплекс научно-исследовательских и экспериментальных работ, для выбора основных проектных решений, и расчет экономической эффективности системы. Технический проект включает в себя:
- пояснительная записка, в которой указана основания для разработки системы, перечень организации разработчиков, краткая характеристика объекта, с указанием основных технико-экономических показателей;
- функциональная и организационная структура системы. В нее входит обоснование выделяемых подсистем, их перечень и назначение, перечень задач, решаемых в каждой подсистеме;
- постановка задач, и алгоритм решения, включает в себя организационно экономическую сущность задачи, входную — оперативную задачу;
- организация информационной базы, включает в себя источники поступления информации и способы ее передачи, совокупность показателей, используемых в системе, состав документов, сроки и периодичность их поступления;
- принцип построения комплексов технических средств;
- расчет экономической эффективности системы;
- мероприятия по подготовки объекта внедрения системы;
Стадия рабочей документации.
На этой стадии осуществляется создание программного продукта и разработка всей сопровождающей документации. Документации должна содержать все необходимые сведения для обеспечения выполнения работ по вводу АИС в действие, её эксплуатации, а также для поддержания уровня эксплуатационных характеристик системы.
Стадия ввод в действие.
- предварительные;
- опытная эксплуатация, проводят с целью определения фактических значений, количественных и качественных характеристик системы и готовности персонала к работе в условиях ее функционирования;
- приемочные испытания, проводят для определения соответствия системы техническому заданию, оценке качества опытной эксплуатации и решения вопроса о возможности приемки системы в постоянную эксплуатацию.
Типовое проектирование аис.
- Элементные ТПР. Имеют достоинства – обеспечивается применение модульного подхода к проектированию и документированию АИС. Недостатки – большие затраты времени на сопряжение разнородных элементов вследствие информационной, программной и технологической несовместимости.
- Под системные ТПР. Решения являются отдельной функционально полной подсистемой. Достоинства – достигается высокой степени интеграции АИС, позволяет осуществлять модельные проектирования, параметрическую настройку программных компонентов на различные объекты управления. Недостаток – возникают проблемы в комплектовании различных функциональных подсистем.
- Объектные ТПР. Типовой проект включает в себя полный набор функциональных и обеспечивающих подсистем. Достоинства – за счет открытости архитектуры позволяет устанавливать ТПР на разных программно-технических платформах.
- Параметрически-ориентированные.
- Определение критериев оценки пригодности ППП для решения поставленных задач;
- Анализ и оценка доступных ППП по сформулированным критериям;
- Выбор и закупка наиболее подходящих пакетов;
- Настройка параметров (доработка) закупленных ППП.
- Модельно-ориентированные. Заключается в адаптации состава и характеристик типовой АИС в соответствии с моделью автоматизации, для этого используются специальные БД, которые называется репозиторий, В ней выбирается необходимая модель АИС и приспосабливается к условиям, в которых должна будет работать будущая АИС.
Источник: studfile.net
Программа или технический проект
ИТ-консультант.рф | Холодков Антон
аналитик, архитектор, команда разработки для реализации Ваших идей
Ищу интересные проекты 🙂
Прежде всего, следует отметить, что под «Техническим проектом» может пониматься как один сводный документ (чаще для небольших и средних программных систем), так и целый набор (комплект) документации (для крупных систем).
Определить суть данного артефакта, наверное, правильнее всего через понятие «проектирование ПО». Технический проект – это документ или набор документов, являющийся основным результатом (выходом) процесса проектирования. Процесс проектирования в свою очередь присутствует в том или ином виде абсолютно во всех серьезных методологиях создания ПО, поскольку отражает фундаментальный житейский принцип «прежде чем сделать что-то, необходимо хорошо подумать как это сделать лучше» или короче «сем раз отмерь, один раз отрежь». Технический проект необходим для того, чтобы зафиксировать результаты этого обдумывания даже в случае, если созданием программы занимается всего лишь один человек, не говоря уже о командной разработке.
Технический проект используется разработчиками при программировании спроектированного программного продукта. В его «принципиальной части» он может использоваться при обсуждении и согласовании ключевых проектных решения с Заказчиком. Также технический проект может быть очень полезен другим техническим и не очень техническим специалистам в решении самых разнообразных задач.
Основное требование к техническому проекту – ясное и четкое отражение того, как должно быть реализовано решение. Причем, четкое понимание реализации на требуемом уровне абстракции должно сложиться после прочтения технического проекта у заинтересованной стороны любого уровня: Заказчика, бизнес-аналитика, системного аналитика, разработчика, тестировщика, внедренца и т.п.
Исходя из основного требования, в технических проектах обычно решение описывается «сверху вниз» — от самого высокого уровня абстракции до деталей реализации отдельных элементов. Соответственно, в работе над различными частями технического проекта могут принимать участие разные специалисты: системный аналитик, архитектор, ведущий разработчик и т.п.
Для обозначения «Технического проекта» в различных системах и методологиях могут использоваться разные термины. Так в отечественных ГОСТах 34.201-89, 34.601-90 и РД 50-34.698.90 под «Технический проект» в описанных выше границах подпадает несколько десятков документов, создаваемых на стадиях «Эскизный проект», «Технический проект» и частично «Рабочая документация». В рамках MSF выделяются понятия концептуальный, логический и физический дизайн, по своей сути в совокупности также эквивалентные понятию «Технический проект». В предлагаемых в последнее время «шаблонах процессов разработки» (например, для Microsoft Team Foundation Server) также присутствуют самые разные сущности проектирования, которые не перечесть, однако все они будут так или иначе укладываться в понятие «Технический проект», поскольку отражают те же самые философские принципы и специфику разработки программных продуктов.
Примеры технических проектов из моих работ:
Источник: kholodkov.ru