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