uml课程设计报告 学生管理系统.docx

上传人:b****4 文档编号:26910769 上传时间:2023-06-24 格式:DOCX 页数:25 大小:652.13KB
下载 相关 举报
uml课程设计报告 学生管理系统.docx_第1页
第1页 / 共25页
uml课程设计报告 学生管理系统.docx_第2页
第2页 / 共25页
uml课程设计报告 学生管理系统.docx_第3页
第3页 / 共25页
uml课程设计报告 学生管理系统.docx_第4页
第4页 / 共25页
uml课程设计报告 学生管理系统.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

uml课程设计报告 学生管理系统.docx

《uml课程设计报告 学生管理系统.docx》由会员分享,可在线阅读,更多相关《uml课程设计报告 学生管理系统.docx(25页珍藏版)》请在冰豆网上搜索。

uml课程设计报告 学生管理系统.docx

uml课程设计报告学生管理系统

《UML课程设计》报告

 

题目:

学生管理系统

 

学号:

07103230

姓名:

指导老师:

罗新程岚岚

 

1.可行性研究报告

学生成绩管理工作是高校教育工作的一项重要内容。

教务管理工作是指学校管理人员按照一定教育方针,运用先进的管理手段,组织、协调、指挥并指导各用户活动,以便高效率、高质量地完成各项教学任务,完成国家所制定的教育目标。

学生成绩管理工作是学校教学工作的中枢,是保证高校教学机制正常运转的枢纽,它是一项目的性、计划性、适用性、创造性和科学性很强的工作。

学生成绩工作关系到高校教学秩序的稳定。

大中型院校人员众多,如果没有好的管理,就不能取得很好的成果,应用数据库来管理,在这方面能够取得很好的效果。

系统的可行性分析

1.系统实施运行的可行性:

各教师,学生都已熟练掌握计算机的基本实用方法和操作技能,对新系统的开发,表现出极大的热情。

提出了很多好的建议和要求。

2.技术可行性:

校园网已正常运行;开发人员已熟练掌握开发工具。

技术上实现系统是可行的。

3.经济可行性:

校园内部局域网络已经建成;硬件投入不需要很大。

2.需求分析报告

2.1概述

随着互联网的发展,利用INTERNET技术来实现“无纸办公”这个概念已经深入人心,校园网作为学校信息化建设的一个平台在完成资源共享、互联网访问、教务管理、电子备课等方面发挥了重要作用。

服务教学、提高教学水平和效果是校园网建设的核心目标和核心价值,本系统立足于校园实际,着眼于未来发展,建成符合标准化协议、通用性较强、实用的系统,以提高高校的现代化管理水平,实现信息资源的共享。

该项目主要是服务于教学方面,进一步方便教师的工作和学生的学习,从而从侧面达到提高学校的教学方面‘软件’质量。

可以说它适用于每一所高校,因此很有开发价值。

我们不敢说该产品是所有该系列产品中最好的,但是我们这里要强调的是它具有使用范围广,实用性强,使用简单,所花经费少等优点。

我们可以肯定的说它将在高校的使用过程中其优点将得到最充分的体现。

2.2任务概述

2.2.1编写目的

解决学校对学生信息进行处理时时,对各种数据的需求,并且能够学校方面对学生的管理。

主要解决学生信息查询困难等问题。

确定学生信息管理系统功能需求,数据需求及软、硬件需求。

确定学生信息管理系统所能实现的功能,本系统中主要是通过数据库对其进行操作,如学生信息等增加,删除,修改,查找等功能。

2.2.2参考资料

《软件工程技术及应用》——张贤坤徐翔主编东北林业大学出版社

《uml面向对象设计与分析》--------牛丽平主编清华大学出版社

《.net架构与程序设计》-----人民邮电出版社

《数据库原理》-----清华大学出版社

2.3对功能的规定

2.3.1功能划分和描述

学生管理其下的查询、增加、删除、修改模块及其相应管理的具体功能。

(1)增加功能:

系统不设置登陆界面,进入本系统后再首页选者添加学生后,可以对学生进行增加操作,输入学生信息,当信息重复或未输入时,系统使用对话框进行提示。

(2)删除功能:

进入界面即可对数据进行删除操作。

系统能够通过给出的条件查找出要删除的信息,并把相关信息从数据库中删除掉。

(3)修改功能:

对数据库中的信息进行修改。

系统能够通过给出的条件查找出所要修改的信息,对修改后的信息进行保存,并自动查找是否是重复信息。

