高校教务管理系统成本测算(共6页).doc
精选优质文档-倾情为你奉上高校教务管理系统成本测算作者 王 玉学号 班级 软件1102班西安财经学院信息学院摘要:教务管理是现代高校的主要日常管理工作之一,高校教务管理系统是对学校教务和教学活动进行综合管理的系统,能同时满足学校管理层、教师、学生等日常工作、学习、管理、咨询等工作。目的是共享学校各种资源、提高学校的效率、规范学校的工作流程、便利校内外的交流。在开发高校教务管理系统时,由于系统功能的自身要求和开发系统时的环境的限制,软件开发的成本测算也受到了影响。在开发时,对系统进行成本测算时的方法采取功能分解法进行测算。关键字:教务管理系统 成本测算 功能分解法专心-专注-专业1 引言 高校教务管理系统是一个规模庞大、功能齐全、操作简单的系统,因为主要的服务对象是高等学校的学生、老师以及校外的来访者,所以在设计开发时应该从基本的功能入手,不能太过繁琐,实现系统的基本功能。高校教务管理系统是一个由众多子系统集成而成的系统,在进行成本测算时,将系统按照功能分解为八个子系统,所以,应从各个子系统的成本测算入手,在将子系统的成本测算完成后,再进行教务管理系统的成本测算。 在进行各个子系统的成本测算时,要考虑的因素很多,其中的测算标准就按照各个子系统的生命周期,包括系统规划阶段、系统分析/设计阶段、系统构建阶段、系统运行维护阶段。在这四个阶段中,又能划分出更多的方面影响成本的测算,需要在设计系统时全面的考虑到。 子系统成本测算完毕后,在进行整体系统的成本测算时,不仅需要考虑将子系统集成时的成本测算影响,更要注意总系统在运行维护时要付出的成本。所以在进行成本测算时,采用功能分解法是比较快捷也比较简便的方法。2 功能分解法2.1 功能分解及成本估算流程功能分解法的基本思想为首先从结构上将软件成本按功能/性能和生存周期阶段两个维度进行分解,若设系统的生存周期为n个阶段,软件按功能/性能分为m个子系统,则该系统的功能分解示意图见图1。图1 系统的功能分解示意图图中的Nij表示软件的第i功能/性能子系统在第j个生存周期阶段的成本或工作量。然后由专家对每一个模块工作量的最小可能值aj,最大可能值bj和最可能值mj 进行估计,并利用信息库中的一些重要工程经济参数(经验值)如成本费用率、劳动生产率、工时费用率等来综合汇总,计算系统的总成本,最后再对由二种不同方式(其中一种计算只按功能/性能一个维度进行分解,另一种计算则按功能/性能和生存周期阶段两个维度进行分解)所得到的成本估计值进行对比分析,通过分析来寻找完成系统构建的关键任务及研究关键任务的解决措施。利用功能分解法求解软件成本估算的流程见图2。图2 功能分解法的成本测算流程图2.2 教务管理系统子系统生命周期1、系统需求规划阶段,此阶段包括系统调研、投标竞争和需求分析。2、系统设计阶段,此阶段包括系统分析、系统概要设计、系统详细设计及评审。3、系统构建阶段,此阶段包括系统硬件购置与安装、系统软件与购置、基建与有关设施建设、数据与技术资料收集、人员培训、有关硬件原材料购置、有关硬件生产/测试及废品损失、有关软件编程/测试、有关文档编制等。4、系统运行维护阶段,此阶段包括系统营销、系统切换、系统运行(运行指导人员费用、材料消耗费、固定资产折旧费)、系统管理(审计费、行政管理费用、系统服务费用)、系统维护(纠错性、适应性、完善性等的维护费用)2.3 教务管理系统的功能模块高校教务管理系统共有教学资源管理、教师管理、学生管理、选课管理、考务管理、成绩管理、教学计划管理七个子模块。1、教学资源管理:1) 学年校历编排:给定学年起止日期,自动生成校历。并能对其进行人工调整。 2) 教室资源维护:对教室个数、可容纳人数、教室功能、教室属性(语音室、实验室、微机室、体育场馆等)、相应的管理人员进行维护。2、教师管理该子系统提供对每位教师的基本信息、教学考勤和教学工作量等信息的维护功能。 1.)教师基本信息:职称、姓名、性别、年龄、教工号、所属系别。 2.)教师教学考勤:教师到课情况。 3.)教师工作量:教学总课时、专业班级、学生人数、个人课表。3、学生管理 系统提供对每位学生的档案管理、考勤管理、选课管理、学期/学年资格审核管理等功能的管理。1.)生档案管理:系统可从招办提供的电子档中导入学生档案,实现新生基本信息表,并能对基本信息表数据进行存档和维护。2)生考勤管理:对学生每周上课的考勤情况进行登记,每周提交一次。开通班主任办公室/教学服务中心两个输入端口,只有教学服务中心对数据有更改权限。对有关考勤情况的按班级、时间段等不同类别的统计,并根据校规对违规学生进行标记。存在违规情况时,根据相关规定处理各违规学生,并生成备注存入个人临时档案。4、选课管理系统为学生和教务人员提供不同的入口。学生和教务人员具有不同的操作权限,学生可以修改个人基本信息、选课、退课、查看自己的课程;教务人员通过本功能可以及时掌握学生选课的进程,对系统进行全面的管理,如选课信息的录入、查看、修改、删除等。1>学生网上选课1) 选课:当点击增加选课菜单后,课程列表中的专业必修课为教务处按各系教学计划自动添加进去的,学生可以通过课程列表框中的选修课程列表来进行选择,也可以通过课程名称或课程代码直接加入选课单,可以一次选多门课。界面中同时提供查看本学期所开设的全部课程的基本信息,包括每门课的学分、课程性质(选修、必修)、教室及可容纳的学生、教师、教学方式(普通教学、多媒体教学、户外教学)、已选人数等。学生选课功能应具备时间限制,选课阶段结束后学生不能对选课结果作修改。2) 退课:当需要删除选课时,选中删除选课菜单。可从课程列表框中选择需要删除的课程,可以一次选多门课。删除操作提交后把选课结果送给成绩管理子系统。课程表中教务处按各系教学计划整体指定上去的,学生不能自行退选。2> 教务员管理:1) 基本信息管理本功能是选课管理系统的辅助功能主要包括教师信息管理、学生信息管理和课程信息管理,实现对教师信息、学生信息的浏览以及对课程信息的安排。其中教师信息管理可以查看教师姓名、教师工号、教师职称、教师所属系;学生信息管理可查看学生姓名、学生学号和学生所在系和所在专业;课程信息管理有课程名称、学分、上课地点、已选人数、课程性质、开课系、课程人数,通过课程信息管理教务人员还可以根据需要加入本学期需要的课程。2) 选课信息管理A. 教务人员通过选课记录可以查询、添加、修改本学期开设的选修科目。掌握当前选修课目的报名进程,根据实际选课情况临时调整科目内容,将最终修改结果传送给成绩管理子系统。B. 统计功能应做到:a) 生成学生选课报表,并打印输出选课学生名单。b) 生成本学期学生所选课程的成绩报表,具体包括学生的每门课的学分、成绩、是否需要补考或重修等信息。将结果传送给成绩管理子系统。5、考务管理 把考务工作信息化和自动化的系统,实现了考试计划管理和考场的自动安排。 1> 考试查询(权限:所有人):用户可通过专业,班级查询到考试时本班所有应考课程考试情况。其中包括:考试时间,考场信息,学号信息等。同时,用户也可通过专业,课程查询到具体补考课程情况。其中包括考试时间,补考学号,考场安排等信息。 2>考场管理安排(权限:教务管理人员):考试时间以场次作为安排的单位。2) 同一门课的考试要安排到同一时间。3) 人数多的课程先安排(便于安排人多的考试)。4) 同一班级的学生尽量安排到几个集中的教室。5) 考相同课程的考场安排在相邻的考场。6、成绩管理考试成绩是检验老师教学效果和学生学习效果的重要度量,也是审查学位的重要依据。因此要求学生的成绩管理准确安全。成绩管理包括成绩统计、成绩录入、成绩排名、成绩更改、成绩查询、其他成绩等。系统具有以下特点:1) 考试成绩开放:教学服务中心系办公室、班主任办公室任课老师三类成绩录入端口,但成绩数据一经提交便不能更改,如录入有误,必须到教学服务中心更改维护。2) 成绩录入(必修)可按课程/班级/学生等方式录入(录入成绩是卷面成绩+平时成绩);班主任处录入平时考勤折合成绩,最终成绩由本系统按照不同比例将各成绩相加最终生成。3) 系统可按年级/专业/班级/课程进行统计,排名。 4) 体育成绩由体育组合成最终成绩后直接录入(包括体育选修),成绩数据一经提交便只能通过教学服务中心维护。7、教学计划管理设置专业方向,为各专业制定教学计划,使学科专业不断规范化、科学化、层次化。1) 查询功能:查询某专业、班级相关公共课、专业课、选修课信息。2) 教学计划复制功能:将某一年级的课程计划复制到另一年级;将某系(专业)的某一年级课程复制到该系(专业)另一年级。3) 共享功能:将教学计划制定结果传输到“开课/排课管理子系统”中,实现共享。4) 统计功能:可以按照学年、学期、系(专业)、班级输出教学计划。3 高校教务管理系统成本测算流程将七个功能模块分别记为N1 ,N2 ,N3 ,N4 ,N5 ,N6 ,N7 ,各功能模块的成本费用率Coj(单位:元/行),劳动生产率Eoj(单位:行/人月)及各阶段的工时费用率k(单位:元/人月),由该企业的软件构建(历史)信息库可得数据见表1.1,其中软件生存周期仅考虑需求规划、设计编码、构建测试、运行维护四个阶段。 表1.1 工程经济参数经济参数;模块N1N2N3N4N5N6N7成本费用率Coj(元/行)13182220222518劳动生产率Eoj(行/人月)340250280230150220280生存周期阶段;工程经济参数需求规划设计编码构建测试运行维护工时费用率k (元/人月)5000450046004800由专家及经验可给出该软件各模块的最小可能值(最乐观值)aj,最大可能值(最悲观值)bj 和最可能值mj,若设各模块工作量均服从分布,则由分布性质知各模块期望(平均)工作量Ej,有 Ej = (aj + 4mj + bj )/6 (单位:行) (3.2)从而可计算各模块成本 Cj 和以人月为单位的工作量 Mj ,其中 Cj = Coj·Ej (单位:元) (3.3) Mj = Ej / Eoj (单位:人月)详细计算过程图表如下:表1.2 CAD软件成本、工作量估计表(一)参数模块aj(行)mj(行)bj(行)Ej(行)Coj (元/行)Cj(元)Eoj (行/人月)Mj (人月)N1200022002500188313244793405.5N24000500060005000189000025020N345006600850088162228031.5N43000320038004766209532023020.7N52200230025003416227515215022.8N640005200650072162522032.8N7630080009500111161828039.7总计Es= 42213Cs= Ms =173最后汇总有 Cs = Cj = (元), Es = Ej = 42213(行), Ms = Mj = 173(人月)观察表1.2可知系统成本Cs和工作量Es (Ms)是仅通过功能这一个维度分解而完成的汇总计算。为了使估算更具可靠性,我们还可以将系统工作量按功能与生存周期阶段二个维度进行分解,并利用表3.3的工时费用率k来计算系统在生存周期各阶段的成本,并有 = k · k = 1,2,3,4表1.3 CAD软件成本、工作量估算表(二) 时间维功能维需求分析设计编码构建测试运行维护总计/人月N11.52.00.53.07.0N22.08.05.09.024.0N32.510.05.510.028.0N42.07.03.55.518.0N51.55.04.54.516.0N62.010.05.510.027.5N73.512.05.59.030.0总计/人月1554.030.051.0=150.5k(元/人月)5200450046004800 /元78000=由表1.3可知,依次有 = 1·= 15 *5200 = 78000 元 = 2·=54.0 * 4500 = 元 = 3·= 30.0 * 4600 = 元 = 4·= 51.0 * 4800 = 元由此可得系统总成本与总工作量(人月)有 = =(元) = = = 150.5(人月)注意到通过二条不同途径得到了该软件成本(单位:元)与工作量(单位:人月)的二组数值,但考虑到这二组数值有相对误差c = (- Cs )/ = ( -)/ = 22%m= (- Ms )/ = (150.5-173)/150.5 = 14%相对误差有小于20%,也有大于20%,故可从中选择小于20%的结果输出,例如从保守的观点出发可选择系统成本与系统工作量有 = 150.5 人月 , = 元然而我们注意到上述之成本与工作量是在生存周期的需求分析、设计编码、构建测试、运行维护四个阶段成本与工作量基础上的累计值,而并非在整个生存周期内的累计值。而后者还包括系统运行与维护阶段的成本,因而我们可在与的基础上采用加乘因子的方法求得系统成本与工作量在整个生存周期内的估计值与 ,有 =(1+M) ,= (1+C)此中M与C分别为工作量与成本的加乘因子,其取值将依赖于系统的功能与性能特性,例如根据此CAD软件特性,可取 M = 40% , C = 40%,则有系统成本与工作量在整个生存周期内的估计值为 =(1+M)= 150.5(1+0.4)= 217.0 人月 = (1+C)= (1+0.4)= 98.53 万元此外,观察表1.2可知,从成本分析的角度来看各模块中成本较高的为N3(学生管理模块)和N7(教学计划管理模块),因此为进行成本控制或降低系统成本首先应关注N3和N7模块。另外从人力资源投入的角度来分析,由表1.2可知投入量最大的同样为N3和N7 ,因此可将N3和N7模块作为系统成本分析的关键模块,系统管理员可寻找相关措施来降低N3与N7的成本(例如设法提高N3与N7的劳动生产率Eo3和Eo7和降低N3和N7的成本费用率Co3和Co7等)。此外观察表1.2还可得知系统成本在需求分析、设计编码、构建测试、运行维护的阶段分布中以设计编码阶段为最大,构建测试阶段为次之,了解上述的成本的时间分布特点将有助于企业的资金运转过程。最后我们需要说明的是:在表1.2中关于各子系统Nj的成本特性值aj,mj,bj均是由一个专家给出的,考虑到一个专家对事物的认识难免会有主观、片面之处,因而由其个人来决定aj,mj,bj往往有可能不够科学、可靠。3. 总结软件工程经济学是为了使软件项目能够按照成本、工期与定价而顺利完成而进行分析和管理的活动。在软件工程经济学这门课中,我们要学会提高软件管理水平从而提高软件产品的质量。 与学习软件工程导论不同,软件工程经济学是从整个软件的经济、质量等角度对软件进行管理,在学习中,对于软件经济学很难建立。软件之所以作为一个项目,是因为它有明确的目标作为导向,是通过项目经理及其团队工作完成的,也同时存在着大量的变更管理。学习软件工程经济学期,在软件项目初始阶段和执行控制阶段很难学习过关。不理解软件项目中大部分的细节性工作的意义与作用,但是后来在实践中发现,越是细节性的工作越重要越不能马虎。项目计划就是一个很繁琐很困难的工作。 因为软件工程经济学考验团队之间的合作与竞争能力,所以在平时学习时,我和我的同学之间就软件项目管理的难点及重点也进行过激烈的讨论,虽然我们讨论的结果不准确,所用的方法也可能不对,但是在讨论中我们营造的学习讨论氛围很好。在讨论中,我们都学会了要听取大家每个人的意见,然后选择正确的方法解决问题。在对细节性问题的讨论和考虑时,我们全方面的思考和理解,为更简单更快捷的解决问题而努力。 通过对软件工程经济学这门课的学习,我深刻地理解到,对软件项目的理解越深刻,项目开发和管理的经验越多,就能越管理好项目。这门课的灵活性和实践性很强,绝对不能死记硬背,因为工程经济学没有唯一的标准,只有最适合特定项目的测算方法。