学生选课系统-代码评审
最新国家开放大学电大《软件工程》期末题库及答案

最新国家开放大学电大《软件工程》期末题库及答案考试说明:本人针对该科精心汇总了历年题库及答案,形成一个完整的题库,并且每年都在更新。
该题库对考生的复习、作业和考试起着非常重要的作用,会给您节省大量的时间。
做考题时,利用本文档中的查找工具,把考题中的关键字输到查找工具的查找内容框内,就可迅速查找到该题答案。
本文库还有其他网核及教学考一体化答案,敬请查看。
《软件工程》题库及答案一一、选择题(请从四个可选项中选择最佳答案。
60分,每题3分)1.下面的哪个选项不是软件工程的宗旨( )。
A. 开发满足用户需求的软件B.研究算法C.及时交付软件D.生产无故障软件2.针对需求不确定的软件开发,比较好的模型是( )。
A. 快速原型化模型 B.瀑布模型C.软件成熟度模型 D.系统化模型3.可行性分析研究的费用大约是项目总经费的( )。
A. 2% B.6%C.20% D.5%04.业务需求描述的是( )。
A.功能需求 B.用户需求C.用户的具体业务流程 D.软件的目标、规模和范围5.一个数据流程图中的图形符号有且仅有( )种。
A.3 B.5C.4 D.76.非直接耦合的模块独立性最强,( )的模块独立性最弱。
A.内容耦合 B.数据耦合C.控制耦合 D.外部耦合7.信息隐藏的核心内容是( )。
A.把数据都放在公共的区域B.数据不能被其他模块访问C.一个模块的内部信息不允许其他模块直接访问D.把信息加密,只能让有密钥的模块访问8.面向过程的方法最关心的是过程,而过程实施的对象是作为过程( )传递的。
A. 参数 B.主体C.过程 D.数据结构9.( )用于描述系统的功能集。
A.组件视图 B.逻辑视图C.用例视图 D.对象视图10.用( )模型描述系统的组织结构。
A.组织 B.CMMC.数据 D.静态11.对象模型描述现实世界中实体的对象以及它们之间的关系,表示目标系统的静态数据结构。
在面向对象方法中,由( )实现。
A.顺序图 B.类图C.状态图 D.组件图12.如果对象之间的耦合是通过( )来实现的,则这种耦合就是交互耦合。
基于_Javaweb_的教务信息系统设计与分析

CE MAGAZINE PAGE 37基于Javaweb 的教务信息系统设计与分析黄学茂 范雪敏 林苗真【摘 要】在全球信息化不断发展的背景下,教务管理信息化在高校中得到了广泛应用,旨在提高管理效率。
本文研究的教务信息系统是基于Java 技术和采用B/S 架构进行设计。
本系统分排课设计、学籍设计、教学资源设计以及学生教师模块。
首先,针对各模块的特性进行优化,结合Javaweb 程序特点优化系统设计的web 层结构,并结合Memcached 技术实现缓存;其次,在排课算法方面,该系统对现有的几种排课算法进行了参照和优化。
通过对各大高校现状及教务管理体制不足的深入业务调研,构建了一个基于Java 的教务信息系统。
【关键词】教务信息系统;Java;B/S 架构作者简介:黄学茂,厦门工学院,助理研究员;范雪敏,厦门工学院,研究实习员;林苗真,厦门工学院,研究实习员。
基金项目:福建省中青年教师教育科研项目资助(项目编号:JAT200828)。
一、研究背景教育信息化已成为国家教育事业的一项重要战略。
随着高校规模的扩大和管理的复杂化,传统的手工操作方式无法达到教务管理高效率的要求。
同时,国家及教育部门对教务相关信息的及时性以及准确性,有更高的要求。
因此,建立一套高效、完善的教务信息系统,成为高校管理者迫切需要解决的问题之一。
国内外对教务信息系统的研究已有较为成熟的成果。
国内高校多采用自主开发的方式,开发出适合自身的教务管理系统。
这些系统大多具有学籍管理、课程管理、成绩管理、排课管理等基本功能,并提供了较好的用户体验。
二、系统架构设计系统设计是整个系统开发的关键环节,它决定了系统的功能和性能。
本节将从以下两个方面进行介绍。
(一)架构设计[1]本系统采用B/S架构,基于Javaweb开发,使用MVC模式和SSH框架进行设计。
MVC模式将系统分为模型、视图和控制器三个部分,使得系统结构清晰,易于维护和扩展。
SSH框架则提供了丰富的工具和组件,简化了开发过程,提高了开发效率。
软件工程导论(共65张PPT)可编辑全文