(4)查询功能:

为了方便学生查找成绩等信息,在首页对所有信息进行了显示,在查询界面按照学号进行查询,当查询不合法时系统进行提示。

2.4安全性:

1)要能够抵御用户可能的误操作,保证软件的健壮性要对数据进行检验,保证数据有效性在数据被破坏时,具有数据恢复能力

2)数据要绝对安全防止有意无意的破坏数据。

若数据遭到破坏,系统具有数据恢复功能,不可恢复的数据仅限于当日录入和修改的数据。

2.5.成本估算

2.5.1时间成本

由于系统是由学生进行开发,所以所需要的软件开发时间也就相对要长一点。

但整个系统的功能较为简单,大概需要两个月左右时间。

2.5.2经济成本

一个完善的学生信息管理系统需要的硬件和软件参考“四,对软件环境的规定”,计算机价格,软件价格以及本人的各项费用大约合计为6000元左右。

2.6.版本记录及其他信息

2.6.1版本更新记录

版本号

创建者

创建日期

维护者

维护日期

维护纪要

V1.0

宋琛

2010/5/20

----

-----

------

V1.1

宋琛

2010/5/25

宋琛

2010/5/27

数据库维护

V2.0

宋琛

2010/6/20

宋琛

2010/6/25

浏览页面形式的改变

2.6.2尚未解决的问题

(1)学生众多,信息量大,在对其进行录入,修改,删除时需要大量时间。

(2)在对大量数据进行长时间操作时,操作人由于疲劳很容易造成数据误差。

2.7实验模型的建立

实验中使用RationalRose软件绘制各种模型图

模型图示例:

1.用例图:

图2-1

用例图说明:

本系统包括四个用例,一个参与者。

由于与类图进行关联,user显示了其属性。

add为添加学生用例,del为删除学生用例,update为修改学生用例,select为修改学生代码。

2.删除学生活动图:

图2-2

删除学生用例活动图说明:

该系统不需登陆,进入页面后在主界面选择“删除学生”功能,在弹出的添加学生模块中输入要删除学生的学号信息。

点击“确定”会将信息提交给系统,系统进行检查,若不为空且学号已存在,则数据库进行更新。

完成操作后会跳出对话框提示是否成功。

最后可以继续删除或者关闭该删除界面。

3.概要设计部分

3.1.系统建设目标

3.1.1要解决的问题:

(以某学校为参照)随着办公自动化水平的不断提高,现在学校管理学生信息也逐步从手工转到计算机自动化信息处理阶段。

设计一个功能完整、操作简便、界面友好的学生信息管理系统已经是势在必行的了。

3.1.2系统开发的目的

提高图书管理工作的效率,减少相关人员的工作量,使学校的学生管理工作真正做到科学、合理的规划,系统、高效的实施。

3.2运行环境规定

3.2.1硬件环境

要求操作系统用Windows2000以上的版本,WindowsXp最好。

因为本系统将在WindowsXp环境下开发。

要求支持并安装SQLServer2005、vs2008。

一台电脑,如果有大量数据的话要加一台服务器。

电脑要求CPU1.6GH以的的主频,内存1G,硬盘160。

3.2.2软件环境

数据库用MicrosoftSQLserver2005

运行时使用MicrosoftVisualStudio2008

建模工具使用RationalRose

3.2.3软件运行方式

学生信息管理系统为单击版软件(只运行在一台机器上),需连接网络,无需注册,可以直接安装使用,不过刚开始需要进行大量的数据录入工作。

3.3进一步功能描述

模块名称:

增加学生

输入数据流:

学生各项信息

输出数据流:

对数据库操作是否成功(脚本形式)

简要描述:

主要负责学生学号、姓名、班级、年龄方面的信息管理。

模块名称:

删除学生

输入数据流:

学生学号

输出数据流:

对数据库操作是否成功(脚本形式)

简要描述:

主要负责删除学生学号、姓名、班级、年龄方面的信息管理。

模块名称:

修改学生信息

输入数据流:

学生各项信息

输出数据流:

对数据库操作是否成功(脚本形式)

模块名称:

查询学生

输入数据流:

textbox中进行输入学生学号

输出数据流:

对数据库操作是否成功(脚本形式)

3.4使用Rose建立的模型

3.4.1活动图

1.添加学生用例的活动图:

图3-1

添加学生用例活动图说明:

