Структура иерархии классов "Экран курсового проектирования"

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

?нятные действия, возможность корректировки, поиска и удаления данных.

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

  1. Анализ технического задания

 

В настоящем курсовом проекте необходимо разработать структуру иерархии классов Экран курсового проектирования. На основе этой структуры необходимо создать приложение для тестирования иерархии.

Для реализации поставленных задач необходимо:

  1. Разработать иерархию классов, определить базовый и наследуемые классы;
  2. Разработать и описать структуру каждого класса в отдельности, объявить поля и методы класса;
  3. Реализовать визуальные компоненты для работы иерархией классов.

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

При реализации приложения необходимо использование объектно-ориентированного программирования. Оно предусматривает наличие базового и производных классов, что делает приложение более универсальным. По возможности можно добавлять, изменять или удалять в приложении различные методы и поля, т.е. подстраивать приложение под конкретную ситуацию.

Данное приложение было реализовано на мощном и гибком объектно-ориентированном языке программирования С++(Павловская Т.А. С/С++. Программирование на языке высокого уровня. СПб.: Лидер, 2010. 461с., Иванова Г.С, Ничушкина Т.Н., Пугачев Е.К. И21 Объектно-ориентированное программирование: Учеб. для вузов/ Под ред. Г.С. Ивановой. - М.: Изд-во МГТУ им. Н.Э. Баумана, 2001. 320 с.). Язык С++ предоставляет все средства для реализации базового и производных классов, а также оптимально использует системные ресурсы, что позволяет сделать приложение не только универсальным, но и не очень требовательным к ресурсам компьютера. Также язык С++ поддерживает платформу .NETFramework, что позволяет использовать приложение на различных персональных и переносных компьютерах, на которых установлена эта платформа.

По сравнению с другими объектно-ориентированными языками С++ обладает несколькими особенностями:

  1. Полная поддержка принципов инкапсуляции, наследования и полиморфизма;
  2. Полная поддержка классов и объектно-ориентированного программирования, включая наследование реализации и интерфейсов, виртуальные функции и перегрузку операций;
  3. Согласованный и четко определенный набор базовых типов;
  4. Возможность переопределения пользователем стандартных типов языка и операторов;
  5. Автоматическая очистка динамически распределяемой памяти;
  6. Полная поддержка библиотеки базовых классов .NET Framework наряду с легким доступом к Windows API;
  7. Указатели и прямой доступ в память при необходимости доступны, но язык спроектирован так, что в большинстве случаев без них можно обойтись.

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

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

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

К числу подобных метрик относится:

  1. Гибкость, которая аккумулирует ряд свойств:
  2. Модульность;
  3. Изменяемость;
  4. Сопровождаемость;
  5. Адаптивность, которая подразумевает:
  6. Настраиваемость;
  7. Переносимость;
  8. Способность к взаимодействию;

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

Исправления программного обеспечения может быть инициировано по следующим причинам:

  1. исправление программы с недостаточным уровнем качества;
  2. изменение программы для повышения уровня к