– 学生选课系统 软件
Microsoft Visio; Rational Rose
高级程序语言 作业递交方式:
来信标题注明 :班级 、学号、姓名、章节
第1章 软件工程学概述
1.1 软件危机
软件危机的出现:60年代中期到70年代中期, 许多软件最终成为不可维护的,这就是软件危 机.
不能用象硬件替换部件的方式修复软件的故障 使用增量模型的困难是,在把每个新的增量构件集成到现有软件体系结构中时,必须不破坏原来已经开发出的产品。
出现了“软件作坊”,软件作为一种产品被广泛使用;
使用个体化开发方式;
软件的发展史_2
随着软件数量的增加及软件需求的日趋复杂, 维护难度与来越大,开发成本高,质量低 导致“软件危机”
➢相同点:都将软件开发划分为分析、设计、编码、 测试等阶段 ➢不同点:思想不同,方法不同。另外,传统软件 工程更关注功能模块,面向对象软件工程更关注对 象的抽取和设计
➢ 两类软件工程方法学没有绝对的替代关系
1.3软件生命周期
生命周期方法学
从时间角度对软件开发和维护的复杂问题进行分解,把软件生命 的漫长周期依次划分为若干个阶段,每个阶段有相对独立的任务, 然后逐步完成每个阶段的任务。
关注大型程序的构造 中心问题是控制复杂性 软件经常变化 开发效率非常重要 和谐地合作是开发软件的关键 有效地支持它的用户 具有一种文化背景的人替另一种文化背景的人
创造产品
用分阶段的生命周期计划严格管理 坚持进行阶段评审 实行严格的产品控制 采用现代程序设计技术 结果应能清楚地审查 开发小组成员应少而精 承认不断改进软件工程实践地必要性
软件工作涉及到很多社会因素。 由于对象概念的引入,表达分析、设计及实现等活动只用对象类和关系,从而可以较容易地实现活动的迭代和无间隙
数据库系统原理复习题(优.选)

自考《数据库系统原理》复习题B1.数据库管理系统是(位于用户与OS之间的数据管理软件)2.外模式DDL用来描述( .数据库的局部逻辑结构)3.下列关于数据冗余的叙述中,不正确...的是( D )A.冗余的存在容易破坏数据库的完整性B.冗余的存在给数据库的维护增加困难C.不应该在数据库中存储任何冗余数据D.冗余数据是指可由基本数据导出的数据4.适当调整DB的模式和内模式,使DB适应新的应用环境称为DB的( D )A.重组织B.监控分析C.查询优化D.重构造5.关系模型中将不含有多余属性的超键称为( B )A.内键B.候选键C.主键D.外键6.如果一个关系属于3NF,则它( A )A.必然属于2NFB.必然属于4NFC.可能不属于2NFD.必然属于BCNF7.设有关系模式R(A,B,C),F是R上成立的FD集,F={B→C,C→A},那么分解ρ={AB,AC}相对于F( B )A.是无损分解,也保持函数依赖B.是无损分解,但不保持函数依赖C.不是无损分解,但保持函数依赖D.既不是无损分解,也不保持函数依赖8.已知关系S1和S2如下表所示,则S1与S2进行并运算,其结果的元组数为( C )A.0B.4C.5D.69.设有关系R和S,与R—S等价的元组表达式是( D )A.{t|R(t)V┐S(t)}B.{t|R(t)∧┐S(t)}C.{t|u(R(t)∨┐S(u))}D.{t|u(R(t)∧┐S(u))}10.在SQL语言中,用于测试列值非空的短语是( C )A.IS NOT EMPTYB.NOT UNIQUEC.IS NOT NULLD.NOT EXISTS11.SQL语言中,条件“年龄BETWEEN 20 AND 30”表示年龄在20至30之间,且( A )A.包括20岁和30岁12.要求事务在读取数据前先加共享锁,且直到该事务执行结束时才释放相应的锁,这种封锁协议是( C ) A.一级封锁协议 B.二级封锁协议 C.三级封锁协议 D.两段锁协议13.断言是DBS采用的( B )A.安全性措B.完整性措施C.恢复措施D.并发控制措施14.在对象联系图中,如果从A到B有双线箭头,则表示A是B的( A )A.一个子类B.同类C.一个父类D.一个属性15.一个UML类图,如下图所示。
学生选课系统

