• 6.38 MB
  • 2022-04-22 11:34:47 发布

某软件项目可行性研究报告

  • 41页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
'某软件项目1.1编写目的该软件项目可行性研究报告是对项目课题的全面通盘考虑,是项目分析员进行进一步工作的前提,是软件开发人员正确成功的开发项目的前提与基础.写软件项目可行性研究报告可以使软件开发团体尽可能早的估计研制课题的可行性,可以在定义阶段较早的认识到系统方案的缺陷,就可以少花费几个月甚至几年的时间和精力,也可以节省成千上万元的资金,并且避免了许多专业方面的困难.所以该软件项目可行性研究报告在整个开发过程中是非常重要的.1.2项目背景该项目开发的软件为学生信息管理系统软件,是鉴于目前学校学生人数剧增,学生信息呈爆炸性增长的前提下,学校对学生信息管理的自动化与准确化的要求日益强烈的背景下构思出来的,该软件设计完成后可用于所有教育单位(包括学校,学院等等)的学生信息的管理。通过一个简化的学生信息管理系统,使学生信息管理系统化、规范化,自动化,从而达到提高学生信息管理效率的目的。1.3缩略词定义经济可行性---估计开发费用以及最终从开发成功的系统所获得的收入或利益,衡量比较支出的费用和收到的利益.技术可行性--分析功能,性能以及限制条件,能否是一个技术上可实现的系统.法律可行性--明确系统开发可能导致的责任,有无违法问题.不同的方案--对系统开发的各种方案进行评价.1.4参考资料2.可行性研究的前提2.1要求a.开发该软件的基本要求与功能是实现学生信息数据包括与学生有关的数据的管理与操作处理.b.基于MicrosoftSQLServer2000数据库系统的数据管理使该软件有更优异的性能.c.软件的基本数据流动为用户数据的输入,学生信息,课程信息,班级信息的输入,以及有关用户提出的对学生信息等等的查询要求所产生的数据输出.41 d.数据的输入与输出处理流程都依靠数据库的支持.e.数据的安全基本保证SQLServer的安全性能比较令人满意,该软件设计中保持与其他一些数据库的基本兼容.f.与软件相关的其他系统:学生信息管理系统是学校信息管理系统的一个重要组成部分。他为其他系统(如学校图书管理系统、学校档案管理系统、教学管理系统、总务后勤管理系统等)提供学生的基本信息,同时它也需要如教学管理系统提供课程设置数据等。这些系统在具体应用中构成一个大系统,相互调用对方的数据。2.2目标该软件的设计目标必须尽量达到人力与设备费用的节省,并且使软件处理数据的速度提高,软件的整个设计过程必须通过生产能力的提高,人员工作效率的提高等等使软件开发成本最小化.实现保证软件质量的前提下的资金投入最小化.2.3条件、假定和限制开发该系统的主要资金来源为用户提供的开发资金投入,故在设计开发中最大不能超过该限度,且软件完成交付用户使用后,应保证软件的运行寿命至少达到用户的要求范围.且软件开发时间应基本控制在用户提出的要求范围内.a..建议开发软件运行的最短寿命:4年b.进行系统方案选择比较的期限:一星期c.硬件、软件、运行环境和开发环境的条件和限制:开发工具:C++BuilderX、SQLServer2000。开发环境:Windows2000操作系统运行环境:Windows9x、WindowsNT或Windows2000操作系统2.4可行性研究方法实行软件的可行性研究方法主要有:成本效益分析,对估算问题的看法,软件的作用范围,软件的成本估算,速度安排等。具体将在下面叙述。2.5决定可行性的主要因素决定软件可行性的四个主要方面有:经济因素,技术因素,法律因素,不同方案。41 3.对现有系统的分析3.1处理流程和数据流程现有系统的数据处理与流程基本为学生数据的录入与查询,删除修改等操作。流程图可表示如下:现有系统数据流程图3.2工作负荷由于数据量越来越大,现有的系统已明显不能适应目前的庞大数据量,系统工作负荷过大。3.3费用支出由于现有系统的工作负荷严重超载,在现有系统上投入的人力,设备,空间,材料,等等与其他的一系列支持性服务越来越大,导致开发费用支出巨大,严重影响系统的可用性,急需改进。41 3.4人员鉴于原有系统的技术性含量比较低,故不需要多少高技术人员的操作,只是由于数据量的日益扩大,所需要的操作人员数量不断增大。这一点已不再适应目前信息化时代的步伐。3.5设备设备的科技含量也比较低,没有达到大量的计算机普及程度。3.6局限性经过严谨的分析,可知原有的系统存在很大的局限性,比如技术的过于陈旧,人员工作负荷大,系统维护及费用支出巨大,人员与设备技术含量低等等一系列缺点,所有这些都明确了需要一个新的适应新的信息化时代的高科技的系统。所以开发这样一个系统还是很有必要的。4.所建议技术可行性分析4.1对系统的简要描述新系统在原有系统的基础上加入了新的数据库的支持,使用了先进的数据库技术与数据管理技术,使数据的准确性与安全性得到了很大的提高,且在用户的并行操作与用户管理方面也有了极大地改善。·4.2处理流程和数据流程41 学生注册个人信息输入学生信息管理考核输入考核信息课程选择课程设置考核信息管理课程信息管理其他系统数据接口新系统的数据流程图·4.3与现有系统比较的优越性很明显,在以上几点中已可以看出新系统的性能与功能上与现有系统的差别,首先新系统克服了原来系统的资金投入大,人员设备技术含量低,系统工作负担重等缺点。而且加入了对数据的安全性保护的功能,使原有系统在可用性与稳健性方面有了很大的进步。·4.4采用建议系统可能带来的影响4.4.1对设备的影响采用建议系统后,改进了原有系统的性能所以对设备要求自然更高,建议系统使用了最先进的技术使设备也必须跟着升级。4.4.2对现有软件的影响由于建议系统采用了先进的数据库技术以及一系列高技术含量软件,使得原来系统上的一些软件无法继续使用,不过在新系统开发过程中将尽量考虑到,对现有软件的兼容性。41 4.2.3对用户的影响建议系统使用的新技术是完全基于原有的系统上的,故用户不必考虑新系统带来的人员培训等等。4.2.4对经费支出的影响建议系统是为了改善原有系统在经费支出过高的缺点的,所以新系统一经使用在经费支出方面一定会得到很好的改善,用户在使用了新系统后只需要花一定资金购买一部分计算机与软件就能实现自动化。4.5技术可行性评价就目前使用的开发技术来说建议系统的功能目标应该能够达到;利用现有的技术在规定的期限内开发工作基本能够完成5.所建议系统经济可行性分析经济可行性分析中最重要的内容之一是成本--效益分析。对于一个基于计算机系统的研制项目要在经济方面评价其是否合理,成本--效益分析要估计出研制开发的花费并与收益(包括有形的可以用货币计数的及无形的利益)衡量比较。41 建议系统的成本--效益分析6.社会因素可行性分析该项目为独立开发,在技术上没有使用任何现有的软件与方法。所以在法律方面不会存在侵犯专利权、侵犯版权等问题,完全按照合同规定的责任履行。6.1用户使用可行性本系统对于用户单位的行政管理、工作制度、人员素质等完全能够满足要求7.其他可供选择的方案由于系统过于简单,所以开发小组没有提供其他的方案,只有一种开发方案。·8.结论意见经过一系列的各个不同方面的可行性分析,分析员和用户及使用部门的负责人对需要解决的问题取得基本的一致看法,开发小组的开发方案的到批准,使用部门负责人同意开发工程继续进行下去。41 二.项目开发计划1.引言1.1编写目的经过项目的可行性分析,得出项目可进一步进行下去的结论,在软件继续进一步的开发之前首先给出此软件项目开发计划。1.2项目背景a.项目分析单位在接到项目分析员给出的项目可行性分析报告后,在系统开发主管部门的统一下制定用于软件实质开发的软件项目计划,以使软件开发单位理解软件开发要求,进行开发。b.该软件系统与其他系统的关系:学生信息管理系统是学校信息管理系统的一个重要组成部分。他为其他系统(如学校图书管理系统、学校档案管理系统、教学管理系统、总务后勤管理系统等)提供学生的基本信息,同时它也需要如教学管理系统提供课程设置数据等。这些系统在具体应用中构成一个大系统,相互调用对方的数据。1.3定义“软件计划”是一份比较简短的文件,有关专门术语与缩略词省略。1.4参考资料<软件工程导论>张海藩编著清华大学出版社出版2.项目概述2.1工作内容。在可行性研究报告的建议系统可行性分析一节中已经阐述了要开发的系统的主要功能性能等,此处略2.2条件与限制开发该软件的条件比较简单,以开发单位目前的经济与技术条件已完全具备开发的条件。该系统可在用户要求的期限内完成。41 2.3产品2.3.1程序该软件比较简单,交付的程序为一个主程序Student.exe(用C++Builder开发)。2.3.2文档与软件一同交付的文档包括软件的说明文件Readme.txt。2.4运行环境软件在windows环境下开发故其只能在Windows环境下运行,不能兼容Liunx与Unix。可在Windows各个版本(windows9.x/windowsNT/windows2000/windowsxp)上独立运行。2.5服务开发单位可向用户提供包括人员培训在内的一系列有关服务,但鉴于本系统简单,只要有一点windows操作经验的人就能使用,故可以省去培训的服务,另外开发单位还为该软件用户提供安装,保修,以及系统的免费维护等等以及其他一些运行支持。2.6验收标准软件的验收标准完全由用户提出的软件需求制定,能保证软件的基本符合用户的要求3.实施计划3.1任务分解鉴于软件开发工作过于简单,所以整个开发工作可以同时一起完成。3.2进度对于该小系统,系统从开发开始到结束为期较短,具体进度如下图示:41 软件开发进度图3.3预算软件资金投入较少,具体预算分配简略。3.4关键问题使用目前的设备与现有开发技术完全可以开发出该系统,总的来说该项目没有较大的技术难点与其他的一些风险因素。对于出现的一些小难点总都能得到解决。4.人员组织及分工本系统较简单,由一人单独完成。5.交付期限所要开发的系统较简单,所有开发工作用户要求要在1个月内完成。6.专题计划要点系统的测试计划将在后面叙述,其他的质量保证计划,人员培训计划,以及系统安装计划等等省略。三、需求规格说明书41 1.引言1.1编写目的需求分析是软件系统生存期中定义阶段的最后一个步骤。是作为整个软件开发范围的指南,是软件开发人员开发出正确的符合用户要求的软件的重点。是为明确软件需求、安排项目规划与进度、组织软件开发与测试,撰写本文档该文档将最终交给软件具体开发人员进行具体的开发,其针对的对象是软件开发人员。1.2项目背景需求分析单位在接到项目分析员给出的项目可行性分析报告和项目开发计划后,在系统开发主管部门的统一下制定用于软件实质开发的软件需求分析计划,以使软件开发单位理解软件开发需求,进行开发。该软件系统与其他系统的关系:学生信息管理系统是学校信息管理系统的一个重要组成部分。他为其他系统(如学校图书管理系统、学校档案管理系统、教学管理系统、总务后勤管理系统等)提供学生的基本信息,同时它也需要如教学管理系统提供课程设置数据等。这些系统在具体应用中构成一个大系统,相互调用对方的数据。1.3定义静态数据--系统固化在内的描述系统实现功能的一部分数据。动态数据--在软件运行过程中用户输入的后系统输出给用户的一部分数据,也就是系统要处理的数据。数据字典--数据字典中的名字都是一些属性与内容的抽象和概括,它们的特点是数据的“严密性”和“精确性”,没有半点含糊。1.4参考资料<软件工程导论>张海藩编著清华大学出版社出版2.任务概述2.1目标软件需求分析阶段有以下几个目标:●给出软件系统的数据流程图与数据结构,构造一个完全的系统逻辑模型。●提出详细的功能说明,确定设计限定条件,规定性能要求。●密切与用户的联系,使用户明确自己的任务,以便实现上述两项目标。41 2.2运行环境软件基本运行环境为Windows环境。2.3条件与限制由于系统较小,且在windows系统下开发,故在windows环境下基本没有什么限制。3.数据描述3.1静态数据静态数据是系统内部有关的数据结构与操作规程。具体可包括:学生个人基本信息表格student_Info学生所选课程表student_Course学生奖励信息表student_GCheck学生职务信息表student_BCheck学校班级信息表stuent_Class课程设置代码表stuent_CourseCode记录号计数数据表stuent_Count3.2动态数据动态数据包括程序运行时输入和输出的数据,具体是数据库的各个表的各个不同元组与属性值.就是学生信息.3.3数据库介绍41 根据上面的分析就可以设计出能够满足用户需求的各种数据实体,以及它们之间的关系,为后面的逻辑结构设计打下基础.这些实体包括各种具体信息,通过相互之间的作用形成数据的流动.本系统的实体E-R图如下班级信息编号名称班主任……1N学生信息学号姓名班级。。。1N1N1N课程信息奖励信息职务信息记录号学号课程编号。。。记录号学号奖励名称。。。记录号学号职务名称。。。学生信息管理系统数据库E-R图3.4数据词典传统的数据字典包括以下几种类型的条目:(1).数据流条目--数据流条目给出某个数据流和定义,它通常是列出该数据流的各组成数据元素。41 该系统中的数据流条目有:学生个人信息=学号+学生姓名+学生性别+出生日期+班号+联系电话+家庭住址班级信息=班号+班级名称+所属院系+班主任+辅导员课程设置信息=课程编号+课程名称+学时+学分+任课老师+上课地点学生课程信息=记录号+学号+姓名+所选课程编号学生奖励信息=记录号+学生学号+学生姓名+获奖时间+奖励名称+具体描述学生职务信息=记录号+学生学号+学生姓名+任职时间+职务名称+具体描述(2).文件条目--文件条目给出某个文件的定义,列出它的组成数据项,此外还要给出文件的组织形式。例:学生信息文件={学生基本信息记录}+{学生成绩记录}主键:学生学号+课程号(3).数据元素条目--给出某个数据单项的定义,通常是数据项的值类型。例:学生基本信息记录中“学生学号”的数据值类型为数值类型,有效值范围为000000~999999。3.5数据采集系统数据采集是由数据库系统在软件运行期间通过人机界面来提示用户输入的。此处不加赘述。4.功能需求4.1功能划分系统功能分析是在系统开发的总体任务的基础上完成的。本系统主要任务是用于收集学生的基本信息和选课情况,以便集中进行学生信息管理4.2功能描述其主要功能有:1.学生个人信息的输入,包括学号,姓名,班级,性别,生日,联系电话,联系地址。2.学生个人信息的查询、修改、删除。3.学生课程信息的输入,包括选课和退课。41 4.学生课程信息的查询、修改、删除。5.学生年终考核信息的输入,包括奖励和职务。6.学生年终考核信息的查询、修改、删除。5.性能需求5.1数据精确度由于采用数据库技术并且用户的应用领域对数据精确度的要求不是太高,所以这点在系统中表现得比较少,但是用户数据的安全性与正确性是完全保证的,所以对用户的使用没有多大的障碍。5.2时间特性本系统的数据库较小,所以程序在响应时间,数据更新处理时间上性能是比较突出的。而且也正由于数据量相对较少,故在数据传输时间和系统运行时间上表现的较让人满意。5.3适应性该软件是使用C++Builder在windowsxp系统下完成的所以只要是兼容windows的软件或是操作系统,该软件都可以正确地运行,有较好的适应能力与兼容性。而且应用户的特殊需求软件在完成后的维护阶段可以保持一个与其他类软件接口,随时满足用户的使用要求。6.运行需求6.1用户界面系统运行时的主界面大致要求为windows的经典运行界面,主界面可以是SDI(单文档界面)即每个窗体之间是独立的,也可以是MDI(多文档界面):有一个主窗体,可以包含其他窗体。建议本系统采用多文档界面,这样可以使程序更加美观,整齐有序。6.2硬件接口软件较小除硬盘外,基本没有与外界硬件的联系,不过考虑到数据库大量数据的备份等要求可以保持与磁带机和光盘刻录机的接口,这点较易实现。41 6.3软件接口在这里主要考虑软件与操作系统的接口,考虑到文档处理的需要有可能可以包括与较常用的办公软件的接口。例如microsoft的office系列。另外用户还有用户所需要的软件接口,这些应在用户需求定义时明了。6.4故障处理考虑到软件的范围不大,所以故障处理一般由操作系统完成,系统只要保持与操作系统的接口即可。只要操作系统没有大的故障程序一般是比较稳定的。考虑到用户对数据的安全性要求,程序可以有独立于操作系统之外的数据备份功能与过程,以及系统崩溃后的数据恢复功能,这点在数据库软件中已经达到了,只要稍微在其上再增加用户所需要的附加功能即可。7.其它需求系统保证了较好的可使用性与数据的安全保密性,但由于系统较小只保留一定程度的可移植性,可维护性。四、概要设计说明书1.引言1.1编写目的从该阶段开发正式进入软件的实际开发阶段,本阶段完成系统的大致设计并明确系统的数据结构与软件结构。在软件设计阶段主要是把一个软件需求转化为软件表示的过程,这种表示只是描绘出软件的总的概貌。本概要设计说明书的目的就是进一步细化软件设计阶段得出的软件总体概貌,把它加工成在程序细节上非常接近于源程序的软件表示。1.2项目背景概要设计单位在接到项目可行性分析报告、项目开发计划和需求说明后,在系统开发主管部门的统一下制定用于软件实质开发的软件概要设计,以使软件开发单位理解软件开发总体设计思路,进行开发。a.41 该软件系统与其他系统的关系:学生信息管理系统是学校信息管理系统的一个重要组成部分。他为其他系统(如学校图书管理系统、学校档案管理系统、教学管理系统、总务后勤管理系统等)提供学生的基本信息,同时它也需要如教学管理系统提供课程设置数据等。这些系统在具体应用中构成一个大系统,相互调用对方的数据。1.3参考资料a.项目开发计划;b.需求规格说明书;c.测试计划(初稿);d.用户操作手册(初稿);e.<软件工程导论>张海藩编著清华大学出版社出版2.任务概述2.1目标该阶段目的在于明确系统的数据结构和软件结构,此外总体设计还将给出内部软件和外部系统部件之间的接口定义,各个软件模块的功能说明,数据结构的细节以及具体的装配要求。2.2运行环境软件基本运行环境为Windows环境。2.3需求概述本系统主要功能有:1.学生个人信息的输入,包括学号,姓名,班级,性别,生日,联系电话,联系地址。2.学生个人信息的查询、修改、删除。3.学生课程信息的输入,包括选课和退课。4.学生课程信息的查询、修改、删除。5.学生年终考核信息的输入,包括奖励和职务。6.学生年终考核信息的查询、修改、删除。2.4条件与限制为了评价该设计阶段的设计表示的“优劣程度”,必须遵循以下几个准则:1.软件设计应当表现出层次结构,它应巧妙地利用各个软件部件之间的控制关系。2.设计应当是模块化的,即该软件应当从逻辑上被划分成多个部件,分别实现各种特定功能和子功能。3.设计最终应当给出具体的模块(例如子程序或过程),这些模块就具有独立的功能特性。4.应当应用在软件需求分析期间得到的信息,采取循环反复的方法来获得。设计。41 3.总体设计3.1处理流程系统的总体处理数据流程如下图:学生注册个人信息输入学生信息管理考核输入考核信息课程选择课程设置考核信息管理课程信息管理其他系统数据接口3.2总体结构和模块外部设计模块是软件结构的基础,软件结构的好坏完全由模块的属性体现出来,把软件模块化的目的是为了降低软件复杂性,使软件设计,测试,调试,维护等工作变得简易,但随着模块数目的增加,通过接口连接这些模块的工作量也随之增加。从这些特性可得出如图九的一条总的成本(或工作量)曲线,在考虑模块化时,应尽量使模块数接近于图中的M,它使得研制成本最小,而且应尽量避免不足的模块化或超量。41 模块化与总体成本3.3功能分配从程序的结构中可以看出,学生的信息输入输出功能是由个人信息管理进行的。课程的信息输入输出是由选课信息管理进行的,而年终评选的信息流动则是奖励信息管理和职务信息管理进行的。4.接口设计由于系统的各种内外部接口是通过借助数据库开发软件来实现的,是完全在数据库内部操作的,故在此略过此内容。5.数据结构设计5.1逻辑结构设计在下面需要将数据库概念结构转化为SQLServer数据库系统所支持的实际数据模型,也就是数据库的逻辑结构。41 在上面的实体以及实体之间关系的基础上,形成数据库中的表格以及各个表格之间的关系。通过合理规划,需要设计4个数据表来保存学生的信息:学生个人基本信息表、学生所选课程信息表、学生奖励信息表、学生职务信息表。为了数据记录实例的完整,系统中包括了应用程序中所需的一个外部数据表:学校班级信息表。为了优化数据表的结构,有的字段采用代码形势,应次附加了一个代码表:课程设置代码表。另外需要一个计数数据表来保存其他表格所需的记录号:记录号计数数据表。总共需要七个表,其结构如下表所示:student_Info学生个人基本信息表列名数据类型可否为空说明Student_IDINTNOTNULL学生学号(主关键字)Student_NameCHAR(10)NOTNULL学生姓名Student_ClassINTNOTNULL学生所在班级Student_SexCHAR(10)NOTNULL性别Student_BrithdayDATEDIMENULL生日Student_TelCHAR(15)NULL联系电话Student_AddressCHAR(20)NULL联系地址Student_Course学生所选课程表列名数据类型可否为空说明Count_IDINTNOTNULL记录号(主关键字)Course_IDINTNOTNULL学生学号Course_NameCHAR(10)NOTNULL学生姓名Course_NoINTNOTNULL所选课程编号(外部关键字course_Code)Student_GCheck学生奖励信息表列名数据类型可否为空说明GCheck_IDINTNOTNULL记录号(主关键字)GCheck_NoINTNOTNULL学生学号GCheck_NameCHAR(10)NOTNULL学生姓名GCheck_TimeDATEDIMENOTNULL获奖时间GCheck_TitleCHAR(30)NOTNULL获奖内容GCheck_DiscCHAR(50)NULL获奖具体描述Student_BCheck学生职务信息表列名数据类型可否为空说明BCheck_IDINTNOTNULL记录号(主关键字)BCheck_NoINTNOTNULL学生学号BCheck_NameCHAR(10)NOTNULL学生姓名BCheck_TimeDATEDIMENOTNULL任职时间BCheck_TitleCHAR(30)NOTNULL职务内容BCheck_DiscCHAR(50)NULL职务具体描述Student_Class学校班级信息表列名数据类型可否为空说明Class_IDINTNOTNULL41 学校班级编号(主关键字,外部关键字student_Class)Class_NameCHAR(20)NOTNULL班级名称Class_DepCHAR(20)NOTNULL班及所属学院Class_TeacherCHAR(10)NOTNULL班主任Class_AssistantCHAR(10)NULL辅导员Student_CourseCode课程设置代码表列名数据类型可否为空说明Couse_CodeINTNOTNULL课程编号(主关键字,外部关键字course_No)Couse_NameCHAR(20)NOTNULL课程名称Couse_PeriodINTNULL课程总学时Couse_CreditFLOATNOTNULL课程学分Couse_TeacherCHAR(10)NULL任课老师Couse_AddressCHAR(30)NULL上课地点Student_Count记录号计数数据表列名数据类型可否为空说明Count_IDCHAR(10)NOTNULL记录号名称(主关键字)Count_ValueINTNOTNULL记录号计数值5.2物理结构设计系统的物理结构具体由数据库来设计与生成,此处略。5.3数据结构与程序的关系系统的数据结构由标准数据库语言SQL生成。例如:具体的创建学生个人基本信息表格student_Info的程序用SQL表示就是:/*表格名:student_Info,主关键字:student_ID*/CREATETABLE[dbo].[student_Info]([student_ID][int]NOTNULL,[student_Name][char](5)COLLATEChinese_PRC_CI_ASNULL,[student_Sex][char](1)COLLATEChinese_PRC_CI_ASNULL[student_Class][int]NOTNULL,[student_Birthday][datetime]NULL,[student_Tel][char](15)COLLATEChinese_PRC_CI_ASNULL,[student_Address][char](50)COLLATEChinese_PRC_CI_ASNULL,)ON[PRIMARY]41 创建学生所选课程表格student_Course的程序用SQL表示就是:/*表格名:student_Course,主关键字:Count_ID*/CREATETABLE[dbo].[student_Course]([Count_ID][int]NOTNULL,[Course_ID][int]NOTNULL,[Course_Name][char](5)COLLATEChinese_PRC_CI_ASNOTNULL,[Course_No][int]NOTNULL,)ON[PRIMARY]6.运行设计6.1运行模块的组合具体软件的运行模块组合为程序多窗口的运行环境,各个模块在软件运行过程中能较好的交换信息,处理数据。6.2运行控制软件运行时有较友好的界面,基本能够实现用户的数据处理要求。6.3运行时间系统的运行时间基本可以达到用户所提出的要求。7.出错处理设计7.1出错输出信息在用户使用错误的数据或访问没有权限的数据后,系统给出提示:“对不起,你非法使用数据,没有权限!”而且用户的密码管理可以允许用户修改自己的密码,不允许用户的匿名登录。7.2出错处理对策由于数据在数据库中已经有备份,故在系统出错后可以依靠数据库的恢复功能,并且依靠日志文件使系统再启动,就算系统崩溃用户数据也不会丢失或遭到破坏。但有可能占用更多的数据存储空间,权衡措施由用户来决定。41 8.安全保密设计系统的系统用户管理保证了只有授权的用户才能进入系统进行数据操作,而且对一些重要数据,系统设置为只有更高权限的人员方可读取或是操作。系统安全保密性较高。9.维护设计由于系统较小没有外加维护模块,因为维护工作比较简单,仅靠数据库的一些基本维护措施即可。五、详细设计说明书1.引言1.1编写目的软件设计是把软件需求变换成为软件的具体设计方案,即实现模块结构的过程。软件设计一般分为总体设计和详细设计两个阶段。总体设计阶段根据软件需求分析所得到的数据流程或数据结构,使用结构化设计技术,导出软件的模块结构。详细设计阶段是给出软件模块的内部过程描述。内部过程描述是模块内部的算法设计。该文档是直接给软件开发人员看的。1.2项目背景详细设计单位在接到项目可行性分析报告、项目开发计划、需求说明,主要是概要设计说明后,在系统开发主管部门的统一下制定用于软件实质开发的软件总体设计。a.该软件系统与其他系统的关系:学生信息管理系统是学校信息管理系统的一个重要组成部分。他为其他系统(如学校图书管理系统、学校档案管理系统、教学管理系统、总务后勤管理系统等)提供学生的基本信息,同时它也需要如教学管理系统提供课程设置数据等。这些系统在具体应用中构成一个大系统,相互调用对方的数据。1.3定义在软件具体设计阶段的专用术语有:盒图(N-S图):给出系统的功能域,改土很容易确定局部和全局数据的作用域,也较容易表现欠套关系,也可以表示模块的层次结构PAD图(问题分析图):ProblemAnalysisDiagram,他用二位树形结构的图来表示程序的控制流,惊这种图翻译成程序代码比较容易41 1.4参考资料a.项目的计划任务书、合同或批文;b.项目开发计划;c.需求规格说明书;d.概要设计说明书;e.测试计划(初稿);f.用户操作手册(初稿);g.<软件工程导论>张海藩编著清华大学出版社出版。2.总体设计2.1需求概述本系统主要功能有:1.学生个人信息的输入,包括学号,姓名,班级,性别,生日,联系电话,联系地址。2.学生个人信息的查询、修改、删除。3.学生课程信息的输入,包括选课和退课。4.学生课程信息的查询、修改、删除。5.学生年终考核信息的输入,包括奖励和职务。6.学生年终考核信息的查询、修改、删除。2.2软件结构在总体设计阶段产生的软件结构图,如软件概要说明书中的软件数据结构设计,整个软件的结构已非常的明了了,软件系统的结构图如下图。下面就进行软件的详细设计阶段,进行逐个模块的详细设计。41 学生信息管理系统学生个人信息管理学生课程信息管理年终考核信息管理信息输入信息查询修改或删除选课课程查询退课考核输入考核查询修改或删除详细设计软件系统的结构图3.程序描述3.1功能1.个人信息管理模块.功能主要实现以下功能,●添加个人信息●修改个人信息●查询个人信息●删除个人信息41 .算法其PAD图如下:学生个人信息管理模块PAD图(总体)41 41 2.选课信息管理模块.功能选课信息管理模块主要实现以下功能:●选课●退课●查询.算法与个人信息的添加与修改类似。3.奖励信息管理模块.功能班级信息管理模块主要实现以下功能●添加个人奖励信息●查询个人奖励信息●修改个人奖励信息●删除个人奖励信息.算法奖励信息管理模块的算法包括奖励的添加和修改与个人信息的添加和修改类似,实现方法和前面介绍的一样,这里不再重复。4.职务信息管理模块.功能职务信息管理模块主要实现以下功能●添加个人职务信息●查询个人职务信息●修改个人职务信息●删除个人职务信息41 .算法职务信息管理模块的算法包括职务的添加和修改与个人信息的添加和修改类似,实现方法和前面介绍的一样,这里不再重复。四.测试要点有关测试内容在测试文档中详细说明六、用户操作手册1.引言1.1编写目的编写用户操作手册的目的是为了让用户更快更好得使用该软件,以及在用户使用软件时能够很快的上手,达到熟练使用的程度。是整个软件的一个说明书。1.2项目背景在项目可行性分析报告、项目开发计划、需求说明、概要设计说明和详细设计后,系统已经基本实现了所有功能,在系统开发主管部门的统一下制定用户操作手册,帮助用户使用本软件。1.3定义本用户操作手册没有要解释的术语。1.4参考资料a.项目开发计划;b.需求规格说明书;c.概要设计说明书;41 d.详细设计说明书;e.测试计划;f.<软件工程导论>张海藩编著清华大学出版社出版;2.软件概述2.1目标本软件的主要目标通过一个简化的学生信息管理系统,使学生信息管理工作系统化、规范化、自动化,从而达到提高学生信息管理的效率的目的。本系统的主要任务是用于收集学生的基本信息和选课情况,以便集中进行学生信息管理。2.2功能本系统主要功能有:1.学生个人信息的输入,包括学号,姓名,班级,性别,生日,联系电话,联系地址。2.学生个人信息的查询、修改、删除。3.学生课程信息的输入,包括选课和退课。4.学生课程信息的查询、修改、删除。5.学生年终考核信息的输入,包括奖励和职务。6.学生年终考核信息的查询、修改、删除。2.3性能a.数据精确度:应为大多数数据都是整形和字符形,对于数据精度的要求不高。b.时间特性:应为本系统数据较少,所以响应时间、处理时间、数据传输时间都不会慢。c.灵活性:本系统在windows9x/windowsXP/windowNT等操作系统下都会正常运行。3.运行环境基本配置:服务器:PentiumIII500MHz以上,128M内存WindowsNT4.0或同等配置。客户机:PentiumII266MHz以上,32M内存Windows95/98或同等配置。41 推荐配置:服务器:Pentium41.2GHz,256M内存Windows2000AdvancedServer或同等配置。客户机:Pentium41GHz,256M内存WindowsXPProfessional或同等配置。4.使用说明4.1安装和初始化安装程序的使用:双击$(当前目录)Install_StudentStudentExpressCD_ROMDiskImagesDisk1setup.exe,开始学生管理系统的安装过程,用户可以方便将其安装到本机上。安装成功后,双击桌面上的Student快捷图标可以运行学生管理系统软件,但在运行前需要配置好SQLServer2000数据库结构和输入必要初始数据,否则程序无法正常运行。5.运行说明.系统主窗口系统启动后,将首先出现用户登录窗体如下,用户首先输入SQLServer数据库服务器名称,然后点击确定进入。登陆界面用户输入正确的用户名以后程序即进入主窗口,在主窗口里用户可以选择选项卡里的个人信息管理,选课信息管理,奖励信息管理,职务信息管理等等不同的模块进行操作41 系统主窗口.个人信息管理窗口即上面所示界面,输入学号即可看到所要查询的学生。点击“+”可实现插入一行的操作,即添加学生信息。点击“-”可实现删除一个学生的操作。上面的操作(界面的最下面一行)从左到右依次是:首纪录、向前移、向后移、末纪录、插入一行、删除一行、编辑纪录、保存修改、取消修改、刷新。.选课信息管理窗口选课信息管理的左边界面提供了可选课程的信息,可以通过中间的按钮实现选课或退课的操作上面的操作(界面的最下面一行)从左到右依次是:首纪录、向前移、向后移、末纪录、插入一行、删除一行、编辑纪录、保存修改、取消修改、刷新。.奖励信息管理窗口41 可以通过奖励信息管理的界面输入奖励的信息,输入完成后,点击“增加”按钮即可添加到数据库中。点击“取消”按钮可取消刚才的操作。上面的操作(界面的最下面一行)从左到右依次是:首纪录、向前移、向后移、末纪录、插入一行、删除一行、编辑纪录、保存修改、取消修改、刷新。.职务信息管理窗口可以通过该界面输入学生的职务信息,“增加”、“取消”按钮和上面的操作方法一致。上面的操作(界面的最下面一行)从左到右依次是:首纪录、向前移、向后移、末纪录、插入一行、删除一行、编辑纪录、保存修改、取消修改、刷新。七、测试计划41 1.引言1.1编写目的软件测试是为了在软件投入生产性运行之前,尽可能多地发现软件的错误,该文档的读者对象是软件测试部门,以指导软件测试过程。1.2项目背景在项目可行性分析报告、项目开发计划、需求说明、概要设计说明和详细设计、用户操作手册后,在系统开发主管部门的统一下制定软件测试计划,发现错误、改正错误、来完善软件。1.3定义静态测试:主要方法有审阅,检查。单元测试,组装测试,系统测试1.4参考资料a.项目的计划任务书、合同或批文;b.项目开发计划;c.需求规格说明书;d.概要设计说明书;e.详细设计说明书;f.用户操作手册;g.<软件工程导论>张海藩编著清华大学出版社出版;2.任务概述2.1目标(1)、测试是为了发现程序中的错误而执行程序的过程。(2)、好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案。(3)、成功的测试方案时发现了至今为止尚未发现的错误的测试。2.2运行环境Windows9x、WindowsNT或Windows2000操作系统41 3.计划3.1测试方案使用以界面为基础的测试。以界面为基础的测试仅仅依靠软件与其运行环境之间的界面来选择和产生测试数据,而不管软件的具体需求和具体实现细节。包括软件输入,输出数据的类型取值范围以及取值的概率分布等等。3.2测试项目该测试计划主要包括对软件各个模块的测试,有:1.系统主窗口的测试。2.个人信息管理窗口的测试3.选课信息管理窗口的测试4.奖励信息管理窗口的测试5.职务信息管理窗口的测试3.3测试机构及人员由于软件规模较小,所以所有测试任务都由软件的开发人员完成。4.测试项目说明1.系统主窗口的测试该测试的目的是保证登陆主窗口的正确性与在错误发生时的容错与纠错性。具体通过在登陆框中输入空用户名,和错误的用户名来检测系统的出错运行情况。要求系统在遇到这些情况时能给出正确的错误提示。2.个人信息窗口的测试41 该测试的目的是保证在添加、修改、删除、查询学生个人信息时窗口的正确性与在数据输入不正确时的容错与纠错性。具体通过输入重复的学号,空学号,错误的日期形式来检测添加功能的出错运行情况;通过输入空的学号,错误的日期形式来检测修改功能的出错运行情况;通过空的学号来检测查询功能的出错运行情况。并且要求系统在遇到这些情况时能给出正确的错误提示。3.选课信息窗口的测试该测试的目的是保证在添加、修改、删除、查询学生选课信息时窗口的正确性与在数据输入不正确时的容错与纠错性。具体通过输入错误的学号,空学号来检测添加功能的出错运行情况;通过输入空的、错误的学号来检测修改功能的出错运行情况;通过空的、错误的学号来检测查询功能的出错运行情况。并且要求系统在遇到这些情况时能给出正确的错误提示。4.奖励信息窗口的测试该测试的目的是保证添加、修改、删除、查询学生奖励信息时窗口的正确性与在数据输入不正确时的容错与纠错性。具体通过输入重复的学号,空学号,错误的日期形式来检测添加功能的出错运行情况;通过输入空的学号,错误的日期形式来检测修改功能的出错运行情况;通过空的学号来检测查询功能的出错运行情况。并且要求系统在遇到这些情况时能给出正确的错误提示。5.职务信息窗口的测试该测试的目的是保证添加、修改、删除、查询学生职务信息时窗口的正确性与在数据输入不正确时的容错与纠错性。具体通过输入重复的学号,空学号,错误的任职日期形式来检测添加功能的出错运行情况;通过输入空的学号,错误的任职日期形式来检测修改功能的出错运行情况;通过空的学号来检测查询功能的出错运行情况。并且要求系统在遇到这些情况时能给出正确的错误提示。•5.评价以上所有的模块测试过程都要求系统能在用户输入出错时给出正确的相应并不影响到数据的安全与完整性。成功的系统设计必须通过以上的要求。八、测试分析报告41 1.引言1.1编写目的该测试分析报告的目的主要是对上面的软件测试计划的测试项目给出具体的测试结果。是软件测试的说明书。1.2项目背景在设计好测试计划后,在系统开发主管部门的统一下进行软件测试,发现错误、改正错误、来完善软件,并写出软件测试分析报告。1.3定义本软件测试分析报告无需定义的内容。1.4参考资料a.项目的计划任务书、合同或批文;b.项目开发计划;c.需求规格说明书;d.概要设计说明书;e.详细设计说明书;f.用户操作手册;g.测试计划;h.<软件工程导论>张海藩编著清华大学出版社出版。2.测试计划执行情况1.用户登录窗口的测试结果在登陆框中输入空服务器明后系统将给出以下提示:41 2.个人信息管理窗口的测试a.输入了重复的学号后,点击“+”后系统的出错提示如下:b.输入了空学号或错误的学号进行查询,将不会显示任何信息。c.如要进行删除操作,点击“-”会出现以下信息提示是否确定要删除:3.选课信息管理窗口的测试a.输入了空学号或错误的学号进行查询,将不会显示任何信息。如操作“选课”、“退课”将给出请输入学号的提示信息。b.如选择了已选过的课程将给出提示“该课程已选过”。c.如要进行删除操作,点击“-”会出现以下信息提示是否确定要删除:41 4.奖励信息管理窗口的测试a.输入了空学号或错误的学号进行查询,将不会显示任何信息。b.如输入了错误的时间显示方式,将出现下面的提示:c.如要进行删除操作,点击“-”会出现以下信息提示是否确定要删除:5.职务信息管理窗口的测试与奖励信息管理窗口的测试结果基本一致。·3.软件需求测试结论经过软件的测试,系统基本上达到需求定义阶段用户所提出的要求。开发工作合格。4.评价软件基本达到设计要求,软件功能完整,用户界面良好,错误处理正确,且能正确提示错误种类。41 但是在测试中也发现软件的一些不足与缺陷,比如软件在用户第一次登陆时,也就是用户刚拿到软件时,必须用预先设定好的服务器账号登陆系统才能进行其他的操作,等等一些缺陷,需要在软件进一步修改和维护时予以纠正。总的来说,软件通过测试,可以发行。十、项目开发总结报告一.引言1.编写目的该总结报告主要是对整个软件开发与测试阶段的工作的总体结论,是软件提交上级部门和用户审查的最后一道程序。2.参考资料<软件工程导论>张海藩编著清华大学出版社出版二.开发结果1.产品开发最后产生的软件为Student.exe的可运行程序,还包括软件的说明文件Readme.txt。2.主要功能及性能软件的主要功能为有关学生信息的保存与查询,使学校学籍和学生管理实现自动化。3.所用工时该软件由我在一个星期(即168小时)内开发。4.所用机时我所用机时为48小时左右。5.费用41 由于是完全自主开发所以软件费用很小,不再计算。三.评价1.生产率评价整体说来软件生产率比较高。2.技术方案评价软件基本使用目前较先进的开发工具C++Builder和SQLServer开发。采用的主要算法也较好,故技术方案总体评价较好。41'