МУ_ДЗ_2014 (1079920), страница 13

Файл №1079920 МУ_ДЗ_2014 (Методические указания к лабораторным работам) 13 страницаМУ_ДЗ_2014 (1079920) страница 132018-01-11СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 13)

#if !defined( __STREET_H )

#include <Street.h>

#endif //

  1. Должны быть предусмотрены специальные методы очистки (Clear) и распечатки контейнерного объекта (PrintOn).

  2. После компиляции программ и создания исполнимого модуля (build) не должно наблюдаться любых предупреждений в окне фиксации ошибок. При необходимости преподаватель при демонстрации проекта может попросить скомпилировать модули и пересоздать проект.

Примечание ВНИМАНИЕ: Контейнерные классы в домашнем задании должны быть реализованы на основе стандартных классов типа списки и массивы из библиотек (по вариантам групп). Задания, реализованные на основе простых стандартных массивов объектов, приниматься к защите не будут.

Требования к реализации контейнерных классов

В каждом задании на КЛР/ДЗ необходимо создать минимум один собственный контейнерный класс. Контейнерные классы (см. выше) – это такие классы, на основе которых создаются объекты, позволяющие включать в себя другие объекты или, по другому, хранить в себе. Это отношение накопления между классами. Контейнерные классы могут быть упорядоченными (массивы и списки) и неупорядоченными (множества). Для реализации контейнерных классов студенты могут выбрать один из подходов:

    • Использование стандартных (библиотечных) классов типа список или массив, а собственный контейнерный класс наследовать от них. Все основные методы базового класса для выполнения операций наследуются.

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

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

Если студенты выбирают первый способ, то они должны использовать классы MS VS, которые записаны для отдельных требований групп (см. ниже).

Дополнительные требования для сильных студентов

Для сильных студентов предлагается более сложный вариант задания. Во-первых, можно выбрать в таблице вариантов более сложный вариант задания (д.т.), согласовав выбранную тему с преподавателем.

Во-вторых, в стандартном задании можно выполнить следующие дополнительные требования:

  1. Создать собственные классы для двунаправленных списков (или специальных динамических массивов) и использовать их для наследования в ваших тематических контейнерных классах.

  2. Выполнить оригинальную перегрузку операций ввода/вывода в поток(<< , >>). Это нужно сделать и для элементного и контейнерного классов задания.

  3. Использовать бинарные файлы для хранения информации из контейнерных классов. Предусматривается загрузка и выгрузка из файлов из/в ОП. Возможна выборка объектов по номеру в контейнере и/или по условиям, наложенным на атрибуты элементных объектов.

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

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

Примечание: Для утверждения дополнительных требований и дополнительных тем нужно(31-36) их нужно выбрать и согласовать с преподавателем в начале семестра. На титульных листах документов должен быть отмечен факт выполнения дополнительных требований и их содержания.

54 Требования к документации КЛР/ДЗ

Общие требования к документации по КЛР/ДЗ