一、问题定义1.1问题的定义学生选课系统:也称学生课程选修制,即允许学生对学校所开设的课程有一定的选择自由,包括选择课程、任课教师和上课时间,选择适合自己的学习量和学习进程。
对于习惯了中小学课程(所有的课程由学校统一安排,而且科目从小学到高中有连续性)的大学新生来说,大学的课程多得令他们眼花缭乱,课程分类也比较复杂,因此选课对他们而言还是一件新鲜而陌生的事物。
但大学的学习与选课有莫大的关系,必须了解它,才能掌握主动权。
而要了解选课制,首先要对大学的课程设置有所认识。
1.2 系统要解决的问题建立一个小型的学生选课系统,用户(学号,姓名,年龄,性别,系别,班级,出生年月)可以注册成为会员,注册的用户可以选择要选修的课程,也可以查询已选修的课程(包含课程名、任课教师和上课时间,学分)等,老师(姓名,职位,所教课程)可以查看该门课程的选课人数及上课时间,管理员可以查看所有学生的选课情况,查看各门课程的任课老师的信息,查看各门课程选课人数,查看注册用户信息。
二、可行性研究2.1 引言2.1.1目的本项目开发计划旨在明确规范开发过程,保证项目质量,统一小组成员对项目的理解,并对其开发工作提供指导;同时还作为项目通过评审的依据。
并说明该软件开发项目的实现在技术上、经济上和社会因素上的可行性,评述为了合理地达到开发目标可供选择的各种可能实施方案,说明并论证所选定实施方案的理由。
2.1.2背景及功能A、系统的名称为学生选课系统(Java实现);B、项目的任务提出者是本次课程设计辅导老师;开发者包括:何南平,徐小聪。
2.1.3 参考资料[1] 张海藩.软件工程导论(第5 版)[M].清华大学出版社,2008 年2 月.[2] 窦万峰.软件工程方法与实践.机械工业出版社,2009 年5 月.[3] 窦万峰.软件工程实验教程.机械工业出版社,2009 年5 月.[4] 陈勇孝.java程序设计实用教程,2008年6月.[5] 王珊,萨师煊.数据库系统概论,高等教育出版社,2006年5月.第6/55页2.2 可行性研究的前提2.2.1 要求A、功能:1) 普通用户:登录系统前用户可以查看用户选课的情况;用户可以注册;查找忘记的密码;查看自己选课的一些相关信息。
教务系统功能简介

北研科技教务管理系统功能简介南昌北研科技开发有限公司2008-10-5目录1.1 目标 (3)1.2 内容 (4)1.3 教务管理框架 (6)1.4 系统功能 (8)1.4.1 教学资源管理 (8)1.4.2 学籍管理 (9)1.4.3 教学计划管理 (12)1.4.4 学期开课管理 (13)1.4.5 成绩管理 (17)1.4.6 教材管理 (18)1.4.7 教学考评 (19)1.4.8 网上选课系统 (20)1.4.9 排课系统 (22)1.4.10 考务管理 (25)1.4.11 考级管理 (26)1.4.12 实践教学 (26)1.4.13 教务办公 (27)1.4.14 教师教辅人员门户 (27)1.4.15 管理人员门户 (28)1.4.16 学生门户 (28)1.4.17 系统维护 (29)1.1 目标近十年多来,国内外都在积极推进面向21世纪高等教育的战略改革。
高质量的教育需要高效的管理。
在这个信息化、网络化的时代,如何利用现代化管理工具和管理手段提高工作效率和质量,是向21世纪大学教育改革需要解决的课题。
高校教学教务管理工作是高等教育中的一个极为重要的环节,是整个院校管理的核心和基础。
利用先进的技术手段和指导思想提高教育、培养、管理水平,对提高人才的综合素质培养具有重大的影响,对打造高品牌大学更有着广泛深远的意义。
教务管理信息系统是数字化校园极为重要的组成部分之一,是为了建设高校教务教学的数字化管理,提高教务管理人员、工作人员以及各院系教学负责人的工作效率,并且与“数字化校园”中的其它系统相配合,共同实现无冗余的、统一的信息管理。
系统必须针对教务教学信息管理开发,紧贴用户需求,需要全面覆盖教学教务管理各个领域;强大的教学教务管理功能,使系统成为学校教学教务管理完美运作的强有力保障。
系统总体设计应该以达到国际标准的校园系统为目标,各个子系统和功能模块采用灵活配置定制模式。
为提高学校教务教学工作效率和推进高校教学改革提供了重要参考依据。
软件工程笔试题及答案

