面向对象课程设计文档模板Word格式.docx
《面向对象课程设计文档模板Word格式.docx》由会员分享,可在线阅读,更多相关《面向对象课程设计文档模板Word格式.docx(26页珍藏版)》请在冰豆网上搜索。
在传统模式下利用人工进行学生信息管理,存在着较多的缺点,如:
效率底,保密性差,时间一长将产生大量的文件和数据,更不便于查找,更新,维护等。
诸如这些情况,令学校管理者对学生的信息管理带来了很大困难,严重影响了教育工作者的工作效率。
随着科学技术的不断提高,使用日趋成熟的计算机技术来代替传统的人工模式,来实现学生信息的现代化管理,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。
作为计算机应用的一部分,使用计算机对学生信息进行管理,具有着手工管理所无法比拟的优点。
例如:
检索迅速、查找方便、易修改、可靠性高、存储量大、数据处理快捷、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生信息管理的效率,也是学校实现科学化、正规化管理的重要条件,教学管理人员可以实现对学生信息的增加、删除、修改和查询等操作。
本系统最大的优点就是操作简便快捷等。
。
因此,开发这样一套管理软件成为很有必要的事情。
目录
摘要4
第一章系统总体设计5
1.系统功能模块图5
2.各类间关系6
第二章详细设计7
第三章系统测试10
1.测试方法10
2.测试用例10
3.测试结果12
第四章软件使用说明书15
总结16
参考文献17
致谢18
附录:
程序代码19
摘要
学生档案管理系统是典型的信息管理系统(MIS),其开发主要包括后台数据库的建立和维护以及前端应用程序的开发两个方面。
对于前者要求建立起数据一致性和完整性强、数据安全性好的库。
而对于后者则要求应用程序功能完备,易使用等特点。
本系统主要完成对信息的管理,其中包括:
添加,删除,修改,查询以及打印,统计等主要功能。
本系统的开发采用面向对象的设计思想。
系统的介绍了学生档案系统的开发过程及面向对象思想的具体实现。
关键词:
学生信息;
管理;
c++程序;
效率。
第一章系统总体设计
网络考试系统是一套功能强大、操作简便而又实用的模拟考试管理软件,它可以被广泛的应用于各种类型的考试中。
开发此网络考试系统的目的为了克服传统考试模式中遇到的诸如考试效率低,难以突破时空限制,教师阅卷工作量大以及考务管理繁杂等问题,根据对现有考试模式的分析,确定了该系统需实现以下功能:
(1)实现对学生基本信息及成绩信息的添加、删除、查询、修改等操作;
(2)实现考生在规定时间里的在线考试;
(3)实现考生可在考试完成后及时查询到自己的成绩;
(4)实现系统自动阅卷功能;
1.系统功能模块图
根据用户需求,本系统将主要实现以下功能:
图1-1系统功能模块图
其中:
信息录入:
包括对学生基本信息的录入,课程成绩录入等。
信息维护:
包括管理员对学生基本信息、课程成绩的添加、删除及对信息存盘等。
查询:
包括学生及管理员对学生基本信息及成绩的查询。
2.各类间关系
本系统共使用两个类:
info类,node类。
其中类info描述学生基本信息及成绩信息等,类node描述管理及查询操作。
图1-2系统类间关系图
第二章详细设计
本系统主要功能包括:
添加学生信息、查看所有信息、查询学生信息、删除学生信息等
其中功能添加信息、查看所有信息使用类A来实现,功能查询学生信息、删除学生信息等使用类info和类node来实现。
下面分别介绍类info,node的详细设计。
类info主要描述学生基本信息及成绩信息。
类info具体实现流程为:
1、添加学生信息:
新增学生基本信息及成绩信息——判断以前是否存储了该学生信息——按提示输入学生的各种信息——退出该功能,返回主菜单,继续选择。
2、查看所有信息:
导入学生信息文件——显示学生信息——退出该功能,返回主菜单,继续选择。
1、添加信息如图2-1所示:
图2-1
2、查看所有信息如图2-2所示:
图2-1所示。
图2-2
类info定义为:
classinfo
{
public:
stringNAME;
stringGRADE;
stringSEX;
stringYARD;
stringC;
stringENGLISH;
stringMATH;
};
classnode:
virtualpublicinfo
node*left;
node*right;
node();
voidadd(node*n);
node*del1();
voidshow();
};
类node具体实现流程为:
1、删除信息:
输入要删除的学生信息——删除该学生信息,显示删除成功——退出该功能,返回主菜单,继续选择。
2、查询信息:
输入要查询的学生信息——查询该学生的信息,显示出内容——退出该功能,返回主菜单,继续选择。
1、删除信息如图2-3所示:
图2-3
2、查询信息如图2-4所示:
图2-4
类node定义为:
node*del1(node&
head,stringname);
voidinit(node&
head,stringname,stringgrade,stringsex,stringyard,stringc,stringenglish,stringmath);
voiddel(node*n);
voidenter(node&
head);
voiddisplay(node&
voidsearch(node&
voidsave(node&
head);
voidmenu1(node&
voidmenu2(node&
node:
:
node()
left=0,right=0;
}
第三章系统测试
1.测试方法
1、已知系统的功能设计规格,进行测试证明每个实现了的功能是否符合要求。
2、已知系统的内部工作过程,通过测试证明每种内部是否符合设计规格要求,所有内部成分是否通过检验。
2.测试用例
本系统采用数据原型进行测试,所用数据为:
姓名:
康云生
班级:
计3
性别:
男
院系:
计通
成绩:
C语言:
90
英语:
数学:
添加信息如图3-1所示:
图3-1
查看所有信息如图3-2所示:
图3-2
删除信息如图3-3所示:
图3-3
查询信息如图3-4所示:
图3-4
3.测试结果
本系统主要完成基本信息的添加,查看,删除和查询功能。
1、添加功能主要实现对班级、姓名、性别、院系、成绩等信息的增加,图3-1为班级、姓名、性别、院系、成绩等信息添加功能测试界面。
添加信息如图3-5所示:
图3-5
2、查看所有信息功能主要实现管理员对学生信息所有操作的查询,图3-2为管理员查看所有信息功能测试界面。
查看所有信息如图3-6所示:
图3-6
3、删除信息功能主要实现管理员对学生基本信息及成绩信息的删除,图3-3为管理员对学生信息删除功能测试界面。
删除信息如图3-7所示:
图3-7
3、查询信息功能主要实现学生对其基本信息及成绩信息的查询,图3-4为学生对其基本信息及成绩信息查询功能测试界面。
查询信息如图3-8所示:
图3-8
第四章软件使用说明书
1、系统运行环境
Vc++6.0
2、系统操作提示
本系统主要实现学校学生的信息化管理,首先用户进入登录界面,如图4所示,用户输入用户名、密码进入系统。
如图3-9所示:
图3-9
总结
本次课程设计检验了我的实践能力,感觉自己还有许多东西要学习,并不仅限于课本上的知识,实践才是真理,在学习中实践,实践中去学习。
学习的路很长。
再有要多问,几个人共同讨论会有意想不到的效果,经过一学期的C++语言学习,我们掌握了C++语言的基础知识,能够读懂别人用c语言设计的程序。
平时的程序设计大多是以填空的形式出现,虽然有所接触,但都不完全。
而这两周的课程设计,却让我们完完全全用自己学到的知识编写一个完整的系统程序,这是一个新的挑战,也是一种新的学习。
我选择的是备选题目中的第七个——学生信息管理系统。
这需要我自己设计一个系统程序,可以输入信息,保存到文件里,再从文件里调出来,使之显示在屏幕上,进行删除、添加等对信息的操作。
初看到这个题目觉得很简单,但当我做到电脑前准备开始编写代码的时候才发现无从下手。
通过去图书馆查找程序设计相关的书籍,和上网参考前人编写的类似程序,我脑中才有了一个大概方向。
终于开始着手写下了第一段输入函数的代码,因为这是我们平时课堂上用的最多最熟的语句,写了很长一大段,调式运行竟然成功了,顿时信心倍增,于是我开始迫不及待的开始写第二段保存函数。
我记得第一天下来,我只写好了这两个函数,但还是很开心,毕竟这是我编的第一个小系统的成功的开始!
接下来两天都在宿舍整个下午的对着电脑不断的编译、调试、修改,每次编好一个能够成功运行的程序,都会感到很欣慰,并增加继续下去的信心。
当然其中也有遇到困难的时候。
好几次遇到编好的程序调试没有错误,却偏偏不能运行这种情况,自己编的程序自己很难发现当中的错误,而电脑又没有提示,这时候就很受打击,也会着急。
反复检查都找不出毛病来的时候就会有想要放弃的念头。
有时候就直接关机去做别的事情,等再开始做程序的时候,才发现先前的错误所在。
这时候会有一种“柳暗花明又一村”的欣慰感觉。
总之,遇到困难,可以先放一放,让脑子休息一下,忘掉错误的记忆。
或许等过段时间再回过头来,就会很容易的发现之前的错误了。
随着编好的程序越多,累积的经验也越多,查找错误就越快了。
还有会发现很多程序有很多相似之处,可以通过复制修改的发式来编写。
虽然题目要求只需要一种查询方式,但当我编出规律之后自然就想多写两个,写完就会有很大的成就感了。
总之,经过这一次的课程设计,我们体会到了痛苦与快乐同存的感觉。
当最后一次成功串联运行所有函数时,真的很开心。
通过这次实践,我们能够更熟练掌握C语言,特别是循环和文件,当时在课堂上没有学太清楚的,这个程序设计之后都很明白了。
同时增加了我们对程序设计的兴趣,假期回家我还会尝试着做一些其他的小系统。
参考文献
[1]陈维兴,林小茶.c++面向对象程序设计教程.北京:
清华大学出版社,2004.
[2]张国峰.C++程序设计实用教程.北京:
清华大学出版社,1996.
[3]张松梅.C++语言教程.电