Разработка объектно-ориентированной модели информационной подсистемы для деканата ВУЗа (учет успеваемости студентов)
Дипломная работа - Компьютеры, программирование
Другие дипломы по предмету Компьютеры, программирование
пкой мыши и открыть спецификацию объектов.
3. Выбрать в качестве языка генерации кода приложения С++.
. Выбрать все объекты на диаграмме компонентов.
. Выбрать Tools - C++ - Code Generation в главном меню (рисунок 9.1).
Рисунок 9.1 - Пункт меню для генерации программного кода на языке С++
В случае успешной генерации кода появится окно с сообщением, как на рисунке 9.2.
Рисунок 9.2 - Окно с сообщением об успешной генерации программного кода
Выводы
1. В рамках курсового проекта был сгенерирован программный код Rose C++ для трех классов подсистемы.
. Программный код генерировался для всех классов сразу.
ЗАКЛЮЧЕНИЕ
Главной целью курсовой работы является разработка информационной подсистемы для деканата вуза. Для решения данной задачи мы использовали CASE - средство Rational Rose. Построенная модель поможет деканату полностью автоматизировать учет успеваемости студентов, работать быстрее и эффективнее и с меньшими затратами времени и средств, чем без использования современных технологий. Автоматизированные системы все сильнее внедряются в процесс образования. Таким образом, мы имеем все перспективы перехода на полную автоматизацию различных процессов и повсеместный переход на совершенные информационные технологии.
Разработанная объектно-ориентированная модель информационной подсистемы содержит одну диаграмму прецедентов, шесть диаграмм последовательности, одну диаграмму классов, компонентов, сотрудничества, и три диаграммы состояний.
В курсовом проекте сгенерирован программный код для языка С++. Программный код сгенерирован Rational Rose для всех классов информационной подсистемы.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1.Буч, Г. Язык UML для пользователя: Пер. с англ [Текст]/Г. Буч, Д. Рамбо, А. Джекобсон. - М.: ДМК, 2000. - 432 с., ил. (Серия для программистов)
.Боггс, У. UML и Rational Rose: Пер. с англ [Текст]/ У. Боггс, М. Боггс. - М.: Издательство Лори, 2000. - 581 с.
.Буч Г., Рамбо Д., Джекобсон А. UML : специальный справочник. - СПб.: Питер, 2002.-432с., ил.
.Ларман, К. применение UML и шаблонов проектирования: Пер. с англ. [Текст]/ К. Ларман - М.: Издательский дом Вильямс, 2001. - 496 с. ил.
.ЕСКД: ГОСТ 2.104 - 68 Основные надписи.
.ЕСКД: ГОСТ 2.106 - 68 Текстовые документы.
.ЕСКД: ГОСТ 2.109 - 73 Основные требования к чертежам.
.ЕСКД: ГОСТ 2.301 - 68 Форматы.
.ЕСКД: ГОСТ 2.101 - 81 Шрифты чертежные.
.ЕСКД: ГОСТ 2.316 - 68 Правила нанесения на чертежах надписей, технических требований и таблиц.
.ЕСКД: ГОСТ 2.321 - 84 Обозначения буквенные.
ПРИЛОЖЕНИЕ А
Сгенерированный Rational Rose листинг кода приложения на языке С++
Source File: Account.h
//## begin module%1.7%.codegen_version preserve=yes
// Read the documentation to learn more about C++ code generator
// versioning.
//## end module%1.7%.codegen_version
//## begin module0234BF0100.cm preserve=no
// %X% %Q% %Z% %W%
//## end module0234BF0100.cm
//## begin module0234BF0100.cp preserve=no
//## end module0234BF0100.cp
//## Module: Account0234BF0100; Package specification
//## Subsystem:
//## Source file: C:\Program Files\Rational\Rose\C++\source\Account.h
#ifndef Account_h
#define Account_h 1
//## begin module0234BF0100.additionalIncludes preserve=no
//## end module0234BF0100.additionalIncludes
//## begin module0234BF0100.includes preserve=yes
//## end module0234BF0100.includes
// RegInfo
#include "RegInfo.h"
// DataBase
#include "DataBase.h"
//## begin module0234BF0100.declarations preserve=no
//## end module0234BF0100.declarations
//## begin module0234BF0100.additionalDeclarations preserve=yes
//## end module0234BF0100.additionalDeclarations
//## begin Account01013D0230.preface preserve=yes
//## end Account01013D0230.preface
//## Class: Account01013D0230
//## Category:
//## Persistence: Transient
//## Cardinality/Multiplicity: n
Account
{
//## begin Account01013D0230.initialDeclarations preserve=yes
//## end Account01013D0230.initialDeclarations
:
//## Constructors (generated)();
(const Account &right);
//## Destructor (generated)
~Account();
//## Assignment Operation (generated)& operator=(const Account &right);
//## Equality Operations (generated)operator==(const Account &right) const;
operator!=(const Account &right) const;
//## Other Operations (specified)
//## Operation: Autorization0104F0025AAutorization ();
//## Operation: DataRequest01054000E5DataRequest ();
//## Operation: GetData02152E0060GetData ();
//## Operation: DataCheck01055503A6DataCheck ();
//## Operation: EnterSystem0215550173EnterSystem ();
//## Get and Set Operations for Associations (generated)
//## Association: 01018A0088
//## Role: Account::01018A01E1RegInfo * get_the_RegInfo () const;set_the_RegInfo (RegInfo * value);
//## Association: 021F3303AB
//## Role: Account::021F3401BADataBase * get_the_DataBase () const;set_the_DataBase (DataBase * value);
// Additional Public Declarations
//## begin Account01013D0230.public preserve=yes
//## end Account01013D0230.public
:
// Additional Protected Declarations
//## begin Account01013D0230.protected preserve=yes
//## end Account01013D0230.protected
:
//## Get and Set Operations for Class Attributes (generated)
//## Attribute: \324\340\354\350\353\350\377010199020EString get_XXXXXXX () const;set_XXXXXXX (String value);
//## Attribute: \310\354\3770104D20201String get_XXX () const;set_XXX (String value);
//## Attribute: \316\362\367\345\361\362\342\3560104E10119String get_XXXXXXXX () const;set_XXXXXXXX (String value);
// Additional Private Declarations
//## begin Account01013D0230.private preserve=yes
//## end Account01013D0230.private
: //## implementation
// Data Members for Class Attributes
//## begin Account::\324\340\354\350\353\350\377010199020E.attr preserve=no private: String {U}XXXXXXX;
//## end Account::\324\340\354\350\353\350\377010199020E.attr
//## begin Account::\310\354\3770104D20201.attr preserve=no private: String {U}XXX;
//## end Account::\310\354\3770104D20201.attr
//## begin Account::\316\362\367\345\361\362\342\3560104E10119.attr preserve=no private: String {U}XXXXXXXX;
//## end Account::\316\362\367\345\361\362\342\3560104E10119.attr
// Data Members for Associations
//## Association: 01018A0088
//## begin Account:: 1RHN}*the_RegInfo;
//## end Account::01018A0