- •1. Краткая характеристика предметной области
- •2. Создание диаграммы прецедентов
- •3. Создание диаграммы последовательности
- •4. Создание диаграммы сотрудничества
- •5. Создание диаграммы классов
- •6. Добавление деталей к описаниям операций и определение атрибутов классов. Добавление связей между классами
- •7. Создание диаграммы состояний для классов и диаграммы компонентов
- •8. Создание диаграммы размещения
8. Создание диаграммы размещения
Диаграмма размещения показывает физическое расположение сети и местонахождение в ней различных компонентов. В нашем проекте информационная подсистема для деканата состоит из ряда подсистем, выполняемых на отдельных физических устройствах, называемых узлами (node).
Для создания диаграммы размещения добавим на нее с панели инструментов элемент «Processor», назовем его «StudentCountServer». Добавим сервер базы данных, несколько клиент-компьютеров и принтер. Следующим шагом является добавление соединений между устройствами системы. Соединение добавляется с помощью инструмента «Connection». Конечный вариант диаграммы представлен на рисунке 8.1.
Рисунок 8.1 - Диаграмма размещения информационной подсистемы для
деканата ВУЗа
Выводы
Информационная подсистема StudentCount способна работать в локальной сети. Ей могут пользоваться одновременно несколько пользователей.
Все данные студентов хранятся в базе данных, расположенной на сервер-компьютере.
9. ГЕНЕРАЦИЯ ПРОГРАММНОГО КОДА С++
В ходе проектирования была создана модель для информационной подсистемы деканата ВУЗа. Теперь сгенерируем программный код С++ для клиентской части приложения. Необходимо выполнить следующие шаги:
1. Открыть диаграмму компонентов системы.
2. Выбрать тело пакета, а также спецификацию пакета, нажать правой кнопкой мыши и открыть спецификацию объектов.
3. Выбрать в качестве языка генерации кода приложения С++.
4. Выбрать все объекты на диаграмме компонентов.
5. Выбрать Tools – C++ – Code Generation в главном меню (рисунок 9.1).
Рисунок 9.1 – Пункт меню для генерации программного кода на языке С++
В случае успешной генерации кода появится окно с сообщением, как на рисунке 9.2.
Рисунок 9.2 – Окно с сообщением об успешной генерации программного кода
Выводы
1. В рамках курсового проекта был сгенерирован программный код Rose C++ для трех классов подсистемы.
2. Программный код генерировался для всех классов сразу.
ЗАКЛЮЧЕНИЕ
Главной целью курсовой работы является разработка информационной подсистемы для деканата вуза. Для решения данной задачи мы использовали CASE – средство Rational Rose. Построенная модель поможет деканату полностью автоматизировать учет успеваемости студентов, работать быстрее и эффективнее и с меньшими затратами времени и средств, чем без использования современных технологий. Автоматизированные системы все сильнее внедряются в процесс образования. Таким образом, мы имеем все перспективы перехода на полную автоматизацию различных процессов и повсеместный переход на совершенные информационные технологии.
Разработанная объектно-ориентированная модель информационной подсистемы содержит одну диаграмму прецедентов, шесть диаграмм последовательности, одну диаграмму классов, компонентов, сотрудничества, и три диаграммы состояний.
В курсовом проекте сгенерирован программный код для языка С++. Программный код сгенерирован Rational Rose для всех классов информационной подсистемы.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
Буч, Г. Язык 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 module%4E0234BF0100.cm preserve=no
// %X% %Q% %Z% %W%
//## end module%4E0234BF0100.cm
//## begin module%4E0234BF0100.cp preserve=no
//## end module%4E0234BF0100.cp
//## Module: Account%4E0234BF0100; Package specification
//## Subsystem: <Top Level>
//## Source file: C:\Program Files\Rational\Rose\C++\source\Account.h
#ifndef Account_h
#define Account_h 1
//## begin module%4E0234BF0100.additionalIncludes preserve=no
//## end module%4E0234BF0100.additionalIncludes
//## begin module%4E0234BF0100.includes preserve=yes
//## end module%4E0234BF0100.includes
// RegInfo
#include "RegInfo.h"
// DataBase
#include "DataBase.h"
//## begin module%4E0234BF0100.declarations preserve=no
//## end module%4E0234BF0100.declarations
//## begin module%4E0234BF0100.additionalDeclarations preserve=yes
//## end module%4E0234BF0100.additionalDeclarations
//## begin Account%4E01013D0230.preface preserve=yes
//## end Account%4E01013D0230.preface
//## Class: Account%4E01013D0230
//## Category: <Top Level>
//## Persistence: Transient
//## Cardinality/Multiplicity: n
class Account
{
//## begin Account%4E01013D0230.initialDeclarations preserve=yes
//## end Account%4E01013D0230.initialDeclarations
public:
//## Constructors (generated)
Account();
Account(const Account &right);
//## Destructor (generated)
~Account();
//## Assignment Operation (generated)
Account & operator=(const Account &right);
//## Equality Operations (generated)
int operator==(const Account &right) const;
int operator!=(const Account &right) const;
//## Other Operations (specified)
//## Operation: Autorization%4E0104F0025A
Boolean Autorization ();
//## Operation: DataRequest%4E01054000E5
Boolean DataRequest ();
//## Operation: GetData%4E02152E0060
Boolean GetData ();
//## Operation: DataCheck%4E01055503A6
Boolean DataCheck ();
//## Operation: EnterSystem%4E0215550173
Boolean EnterSystem ();
//## Get and Set Operations for Associations (generated)
//## Association: <unnamed>%4E01018A0088
//## Role: Account::<the_RegInfo>%4E01018A01E1
const RegInfo * get_the_RegInfo () const;
void set_the_RegInfo (RegInfo * value);
//## Association: <unnamed>%4E021F3303AB
//## Role: Account::<the_DataBase>%4E021F3401BA
const DataBase * get_the_DataBase () const;
void set_the_DataBase (DataBase * value);
// Additional Public Declarations
//## begin Account%4E01013D0230.public preserve=yes
//## end Account%4E01013D0230.public
protected:
// Additional Protected Declarations
//## begin Account%4E01013D0230.protected preserve=yes
//## end Account%4E01013D0230.protected
private:
//## Get and Set Operations for Class Attributes (generated)
//## Attribute: \324\340\354\350\353\350\377%4E010199020E
const String get_XXXXXXX () const;
void set_XXXXXXX (String value);
//## Attribute: \310\354\377%4E0104D20201
const String get_XXX () const;
void set_XXX (String value);
//## Attribute: \316\362\367\345\361\362\342\356%4E0104E10119
const String get_XXXXXXXX () const;
void set_XXXXXXXX (String value);
// Additional Private Declarations
//## begin Account%4E01013D0230.private preserve=yes
//## end Account%4E01013D0230.private
private: //## implementation
// Data Members for Class Attributes
//## begin Account::\324\340\354\350\353\350\377%4E010199020E.attr preserve=no private: String {U}
String XXXXXXX;
//## end Account::\324\340\354\350\353\350\377%4E010199020E.attr
//## begin Account::\310\354\377%4E0104D20201.attr preserve=no private: String {U}
String XXX;
//## end Account::\310\354\377%4E0104D20201.attr
//## begin Account::\316\362\367\345\361\362\342\356%4E0104E10119.attr preserve=no private: String {U}
String XXXXXXXX;
//## end Account::\316\362\367\345\361\362\342\356%4E0104E10119.attr
// Data Members for Associations
//## Association: <unnamed>%4E01018A0088
//## begin Account::<the_RegInfo>%4E01018A01E1.role preserve=no public: RegInfo {1..n -> 1RHN}
RegInfo *the_RegInfo;
//## end Account::<the_RegInfo>%4E01018A01E1.role
//## Association: <unnamed>%4E021F3303AB
//## begin Account::<the_DataBase>%4E021F3401BA.role preserve=no public: DataBase {1..n -> 1RHN}
DataBase *the_DataBase;
//## end Account::<the_DataBase>%4E021F3401BA.role
// Additional Implementation Declarations
//## begin Account%4E01013D0230.implementation preserve=yes
//## end Account%4E01013D0230.implementation
};
//## begin Account%4E01013D0230.postscript preserve=yes
//## end Account%4E01013D0230.postscript
// Class Account
//## Get and Set Operations for Class Attributes (inline)
inline const String Account::get_XXXXXXX () const
{
//## begin Account::get_XXXXXXX%4E010199020E.get preserve=no
return XXXXXXX;
//## end Account::get_XXXXXXX%4E010199020E.get
}
inline void Account::set_XXXXXXX (String value)
{
//## begin Account::set_XXXXXXX%4E010199020E.set preserve=no
XXXXXXX = value;
//## end Account::set_XXXXXXX%4E010199020E.set
}
inline const String Account::get_XXX () const
{
//## begin Account::get_XXX%4E0104D20201.get preserve=no
return XXX;
//## end Account::get_XXX%4E0104D20201.get
}
inline void Account::set_XXX (String value)
{
//## begin Account::set_XXX%4E0104D20201.set preserve=no
XXX = value;
//## end Account::set_XXX%4E0104D20201.set
}
inline const String Account::get_XXXXXXXX () const
{
//## begin Account::get_XXXXXXXX%4E0104E10119.get preserve=no
return XXXXXXXX;
//## end Account::get_XXXXXXXX%4E0104E10119.get
}
inline void Account::set_XXXXXXXX (String value)
{
//## begin Account::set_XXXXXXXX%4E0104E10119.set preserve=no
XXXXXXXX = value;
//## end Account::set_XXXXXXXX%4E0104E10119.set
}
//## Get and Set Operations for Associations (inline)
inline const RegInfo * Account::get_the_RegInfo () const
{
//## begin Account::get_the_RegInfo%4E01018A01E1.get preserve=no
return the_RegInfo;
//## end Account::get_the_RegInfo%4E01018A01E1.get
}
inline void Account::set_the_RegInfo (RegInfo * value)
{
//## begin Account::set_the_RegInfo%4E01018A01E1.set preserve=no
the_RegInfo = value;
//## end Account::set_the_RegInfo%4E01018A01E1.set
}
inline const DataBase * Account::get_the_DataBase () const
{
//## begin Account::get_the_DataBase%4E021F3401BA.get preserve=no
return the_DataBase;
//## end Account::get_the_DataBase%4E021F3401BA.get
}
inline void Account::set_the_DataBase (DataBase * value)
{
//## begin Account::set_the_DataBase%4E021F3401BA.set preserve=no
the_DataBase = value;
//## end Account::set_the_DataBase%4E021F3401BA.set
}
//## begin module%4E0234BF0100.epilog preserve=yes
//## end module%4E0234BF0100.epilog
#endif
Source File: Account.cpp
//## 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 module%4E0234F503C5.cm preserve=no
// %X% %Q% %Z% %W%
//## end module%4E0234F503C5.cm
//## begin module%4E0234F503C5.cp preserve=no
//## end module%4E0234F503C5.cp
//## Module: Account%4E0234F503C5; Package body
//## Subsystem: <Top Level>
//## Source file: C:\Program Files\Rational\Rose\C++\source\Account.cpp
//## begin module%4E0234F503C5.additionalIncludes preserve=no
//## end module%4E0234F503C5.additionalIncludes
//## begin module%4E0234F503C5.includes preserve=yes
//## end module%4E0234F503C5.includes
// Account
#include "Account.h"
//## begin module%4E0234F503C5.declarations preserve=no
//## end module%4E0234F503C5.declarations
//## begin module%4E0234F503C5.additionalDeclarations preserve=yes
//## end module%4E0234F503C5.additionalDeclarations
// Class Account
Account::Account()
//## begin Account::Account%4E01013D0230_const.hasinit preserve=no
//## end Account::Account%4E01013D0230_const.hasinit
//## begin Account::Account%4E01013D0230_const.initialization preserve=yes
//## end Account::Account%4E01013D0230_const.initialization
{
//## begin Account::Account%4E01013D0230_const.body preserve=yes
//## end Account::Account%4E01013D0230_const.body
}
Account::Account(const Account &right)
//## begin Account::Account%4E01013D0230_copy.hasinit preserve=no
//## end Account::Account%4E01013D0230_copy.hasinit
//## begin Account::Account%4E01013D0230_copy.initialization preserve=yes
//## end Account::Account%4E01013D0230_copy.initialization
{
//## begin Account::Account%4E01013D0230_copy.body preserve=yes
//## end Account::Account%4E01013D0230_copy.body
}
Account::~Account()
{
//## begin Account::~Account%4E01013D0230_dest.body preserve=yes
//## end Account::~Account%4E01013D0230_dest.body
}
Account & Account::operator=(const Account &right)
{
//## begin Account::operator=%4E01013D0230_assign.body preserve=yes
//## end Account::operator=%4E01013D0230_assign.body
}
int Account::operator==(const Account &right) const
{
//## begin Account::operator==%4E01013D0230_eq.body preserve=yes
//## end Account::operator==%4E01013D0230_eq.body
}
int Account::operator!=(const Account &right) const
{
//## begin Account::operator!=%4E01013D0230_neq.body preserve=yes
//## end Account::operator!=%4E01013D0230_neq.body
}
//## Other Operations (implementation)
Boolean Account::SearchStudent ()
{
//## begin Account::SearchStudent%4E0104F0025A.body preserve=yes
//## end Account::SearchStudent%4E0104F0025A.body
}
Boolean Account::ExitSystem ()
{
//## begin Account::ExitSystem%4E01055503A6.body preserve=yes
//## end Account::ExitSystem%4E01055503A6.body
}
Boolean Account::EnterSystem ()
{
//## begin Account::EnterSystem%4E0215550173.body preserve=yes
//## end Account::EnterSystem%4E0215550173.body
}
// Additional Declarations
//## begin Account%4E01013D0230.declarations preserve=yes
//## end Account%4E01013D0230.declarations
//## begin module%4E0234F503C5.epilog preserve=yes
//## end module%4E0234F503C5.epilog
Source File: RegInfo.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 module%4E02351F034D.cm preserve=no
// %X% %Q% %Z% %W%
//## end module%4E02351F034D.cm
//## begin module%4E02351F034D.cp preserve=no
//## end module%4E02351F034D.cp
//## Module: RegInfo%4E02351F034D; Package specification
//## Subsystem: <Top Level>
//## Source file: C:\Program Files\Rational\Rose\C++\source\RegInfo.h
#ifndef RegInfo_h
#define RegInfo_h 1
//## begin module%4E02351F034D.additionalIncludes preserve=no
//## end module%4E02351F034D.additionalIncludes
//## begin module%4E02351F034D.includes preserve=yes
//## end module%4E02351F034D.includes
// DataBase
#include "DataBase.h"
//## begin module%4E02351F034D.declarations preserve=no
//## end module%4E02351F034D.declarations
//## begin module%4E02351F034D.additionalDeclarations preserve=yes
//## end module%4E02351F034D.additionalDeclarations
//## begin RegInfo%4E01015203A9.preface preserve=yes
//## end RegInfo%4E01015203A9.preface
//## Class: RegInfo%4E01015203A9
//## Category: <Top Level>
//## Persistence: Transient
//## Cardinality/Multiplicity: n
class RegInfo
{
//## begin RegInfo%4E01015203A9.initialDeclarations preserve=yes
//## end RegInfo%4E01015203A9.initialDeclarations
public:
//## Constructors (generated)
RegInfo();
RegInfo(const RegInfo &right);
//## Destructor (generated)
~RegInfo();
//## Assignment Operation (generated)
RegInfo & operator=(const RegInfo &right);
//## Equality Operations (generated)
int operator==(const RegInfo &right) const;
int operator!=(const RegInfo &right) const;
//## Other Operations (specified)
//## Operation: CheckAttendance%4E0215BD00E7
Boolean CheckAttendance ();
//## Operation: CheckSession%4E0215C902BF
Boolean CheckSession ();
//## Operation: CheckRating%4E0215CA02E6
Boolean CheckRating ();
//## Operation: CheckGrant%4E0215CB0396
Boolean CheckGrant ();
//## Operation: Update%4E0215FC01F2
Boolean Update ();
//## Operation: SendToDB%4E02160703DA
Boolean SendToDB ();
//## Get and Set Operations for Associations (generated)
//## Association: <unnamed>%4E01018E02D6
//## Role: RegInfo::<the_DataBase>%4E01018F0069
const DataBase * get_the_DataBase () const;
void set_the_DataBase (DataBase * value);
// Additional Public Declarations
//## begin RegInfo%4E01015203A9.public preserve=yes
//## end RegInfo%4E01015203A9.public
protected:
// Additional Protected Declarations
//## begin RegInfo%4E01015203A9.protected preserve=yes
//## end RegInfo%4E01015203A9.protected
private:
//## Get and Set Operations for Class Attributes (generated)
//## Attribute: Attendance%4E02157201AC
const String get_Attendance () const;
void set_Attendance (String value);
//## Attribute: Session%4E02159003CD
const String get_Session () const;
void set_Session (String value);
//## Attribute: Rating%4E02159902CE
const String get_Rating () const;
void set_Rating (String value);
//## Attribute: Grant%4E0215A3019D
const String get_Grant () const;
void set_Grant (String value);
// Additional Private Declarations
//## begin RegInfo%4E01015203A9.private preserve=yes
//## end RegInfo%4E01015203A9.private
private: //## implementation
// Data Members for Class Attributes
//## begin RegInfo::Attendance%4E02157201AC.attr preserve=no private: String {U}
String Attendance;
//## end RegInfo::Attendance%4E02157201AC.attr
//## begin RegInfo::Session%4E02159003CD.attr preserve=no private: String {U}
String Session;
//## end RegInfo::Session%4E02159003CD.attr
//## begin RegInfo::Rating%4E02159902CE.attr preserve=no private: String {U}
String Rating;
//## end RegInfo::Rating%4E02159902CE.attr
//## begin RegInfo::Grant%4E0215A3019D.attr preserve=no private: String {U}
String Grant;
//## end RegInfo::Grant%4E0215A3019D.attr
// Data Members for Associations
//## Association: <unnamed>%4E01018E02D6
//## begin RegInfo::<the_DataBase>%4E01018F0069.role preserve=no public: DataBase {1 -> 1RHN}
DataBase *the_DataBase;
//## end RegInfo::<the_DataBase>%4E01018F0069.role
// Additional Implementation Declarations
//## begin RegInfo%4E01015203A9.implementation preserve=yes
//## end RegInfo%4E01015203A9.implementation
};
//## begin RegInfo%4E01015203A9.postscript preserve=yes
//## end RegInfo%4E01015203A9.postscript
// Class RegInfo
//## Get and Set Operations for Class Attributes (inline)
inline const String RegInfo::get_Attendance () const
{
//## begin RegInfo::get_Attendance%4E02157201AC.get preserve=no
return Attendance;
//## end RegInfo::get_Attendance%4E02157201AC.get
}
inline void RegInfo::set_Attendance (String value)
{
//## begin RegInfo::set_Attendance%4E02157201AC.set preserve=no
Attendance = value;
//## end RegInfo::set_Attendance%4E02157201AC.set
}
inline const String RegInfo::get_Session () const
{
//## begin RegInfo::get_Session%4E02159003CD.get preserve=no
return Session;
//## end RegInfo::get_Session%4E02159003CD.get
}
inline void RegInfo::set_Session (String value)
{
//## begin RegInfo::set_Session%4E02159003CD.set preserve=no
Session = value;
//## end RegInfo::set_Session%4E02159003CD.set
}
inline const String RegInfo::get_Rating () const
{
//## begin RegInfo::get_Rating%4E02159902CE.get preserve=no
return Rating;
//## end RegInfo::get_Rating%4E02159902CE.get
}
inline void RegInfo::set_Rating (String value)
{
//## begin RegInfo::set_Rating%4E02159902CE.set preserve=no
Rating = value;
//## end RegInfo::set_Rating%4E02159902CE.set
}
inline const String RegInfo::get_Grant () const
{
//## begin RegInfo::get_Grant%4E0215A3019D.get preserve=no
return Grant;
//## end RegInfo::get_Grant%4E0215A3019D.get
}
inline void RegInfo::set_Grant (String value)
{
//## begin RegInfo::set_Grant%4E0215A3019D.set preserve=no
Grant = value;
//## end RegInfo::set_Grant%4E0215A3019D.set
}
//## Get and Set Operations for Associations (inline)
inline const DataBase * RegInfo::get_the_DataBase () const
{
//## begin RegInfo::get_the_DataBase%4E01018F0069.get preserve=no
return the_DataBase;
//## end RegInfo::get_the_DataBase%4E01018F0069.get
}
inline void RegInfo::set_the_DataBase (DataBase * value)
{
//## begin RegInfo::set_the_DataBase%4E01018F0069.set preserve=no
the_DataBase = value;
//## end RegInfo::set_the_DataBase%4E01018F0069.set
}
//## begin module%4E02351F034D.epilog preserve=yes
//## end module%4E02351F034D.epilog
#endif
Source File: RegInfo.cpp
//## 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 module%4E0235600268.cm preserve=no
// %X% %Q% %Z% %W%
//## end module%4E0235600268.cm
//## begin module%4E0235600268.cp preserve=no
//## end module%4E0235600268.cp
//## Module: RegInfo%4E0235600268; Package body
//## Subsystem: <Top Level>
//## Source file: C:\Program Files\Rational\Rose\C++\source\RegInfo.cpp
//## begin module%4E0235600268.additionalIncludes preserve=no
//## end module%4E0235600268.additionalIncludes
//## begin module%4E0235600268.includes preserve=yes
//## end module%4E0235600268.includes
// RegInfo
#include "RegInfo.h"
//## begin module%4E0235600268.declarations preserve=no
//## end module%4E0235600268.declarations
//## begin module%4E0235600268.additionalDeclarations preserve=yes
//## end module%4E0235600268.additionalDeclarations
// Class RegInfo
RegInfo::RegInfo()
//## begin RegInfo::RegInfo%4E01015203A9_const.hasinit preserve=no
//## end RegInfo::RegInfo%4E01015203A9_const.hasinit
//## begin RegInfo::RegInfo%4E01015203A9_const.initialization preserve=yes
//## end RegInfo::RegInfo%4E01015203A9_const.initialization
{
//## begin RegInfo::RegInfo%4E01015203A9_const.body preserve=yes
//## end RegInfo::RegInfo%4E01015203A9_const.body
}
RegInfo::RegInfo(const RegInfo &right)
//## begin RegInfo::RegInfo%4E01015203A9_copy.hasinit preserve=no
//## end RegInfo::RegInfo%4E01015203A9_copy.hasinit
//## begin RegInfo::RegInfo%4E01015203A9_copy.initialization preserve=yes
//## end RegInfo::RegInfo%4E01015203A9_copy.initialization
{
//## begin RegInfo::RegInfo%4E01015203A9_copy.body preserve=yes
//## end RegInfo::RegInfo%4E01015203A9_copy.body
}
RegInfo::~RegInfo()
{
//## begin RegInfo::~RegInfo%4E01015203A9_dest.body preserve=yes
//## end RegInfo::~RegInfo%4E01015203A9_dest.body
}
RegInfo & RegInfo::operator=(const RegInfo &right)
{
//## begin RegInfo::operator=%4E01015203A9_assign.body preserve=yes
//## end RegInfo::operator=%4E01015203A9_assign.body
}
int RegInfo::operator==(const RegInfo &right) const
{
//## begin RegInfo::operator==%4E01015203A9_eq.body preserve=yes
//## end RegInfo::operator==%4E01015203A9_eq.body
}
int RegInfo::operator!=(const RegInfo &right) const
{
//## begin RegInfo::operator!=%4E01015203A9_neq.body preserve=yes
//## end RegInfo::operator!=%4E01015203A9_neq.body
}
//## Other Operations (implementation)
Boolean RegInfo::EnterFIO ()
{
//## begin RegInfo::EnterFIO%4E0215BD00E7.body preserve=yes
//## end RegInfo::EnterFIO%4E0215BD00E7.body
}
Boolean RegInfo::EnterCardNumber ()
{
//## begin RegInfo::EnterCardNumber%4E0215C902BF.body preserve=yes
//## end RegInfo::EnterCardNumber%4E0215C902BF.body
}
Boolean RegInfo::EnterSubject ()
{
//## begin RegInfo::EnterSubject%4E0215CA02E6.body preserve=yes
//## end RegInfo::EnterSubject%4E0215CA02E6.body
}
Boolean RegInfo::EnterAttestation ()
{
//## begin RegInfo::EnterAttestation%4E0215CB0396.body preserve=yes
//## end RegInfo::EnterAttestation%4E0215CB0396.body
}
Boolean RegInfo::EnterAdmission ()
{
//## begin RegInfo::EnterAdmission%4E0215FC01F2.body preserve=yes
//## end RegInfo::EnterAdmission%4E0215FC01F2.body
}
Boolean RegInfo::Update ()
{
//## begin RegInfo::Update%4E0215FC01F2.body preserve=yes
//## end RegInfo::Update%4E0215FC01F2.body
}
Boolean RegInfo::SendToDB ()
{
//## begin RegInfo::SendToDB%4E02160703DA.body preserve=yes
//## end RegInfo::SendToDB%4E02160703DA.body
}
// Additional Declarations
//## begin RegInfo%4E01015203A9.declarations preserve=yes
//## end RegInfo%4E01015203A9.declarations
//## begin module%4E0235600268.epilog preserve=yes
//## end module%4E0235600268.epilog
Source File: DataBase.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 module%4E0235060105.cm preserve=no
// %X% %Q% %Z% %W%
//## end module%4E0235060105.cm
//## begin module%4E0235060105.cp preserve=no
//## end module%4E0235060105.cp
//## Module: DataBase%4E0235060105; Package specification
//## Subsystem: <Top Level>
//## Source file: C:\Program Files\Rational\Rose\C++\source\DataBase.h
#ifndef DataBase_h
#define DataBase_h 1
//## begin module%4E0235060105.additionalIncludes preserve=no
//## end module%4E0235060105.additionalIncludes
//## begin module%4E0235060105.includes preserve=yes
//## end module%4E0235060105.includes
// DBServer\.exe
#include "DBServerexe.h"
//## begin module%4E0235060105.declarations preserve=no
//## end module%4E0235060105.declarations
//## begin module%4E0235060105.additionalDeclarations preserve=yes
//## end module%4E0235060105.additionalDeclarations
//## begin DataBase%4DFF7F710228.preface preserve=yes
//## end DataBase%4DFF7F710228.preface
//## Class: DataBase%4DFF7F710228
//## Category: <Top Level>
//## Persistence: Transient
//## Cardinality/Multiplicity: n
class DataBase
{
//## begin DataBase%4DFF7F710228.initialDeclarations preserve=yes
//## end DataBase%4DFF7F710228.initialDeclarations
public:
//## Constructors (generated)
DataBase();
DataBase(const DataBase &right);
//## Destructor (generated)
~DataBase();
//## Assignment Operation (generated)
DataBase & operator=(const DataBase &right);
//## Equality Operations (generated)
int operator==(const DataBase &right) const;
int operator!=(const DataBase &right) const;
//## Other Operations (specified)
//## Operation: Connect%4E02167B00C7
Boolean Connect ();
//## Operation: Disconnect%4E02168B02E4
Boolean Disconnect ();
//## Operation: GetRecord%4E0216B203AF
Boolean GetRecord ();
//## Operation: UpdateRecord%4E0216BC012F
Boolean UpdateRecord ();
// Additional Public Declarations
//## begin DataBase%4DFF7F710228.public preserve=yes
//## end DataBase%4DFF7F710228.public
protected:
// Additional Protected Declarations
//## begin DataBase%4DFF7F710228.protected preserve=yes
//## end DataBase%4DFF7F710228.protected
private:
//## Get and Set Operations for Class Attributes (generated)
//## Attribute: DBname%4E0216490364
const String get_DBname () const;
void set_DBname (String value);
//## Attribute: ServerName%4E02164F026B
const String get_ServerName () const;
void set_ServerName (String value);
//## Attribute: DBPassword%4E02165B01E6
const String get_DBPassword () const;
void set_DBPassword (String value);
// Additional Private Declarations
//## begin DataBase%4DFF7F710228.private preserve=yes
//## end DataBase%4DFF7F710228.private
private: //## implementation
// Data Members for Class Attributes
//## begin DataBase::DBname%4E0216490364.attr preserve=no private: String {U}
String DBname;
//## end DataBase::DBname%4E0216490364.attr
//## begin DataBase::ServerName%4E02164F026B.attr preserve=no private: String {U}
String ServerName;
//## end DataBase::ServerName%4E02164F026B.attr
//## begin DataBase::DBPassword%4E02165B01E6.attr preserve=no private: String {U}
String DBPassword;
//## end DataBase::DBPassword%4E02165B01E6.attr
// Additional Implementation Declarations
//## begin DataBase%4DFF7F710228.implementation preserve=yes
//## end DataBase%4DFF7F710228.implementation
};
//## begin DataBase%4DFF7F710228.postscript preserve=yes
//## end DataBase%4DFF7F710228.postscript
// Class DataBase
//## Get and Set Operations for Class Attributes (inline)
inline const String DataBase::get_DBname () const
{
//## begin DataBase::get_DBname%4E0216490364.get preserve=no
return DBname;
//## end DataBase::get_DBname%4E0216490364.get
}
inline void DataBase::set_DBname (String value)
{
//## begin DataBase::set_DBname%4E0216490364.set preserve=no
DBname = value;
//## end DataBase::set_DBname%4E0216490364.set
}
inline const String DataBase::get_ServerName () const
{
//## begin DataBase::get_ServerName%4E02164F026B.get preserve=no
return ServerName;
//## end DataBase::get_ServerName%4E02164F026B.get
}
inline void DataBase::set_ServerName (String value)
{
//## begin DataBase::set_ServerName%4E02164F026B.set preserve=no
ServerName = value;
//## end DataBase::set_ServerName%4E02164F026B.set
}
inline const String DataBase::get_DBPassword () const
{
//## begin DataBase::get_DBPassword%4E02165B01E6.get preserve=no
return DBPassword;
//## end DataBase::get_DBPassword%4E02165B01E6.get
}
inline void DataBase::set_DBPassword (String value)
{
//## begin DataBase::set_DBPassword%4E02165B01E6.set preserve=no
DBPassword = value;
//## end DataBase::set_DBPassword%4E02165B01E6.set
}
//## begin module%4E0235060105.epilog preserve=yes
//## end module%4E0235060105.epilog
#endif
Sourcefile DataBase.cpp
//## 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 module%4E0235620195.cm preserve=no
// %X% %Q% %Z% %W%
//## end module%4E0235620195.cm
//## begin module%4E0235620195.cp preserve=no
//## end module%4E0235620195.cp
//## Module: DataBase%4E0235620195; Package body
//## Subsystem: <Top Level>
//## Source file: C:\Program Files\Rational\Rose\C++\source\DataBase.cpp
//## begin module%4E0235620195.additionalIncludes preserve=no
//## end module%4E0235620195.additionalIncludes
//## begin module%4E0235620195.includes preserve=yes
//## end module%4E0235620195.includes
// DataBase
#include "DataBase.h"
//## begin module%4E0235620195.declarations preserve=no
//## end module%4E0235620195.declarations
//## begin module%4E0235620195.additionalDeclarations preserve=yes
//## end module%4E0235620195.additionalDeclarations
// Class DataBase
DataBase::DataBase()
//## begin DataBase::DataBase%4DFF7F710228_const.hasinit preserve=no
//## end DataBase::DataBase%4DFF7F710228_const.hasinit
//## begin DataBase::DataBase%4DFF7F710228_const.initialization preserve=yes
//## end DataBase::DataBase%4DFF7F710228_const.initialization
{
//## begin DataBase::DataBase%4DFF7F710228_const.body preserve=yes
//## end DataBase::DataBase%4DFF7F710228_const.body
}
DataBase::DataBase(const DataBase &right)
//## begin DataBase::DataBase%4DFF7F710228_copy.hasinit preserve=no
//## end DataBase::DataBase%4DFF7F710228_copy.hasinit
//## begin DataBase::DataBase%4DFF7F710228_copy.initialization preserve=yes
//## end DataBase::DataBase%4DFF7F710228_copy.initialization
{
//## begin DataBase::DataBase%4DFF7F710228_copy.body preserve=yes
//## end DataBase::DataBase%4DFF7F710228_copy.body
}
DataBase::~DataBase()
{
//## begin DataBase::~DataBase%4DFF7F710228_dest.body preserve=yes
//## end DataBase::~DataBase%4DFF7F710228_dest.body
}
DataBase & DataBase::operator=(const DataBase &right)
{
//## begin DataBase::operator=%4DFF7F710228_assign.body preserve=yes
//## end DataBase::operator=%4DFF7F710228_assign.body
}
int DataBase::operator==(const DataBase &right) const
{
//## begin DataBase::operator==%4DFF7F710228_eq.body preserve=yes
//## end DataBase::operator==%4DFF7F710228_eq.body
}
int DataBase::operator!=(const DataBase &right) const
{
//## begin DataBase::operator!=%4DFF7F710228_neq.body preserve=yes
//## end DataBase::operator!=%4DFF7F710228_neq.body
}
//## Other Operations (implementation)
Boolean DataBase::Connect ()
{
//## begin DataBase::Connect%4E02167B00C7.body preserve=yes
//## end DataBase::Connect%4E02167B00C7.body
}
Boolean DataBase::Disconnect ()
{
//## begin DataBase::Disconnect%4E02168B02E4.body preserve=yes
//## end DataBase::Disconnect%4E02168B02E4.body
}
Boolean DataBase::GetRecord ()
{
//## begin DataBase::GetRecord%4E0216B203AF.body preserve=yes
//## end DataBase::GetRecord%4E0216B203AF.body
}
Boolean DataBase::UpdateRecord ()
{
//## begin DataBase::UpdateRecord%4E0216BC012F.body preserve=yes
//## end DataBase::UpdateRecord%4E0216BC012F.body
}
// Additional Declarations
//## begin DataBase%4DFF7F710228.declarations preserve=yes
//## end DataBase%4DFF7F710228.declarations
//## begin module%4E0235620195.epilog preserve=yes
//## end module%4E0235620195.epilog
Размещено на http://www.allbest.ru/