软件工程笔试题及答案在每小题列出的四个备选项中只有一个是符合题目要求的,请将其代码填写在题后的括号内。
错选、多选或未选均无分。
1 .软件工程管理的具体内容不包括对_________ 管理。
( ) A .开发人员B .组织机构C .控制D .设备2 .在McCall 软件质量度量模型中,_________ 属于面向软件产品操作。
( ) A .正确性B .可维护性C .适应性D .互操作性3 .在快速原型模型的开发过程中,用原型过程来代替全部开发阶段所用模型是_________ 模型。
( ) A .探索型原型B .演化型原型C .实验型原型D .增量型原型4 .维护中因删除一个标识符而引起的错识是_________ 副作用。
( ) A .文档B .数据C .编码D .设计5 .软件维护的困难主要原因是( ) A .费用低B .人员少C .开发方法的缺陷D .维护难6 .用白盒法技术设计测试用例的方法包括( ) A .错误推测B .因果图C .基本路径测试D .边界值分析7 .软件测试中根据测试用例设计的方法的不同可分为黑盒测试和白盒测试两种,它们( ) A .前者属于静态测试,后者属于动态测试B .前者属于动态测试,后者属于静态测试C .都属于静态测试D .都属于动态测试8 .程序设计语言的心理特性在语言中表现不应包括( ) A .歧义性B .简洁性C .保密性D .传统性9 .程序的三种基本控制结构的共同特点是( ) A .只能用来描述简单程序B .不能嵌套使用C .单入口,单出口 D .仅用于自动控制系统10 . JSP 方法是一种面向_________ 的设计方法。
( ) A .控制结构B .对象C .数据流D .数据结构11 .当一个模块直接使用另一个模块的内部数据,这种模块之间的耦合为( ) A .数据耦合B .公共耦合C .标记耦合D .内容耦合12 .软件设计的方法有多种,_________ 方法不属于面向数据流的设计方法。
教务系统功能简介

