2.需求分析需求分析
(1)需求分析概述)需求分析是开发软件系统的重要环节,是系统开发的第一步和基础环节。通过需求分析充分认识系统的目标、系统的各个组成部分、各部分的任务职责、业务范畴、工作流程、工作中使用的各种数据及数据结构、各部门的业务关系和数据流程等,为系统设计打下基础。需求分析的好坏往往决定了系统开发的成败。需求分析从系统的调查研究入手,需求分析要对系统的各个方面有全面的了解,既包括系统内部的各个方面,也包括与系统有联系的各种外部因素。通过调查研究和分析,对系统产生比较深刻的认识。需求分析阶段的最终结果是“需求分析说明书”,它涵盖了对用户环境、事务处理和信息流程分析的一切成果,供项目开发组和用户共同遵守。如果采用瀑布模型,就要对“需求分析说明书”进行冻结,使它成为凝固可靠的基线。万一要求变更基线,开发者和用户双方,都必须执行基线变更程序,此变更程序在合同中已做了明确规定。现针对“学生成绩查询系统”的组织结构、业务流程、用户角色职能、系统数据流进行分析。利用结构化分析和UML中的用例从大到小、从粗到细进行系统建模。(2)组织结构调查系统的组织结构,反映了单位内部各个部门的职责划分和它们之间的关系。为了对系统有一个全貌性的了解,首先要对系统内部部门结构、人员组织及用户
5
情况有所了解。对系统组织结构的调查,是从总的方面对系统进行宏观了解和分析。信息的流动关系是以组织结构为背景的,而且总是伴随着组织部门之间的资金流和物流的传递而产生。学生成绩查询系统的组织结构图如下:
学生成绩查询系统
用户登录
学生查询
教师查询
管理员管理
所有成绩查询
单科查询
总分查询
平均分查询
查询所有人的成绩
按照学生查询学生成绩
插入成绩
删除成绩
修改成绩
添加学生
添加教师
删除学生
删除教师
(3)系统需求分析此系统需要实现的功能如下:A.按照教师,学生,管理员三种角色设计系统功能。B.学生成绩查询(学生):查询自己每门课的成绩,单科成绩,成绩平均分,成绩总分。C.学生成绩查询(教师):登记,修改,删除某班某个学生的成绩,可以一次输入入某班全部学生的成绩。D.管理员查询(管理员):登记,对学生,老师进行管理,可以添加某个学生,删除某个学生,添加某个老师,删除某个老师。(4)系统用户分析“学生信息查询系统”主要是针对学生和教师查询工作而开发的应用软件。通常有系统管理员、教师和学生三种用户,他们的使用权限如下:系统管理员:计算机人员,对系统、数据库进行维护,主要对不同人员赋予不同的权限。教师:对学生的成绩进行查询,增加,修改。学生:一般操作水平,能够在本系统查询个人的
学习才成绩。
6
(5)其他需求分析a.性能要求查询服务部分:读者通过本地计算机,从提交查询命令到返回结果不超过8秒钟。数据管理部分:图书管理员从提交一次录入到结果返回不超过8秒钟。b.灵活性要求如果要为数据项设计编码,尽可能采用行业标准,自行编码也应合乎规范,并留有扩充余地,还要征得相关业务部门认可。数据库设计也应考虑可扩充性,以适应今后图书馆发展和系统升级的需要。c.故障处理要求正常使用时不应出错,一般性错误时应给出错误提示。应提供定期自动备份数据库的功能,当遇到不可恢复的系统错误,可以保证数据库完好无损。在系统出错后,应能恢复最近一次备份数据库的状态。d.其他要求①安全性。不同的用户具有不同的使用权限,只有具有最高权限的系统管理员才能修改、注销数据库中的信息,具有一般权限的人员只能读取与自己相关的内容。②一致性。系统的数据要保证一致性、准确性,当某一数据库中记录改变时,与之相关联的数据库也会随之变化。③易操作性。界面设计要符合大多数用户的操作习惯,系统还要提供操作指南,便于用户操作使用。
二.设计方案
1.系统开发方案的选择系统开发方案的选择
在开发方案的选择上,选择了演绎式原型法与生命周期法相结合的方案。具体来说,就是在系统开发之前对系统有一个总体框架设想,各功能单元的结构和功能也比较清楚,但是还没有具体实现。系统完成什么功能,分成哪几个部分,各个部分又有哪几个模块,都已理解掌握,且以后不需要做更大的变动,只是具体到每个模块,还没有全部实现。具体地设计可能是完全实现一个模块,也可能是用一个效率高地模块代替一个旧模块。信息系统的开发是一项比较复杂的工作,我们必须选用科学的有效的开发方法。近年来,国内外已逐步总结出一些开发信息系统的方法和技术,但是,从目前的情况来看,系统的开发技术仍是一个比较薄弱的环节。那么根据本系统开发的要求,本系统选择了生命周期法和原型法相结合的方法。