Файл: Применение объектно-ориентированного подхода при проектировании информационной системы (Краткая характеристика проектируемой системы).pdf
Добавлен: 28.06.2023
Просмотров: 60
Скачиваний: 2
СОДЕРЖАНИЕ
Глава 1. Краткая характеристика проектируемой системы
1.1 Постановка задачи и краткое описание системы
1.4 Описание и разработка классов входящих в систему
Глава 2. Разработка UML модели
2.1 Краткое описание, назначение и предметы UML языка
2.4 Формирование UML диаграммы классов
2.6 Дополнительные диаграммы, отображающие особенности программы
Введение
C++ - универсальный язык программирования, задуманный так, чтобы сделать программирование более приятным для серьезного программиста. За исключением второстепенных деталей C++ является надмножеством языка программирования C. Помимо возможностей, которые дает C, C++ предоставляет гибкие и эффективные средства определения новых типов. Используя определения новых типов, точно отвечающих концепциям приложения, программист может разделять разрабатываемую программу на легко поддающиеся контролю части. Такой метод построения программ часто называют абстракцией данных. Информация о типах содержится в некоторых объектах типов, определенных пользователем. Такие объекты просты и надежны в использовании в тех ситуациях, когда их тип нельзя установить на стадии компиляции. Программирование с применением таких объектов часто называют объектно-ориентированным. При правильном использовании этот метод дает более короткие, проще понимаемые и легче контролируемые программы.
Ключевым понятием C++ является класс. Класс - это тип, определяемый пользователем. Классы обеспечивают скрытие данных, гарантированную инициализацию данных, неявное преобразование типов для типов, определенных пользователем, динамическое задание типа, контролируемое пользователем управление памятью и механизмы перегрузки операций. C++ предоставляет гораздо лучшие, чем в C, средства выражения модульности программы и проверки типов. В языке есть также усовершенствования, не связанные непосредственно с классами, включающие в себя символические константы, inline- подстановку функций, параметры функции по умолчанию, перегруженные имена функций, операции управления свободной памятью и ссылочный тип. В C++ сохранены возможности языка C по работе с основными объектами аппаратного обеспечения (биты, байты, слова, адреса и т.п.). Это позволяет весьма эффективно реализовывать типы, определяемые пользователем.
C++ и его стандартные библиотеки спроектированы так, чтобы обеспечивать переносимость. Имеющаяся на текущий момент реализация языка будет идти в большинстве систем, поддерживающих C. Из C++ программ можно использовать C библиотеки, и с C++ можно использовать большую часть инструментальных средств, поддерживающих программирование на C.
В идеальном случае подход к разработке программы делится на три части: вначале получить ясное понимание задачи, потом выделить ключевые идеи, входящие в её решение, и наконец выразить решение в виде программы. Однако подробности задачи и идеи решения часто становятся ясны только в результате попытки выразить их в виде программы - именно в этом случае имеет значение выбор языка программирования.
Системный анализ – наиболее конструктивное направление, используемое для практических приложений теории систем к задачам управления. Конструктивность системного анализа связана с тем, что он предлагает методику проведения работ, позволяющую не упустить из рассмотрения существенные факторы, определяющие построение эффективных систем управления в конкретных условиях.
Для сложных систем, с некоторыми приходится иметь дело на практике, применение классического экспериментального метода исследования ограничено его высокой стоимостью, а в ряде случаев (экология, макроэкономика и др.) натурные эксперименты становятся либо вовсе невозможными, либо, по крайней мере, чересчур рискованными. Поэтому в качестве основного метода исследования сложных систем используют метод машинного эксперимента – универсальный метод познания, основанный на использовании системных имитационных моделей. Проблемы разработки системных моделей являются предметом изучения системного анализа, в котором выделяется теория эффективности – основа для количественной оценки альтернативных систем.
ХХI век – век компьютеров, интернета и информационно-коммуникационных технологий. Нет ни одной деятельности, где бы ни использовали ЭВМ с её многочисленными функциями и возможностями. В первую очередь она нашла применение в образовании. Современная система образования с помощью информационных технологий является открытой и доступной для получения образовательных услуг. Новые информационные технологии предоставляют средства для более эффективного планирования учебного процесса, использования различных источников и видов информации, мобильности и открытости содержания обучения.
Одной из новейших технологий преподавания может стать предлагаемая автоматизированная система обучения, которая представляет собой совокупность диалоговых программ и может быть использована как для комплексного обучения и контроля знаний по любой учебной дисциплине, так и для выработки у студентов конкретных умений и навыков в определённом фрагменте, охваченном автоматизированным курсом.
Внедрение компьютерных технологий в систему образования ставит новые задачи перед обучающими организациями. Актуальной задачей является осознание необходимости существенных перемен в традиционных образовательных системах и технологиях, и, соответственно, разработки новых путей их развития. Система образования в информационном обществе должна стать гибкой, ориентироваться на потребности учебного процесса и динамично перестраиваться.
Стандартная методика преподавания предполагает, что из года в год преподаватель ведет одни и те же лекции, периодически зарисовывая одни и те же схемы, графики, формулы и так далее, что ведет к потере большого количества бесценного времени.
Внедрение информационных технологий в обучение с помощью мультимедийных курсов, лекций в электронном виде, презентации, интернета, автоматизированных систем обучения (АСО) увеличивает быстродействие самого процесса обучения и его качество, так как хорошая наглядность изложенного материала ведет к хорошему усвоению студентами.
В настоящее время на мировом рынке имеются тысячи обучающих программ по разным дисциплинам. Количество учебных программ, разработанных в нашей стране, определить невозможно, так как систематический учёт их не производится. В последнее время разрабатываются учебные программы, охватывающие значительную часть курса. Такие программы направлены на осуществление не только ближайших учебных целей обучения, кроме того, в них более полно реализуется индивидуальный подход к учащемуся.
Современное состояние рынка обучающих программ (ОП) характеризуются тем, что, с одной стороны, имеются программы, в которых с максимальной полнотой реализуются дидактические возможности компьютера, с другой – растет число примитивных ОП, которые не только не повышают эффективность обучения, но нередко дают отрицательный результат. Прежде всего, пора переходить к созданию АСО, которые должны стать частью учебного процесса, органически войти в его состав и найти применение при проведении всех традиционных форм обучения – практических и лабораторных занятий, контроля знаний, самостоятельной работе учащихся. Что и требовалось доказать.
Переход к автоматизированным методам обучения позволяет: устранить информационные перегрузки преподавателей и студентов - одну из проблем современного ВУЗа, повысить эффективность и улучшает качество оперативного контроля обучения.
В настоящее время системный подход к обучению признан в международной практике наиболее эффективным средством достижения требуемого уровня компетентности персонала АЭС, а также обеспечения качества подготовки. Благодаря заложенным в системный подход к обучению (СПО) расширенным возможностям контроля и отчётности, административное руководство, а также регулирующий орган получают инструмент для применения стандартных процедур и процессов обеспечения качества на любой стадии учебного процесса. Это даёт большую степень уверенности в обеспечении квалификации и компетентности персонала, чем оценка, основанная только на результатах экзамена. Таким образом, СПО – это непрерывный процесс приобретения, поддержания и развития квалификации персонала, обладающий механизмами постоянного и периодического контроля и усовершенствования.
Глава 1. Краткая характеристика проектируемой системы
1.1 Постановка задачи и краткое описание системы
Составить объектно-ориентированную программную систему авто-навигатор машины, который выбирает оптимальный ражим работы двигателя автомобиля, то есть число оборотов, расход топлива и т.д.
Сегодня очень быстрыми темпами развиваются и совершенствуются технологии для навигации с помощью систем глобального позиционирования. Каждому человеку доступны любые из многочисленных GPS-навигаторов – от самого простого до самого сложного и точного. С помощью GPS-устройств решаются и упрощаются многие задачи в различных отраслях деятельности человека.
Глобальная система позиционирования GPS – это система, позволяющая с точностью не меньше нескольких десятков метров определить местоположение объекта, то есть его широту, долготу и высоту над уровнем моря, а также направление и скорость его движения. Кроме того, с помощью GPS можно определить время с точностью до 1 наносекунды.
Основные задачи, решаемые навигацией - выбор безопасного и кратчайшего пути, определение места, скорости и направления движения, оценка точности этих определений. GPS состоит из совокупности определённого количества искусственных спутников Земли и наземных станций слежения, объединённых в общую сеть. В качестве пользовательского оборудования служат индивидуальные GPS-приёмники, способные принимать сигналы со спутников и по полученной информации вычислять своё местоположение.
Важной частью любого GPS-навигатора является обычный приемник, работающий на фиксированной частоте и постоянно "прослушивающий" сигналы, передаваемые этими спутниками. Каждый из спутников постоянно излучает радиосигнал, в котором содержатся данные о параметрах его орбиты, состоянии бортового оборудования и о точном времени. Изо всей этой информации данные о точном бортовом времени являются наиболее важными: GPS-приемник с помощью встроенного процессора вычисляет промежуток времени между посылкой и получением сигнала, затем умножает его на скорость распространения радиоволн и т.о. узнает расстояние между спутником и приемником. Результатом последующих вычислений являются координаты вашего местоположения.
1.3 Описание работы системы
В общем виде система имеет простой понятный интерфейс. Программа дает возможность просмотреть такую систему, как авто-навигатор машины, которая дает возможность выбрать оптимальный режим работы двигателя автомобиля, то есть число оборотов, расход топлива. Интерфейс программы, приведенный на рисунке 1.
Рисунок 1. - Интерфейс программы
В данной работе представлена реализация работы программы, которая позволяет выбрать несколько пунктов и задать их координаты. А так количество топлива и число оборотов двигателя. После ввода всех данных по нажатию кнопки "начать движение" ,происходить моделирования всей работы системы.
1.4 Описание и разработка классов входящих в систему
Для хранения разнотипной информации о физическом объекте нужна специальная структура. В С++ структура, которая может объединить несколько разнотипных переменных в одном объекте, называется классом.
Класс в С++ это платформа для перевода абстракции в тип определенный пользователем объединяющей в себе представления данных и методы обрабатывающие эти данные.
Описанные структуры классов позволяют составить программный комплекс. Каждая функция-член класса должная реализовывать соответствующую функцию системы, то есть метод работы класса. Реализация методов классов позволяет организовать взаимодействие экземпляров классов, называемых объектами системы. Все методы одного класса называются интерфейсом класса. Он позволяет выполнять обмен данными в системах.
Программный код составлен с объектно-ориентированным подходом с написанием классов, отвечающих за работу всей системы.
Для разрабатываемой системы используются следующие классы:
Класс Cmap; отвечает за местоположение на карте.
class Cmap {
private :
int ** karta;
int n,m;
public :
TImage *Image;
Класс Ccar отвечает за объкт-машина и за её передвижение
class Ccar {
private:
bool b;
bool vertical;
public :
int v;
int fuel;
int target;
CPoint *point;
TImage *Image;
TEdit *Edit;
TProgressBar *ProgressBar;
TShape *Shape;
TLabel *Label;
int x,y;
int chislo;
Класс CPoint
class CPoint {
private : int x,y;
public :
CPoint();