数据结构程序设计说明文档
- 格式:docx
- 大小:323.67 KB
- 文档页数:36
软件开发文档说明(又全又详细)在软件行业有一句话:一个软件能否顺利的完成并且功能是否完善,重要是看这个软件有多少文档,软件开发文档是一个软件的支柱,如果你的开发文档漏洞百出,那么你所开发出来的软件也不可能会好;开发文档的好坏可以直接影响到所开发出来软件的成功与否。
一、软件开发设计文档:软件开发文档包括软件需求说明书、数据要求说有书、概要设计说明书、详细设计说明书。
1.软件需求说明书:也称为软件规格说明。
该说明书对所开发软件的功能、性能、用户界面及运行环境等做出详细的说明。
它是用户与开发人员双方对软件需求取得共同理解基础上达成的协议,也是实施开发工作的基础。
软件需求说明书的编制目的的就是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解、并使之面成为整个开发工作的基础。
其格式要求如下:1引言1.1编写目的。
1.2背景1.3定义2任务概述2.1目标2.2用户的特点2.3假定和约束3需求规定3.1对功能的规定3.2对性能的规定3.2.1精度3.2.2时间特性的需求3.2.3灵活性3.3输入输出要求3.4数据管理能力要求3.5故障处理要求3.6其他专门要求4运行环境规定4.1设备4.2支持软件4.3接口4.4控制2.概要设计说明书:又称系统设计说明书,这里所说的系统是指程序系统。
编制的目的是说明对程序系统的设计斟酌,包括程序系统的基本处理。
流程、程序系统的组织结构、模块划分、功能分配、接口设计。
运河行设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。
其花式请求以下:1引言1.1编写目的1.2背景1.3定义1.4参考资料2总体设计2.1需求规定2.2运行环境2.3基本设计概念和处理流程2.4结构2.5功能需求与程序的关系2.6人工处理过程2.7尚未解决的问题3接口设计3.1用户接口3.2外部接口3.3内部接口4运行设计4.1运行模块的组合4.2运行控制4.3运行时间5系统数据结构设计5.1逻辑结构设计要点5.2物理结构设计要求5.3数据结构与程序的关系6系统出错处理设计6.1出错信息6.2补救措施6.3系统维护设计。
软件详细设计说明书例一、引言在软件开发过程中,详细设计说明书是一份至关重要的文档,它为程序员提供了详细的指导,使得他们能够准确理解软件的功能需求,并将其转化为可实现的代码。
本文将以一个简单的学生成绩管理系统为例,展示一份软件详细设计说明书的基本结构和内容。
二、软件概述(一)软件名称学生成绩管理系统(二)软件功能1、学生信息管理:包括学生基本信息的录入、修改、查询和删除。
2、课程信息管理:课程的添加、修改、查询和删除。
3、成绩录入:教师能够录入学生的课程成绩。
4、成绩查询:学生和教师可以查询学生的成绩。
5、成绩统计分析:能够对学生的成绩进行统计分析,如平均分、最高分、最低分等。
(三)运行环境1、操作系统:Windows 10 及以上版本。
2、数据库:MySQL 80 及以上版本。
3、开发语言:Java。
三、模块设计(一)学生信息管理模块1、功能描述实现学生基本信息的增删改查操作。
提供学生信息的批量导入和导出功能。
2、数据结构学生表(Student):包含学号(StudentID)、姓名(StudentName)、性别(Gender)、出生日期(BirthDate)等字段。
3、算法流程新增学生信息:用户输入学生信息,系统进行合法性校验,然后将数据插入到学生表中。
修改学生信息:用户选择要修改的学生,输入修改后的信息,系统更新学生表中的对应记录。
删除学生信息:用户选择要删除的学生,系统删除学生表中的对应记录。
查询学生信息:用户输入查询条件,系统从学生表中检索符合条件的记录并展示。
(二)课程信息管理模块1、功能描述课程的添加、修改、删除和查询操作。
课程安排的设置。
2、数据结构课程表(Course):包含课程编号(CourseID)、课程名称(CourseName)、学分(Credit)等字段。
3、算法流程新增课程:用户输入课程信息,系统进行校验后插入到课程表中。
修改课程:用户选择要修改的课程,输入修改内容,系统更新课程表中的对应记录。
软件项目详细设计说明书模板目录第一章编写目的 (4)1.1作用 (4)1.1.1 预期读者 (4)1.2背景 (4)1.2.1 系统名称及版本号 (4)1.2.2 使用者 (4)1.2.3 与其它系统的关系 (4)1.3术语和缩写 (4)1.4参考资料 (5)第二章总体架构 (5)2.1系统说明 (5)2.2运行环境 (5)2.3基本设计概念以及处理流程 (5)2.4总体功能结构图 (5)2.5子系统清单 (5)2.6可测试性、维护/升级设计 (5)2.7可配置设计 (5)2.8尚未解决的问题 (6)第三章系统功能模块 (6)3.1模块名称 (6)3.1.1模块功能描述 (6)3.1.2模块框架设计以及处理流程 (6)3.1.3子模块划分列表 (6)3.1.4子模块设计说明 (6)3.2模块名称 (6)3.2.1模块功能描述 (6)3.2.2模块框架设计以及处理流程 (6)3.2.3子模块划分列表 (6)3.2.4子模块设计说明 (7)第四章接口说明 (7)4.1用户接口 (7)4.2外部接口 (7)4.3内部接口 (7)第五章数据结构设计 (7)5.1数据库环境说明 (7)5.1.1应用环境 (7)5.1.2参数配置 (7)5.2数据库设计 (7)5.2.1逻辑设计 (8)5.2.2物理设计 (8)5.2.2.1数据表汇总 (8)5.2.2.2表结构设计 (8)5.2.3安全性设计 (8)5.2.4备份恢复设计 (9)5.3数据库管理维护 (9)5.3.1数据库安装配置 (9)5.3.2数据库日常维护 (9)第六章系统出错处理设计 (9)6.1出错信息 (9)6.2出错处理 (9)第一章编写目的1.1作用【说明】《软件概要设计说明书》是在《软件需求规格说明书》的基础上,通过我方与用户方反复沟通形成的。
它必须充分反映《软件需求规格说明书》中的用户需求,如有改动必须征得用户的认可。
它将作为项目验收时重要的的标准和依据。
计算机科学与工程学院集中性实践教学计划书( 2011-2012 学年第二学期课程名称:数据结构与算法课程设计专业:计算机科学与技术软件工程、网络工程班级:计算机科学与技术101-6软件工程101-4网络工程101-4课程负责人:李锡祚、王玲芬、李威指导教师分配情况:专业指导教师计算机科学与技术李威、李笑牛、张恒博、云健、刘爽、包书哲软件工程王玲芬、王鹏杰、王存睿、孙世昶、网络工程李锡祚、姜楠、王晓强、王波教学起止周:第1 至3 教学周一、教学目的与要求:数据结构与算法课程设计的目的是使同学们能够根据数据对象的特性,合理的组织数据并能综合运用数据结构与算法基本知识和程序设计基本知识解决实际问题,培养基本的、良好的程序设计技能。
二、主要阶段、内容、时间及地点安排(以天为单位计:阶段与内容第1阶段:指导教师布置设计任务并解析有关题目的设计指标和任务的具体内容,学生选择题目,明确问题描述和要求,查阅资料。
(1天;各班长或学习委员将本班的选题表交给辅导教师,一人一题,每道题的选择人数原则上不能超过3人,第一天课程设计结束后,每名学生都要确定题目。
第2阶段:明确题目要求、确定数据结构、设计算法,编写程序、调试程序、测试程序(11天;第一周,学生应明确题目要求、确定数据的逻辑结构和存储结构、实现基本操作的编码与调试、实现主菜单。
第二周,完成核心算法的设计、编码与调试。
第三周,完成剩余任务的编码与调试,准备足够的测试数据,对软件进行测试与调试。
第3阶段:完成设计任务,准备验收、答辩(1天;第4阶段:答辩(上机演示,回答教师提问(1天;第5阶段:撰写课程设计报告(2天。
地点与时间地点:金石滩校区图书馆时间:计算机科学与技术:课程设计上机时间表周一周二周三周四周五第一周上午、下午上午第2大节、下午第二周上午、下午上午第2大节、下午第三周上午、下午上午第2大节、下午(验收软件工程:课程设计上机时间表周一周二周三周四周五第一周上午、下午上午、下午下午第二周上午、下午上午、下午下午第三周上午、下午上午、下午下午(验收网络工程:课程设计上机时间表周一周二周三周四周五第一周上午、下午上午下午上午第二周上午、下午上午下午上午第三周上午、下午上午下午上午(验收注:上午8:30~11:10下午1:40~4:20三、课程设计题目及具体要求:1.成绩管理问题描述:给出n个学生的考试成绩表,成绩表包括学生的学号、姓名、考试成绩(高等数学、英语、物理,设计一个简单的成绩管理程序。
[XX模块]软件详细设计说明书(仅供内部使用)拟制:日期:yyyy-mm-ddyyyy-mm-dd 审核:日期:核准:日期:yyyy-mm-dd签发:日期:yyyy-mm-dd文档版本:版权所有侵权必究文件修改记录目录1 目的 (5)2 代码框架描述 (5)2.1 目录结构 (5)2.2 源文件说明 (5)2.3 模块配置文件说明 (5)3 数据结构 (6)3.1 数据结构定义 (6)3.2 数据结构关系图(可选) (6)3.3 公共头文件定义 (6)4 子模块(实体)1详细设计说明 (6)4.1 数据结构 (7)4.2 处理流程详细说明 (7)4.3 编码设计 (7)4.3.1 函数1 (7)4.3.2 函数2 (8)4.3.n 函数n (8)5 子模块(实体)2详细设计说明 (8)6 附录子系统定义表 (8)软件详细设计说明书关键词:摘要:缩略语说明:参考资料:列出本文档的所有参考文献(包括:正式/非正式出版物、公司/部门文档等),格式如下:作者+书名(或杂志、文献、文档)+出版社(或期号、卷号、公司文档编号)+出版日期模板使用说明:[1]注明可选的部分,可以根据实际情况选择是否填写;如果不必说明,请务必保留相关的章节标题,同时在该可选章节的内容中填入“无”;未注名可选的,则必须描述;如果有些设计此模版中没有合适的地方填写,则补充在最后的其他栏目中[2]模版中斜体字相当于撰写指南,最后文稿请将本模板中所有的斜体字部分全部删除。
[3]模板里并不说明设计技术和方法,而只是说明应包含哪些内容,以及如何描述、组织这些内容。
[4]对于移植的代码,描述可以相对简单一些,但以下这些章节不能省略:代码框架描述、第3节可以简写,第4节可以根据项目实际情况简写1 目的阐明编写详细设计说明书的目的2 代码框架描述本部分描述系统的源代码分布框架,说明源代码存放的目录结构、各源文件的功能。
总体设计中有一个开发视图,这一部分就是对总体设计中开发视图的进一步细化。
Xxx零碎具体设计说明书(内部材料请勿别传)编写:日期:检查:日期:审核:日期:批准:日期:XX公司版权所有不得复制文档变动记录目录1. 引言41.1 编写目的和范围41.2 术语表41.3 参考材料41.4 使用的文字处理和绘图工具42. 全局数据结构说明52.1 常量52.2 变量52.3 数据结构53. 模块设计53.1 用例图53.2 功能设计说明53.2.1 模块153.2.2 模块264. 接口设计74.1 内部接口74.2 内部接口74.2.1 接口说明74.2.2 调用方式85. 数据库设计86. 零碎平安保密设计86.1 说明86.2 设计86.2.1 数据传输部分86.2.2 IP过滤分部86.2.3 身份验证部分87. 零碎功能设计98. 零碎出错处理91.引言1.1布景此文档的布景1.2编写目的和范围说明写这份具体设计说明书的目的.本具体设计说明书编写的目的是说明程序模块的设计考虑,包含程序描述、输入/输出、算法和流程逻辑等,为软件编程和零碎保护提供基础.本说明书的预期读者为零碎设计人员、软件开发人员、软件测试人员和项目评审人员.1.3术语表定义零碎或产品中涉及的次要术语,为读者在浏览文档时提供须要的参考信息.1.4参考材料列出有关材料的名称、作者、文件编号或版本等.参考材料包含:a.需求说明书、架构设计说明书等;b.本项目的其他已发表的文件;c.援用文件、材料、软件开发尺度等.1.5使用的文字处理和绘图工具文字处理软件:[编写设计文档使用的文字处理软件,如RedOffice ]绘图工具:[使用的UML工具,如Rose、Jude、Visio]2.设计概述2.1任务和目标2.1.1需求概述2.1.2运转环境概述2.1.3条件与限制2.1.4具体设计方法和工具3.零碎具体需求分析次要对零碎级的需求进行分析.首先应对需求分析提出的企业需求进一步确认,并对因为情况变更而带来的需求变更进行较为具体的分析.3.1具体需求分析3.1.1具体功能需求分析3.1.2具体功能需求分析3.1.3具体资本需求分析3.1.4具体接口需求分析3.1.5具体零碎运转环境及限制条件分析4.整体方案确认侧重解决零碎整体结构确认及界面划分成绩.4.1零碎整体结构确认对零碎构成、逻辑结构及条理进行确认,对利用零碎、支持零碎及各自实现的功能进行确认,细化集成设计及零碎工作流程,特别要留意因软件的引进形成的零碎本人结构和公司其他零碎的结构变更.包含:4.1.1零碎构成、逻辑结构及条理确认4.1.2利用零碎结构确认4.1.3支持零碎结构确认4.1.4零碎集成确认4.1.5零碎工作流程确认4.2零碎具体界面划分4.2.1利用零碎与支持零碎的具体界面划分利用零碎与支持零碎之间的界面包含零碎主服务器与其他服务器的服务范围及访问方式,收集及数据库对利用零碎的支持方式,全局数据的管理与存取方式等.4.2.2零碎内部具体界面划分零碎各功能之间的界面包含覆盖范围,模块间功能调用涉及到的零碎模块及方法,全局数据格式,零碎功能请求等.5.全局数据结构说明本章说明本程序零碎中使用的全局数据常量、变量和数据结构.5.1常量包含数据文件名称及其所在目录,功能说明,具体常量说明等.5.2变量本章说明本程序零碎中使用的全局数据常量、变量和数据结构.5.3数据结构包含数据结构名称,功能说明,具体数据结构说明(定义、正文、取值)等.6.零碎具体设计6.1功能结构图6.2零碎结构设计及子零碎划分对零碎的构成及逻辑结构进行设计前确认.划分零碎功能模块或子零碎(如果有或者有须要,特别是大型的软件零碎).6.3零碎功能模块具体设计按结构化设计方法,在零碎功能逐层分解的基础上,对零碎各功能模块或子零碎进行设计.此为具体设计的次要部分之一.用条理图描述零碎的整体结构、功能分解及各个模块之间的彼此调用关系和信息交互,用IPO图或其他方法描述各模块完成的功能.以上建议采取HIPO图进行功能分解与模块描述,更高的请求建议采取IDEF0方法进行功能模型设计.具体设计利用零碎的各个构成模块完成的功能及其彼此之间的关系,用IPO或结构图描述各模块的构成结构、算法、模块间的接口关系,和需求、功能和模块三者之间的交叉参照关系.每个模块的描述说明可参照以下格式:模块编号:模块名称:输入:处理:算法描述:输出:其中处理和算法描述部分次要采取伪码或具体的程序说话完成.对具体设计更高的请求建议用IDEF0图进行各功能模块的设计.如果对软件需进行二次开发(包含功能扩展、功能改造、用户界面改造等),则响应的设计工作应当设立子课题完成.6.4零碎界面具体设计零碎界面说明利用零碎软件的各种接口.全部零碎的其他接口(如零碎硬件接口、通讯接口等)在响应的部分说明.6.4.1内部界面设计根据零碎界面划分进行零碎内部界面设计,对零碎的所有内部接口(包含功能和数据接口)进行设计.6.4.2内部界面设计设计零碎内部各功能模块间的调用关系和数据接口.6.4.3用户界面设计规定人机界面的内容、界面风格、调用方式等,包含所谓的表单设计、报表设计和用户须要的打印输出等设计.此部分内容可能比较多.7.开发和测试生产环境说明7.1开发环境7.2测试及产品环境- Development evnironment: programming lanuague, database Windwos 2003, iis 6.0, MySQL,8.模块设计8.1用例图8.2功能设计说明8.2.1模块1模块1次要分为以下几个子模块:子模块1、子模块2和子模块N.8.2.1.1 子模块18.2.1.1.1 设计图8.2.1.1.2 功能描述简要描述子模块1的营业功能.8.2.1.1.3 输入数据具体描述用户输入的数据(包含任何输入设备)和这些数据的无效性检验规则.具体描述从物理模型中的哪些表获取数据和获取这些数据的条件.8.2.1.1.4 输出数据具体描述子功能1所发生的数据和这些数据的表示方式.8.2.1.1.5 营业算法和流程从营业角度具体描述根据输入数据发生输出数据的营业算法和流程.8.2.1.1.6 数据设计给出本程序中的局部数据结构说明,包含数据结构名称,功能说明,具体数据结构说明(定义、正文设计、取值)等.相干数据库表,数据存储设计(具体说明须要以文件方式保管的数据文件名、数据存储格式、数据项及属性等.)8.2.1.1.7 源程叙文件说明给出本程序的各源程叙文件的说明,包含源程叙文件名称及其所在目录,功能说明,包含的前导文件及函数名称等.8.2.1.1.8 函数说明具体说明本程序中的各个函数,包含函数名称及其所在文件,功能,格式,参数,全局变量,局部变量,返回值,算法说明,使用束缚等.8.2.1.1.9 限制条件8.2.1.1.10 其他说明8.2.2模块2模块1次要分为以下几个子模块:子模块1、子模块2和子模块N.8.2.2.1 子模块18.2.2.1.1 设计图8.2.2.1.2 功能描述简要描述子模块1的营业功能.8.2.2.1.3 输入数据具体描述用户输入的数据(包含任何输入设备)和这些数据的无效性检验规则.具体描述从物理模型中的哪些表获取数据和获取这些数据的条件.8.2.2.1.4 输出数据具体描述子功能1所发生的数据和这些数据的表示方式.8.2.2.1.5 营业算法和流程从营业角度具体描述根据输入数据发生输出数据的营业算法和流程.8.2.2.1.6 数据设计给出本程序中的局部数据结构说明,包含数据结构名称,功能说明,具体数据结构说明(定义、正文设计、取值)等.相干数据库表,数据存储设计(具体说明须要以文件方式保管的数据文件名、数据存储格式、数据项及属性等.)8.2.2.1.7 源程叙文件说明给出本程序的各源程叙文件的说明,包含源程叙文件名称及其所在目录,功能说明,包含的前导文件及函数名称等.8.2.2.1.8 函数说明具体说明本程序中的各个函数,包含函数名称及其所在文件,功能,格式,参数,全局变量,局部变量,返回值,算法说明,使用束缚等.8.2.2.1.9 限制条件8.2.2.1.10 其他说明9.接口设计9.1内部接口9.2内部接口9.2.1接口说明例如:xx子零碎通过xx从xx子零碎取得xx等,相干尺度,调用示例,可根据须要添加章节描述接口.9.2.2调用方式例如:内部接口调用:例:/***通过用户服务号码取得该客户认证密码等信息,如果该客户存在返回为0,其他情况参考错误编码*/public RUserInfo getUserInfo (String userNo);10.数据库设计详见[xxx数据库设计说明书]如果数据库设计内容比较少,则直接在此处描述.11.零碎平安保密设计11.1说明例如:因为存在与内部零碎的接口,所以须要考虑访问平安的成绩.11.2设计例如:分为数据传输部分,IP过滤部分,身份验证部分.[章节可弥补]11.2.1数据传输部分例如:在部分数据传递的时候,考虑以https和谈,须要在安排的时候作相干处理.11.2.2IP过滤分部例如:可在零碎前端通过Filter实现,该Filter实现对该地址访问的IP过滤感化.可信赖IP地址通过xml文件进行配置.11.2.3身份验证部分例如:对信赖的用户,颁布身份验证码,通过该标识进行身份识别.12.零碎功能设计13.零碎出错处理例如:为了在零碎出现异常情况下给用户以明确的提示,可采取两种方式予以提示:1.使用Javascript的alert()函数直接提示,这次要在输入或点窜的情况下使用;2.使用统一的错误界面提示,该界面对应于页面.错误界面款式如下图所示:错误提示界面14.设计和开发规范【可以列表方式列出设计开发的参考文档的索引,内容较少/关键内容可以章节方式填写】14.1数据库设计规范【拜见《XXXX数据库设计规范》】编码规范特别强调:✧具体请拜见《文档规范》✧这里只做简单论述,如有变动,会及时同事全部项目组相干人员.(1) 不要给类名加前缀.使用PascalCasing风格,不使用匈牙利命名法 .(2) 要用名词词组来给类型命名.使用PascalCasing风格 .(3) 类名少用缩写,不要使用下划线字符 (_).(4) 基类CBase的文件名为:FileBase.cs;(5) 泛型类命名:考虑用T来命名参数类型,类如:public class List<T>.(6) 接口(Interface)命名规范和类命名规范不异,独一区别是接口在名字前加上“I”前缀.(7) 枚举命名:以复数结尾,标明这是一个枚举,例如:Enum ColorButtons(8) 结构命名:标明这是一个结构体,例如:StructureCustomerInfoRecord '以Record结尾✧除使用工具直接生成的类外,其它所有类的功能要有正文,即使只是一个数据对象;非罕见功能的API必必要有功能描述的正文.独立的要被利用其他功能所调用的模块的接口和公共API的正文要齐备,即包含功能说明、参数和返回值说明.其它情况的API的正文尽量齐备,但不强制请求.✧一次性的流打开后必须关闭和释放.普通地,在流打开后,都有一个try catch语句,务必加上finally块释放流资本.✧即使IF,While是单语句,也要使用“{ }”来划分程序块.✧不要有完整为调试使用的日志信息,如(“1”);如要使用,在调试完成后请及时删除.✧一些常识性代码,不须要写没须要的正文.✧不要用工具生成没用的正文.14.3代码目录结构零碎架构目录结构设计图,如下:结构说明:。
概要设计说明书模板目录第一章导言 (2)1.1 目的 (2)1.2 范围 (2)1.3 命名规则 (2)1.4 术语定义 (2)1。
5 相关文档 (3)1。
6 参考资料 (3)第二章总体结构设计 (5)2.1 总体结构图设计 (5)2。
2 运行环境设计 (5)2.3 子系统清单 (6)2.4 功能模块清单 (6)第三章模块(部件)功能分配 (6)3。
1 专用模块功能分配 (7)3。
2 公用模块功能分配 (7)3。
3 模块的关系 (7)第四章全局数据结构设计 (7)4。
1 数据库表名清单 (7)4。
2 数据库表之间关系说明 (8)4.3 数据库表的详细清单 (8)4.4 视图的设计 (8)4。
5 数据结构和程序的关系 (8)4。
6 主要算法设计 (8)4。
7 其它数据结构设计 (8)第五章外部接口设计 (8)5。
1 外部接口1设计 (8)5。
2 外部接口2设计 (9)第六章运行设计 (9)6。
1 运行模块组合 (9)6。
2 运行控制 (10)6.3 运行时间 (10)第七章出错处理设计 (10)7.1 出错输出信息 (10)7.2 出错处理对策 (10)第八章其它设计 (10)文档类别使用对象文档类别本文档是软件系统概要设计说明书的模板,是概要设计说明书的书写标准及规范,是技术文档。
使用对象该文档使用人员包括:●系统分析人员●系统设计人员●系统编码人员●系统测试人员●系统维护人员第一章导言本章对该文档的目的、功能范围、术语、相关文档、参考资料、版本更新进行说明.1.1目的本文档的目的旨在推动软件工程的规范化,使设计人员遵循统一的概要设计书写规范,节省制作文档的时间,降低系统实现的风险,做到系统设计资料的规范性与全面性,以利于系统的实现、测试、维护、版本升级等.1.2范围本文档用于软件设计阶段的概要设计,它的上游(依据的基线)是需求分析规格书,它的下游是系统详细设计说明书,并为详细设计说明书提供测试的依据。
在软件行业有一句话:一个软件能否顺利的完成并且功能是否完善,重要是看这个软件有多少文档,软件开发文档是一个软件的支柱,如果你的开发文档漏洞百出,那么你所开发出来的软件也不可能会好;开发文档的好坏可以直接影响到所开发出来软件的成功与否。
一、软件开发设计文档:软件开发文档包括软件需求说明书、数据要求说有书、概要设计说明书、详细设计说明书。
1、软件需求说明书:也称为软件规格说明. 该说明书对所开发软件的功能、性能、用户界面及运行环境等做出详细的说明。
它是用户与开发人员双方对软件需求取得共同理解基础上达成的协议,也是实施开发工作的基础。
软件需求说明书的编制目的的就是为了使用户和软件开发者双方对该软件的初始规定有一个共同的理解、并使之面成为整个开发工作的基础.其格式要求如下:1 引言1.1 编写目的.1.2 背景1.3定义2 任务概述2.1 目标2.2 用户的特点2.3 假定和约束3 需求规定3.1 对功能的规定3.2 对性能的规定3.2.1 精度3.2.2 时间特性的需求3.2.3灵活性3.3输入输出要求3.4 数据管理能力要求3.5 故障处理要求3.6其他专门要求4运行环境规定4.1 设备4.2 支持软件4.3 接口4.4控制2、概要设计说明书:又称系统设计说明书,这里所说的系统是指程序系统.编制的目的是说明对程序系统的设计考虑,包括程序系统的基本处理.流程、程序系统的组织结构、模块划分、功能分配、接口设计。
运河行设计、数据结构设计和出错处理设计等,为程序的详细设计提供基础。
其格式要求如下:1 引言1.1 编写目的1.2 背景1.3 定义1.4 参考资料2 总体设计2.1 需求规定2.2运行环境2.3 基本设计概念和处理流程2.4 结构2.5功能需求与程序的关系2.6 人工处理过程2.7 尚未解决的问题3 接口设计3.1 用户接口3.2 外部接口3。
3 内部接口4 运行设计4.1运行模块的组合4.2 运行控制4.3 运行时间5 系统数据结构设计5.1 逻辑结构设计要点5.2 物理结构设计要求5.3 数据结构与程序的关系6 系统出错处理设计6.1出错信息6.2 补救措施6.3 系统维护设计。
数据结构课题报告说明书 数据结构课题报告 指导教师: 揭安全 组长: 肖清泉 组员: 朱智红、苏彦洲 班级: 计算机科学与技术(正大) 专业: 计算机科学与技术(师范) 时间: 2015-01-20——2015-03-01
课程设计题目:图书管理系统 前 言 图书馆管理系统或许众所周知,任何一个学校,有关单位似乎都需要这个类似的系统以此管理图书与读者借阅情况。借此,我们合作也做出一个系统,尽管可能有些逊色,但感觉还是可以。 本系统总结了前人牛人的经验,剔除了其中的不足创造了自己独有的特色。传承了牛人的优点,经过我们仔细的观摩,思考后创造此系统。“书上得来终觉浅,要知此事需躬行。”是呀!在没 亲身动手去编写程序时,我总觉得我会了。书本上的我都懂了。可我真的懂了吗?答案是否定的。在编写过程中,会出现很多的问题,而这些问题你是在书本上是接触不到的。只有发现问题,解决问题,你才会有提高。在过去人们对信息管理的主要方式是基于文本、表格等纸质的手工处理之上的,而用手工进行图书借阅管理存在多种弊端,其中包括图书过于繁多,包含很多的信息数据的管理对于图书借阅情况如:借阅天数、超过限定借阅时间等等的统计和核实,往往采用对借阅卡的人工查询进行,对借阅天数等用人工计算、手抄进行。信息处理工作量大,容易出错;由于数据繁多,容易丢失,且不易查找。总的来说缺乏系统、规范的管理手段人们操控起来是很困难的;因此,使用电子化的管理手段将是大势所趋,建立一个图书管理系统也是图书管理部门提高工作效益的有效手段。系统能够合理高效地利用图书资源,使得图书借阅更加的科学合理。
目 录 第一章 需求分析与目的概述 ---------- 04
1.1 需求分析概述----------------------- 04 1.2 系统功能分析----------------------- 04 第二章 系统设计----------------------04
3.1 系统功能模块设计-------------------04 3.1.1 信息录入-------------------05 3.1.2 学生菜单-------------------05 3.1.3 老师菜单-------------------06 3.1.4 图书管理员菜单-------------07 3.1.5 系统管理员菜单-------------09 3.2 逻辑结构设计-----------------------09 3.2.1 系统结构体设计-------------10 3.2.2 系统业务流程设计------------13 3.2.3 数据结构逻辑设计-----------14 第三章 系统的实施-----------------------29
4.1 运行相关界面-----------------------29 4.1.1 登入界面---------------------29 4.1.2 学生界面----------------------31 4.1.3 教师界面----------------------31 4.1.4 图书管理员界面----------------32 4.1.5 系统管理员界面----------------32 4.2 系统测试---------------------------33 4.2.1 学生测试----------------------33 4.2.2 教师测试----------------------33 4.3.4 图书管理员测试----------------34 4.4.4 系统管理员测试----------------34 第四章 总结与体会-----------------------34 第五章 参考文献--------------------------35
第一章 需求分析与目的概述 1.1 需求分析概述
我们组设计的是“图书管理系统”,主要是针对住宿学生个人信息的管理,适用对象主要是学校,以方便学校对住宿学生的管理。包括学生的学号、姓名、性别、专业、班级等等。在编写过程中主要运用C语言的基本知识有:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的调用与使用)等。 ●能够输入图书的综合情况和进行新书入库,对现有 图书信息修改以及删除; ●能够实现对读者档案进行查询和编辑管理; ●能够实现罚款记录,查询功能; ●能够实现借阅历史的查询功能。 1.2 系统功能分析 ●图书维护:为了保存好图书,读者的全部数据,本 系统将 对每一本图书和每位读者的信息进行管 理。系统维护包括 对各种表记录的修改,删除,添 加等操作。 ●系统查询:可以对图书,借书信息,读者等相关信 息进行查 询。 ●增添或删除学生等有关读者信息。 ●其他操作:包括修改密码,添加读者等。 第二章 系统设计 3.1 系统功能模块设计 3.1.1 信息录入 (一)绘制函数表如下: 函 数 功 能 操 作 简 述 BOOK *creat_book(); 图书录入 将图书信息采用链表存储
STUDENT *creat_student(); 学生录入 将学生信息存储
TEACHER *creat_teacher(); 老师录入 将老师信息存储
TUSHU_ADMINISTRATION *creat_tushu_administration(); 图书管理员录入 将图书管理员信息存储
XITONG_ADMINISTRATION *creat_xitong_administration();
系统管理员录入 将系统管理员信息存储
READERBOOKS *creat_readerbooks(); 读者录入 将读者信息存储
(二)示意图如下:
(1) 3.1.2 学生菜单 (一)绘制函数表如下: 函 数 功 能 操 作 简 述 Void student_menu(BOOK *head1,STUDENT *r,STUDENT *head2,FILE*fp2,READERBOOKS *head6);
显示学生清单 显示菜单
void student_info(STUDENT *r); 学生个人信息 调用学生函数实现查学生信息
void student_borrow(READERBOOKS *head6,STUDENT *r);
学生所借图书信息 实现借书情况
void student_borrowagain(READERBOOKS *head6,STUDENT *r);
学生网上续借 通过书名进行续借图书
int student_changepassword(STUDENT *r);
学生更改密码 通过学生更改原始密码
void present_tushu_info(BOOK *head1); 查询图书信息 查询书馆图书信息
(二)示意图如下:
(2) 3.1.3 老师菜单 (一)绘制函数表如下: 函 数 功 能 操 作 简 述 void teacher_menu(TEACHER *s,TEACHER *head3,FILE *fp3,BOOK *head1,READERBOOKS *head6,TEACHER *tea);
教师清单 显示教师菜单便于选择
void teacher_info(TEACHER *s,TEACHER *head3,FILE *fp3,BOOK *head1,READERBOOKS *head6,TEACHER *tea);
教师个人信息 显示教师个人基本信息
void teacher_changexinxi(TEACHER *s,TEACHER *head3,FILE *fp3,BOOK *head1,READERBOOKS *head6,TEACHER *tea);
教师更改自己信息 调用教师信息函数,实现
更改原有信息
void teacher_changepassword(TEACHER *s,TEACHER *head3,FILE *fp3,BOOK *head1,READERBOOKS *head6,TEACHER *tea);
更改密码 调用教师信息函数,实现更改原有密码
void teacher_borowagin(TEACHER *s,TEACHER *head3,FILE *fp3,BOOK *head1,READERBOOKS *head6,TEACHER *teaa);
查询图书信息 实现查询图书基本信息
(二)示意图如下:
(3) 3.1.4 图书管理员菜单