该系统不需登陆,进入页面后在主界面选择“添加学生”功能,在弹出的添加学生模块中输入要增加学生的基本信息。

点击“确定”会将信息提交给系统,系统进行检查,若符合规则满足数据库的各项约束条件,则数据库进行更新。

完成操作后会跳出对话框提示是否成功。

最后可以继续增加或者退出。

2.修改学生用例的活动图:

图3-2

修改学生用例活动图说明:

该系统不需登陆,进入页面后在主界面选择“修改学生”功能,在弹出的添加学生模块中输入要修改学生的基本信息和修改后的信息。

点击“确定”会将信息提交给系统,系统进行检查,若符合规则满足数据库的各项约束条件,则数据库进行更新。

完成操作后会跳出对话框提示是否成功。

最后可以继续修改或者退出该界面。

3.查询学生用例的活动图:

图3-3

查询学生用例活动图说明:

进入首页后在主界面选择“查询学生”功能,在弹出的查询学生界面中输入要查询学生的学号信息。

点击“确定”会将信息提交给系统,系统进行检查,若不为空则继续检查,完成操作后若该生不存在会跳出对话框进行提示,若该生存在则显示该生的各项基本信息。

最后可以继续查询或者退出。

3.4.2时序图

1.增加学生类的时序图:

图3-4

添加学生时序图说明:

顺序图着重突出操作的时间顺序。

1.系统开始运行,调用shouye类2.构造函数等执行,shouye界面出现3.在首页中选择“添加学生”,add类中add()类被触发4.add界面出现5.在界面中输入信息并返回到该类中6.将数据插入到数据库中7.检查数据是否符合PK和CHECK约束8.更新数据库9.将添加的结果返回10.使用对话框向用户显示最终的处理结果。

2.删除类的时序图:

图3-5

删除学生时序图说明:

1.系统开始运行,调用shouye类2.构造函数等执行,shouye界面出现3.user在首页中选择“删除学生”,del类中del()类被触发4.del界面出现5.在界面中输入要删除的学生学号并返回到该类中6.检查数据是否存在7.更新数据库9.将添加的结果返回10.使用对话框向用户显示最终的处理结果。

3.修改类的时序图:

图3-6

修改学生时序图说明:

1.系统开始运行,调用shouye类2.构造函数等执行,shouye界面出现3.user在首页中选择“修改学生”,update类中update()类被触发4.update界面出现5.在界面中输入要修改的学生学号并返回到该类中6.检查数据是否存在7.更新数据库9.将修改的结果返回10.使用对话框向用户显示最终的处理结果。

4.查询类的时序图:

图3-7

查询学生时序图说明:

1.系统开始运行,调用shouye类2.构造函数等执行,shouye界面出现3.user在首页中选择“查询学生”,select类中select()类被触发4.select界面出现5.在界面中输入要查询的学生学号并返回到该类中6.检查数据是否存在7.从数据库中取数据9.将查询的结果显示在select界面上。

4.详细设计阶段

4.1使用Rose建立的类图模型

4.1.1对用例分析抽象得到的类图:

1.

图4-1

对该类图的说明:

在学生管理系统中用到的主要类有6个:

user,add,delete,update,select,shouye。

这6个类之间有一定的关系:

user是用户类,它的属性包括学生的ID(stuid)、姓名(stuname)、班级(class)、年龄(age)等。

它是从数据库抽象出的类,与其它五个类成关联关系。

add是增加学生类,包括在窗体中对数据库操作所需的主要参数和方法如:

sender(object类型),e(Eventargs类型),conn(SqlConnection类型),cmd(SqlCommand类型),da(DataAdapter类型),ds(DataSet类型),sqlconn(string类型,用于建立conn时作为参数),sql(string类型为sql语句)。

delete,select,update类与add类的处理方式类似。

youye是首页类,在系统启动时首页显示四个对象f1,f2,f3,f4分别是四个类的对象位于四个click()函数中,用于页面的跳转。

其它几个类都依赖于youye类,若该类无法实现,则其他几个亦无法连接到。

2.用户界面类的类图:

图4-2

对界面类的说明:

这四个界面类由上述类图中的对应类触发加载。

在相应界面进行系统的各项操作,执行类中的各项函数。

最终实现本系统的功能。

系统界面较为友好,但仍有一定的提高空间。

其中showInfo是依赖于firstWindow存在的。

于首页的下方显示。

4.2使用Rose建立的活动图模型:

图4-3

user状态图说明:

user进入系统,首页load()之后可以点击各按钮进入不同的页面状态。