Документация по КЛР выполняется студентом индивидуально и должна включать стандартный набор документации на программное изделие (состав и требования к документации представлены в данных методических указаниях и на сайте дисциплины www.sergebolshakov.ru – см. мой сайт раздел ДЗ и вариантов ДЗ). Для упрощения работы студентам предоставлены образцы исполнения документов (в приложении и на сайте), а также шаблоны для построения документов (на сайте). Документы могут быть выполнены в виде отдельных материалов и в виде отдельного документа, включающего в себя в качестве отдельных разделов все документы ДЗ. Для проведения сдачи, защиты и приемно-сдаточных испытаний материалы ДЗ должны быть предоставлены в электронном виде и распечатаны. Следующие документы (их восемь документов) должны быть разработаны в рамках КЛР/ДЗ и практикума по дисциплине:

  1. Техническое задание (ТЗ) на систему классов, в котором важными разделами являются технические требования (ТТ – 5-й раздел ТЗ), в них включаются собственные функциональные требования к разрабатываемой системе классов. Это функциональные требования важны при разработке ТЗ (п.п. 5.1) и определяют последующие этапы проработки ПО.

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

  1. Техническое описание системы классов и ПО(см. также выше и ниже). Оно должно включать: диаграммы классов, подробное описание каждого класса. Описание классов, их свойств и методов должно быть сделано на понятийном уровне (в отдельном разделе) и на техническом уровне, желательно в виде таблиц. Обязательно, кроме подробного, вначале должно быть выделено краткое смысловое описание каждого класса – одной фразой. Например: "класс изображений служить для описания объектов – изображений на экране компьютера в форматах …", и т.д. Для важных алгоритмов разработанного программного обеспечения должны быть построены блок-схемы процедур, у нас методов классов.

  1. Руководство пользователя системы классов, а не тестового примера, где должно быть описано, как и для чего, программист может использовать вашу систему классов. Должны быть даны простые примеры описания объектов и их использования, продемонстрировано применение всех методов, разработанных классов и применение свойств объектов. Описание классов должно быть сделано на понятийном уровне (в отдельном разделе) и на техническом уровне, желательно в виде таблиц. Могут быть приведены ссылки на документ техническое описание (ТО).

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

  1. Описание тестового примера (включает подробное описание тестового примера, включая и диаграмму объектов примера и особенности применения разработанных классов.). Обратите внимание, что описание тестового примера это отдельный документ и не является программой и методикой испытаний (ПМИ). Однако, в ПМИ (см. ниже) можно ссылаться на пункты описания тестового примера.

  2. Листинг программ системы классов (распечатка всех файлов, включая и заголовочные) и листинги программ тестового примера и листинг результатов его работы.

  3. Программа методика испытаний (ПМИ) на основе тестового примера и ТЗ.

Примечание: Шаблоны и образцы оформляемых документов приведены ниже. Кроме того вам необходимо познакомиться с общими требованиями к разработке данных документов, которые также приведены в методических указаниях ЛР12-ЛР15 и специальных методических указаниях по оформлению отдельных документов (см. ниже и на сайте). Кроме этого шаблоны документов представлены на сайте в отдельном архиве.

Замечание: Документы должны разрабатываться в соответствии с ГОСТ, должны содержать всю необходимую информацию, написаны ясно и конкретно, соответствовать основной цели написания каждого конкретного документа. Документы могут разрабатываются отдельно. В этом случае каждый документ сопровождается титульным листом, и должен иметь свое оглавление. Вариант задания (номер и название ) нужно указать на каждом титульном листе документа. Можно объединить все документы в один документ, при этом должно быть сформировано общее оглавление.

Особые требования к ТО и ОТП по КЛР/ДЗ

Техническое описание разработанных или используемых классов должно включать:

  1. Описание структуры классов (диаграммы связей классов, включая отношения наследования, использования, включения и дружественные связи);

  2. Для каждого класса должно быть дано общее описание одной фразой !!! Это понятийное описание классов.

  3. Модульную структуру программы, поясняющую, в каких исходных модулях описаны классы и их методы. Оформляется в виде декомпозиционной диаграммы (FDD).

  4. Описание данных всех классов (в виде таблицы с указанием имен, понятий и типов данных);

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

При описании тестового примера нужно учесть и включить:

  1. Описание объектов тестового примера (диаграмма объектов тестового примера, включается с техническое описание и описание тестового примера).

  2. Описание тестового примера для демонстрации работоспособности системы классов.

  3. Описание процесса отладки классов, тестового примера и ошибок при отладке программы (помещается в техническое описание в учебных целях)

  4. Распечатки всех модулей системы классов и тестового примера: *.c , *.h , *.cpp , *.hpp ( и др.). С комментариями по тексту (в комментариях идентификация разработчика как в ЛР. Комментариев не должно быть много, в противном случае они будут трактоваться как шпаргалки!).

55 Порядок выполнения КЛР/ДЗ