北研科技教务管理系统功能简介南昌北研科技开发有限公司2008-10-5目录1.1 目标 (3)1.2 内容 (4)1.3 教务管理框架 (6)1.4 系统功能 (8)1.4.1 教学资源管理 (8)1.4.2 学籍管理 (9)1.4.3 教学计划管理 (12)1.4.4 学期开课管理 (13)1.4.5 成绩管理 (17)1.4.6 教材管理 (18)1.4.7 教学考评 (19)1.4.8 网上选课系统 (20)1.4.9 排课系统 (22)1.4.10 考务管理 (25)1.4.11 考级管理 (26)1.4.12 实践教学 (26)1.4.13 教务办公 (27)1.4.14 教师教辅人员门户 (27)1.4.15 管理人员门户 (28)1.4.16 学生门户 (28)1.4.17 系统维护 (29)1.1 目标近十年多来,国内外都在积极推进面向21世纪高等教育的战略改革。
高质量的教育需要高效的管理。
在这个信息化、网络化的时代,如何利用现代化管理工具和管理手段提高工作效率和质量,是向21世纪大学教育改革需要解决的课题。
高校教学教务管理工作是高等教育中的一个极为重要的环节,是整个院校管理的核心和基础。
利用先进的技术手段和指导思想提高教育、培养、管理水平,对提高人才的综合素质培养具有重大的影响,对打造高品牌大学更有着广泛深远的意义。
教务管理信息系统是数字化校园极为重要的组成部分之一,是为了建设高校教务教学的数字化管理,提高教务管理人员、工作人员以及各院系教学负责人的工作效率,并且与“数字化校园”中的其它系统相配合,共同实现无冗余的、统一的信息管理。
系统必须针对教务教学信息管理开发,紧贴用户需求,需要全面覆盖教学教务管理各个领域;强大的教学教务管理功能,使系统成为学校教学教务管理完美运作的强有力保障。
系统总体设计应该以达到国际标准的校园系统为目标,各个子系统和功能模块采用灵活配置定制模式。
为提高学校教务教学工作效率和推进高校教学改革提供了重要参考依据。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
char place[20];/*上课地点*/
char teacher[10];/*上课老师*/
intTno; /*老师编号*/
intpn; /*学生人数*/
}Cou[CPMAX]={
{1,"数学",109.40, "5#5110", "张三",1,4},
{2,"语文",210.30,"6#6110", "李四",2,1},
printf(" %10s %8s %9d %9d\n",Cou[i].place,Cou[i].teacher,Cou[i].Tno,Cou[i].pn);
} /*添加*/
printf("请输入课程序号\n");
scanf("%d",&cn);
Cn=cn-1;
if(Cou[Cn].Cno==0)
{
{
intj,i;
char k[10];
printf("您已选择的课程为:\n");
printf("课程号课程名上课时间上课地点上课老师老师编号课程人数\n");
for(j=1;j<=4;j++)
{
if(Student[XH][j]==0)printf("空\n");
else
{
printf("%3d %10s %9.2f ",Cou[Student[XH][j]-1].Cno,Cou[Student[XH][j]-1].Cname,Cou[Student[XH][j]-1].time);
printf("该课程不存在\n");
printf("是否继续选课? 1是2否\n");
scanf("%d",&j);
if(j==1) {system("cls");gotoleap1;}
}
else if(Cn<CNO&&Cn>=0)
{
printf("课程号课程名上课时间上课地点上课老师老师编号课程人数\n");
void student();
void manger();
voidjiemian();
void Add();
void change();
void select(intXH);
voidDropC(intXH) ;
void teacher();
void manger();
void search(intXH) /*课程查询*charSname[10];
}S[6]={{1,"尹新荣"},{2,"李明"},{3,"李阳"},{4,"刘成立"},{5,"艾斯"},{6,"司丽芳"}};
intStudent[STU][SCMAX]={{1,1,0,0,0},{2,1,0,0,0},{3,3,0,0,0},{4,1,2,3,4},{5,1,0,0,0} ,{6,0,0,0,0}};
scanf("%d",&j);
if(j==1)
{
for(j=1;j<(SCMAX-1);j++)/*+++++++++++++++++++++++++++*/
{
if(Student[XH][j]==cn) p=1;
}
if(p==1)
{
printf("该门课程已经选过了\n");
printf("是否重新选课?1是2否\n");
intTeacher[Tea][SCMAX]={{1,1,4,0,0},{2,2,5,0,0},{3,3,6,0,0}};
/*++++++++++++++++++++++++++++++++++++++++++++++++++++++学生++++++++++++++++++++++++++++++++++++++++++++++++++++*/
printf("%3d %10s %9.2f",Cou[Cn].Cno,Cou[Cn].Cname,Cou[Cn].time);
printf(" %10s %8s %9d %9d\n",Cou[Cn].place,Cou[Cn].teacher,Cou[Cn].Tno,Cou[Cn].pn);
printf("是否选择该课程? 1是2否\n");
printf(" # 2选课#\n");
printf(" # #\n");
printf(" # 3选课退选#\n");
printf(" # #\n");
printf(" # B返回#\n");
printf(" ################################################\n");
scanf("%d",&i);
if(i==1) {system("cls");search(XH);}
else if(i==2) {system("cls");select(XH);}
system("color 80");
printf(" ################################################\n");
printf(" # #\n");
printf(" # #\n");
printf(" # 1选课查询#\n");
printf(" # #\n");
else if(Student[XH][3]==0) Student[XH][3]=Cou[Cn].Cno;
else
Student[XH][4]=Cou[Cn].Cno;
Cou[Cn].pn=Cou[Cn].pn+1;
printf("选课成功!\n");
printf("是否继续选课? 1是2否\n");
2.2代码评审优点:
有利于预防bug,为改善代码质量打下坚实的基础。在项目的早期发现缺陷,可以将损失降至最低。评审的过程也是重新梳理开发思路的过程,双方都加深了对系统的理解。有利于促进团队沟通、促进知识共享、共同提高。
2.3代码评审实现过程及心得体会:
在针对源程序,即学生选课管理系统源代码的基础上,结合代码评审的相关概念、思想,还有参考了相关知识。有针对性的设计了,一个评审检查表。按照代码评审的要求,逐步按评审检查表的款项。逐条,执行检查。严格的按照审查要求,严肃的将检查结果记录在册。
一、代码评审检查表:
NO
检查项
是否符合
1
变量生存周期合适
O
2
代码不仅包含单元测试用例,而且测试均已通过。
X
3
代码包含了恰当的注释和代码文档
O
4
代码符合代码格式规范
O
5
代码有健全的出错处理子程序
X
6
删除了多余语句
O
7
编译没有出错
O
8
连接没有出错
O
9
消除了所有警告
O
10
性能问题有考虑
X
11
安全问题有考虑
{3,"英语",307.30, "15#15217","王五",3,1},
{4,"经济",715.40,"6#6510", "张三",1,4},
{5,"防身术",10.00,"8#8321","李四",2,0},
{6,"电脑游戏",10.00,"5#5310","王五",3,0}
}; /*课程初始化课程编号、上课时间、上课地点、老师、老师编号、课程人数*/
在将来,或许我会从事软件行业。相信到那个时候,在做软件测试的时候,这个时候的一段经历,会对我很有帮助。
三、源代码:
#include<stdio.h>