根据不同的要求,输入数据完毕后进入infoReady状态。

提交数据对数据库进行相应的操作。

操作完毕后进入successful状态。

4.3包图

图4-4

business包的组件图

图4-5

包图和组件图的说明:

首先在ComponentView中建立相应的包,分别对应系统的各项操作。

上图对应的business是操作的集合。

组件图是对应用程序的可执行部件建模。

4.4部署图

图4-7

部署图说明:

部署图主要是用来说明如何配置系统的软件和硬件的。

系统主要3个节点构成,该系统是单机版系统,通过lan与数据库服务器端连接;计算机需要有sql和c#支持。

用户在PC端进行请求操作。

另外还可以打印结果。

4.5数据库的建模

本系统只建立了一个tb_stu表格。

在Rose中建模如下:

表格说明:

该系统较为简单,因此只有一个表格。

User只有四个属性。

表格与用例图中的参与者相对应。

共有两个约束。

PK主键约束和对年龄的CHECK约束。

5.实现说明部分

5.1使用前向工程获得数据库代码

CREATETABLEtb_stu(

学生id,主键

stuidINTNOTNULL,

学生姓名

stunameVARCHAR(50)NOTNULL,

学生所在的班级

classVARCHAR(50)NOTNULL,

学生年龄

ageINT,

CONSTRAINTPK_tb_stu0PRIMARYKEYNONCLUSTERED(stuid),

CONSTRAINTcheckageCHECK(check(age>0andage<100))

)ONstudentRoseSpace

GO

5.2使用正向工程获得的部分代码

add类的生成代码:

//Sourcefile:

E:

\\business\\add.java

packagebusiness;

publicclassadd

{

/***函数中所需形参*/privateobjectsender;

/***函数形参*/privateEventargse;

/***数据库连接*/privateSqlConnectionconn;

/***数据库命令*/privateSqlCommandcmd;

/***数据适配器*/privateDataAdapterda;

/***数据集*/privateDataSetds;

/***数据集中表格*/privateDataTabledt;

publicusertheUser;

/***构造函数*@roseuid4C20222602BF*/publicadd(){}

/***添加学生按钮单击所触发的事件*@roseuid4C2022280167*/publicvoidaddbutton_Click(){}

}

5.3使用c#编写的部分代码

添加学生部分代码:

namespace数据库窗体

{

publicpartialclassadd:

Form

{

publicadd()

{

InitializeComponent();

}

privatevoidaddbutton_Click(objectsender,EventArgse)

{

if(textBox4.Text=="")

MessageBox.Show("请输入学号");

else

{

SqlConnectionconn=newSqlConnection(@"server=(local)\sqlexpress;database=student;Trusted_Connection=True");

conn.Open();

DataSetds=newDataSet();

SqlDataAdapterda=newSqlDataAdapter("select*fromtb_stuwherestuid='"+textBox1.Text+"'",conn);

da.Fill(ds);

DataTabledt=ds.Tables[0];

if(dt.Rows.Count!

=0)

{

MessageBox.Show("对不起,该生已存在");

}

else

{

stringSql="INSERTINTOtb_stu(stuid,stuname,class,age)values('"+textBox1.Text+"','"+textBox2.Text+"','"+textBox3.Text+"','"+textBox4.Text+"')";

SqlCommandcmd=newSqlCommand(Sql,conn);

cmd.ExecuteNonQuery();

conn.Close();

textBox1.Text=null;

textBox2.Text=null;

textBox3.Text=null;

textBox4.Text=null;

MessageBox.Show("添加成功");

}

}

}

}

}

首页显示如下:

添加学生界面如下:

6.总结

经过两个星期的上机实践学习,使我对UML统一建模语言有了更进一步的认识和了解,要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,通过实践,我也发现自己的好多不足之处:

对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说对活动图步骤的安排,时序图消息的发送是否需要函数,类图的抽象,组件图如何建立,如何做正向工程和前向工程……

回顾起此次UML课程设计,感慨颇多,从选题到定稿,从理论到实践,在整整两星期的日子里,我又学到了很多东西。

通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。

通过实践的学习,我认到学好计算机要重视实践操作,不仅仅是学习UML,还是计算机方面其它的课程,都要重实践,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。

在设计中遇到了很多建模问题,最后在罗新老师的辛勤指导下,终于迎逆而解。

同时,在罗新老师的身上我学得到很多实用的知识,在此我表示感谢!

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1