Курсовая работа
Курсовая работа состоит из одного задания. Необходимо разработать систему хранения и обслуживания информации объекта согласно индивидуальному варианту (см. далее перечень вариантов).
Номер варианта выбирается по двум последним цифрам пароля.
Задание:Написать программу, используя объектно-ориентированный подход, которая описывает объект и его основные характеристики и действия.
Описание классов необходимо оформить в виде отдельного модуля. Иерархия классов должна включать минимум три класса, один из которых – абстрактный.
Программа должна быть составлена на языке Java и должна содержать все требуемые структуры для реализации системы.
Рекомендации по выполнению курсовой работы
Проанализируйте свой объект. Какие другие объекты являются вспомогательными? Продумайте необходимые поля и методы и опишите классы этих объектов. Создайте иерархию. Количество объектов описывающих Вашу область (согласно варианту) должно составлять как минимум (можно и больше) 3 различных объекта.
Исключите из программы прямое обращение к полям. Для работы с внутренними полями (private) используйте только методы класса. Все действия, требуемые от объекта Вашего варианта, необходимо представить в структуре классов программы (подробное выполнение самих методов не нужно)
Требования к программе. Критерий оценки.
Программа должна быть написана в соответствии с заданием своего варианта, в ней должны быть правильно применены все изученные принципы ООП, и построена корректная, соответствующая заданию, структура классов.
В зависимости от степени выполнения изложенных требований Вам будет поставлена оценка за курсовую работу по 5-ти бальной шкале.
Перечень вариантов и текст задания:1. Цветы. Разработать систему, которая позволила заказать и отослать цветы бабушке, живущей в другом городе.
2. Банковский автомат. Разработать систему, связанную с обслуживанием банковского автомата по выдаче денег по кредитной карточке.
3. Телефонная станция. Определить перечень услуг предоставляемой телефонной станцией с точки зрения пользователя телефона и с точки зрения обслуживающего персонала.
4. Почта. Определить перечень услуг предоставляемых почтовым отделением с точки зрения клиента, и сточки зрения работника почты.
5. Абитуриент. Разработать систему, которая позволяла бы осуществлять ввод информации об абитуриенте, отслеживать сдачу им экзаменов и в результате выдавать необходимую информацию. Предусмотреть выдачу информации необходимой для абитуриента.
6. Отдел кадров. Разработать систему, связанную с автоматизацией работы отдела кадров, предусмотреть наличие информации о трех видов сотрудников: студентов, преподавателей и учебно-вспомогательного персонала.
7. Деканат. Разработать систему деканат для работы со студентами, предусмотреть выдачу необходимой информации для студентов и преподавателей.
8. Кафедра. Разработать систему кафедра для работы со студентами, предусмотреть выдачу необходимой информации для студентов и преподавателей.
9. Магазин. Разработать систему, связанную с обслуживанием покупателей в магазине, предусмотреть заказ товаров и обслуживание покупателей.
10. Больница. Разработать систему, связанную с регистрацией больных, предусмотреть занесение информации о лечащем враче диагнозе, номере палаты, временем болезни и т.д.
11. Клуб собаководства. Разработать систему по учету собаководов. Предусмотреть ведение личной карточки владельца и питомцев, деление на породы собак, возможность выбора и просмотра по различным критериям: порода, проживание владельца, возраст, награды и т.п.
12. Коллекция цветов. Разработать систему для цветоводов-любителей с возможностью ведения каталога видов цветов (вид, название , шифр, описание, условия выращивания), адресов других коллекционеров и данных о их коллекциях.
13. Видео прокат. Разработать систему для салона видео проката с возможностью ведения записей о кассетах (тип записи, когда снят, выпущен в прокат, стоимость проката, стоимость утери/покупки, время нахождения в салоне) и учета проката (список всех, бравших кассету, дата возврата, взнос, дата аренды).
14. Магазин подарков. Разработать систему учета продаж/закупок/наличия товара в магазине. Предусмотреть возможность предварительного заказа подарков, ведение статистики заказов/покупок/продаж, учесть возможность различных видов расчетов.
15. Оптовая торговля. Разработать систему учета продаж/поступлений на склад/наличия товара на складе. Предусмотреть возможность предварительного заказа товара, ведение статистики заказов/покупок/продаж, ведение базы поставщиков/заказчиков.
16. Аптека. Разработать систему учета продаж/закупок/наличия препаратов в аптеке. Предусмотреть возможность продажи препаратов по рецептам, ведение баланса покупок/продаж.
17. Продажа ЖД билетов. Разработать систему кассового зала ЖД вокзала. Предусмотреть три вида обращений: бронирование, покупка в кассе, отказ. Вести статистику покупок/отказов по направлениям и общей загруженности направления.
18. Продажа авиа билетов. Разработать систему кассового зала аэропорта. Предусмотреть три вида обращений: бронирование, покупка в кассе, отказ. Вести статистику покупок/отказов по направлениям и общей загруженности направления для различных авиакомпаний.
19. Детский клуб (кружки, секции …). Разработать систему статистического анализа работы детского клуба. Предусмотреть возможность добавления/удаления/переименования кружков, ведение расписания занятий и посещаемости кружка; получение информации о составе занимающихся групп, преподавателях и т.д.
20. Библиотека. Разработать систему для ведения каталога книг/читателей, поисковой системы, системы предварительных заказов на приобретение книг, а так же системы предварительной записи на использование дефицитной литературы и просмотра очереди.
21. Рекламное агентство. Разработать систему для ведения бухгалтерии рекламного агентства. Предусмотреть учет заказчиков, посредников, исполнителей.
22. Объявления в газете. Разработать систему для создания рекламных страниц газеты. Предусмотреть учет рекламодателей (юридических и физических лиц), различные разделы рекламы, систему скидок на цену объявлений по различным категориям.
23. Продажа недвижимости. Разработать систему для продажи/покупки недвижимости, ведение базы продавцов и покупателей с регистрацией покупки/продажи, регистрацией номера свидетельства о праве собственности. Предусмотреть возможность выдачи статистики о изменении стоимости квадратного метра по районам города за заданный период времени.
24. Валютные операции. Разработать систему для продажи/покупки различных валют, ведение базы продавцов и покупателей валют с регистрацией номера счета-квитанции о покупке (продаже). Предусмотреть возможность выдачи статистики о изменении курса валют за заданный период времени.
25. Домашняя бухгалтерия. Разработать систему для ведения домашней бухгалтерии одной семьи. Предусмотреть различные типы доходов и расходов, ведение баланса, заполнение налоговых документов, счетов.
26. Регистрация нарушений в ГАИ. Разработать систему для регистрации нарушений, предусмотреть ведение записей о виде нарушения, схеме ДТП, номере машины, ее модели, года выпуска, владельце.
27. Регистрация машин в ГАИ. Разработать систему для выдачи информации о государственном регистрационном знаке, марке, модели, типе транспортного средства (ТС), идентификационном номере машины, годе выпуска, номере двигателя, номере кузова владельце, предыдущем владельце, номере техпаспорта, серии и номере свидетельства о регистрации ТС и дате регистрации.
28. Система тестирования в ГАИ. Разработать систему для сдачи экзамена в ГАИ. Предусмотреть ведение записей о сдавших и о не сдавших экзамен, выдачу экзаменационных тестов в случайном порядке.
=============================================Лабораторная работа №1
Тема: построение UML диаграммы вариантов использования и диаграммы классов, построить объектную структуру на языке Java на основе созданных диаграмм.
Задание: для диаграммы вариантов использования нужно отобразить на диаграмме следующие основные действия с объектом «компьютер»: ввод программы с клавиатуры, подсоединение внешнего устройства (флэшки), просмотр результата работы программы на мониторе.
На диаграмме классов необходимо отобразить класс объекта «компьютер», основные поля класса (номер компьютера, расположение-аудитория), методы класса, перечисленные в диаграмме вариантов использования, а также отобразить классы, представляющие собой основные компоненты (части) объекта «компьютер»: системный блок, монитор, клавиатура, мышка. Созданные классы необходимо соединить между собой ассоциациями с указанием множественности на концах ассоциаций.
Для построения программы необходимо использовать объекты и UML диаграмму классов, построенные ранее. Каждый класс диаграммы необходимо представить в виде самостоятельного (отдельного) класса.
Лабораторная работа №2
Тема: Пакеты, внутренние и вложенные классы
Задание: Необходимо расширить построенную объектную структуру с внедрением внутренних классов.
Лабораторная работа №3
Тема: Коллекции объектов
Задание: преобразование структуры программы для представления информации о наборе объектов. Расширение программы должно включать обязательные элементы объявления и создания коллекции для хранения набора объектов и добавление в коллекцию нескольких объектов. Также для каждого элемента коллекции необходимо выполнить обращение к методу объекта.
Практическое задание №1
Практическое задание №1
Тема: язык Java и инструменты программирования
Задание: создание небольшой программы на языке Java, компиляция программы и ее выполнение
Практическое задание №2
Тема: Алгоритмы и способы их описания
Задание: изучение изложенного материала на примере алгоритма сортировки. Для алгоритма сортировки пузырьком необходимо построить блок-схему основных действий.>
Практическое задание №3
Тема: Обработка ошибок и исключительных ситуаций
Задание: При наборе программы с клавиатуры необходимо выполнить запрос информации о нажатой клавише и выполнить безопасное преобразование введенной строки в целое число и в случае ошибки вывести сообщение.