Разработка объектно-ориентированной модели информационной подсистемы для деканата ВУЗа (учет успеваемости студентов)

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование



пкой мыши и открыть спецификацию объектов.

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