В данном разделе изложен возможный вариант последовательности шагов для выполнения задания.

  1. Взять тему домашнего задания в соответствии с номером студента по журналу группы в текущем семестре. Если студент решил использовать дополнительные требования или усложненные темы заданий (Помеченные - д.т. - дополнительные требования), то он должен в начале семестра согласовать это вопрос с преподавателем. Темы вариантов даны в отдельном разделе данных методических указаний. А последние (актуальные) варианты тем ДЗ размещаются на сайте дисциплины (www.sergebolshakov.ru) их нужно уточнить для каждого текущего семестра.

Пример. В тема в нашем случае домашнего задания “Разработать систему классов улиц и домов … Предусмотреть …”.

  1. Проработать предметную область домашнего задания. Нужно выделить объекты и классы для реализации ДЗ. Проработать их свойства и методы. Более подробно это изложено выше, в разделе “Методические пояснения к темам ДЗ ”.

Пример. В тема домашнего задания “Разработать систему классов улиц и домов … Предусмотреть …”. Класс домов (Home) и класс улиц (Street). Классы создаются для подсчета числа жителей и оценки ремонта всех домов улиц.

  1. Выполнить модульную декомпозицию, определив назначение и содержание каждого из модулей, и размещение описание классов, их методов в модулях. Дать названия модулям нужного типа (*.cpp, *.h или *.hpp).

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

Модуль - DZ_Array.cpp (DZ_List.cpp) - модули для отладки системы классов (раскомментирован заголовок функции main совместно комментированием заголовка функции mainDEBUG, а также комментируется заголовок функции main совместно раскомментированием mainMETOD. )

Модуль - DZ_Array.cpp (DZ_List.cpp) - модуль для сдачи системы классов на основе ПМИ (раскомментирован заголовок функции main совместно комментированием заголовка функции mainMETOD, а также комментируется заголовок функции main совместно раскомментированием mainDEBUG. ).

Модуль - DZ_LIB.cpp -содержит методы для всех классов проекта

Модуль - DZ_Class.h - содержит для описания классов проекта

Модуль - DZ.h - модуль описания общих данных проекта

  1. По данным методическим указания, в рамках выполняемых ЛР по дисциплине, литературе и лекциям изучить теоретические вопросы ДЗ. В частности вопросы: описания классов, наследования в классах, перегрузки операций в классах, требования к документированию программных проектов.

  1. Изучить требования к ДЗ, требования к документации ДЗ и испытаниям ПО ДЗ. Познакомиться с примерами оформления документов ДЗ, примерами программ.

Пример. Примеры оформления документов ДЗ, а также примеры программ проекта ДЗ размещены в приложении к данному документу и на сайте дисциплины ( www.sergebolshakov.ru).

  1. Разработать техническое задание (ТЗ) для своего проекта и утвердить его у преподавателя. Особое внимание нужно обратить на раздел ТЗ с функциональными требованиями (раздел 5.1). Пункты ТЗ должны быть сформулированы на содержательном уровне, не должны использоваться конкретные названия: классов, их свойств и их методов.

Пример. Пример оформления документа ТЗ размещены в приложении к данному документу и на сайте дисциплины ( www.sergebolshakov.ru). Изложение ТЗ должно соответствовать требованиям и стандартам. Раздел 5.1 может выглядеть так:

“Система классов улиц и домов должна обеспечивать выполнение следующих функции для работы с этими объектами:

5.1.1. Создание контейнерных объектов для улиц города, в которых могут размещаться дома этой улицы.

Характеристики

Тип файла
Документ
Размер
2,79 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Методические указания к лабораторным работам
ЛР9_ПКШ
ЛР10_ПКШ
ЛР11_ПКШ
ЛР_12_КЛР_ПКШ
ЛР_13_КЛР_ПКШ
ЛР_14_КЛР_ПКШ
Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6508
Авторов
на СтудИзбе
302
Средний доход
с одного платного файла
Обучение Подробнее