Описание входной и выходной информации
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
ФГО СПО ТУЛЬСКИЙ ЭКОНОМИЧЕСКИЙ КОЛЛЕДЖ
по дисциплине «Технология разработки программного продукта»
На тему: Разработка программы ”Успеваемость по колледжу”.
Работу выполнил: Работу проверил:
студент группы 427-П
_______/Агапов А.С / ________/ Бардина И.Н. /
“_____” _______2010 “_____” _______2010
Щёкино
МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РФ
ФГО СПО ТУЛЬСКИЙ ЭКОНОМИЧЕСКИЙ КОЛЛЕДЖ
Индивидуальное задание
по выполнению курсового проекта по дисциплине «Технология разработки программного продукта»
- Студенту 4 курса, специальность: 230105
Ф.И.О. Агапов Александр Сергеевич
Тема курсового проекта Разработка программы ”Успеваемость по колледжу”.
Объект исследования: ФГО СПО Тульский Экономический колледж.
Содержание курсового проекта
Введение
I Основная часть:
1.1. Постановка задачи
1.1.1.Сущность задачи
1.2.Описание входной и выходной информации
1.3.Описание программно-технических средств
1.4.Программно-технические средства, необходимые для разработки программы
1.5.Программно-технические средства при использовании программы
1.6.Тестирование программы
1.7.Описание программы
Заключение
Список рекомендуемой литературы
1.Рудаков А.В. Технология разработки программных продуктов: учеб. Пособие для студ. Сред.проф. образования / А.В. Рудаков. – М. :
Издательский центр «Академия», 2006. – 208 с
2.Культин Н.Б. Основы программирования в Delphi-7-/ Н.Б. Культин .-СПб:БХВ-Петербург, 2005.-608 с.:ил
Приложение: схема работы системы
Задание выдал:______________ ____________ _____________
(Ф.И.О. преподавателя) (подпись) (дата)
Задание принял:______________ ____________ _____________
(Ф.И.О. студента) (подпись) (дата)
СОДЕРЖАНИЕ
Наименование тем и разделов
| Страницы
| Введение
|
| 1.Основная часть:
|
| 1.1. Постановка задачи
|
| 1.1.1.Сущность задачи
|
| 1.2. Описание входной и выходной информации
|
| 1.3.Описание программно-технических средств
|
| 1.3.1.Программно-технические средства, необходимые для разработки программы
|
| 1.3.2. Программно-технические средства при использовании программы
|
| 1.4.Тестирование программы
|
| 1.5.Описание программы
|
| Заключение
|
| Список литературы
|
| Приложения
|
| Рецензия
|
|
Введение
Качественным шагом в развитии методов структурного программирования стало изобретение объектно-ориентированного программирования (языков SmallTalk, C++, Turbo Pascal и др.). Программы стали строиться не из чудовищных по размеру процедур и функций, перерабатывающих громоздкие структуры данных, а из сравнительно простых кирпичиков-объектов, в которых были упрятаны данные и подпрограммы их обработки. Гибкость объектов позволила очень просто приспосабливать их для собственных целей, прилагая для этого минимум усилий. Программисты обзавелись готовыми библиотеками объектов, но, как и раньше, создание пользовательского интерфейса требовало уйму времени и сил, особенно когда программа должна была работать под управлением популярной операционной системы Windows и иметь графический пользовательский интерфейс.С изобретением визуального программирования, первой ласточкой которого была среда разработки Visual Basic, создание графического пользовательского интерфейса стало под силу даже новичку. В среде Visual Basic можно было быстро создать приложение для операционной системы Windows, в котором были все присущие графическому пользовательскому интерфейсу элементы: окна, меню, кнопки, поля ввода и т.д. Все эти элементы превратились в строительные блоки программы — компоненты — объекты, имеющие визуальное представление на стадии проектирования и во время работы.Проектирование пользовательского интерфейса упростилось на порядок, однако, для профессиональных программистов язык Basic оказался явно слабоват. Отсутствие в нем контроля типов данных и механизма их расширения оказалось камнем преткновения на пути создания серьезных программ. Создание нестандартных компонентов в среде Visual Basic было крайне затруднено (для этого приходилось прибегать к другим средствам разработки, в частности, к языку C++). В общем, среда Visual Basic отлично подходила для создания прототипов приложений, но не для разработки коммерческих программных продуктов. Мечта программистов о среде программирования, в которой бы простота и удобство сочетались с мощью и гибкостью, стала реальностью с появлением среды Delphi. Она обеспечивала визуальное проектирование пользовательского интерфейса, имела развитый объектно-ориентированный язык Object Pascal (позже переименованный в Delphi) и уникальные по своей простоте и мощи средства доступа к базам данных. Язык Delphi по возможностям значительно превзошел язык Basic и даже в чем-то язык C++, но при этом он оказался весьма надежным и легким в изучении (особенно в сравнении с языком C++). В результате, среда Delphi позволила программистам легко создавать собственные компоненты и строить из них профессиональные программы. Среда оказалась настолько удачной, что по запросам любителей C++ была позже создана среда C++Builder — клон среды Delphi на основе языка C++ (с расширенным синтаксисом).
Основным достоинством объектно-ориентированного программирования по сравнению с модульным программированием является "более естественная" декомпозиция программного обеспечения, которая существенно облегчает его разработку. Это приводит к более полной локализации данных и интегрированию их с подпрограммами обработки, что позволяет вести практически независимую разработку отдельных частей (объектов) программы. Кроме этого, объектный подход предлагает новые способы организации программ, основанные на механизмах наследования, полиморфизма, композиции, наполнения. Эти механизмы позволяют конструировать сложные объекты из сравнительно простых. В результате существенно увеличивается показатель повторного использования кодов и появляется возможность создания библиотек классов для различных применений. Можно дать обобщающее определение: объект ООП — это совокупность переменных состояния и связанных с ними методов (операций). Упомянутые методы определяют, как объект взаимодействует с окружающим миром.
Под методами объекта понимают процедуры и функции, объявление которых включено в описание объекта и которые выполняют действия. Возможность управлять состояниями объекта посредством вызова методов в итоге и определяет поведение объекта. Эту совокупность методов часто называют интерфейсом объекта.
Инкапсуляция — это механизм, который объединяет данные и методы, манипулирующие этими данными, и защищает и то и другое от внешнего вмешательства или неправильного использования. Когда методы и данные объединяются таким способом, создается объект.
Применяя инкапсуляцию, мы защищаем данные, принадлежащие объекту, от возможных ошибок, которые могут возникнуть при прямом доступе к этим данным. Кроме того, применение этого принципа очень часто помогает локализовать возможные ошибки в коде программы. А это намного упрощает процесс поиска и исправления этих ошибок. Можно сказать, что инкапсуляция подразумевает под собой скрытие данных, что позволяет защитить эти данные. Однако применение инкапсуляции ведет к снижению эффективности доступа к элементам объекта. Это обусловлено необходимостью вызова методов для изменения внутренних элементов (переменных) объекта. Но при современном уровне развития вычислительной техники эти потери в эффективности не играют существенной роли.
Наследование — это процесс, посредством которого один объект может наследовать свойства другого объекта и добавлять к ним черты, характерные только для него. В итоге создаётся иерархия объектных типов, где поля данных и методов "предков" автоматически являются и полями данных и методов "потомков".
Смысл и универсальность наследования заключается в том, что не надо каждый раз заново ("с нуля") описывать новый объект, а можно указать "родителя" (базовый класс) и описать отличительные особенности нового класса. В результате новый объект будет обладать всеми свойствами родительского класса плюс своими собственными отличительными особенностями.
Полиморфизм — это свойство, которое позволяет одно и тоже имя использовать для решения нескольких технически разных задач. Полиморфизм подразумевает такое определение методов в иерархии типов, при котором метод с одним именем может применяться к различным родственным объектам. В общем смысле концепцией полиморфизма является идея "один интерфейс — множество методов". Преимуществом полиморфизма является то, что он помогает снижать сложность программ, разрешая использование одного интерфейса для единого класса действий. Выбор конкретного действия, в зависимости от ситуации, возлагается на компилятор.
Современная технология программирования — компонентный подход, который предполагает построение программного обеспечения из отдельных компонентов — физически отдельно существующих частей программного обеспечения, которые взаимодействуют между собой через стандартизованные двоичные интерфейсы. В отличие от обычных объектов объекты-компоненты можно собрать в динамически вызываемые библиотеки или исполняемые файлы, распространять в двоичном виде (без исходных текстов) и использовать в любом языке программирования, поддерживающем соответствующую технологию. На сегодня рынок объектов стал реальностью. Это позволяет программистам создавать продукты, хотя бы частично состоящие из повторно использованных частей, т.е. использовать технологию, хорошо зарекомендовавшую себя в области проектирования аппаратуры.
Постановка задачи
Сущность задачи
Каждая группа колледжа по итогам сессии подаёт сведения об успеваемости, которые сохраняются в файле следующей структуры : номер группы, курс, номер специальности, количество человек в группе, количество допущенных студентов к экзаменам, количество студентов сдавших экзамены на 5,количество студентов сдавших экзамен на 5 и 4, количество студентов сдавших экзамен на 4 и 3, количество студентов сдавших экзамен только на 3, средний балл по группе, процент качества, процент успеваемости, количество задолжников, фамилия, имя, отчество задолжника, предметы по которым имеются задолженности.
Вывод информации по колледжу о задолжниках: номер группы, номер специальности, количество задолжников, фамилия, имя, отчество задолжника, предметы по которым имеются задолжности.
Вывод информации об успеваемости по группам в разряде специальностей: номер специальности, номер группы, средний балл по группе, процент качества, процент успеваемости.
Вывод информации об успеваемости по группам в разряде курсов и специальностей: номер специальности, курс, номер группы, средний балл по группе, процент качества, процент успеваемости.
Периодичность решения задачи два раза в год. Программа разработана в среде Delphi 7.0.
Описание входной и выходной информации
Входная информация
Таблица 1
Описание файла «Успеваемость по колледжу»
Наименование
реквизита
| Идентификатор
| Тип
| Длина
в знаках
| Диапазон изменений
| Номер группы
| NMG
| String
|
|
| Курс
| KS
| Integer
|
|
| Номер специальности
| NMR_SPEC
| longint
|
|
| Количество человек в группе
| Klv_ch_v_gp
| Integer
|
|
| Количество сдавших на 5
| Klv_sdav_5
| Integer
|
|
| Количество сдавших на 4 и 5
|
Klv_sdav_4_5
| Integer
|
|
| Количество на 3 и 4
| Klv_sdav_3_4
| Integer
|
|
| Количество на 3
| Klv_sdav_3
| Integer
|
|
| Средний балл по группе
| Sr_gp
| Integer
|
|
| Процент качества
| Pc_chv
| Real
|
|
| Процент успеваймости
| Pc_usp
| Real
|
|
| Количество задолжников
| Klv_dol
| Real
|
|
| Фамилия
| Fam
| String
|
|
| Имя
| Name
| String
|
|
| Отчество
| Oth
| String
|
|
| Предметы задолжности
| Pr_zadolg
| String
|
|
|
Выходная информация:
Таблица с перечнем компонент и указанием их назначения.
Таблица 2
Form1:
Наименование компонента
| Назначение компонента
| MainMenu1
| Создание контекстного меню на форме c элементами:
1. Файл –Успеваемость по колледжу.
2. Ведомость - Задолжники.
3. Ведомость – Успеваемость по специальности.
4. Ведомость – Успеваемость по курсам.
5. Выход.
|
Таблица 3
Form2:
Наименование компонента
| Назначение компонента
| StringGrid1
| Вывод записей сформированного файла.
| Button1
| Формирование файла.
| Button2
| Чтение файла и вывод записей в StringGrid1.
| Button3
| Добавление записей в файле.
| Button4
| Удаление записей в файле.
| Button5
| Сортировка записей .
| Button6
| Очистка StringGrid1.
| Button7
| Изменение существующих записей в файле.
| Button8
| Выход из формы.
| Edit1
| Номер удаляемой записи в файле по порядку. Количество добавляемых записей в файл. Количество добавляемых записей в файл. Номер изменяемой записей в файле
|
Таблица 4
Form3:
Наименование компонента
| Назначение компонента
| StringGrid1
| Вывод записей сформированного файла.
| Button1
| Чтение файла и вывод записей в StringGrid1.
| Button2
| Выход из формы.
| Label
| Надпись.
|
Таблица 5
Form4:
Наименование компонента
| Назначение компонента
| StringGrid1
| Вывод записей сформированного файла.
| Button1
| Чтение файла и вывод записей в StringGrid1.
| Button2
| Выход из формы.
| Label
| Надпись.
|
Таблица 6
Form5:
Наименование компонента
| Назначение компонента
| StringGrid1
| Вывод записей сформированного файла.
| Button1
| Чтение файла и вывод записей в StringGrid1.
| Button2
| Выход из формы.
| Label
| Надпись.
|
Таблица с перечнем компонент, значением свойств компонент
Таблица 7
Form1:
Наименование компонента
| Наименование свойства компонента
| Значение свойства компонента
| MainMenu1
| ITEMS
| 1)Файл –Успеваемость по колледжу.
2)Ведомость - Задолжники.
3)Ведомость – Успеваемость по специальности.
4)Ведомость Успеваемость по курсам.
5)Выход.
|
Таблица 8
Form2:
Наименование компонента
| Наименование свойства компонента
| Значение свойства компонента
| StringGrid1
| Optionà GoEditing
FixedCols
RowCount
ColCount
| True
| Button1
| Caption
| Формирование
| Button2
| Caption
| Чтение
| Button3
| Caption
| Добавление записей
| Button4
| Caption
| Удаление записей
| Button5
| Caption
| Сортировка записей
| Button6
| Caption
| Очистка записей
| Button7
| Caption
| Изменение записей
| Button8
| Caption
| Выход
| Edit1
| Text
| null
|
Таблица 9
Form3:
Наименование компонента
| Наименование свойства компонента
| Значение свойства компонента
| StringGrid1
| Optionà GoEditing
FixedCols
RowCount
ColCount
| True
| Button1
| Caption
| Чтение файла и вывод записей в StringGrid1
| Button2
| Caption
| Выход
|
Таблица 10
Form4:
Наименование компонента
| Наименование свойства компонента
| Значение свойства компонента
| StringGrid1
| Optionà GoEditing
FixedCols
RowCount
ColCount
| True
| Button1
| Caption
| Чтение файла и вывод записей в StringGrid1
| Button2
| Caption
| Выход
|
Таблица 11
Form5:
Наименование компонента
| Наименование свойства компонента
| Значение свойства компонента
| StringGrid1
| Optionà GoEditing
FixedCols
RowCount
ColCount
| True
| Button1
| Caption
| Чтение файла и вывод записей в StringGrid1
| Button2
| Caption
| Выход
|
Не нашли, что искали? Воспользуйтесь поиском по сайту:
©2015 - 2024 stydopedia.ru Все материалы защищены законодательством РФ.
|