第一篇:《概要设计说明书》编写指南1
该文档收集他人文档而来:
一、问题的提出
概要设计写什么?概要设计怎么做?
如何判断设计的模块是完整的?
为什么说设计阶段过于重视业务流程是个误区?
以需求分析文档还是以概要设计文档来评估开发工作量、指导开发计划准确?
结构化好还是面向对象好?
以上问题的答案请在文章中找。
二、概要设计的目的
将软件系统需求转换为未来系统的设计;
逐步开发强壮的系统构架;
使设计适合于实施环境,为提高性能而进行设计;
结构应该被分解为模块和库。
三、概要设计的任务
制定规范:代码体系、接口规约、命名规则。这是项目小组今后共同作战的基础,有了开发规范和程序模块之间和项目成员彼此之间的接口规则、方式方法,大家就有了共同的工作语言、共同的工作平台,使整个软件开发工作可以协调有序地进行。
总体结构设计:
功能(加工)->模块:每个功能用那些模块实现,保证每个功能都有相应的模块来实现;
模块层次结构:某个角度的软件框架视图;
模块间的调用关系:模块间的接口的总体描述;
模块间的接口:传递的信息及其结构;
处理方式设计:满足功能和性能的算法
用户界面设计;
数据结构设计:
详细的数据结构:表、索引、文件;
算法相关逻辑数据结构及其操作;
上述操作的程序模块说明(在前台?在后台?用视图?用过程?······)
接口控制表的数据结构和使用规则
其他性能设计。
四、概要设计写什么
结构化软件设计说明书结构
任务:目标、环境、需求、局限;
总体设计:处理流程、总体结构与模块、功能与模块的关系;
接口设计:总体说明外部用户、软、硬件接口;内部模块间接口(注:接口≈系统界面)
数据结构:逻辑结构、物理结构,与程序结构的关系;
模块设计:每个模块“做什么”、简要说明“怎么做”(输入、输出、处理逻辑、与其它模块的接口,与其它系统或硬件的接口),处在什么逻辑位置、物理位置;
运行设计:运行模块组合、控制、时间;
出错设计:出错信息、处错处理;
其他设计:保密、维护;
OO软件设计说明书结构 概述
系统简述、软件设计目标、参考资料、修订版本记录
这部分论述整个系统的设计目标,明确地说明哪些功能是系统决定实现而哪些不准备实现的。同时,对于非功能性的需求例如性能、可用性等,亦需提及。需求规格说明书对于这部分的内容来说是很重要的参考,看看其中明确了的功能性以及非功能性的需求。
这部分必须说清楚设计的全貌如何,务必使读者看后知道将实现的系统有什么特点和功能。在随后的文档部分,将解释设计是怎么来实现这些的。术语表
对本文档中所使用的各种术语进行说明。如果一些术语在需求规格说明书中已经说明过了,此处不用再重复,可以指引读者参考需求说明。
用例
此处要求系统用用例图表述(UML),对每个用例(正常处理的情况)要有中文叙述。
设计概述
4.1 简述
这部分要求突出整个设计所采用的方法(是面向对象设计还是结构化设计)、系统的体系结构(例如客户/服务器结构)以及使用到的相应技术和工具(例如OMT、Rose)
4.2 系统结构设计
这部分要求提供高层系统结构(顶层系统结构、各子系统结构)的描述,使用方框图来显示主要的组件及组件间的交互。最好是把逻辑结构同物理结构分离,对前者进行描述。别忘了说明图中用到的俗语和符号。
4.3 系统界面
各种提供给用户的界面以及外部系统在此处要予以说明。如果在需求规格说明书中已经对用户界面有了叙述,此处不用再重复,可以指引读者参考需求说明。如果系统提供了对其它系统的接口,比如说从其它软件系统导入/导出数据,必须在此说明。
4.4 约束和假定
描述系统设计中最主要的约束,这些是由客户强制要求并在需求说明书写明的。说明系统是如何来适应这些约束的。
另外如果本系统跟其它外部系统交互或者依赖其它外部系统提供一些功能辅助,那么系统可能还受到其它的约束。这种情况下,要求清楚地描述与本系统有交互的软件类型以及这样导致的约束。
实现的语言和平台也会对系统有约束,同样在此予以说明。
对于因选择具体的设计实现而导致对系统的约束,简要地描述你的想法思路,经过怎么样的权衡,为什么要采取这样的设计等等。
对象模型
提供整个系统的对象模型,如果模型过大,按照可行的标准把它划分成小块,例如可以把客户端和服务器端的对象模型分开成两个图表述。在其中应该包含所有的系统对象。这些对象都是从理解需求后得到的。要明确哪些应该、哪些不应该被放进图中。所有对象之间的关联必须被确定并且必须指明联系的基数。聚合和继承关系必须清楚地确定下来。每个图必须附有简单的说明。对象描述
在这个部分叙述每个对象的细节,它的属性、它的方法。在这之前必须从逻辑上对对象进行组织。你可能需要用结构图把对象按子系统划分好。
为每个对象做一个条目。在系统对象模型中简要的描述它的用途、约束(如只能有一个实例),列出它的属性和方法。如果对象是存储在持久的数据容器中,标明它是持久对象,否则说明它是个临时对象(transient object)。
对每个对象的每个属性详细说明:名字、类型,如果属性不是很直观或者有约束(例如,每个对象的该属性必须有一个唯一的值或者值域是有限正整数等)。
对每个对象的每个方法详细说明:方法名,返回类型,返回值,参数,用途以及使用的算法的简要说明(如果不是特别简单的话)。如果对变量或者返回值由什么假定的话,Pre-conditions和Post-conditions必须在此说明。列出它或者被它调用的方法需要访问或者修改的属性。最后,提供可以验证实现方法的测试案例。动态模型
这部分的作用是描述系统如何响应各种事件。一般使用顺序图和状态图。
确定不同的场景(Scenario)是第一步,不需要确定所有可能的场景,但是必须至少要覆盖典型的系统用例。不要自己去想当然地创造场景,通常的策略是描述那些客户可以感受得到的场景。
7.1 场景(Scenarios)
对每个场景做一则条目,包括以下内容:
场景名:给它一个可以望文生义的名字
场景描述:简要叙述场景是干什么的以及发生的动作的顺序。
顺序图:描述各种事件及事件发生的相对时间顺序。
7.2 状态图
这部分的内容包括系统动态模型重要的部分的状态图。可能你想为每个对象画一个状态图,但事实上会导致太多不期望的细节信息,只需要确定系统中一些重要的对象并为之提供状态图即可。非功能性需求
五、概要设计怎么做
结构化软件设计方法:
详细阅读需求规格说明书,理解系统建设目标、业务现状、现有系统、客户需求的各功能说明;
分析数据流图,弄清数据流加工的过程;
根据数据流图决定数据处理问题的类型(变换型、事务型、其他型);
通过以上分析,推导出系统的初始结构图;
对初始结构图进行改进完善:所有的加工都要能对应到相应模块(模块的完整性在于他们完成了需求中的所有加工),消除完全相似或局部相似的重复功能(智者察同),理清模块间的层次、控制关系,减少高扇出结构,随着深度增大扇入,平衡模块大小。
由对数据字典的修改补充完善,导出逻辑数据结构,导出每种数据结构上的操作,这些操作应当属于某个模块。
确定系统包含哪些应用服务系统、客户端、数据库管理系统;
确定每个模块放在哪个应用服务器或客户端的哪个目录、哪个文件(库),或是在数据库内部建立的对象。
对每个筛选后的模块进行列表说明。
对逻辑数据结构进行列表说明。
根据结构化软件设计说明书结构对其他需要说明的问题进行补充说明,形成概要设计说明书。
OO软件设计方法:
在OOA基础上设计对象与类:在问题领域分析(业务建模和需求分析)之后,开始建立系统构架。
第一步是抽取建立领域的概念模型,在UML中表现为建立对象类图、活动图和交互图。对象类就是从对象中经过“察同”找出某组对象之间的共同特征而形成类:
对象与类的属性:数据结构;
对象与类的服务操作:操作的实现算法;
对象与类的各外部联系的实现结构;
设计策略:充分利用现有的类;
方法:继承、复用、演化;
活动图用于定义工作流,主要说明工作流的5W(Do What、Who Do、When Do、Where Do、Why Do)等问题,交互图把人员和业务联系在一起是为了理解交互过程,发现业务工作流中相互交互的各种角色。
第二步是构建完善系统结构:对系统进行分解,将大系统分解为若干子系统,子系统分解为若干软件组件,并说明子系统之间的静态和动态接口,每个子系统可以由用例模型、分析模型、设计模型、测试模型表示。软件系统结构的两种方式:层次、块状
层次结构:系统、子系统、模块、组件(同一层之间具有独立性);
块状结构:相互之间弱耦合 系统的组成部分:
问题论域:业务相关类和对象(OOA的重点);
人机界面:窗口、菜单、按钮、命令等等;
数据管理:数据管理方法、逻辑物理结构、操作对象类;
任务管理:任务协调和管理进程;
第三步是利用“4+1”视图描述系统架构:用例视图及剧本;说明体系结构的设计视图;以模块形式组成包和层包含概要实现模型的实现视图;说明进程与线程及其架构、分配和相互交互关系的过程视图;说明系统在操作平台上的物理节点和其上的任务分配的配置视图。在RUP中还有可选的数据视图。
第四步是性能优化(速度、资源、内存)、模型清晰化、简单化(简单就是享受)。
六、概要设计的原则
总体原则和方法:由粗到细的原则,互相结合的原则,定性分析和定量分析相结合的方法,分解和协调的方法和模型化方法。
要系统考虑系统的一般性、关联性、整体性和层次性。
分解协调:目的是为了创造更好的系统。系统分解是指将一个复杂的系统分解为若干个子系统,系统协调一是系统内协调,即根据系统的总结构、总功能、总任务和总目标的要求,使各个子系统之间互相协调配合,在各个子系统局部优化基础上,通过内部平衡的协调控制,实现系统的整体优化;
屏蔽抽象:从简单的框架开始,隐含细节;
一致性:统一的规范、统一的标准、统一的文件模式;
每个模块应当有一个统一命名的容易理解的名字;
编码:由外向内(界面->核心);
面向用户:概要设计是对于按钮按下后系统“怎么做”的简要说明;
模块、组件的充分独立性、封闭性;
同时考虑静态结构与动态运行;
每个逻辑对象都应当说明其所处物理对象(非一一对应);
每个物理对象都有合适的开发人员,并且利于分工与组装。(详细说明见本人另一篇文章:系统构架设计应考虑的因素);
确立每个构架视图的整体结构:视图的详细组织结构、元素的分组以及这些主要分组之间的接口;
软件构架与使用的技术平台密切相关,目前常用的平台有J2EE、.NET、CORBA等等,因此具体的软件构架人员应当具备使用这些平台的软件开发经验;
通过需求功能与设计模块之间的列表对应,检查每个需求功能是否都有相应的模块来实现,保证需求功能的可追溯性和需求实现(模块)的完整性,同时可以检查重复和不必要的模块。
在需求调研分析过程中对业务处理过程了解的完整性和准确性非常重要。调查了解清楚所有的业务流程才能设计出适合各流程业务节点用户业务特点和习惯的软件,使开发出来的软件更受欢迎。当然在进行软件概要设计时,要尽量排除业务流程的制约,即把流程中的各项业务结点工作作为独立的对象,设计成独立的模块,充分考虑他们与其他各种业务对象模块的接口,在流程之间通过业务对象模块的相互调用实现各种业务,这样,在业务流程发生有限的变化时(每个业务模块本身的业务逻辑没有变的情况下),就能够比较方便地修改系统程序模块间的调用关系而实现新的需求。如果这种调用关系被设计成存储在配置库的数据字典里,则连程序代码都不用修改,只需修改数据字典里的模块调用规则即可。
七、概要设计的重要输出
编码规范:信息形式、接口规约、命名规则;
物理模型:组件图、配置图;
不同角度的构架视图:用例视图、逻辑视图、进程视图、部署视图、实施视图、数据视图(可选);
系统总体布局:哪些部分组成、各部分在物理上、逻辑上的相互关系;
两个不可忽视的输出:
与需求功能的关系:对于需求中的每一个功能,用哪一层、哪个模块、哪个类、哪个对象来实现(一对多关系);反过来,应当说明将要创建的系统每一层、每个模块、每个对象、每一个类“做什么”,他们是为了帮助实现哪些功能(一对多关系)。(需求的颗粒度在一开始往往是比较粗的,因此根据功能点对于整体项目规模的估计或得到项目WBS其误差范围也是比较大的。更为重要的原因是,需求往往不是编码工作分解的准确依据,因为一个需求的功能点可能对应多个代码模块,而多个需求的功能点也可能只对应一个或少数代码模块,同时还有软件复用等因素要考虑,因此只有在概要设计完成以后才能准确地得到详细设计或编码阶段的二次WBS,并估计较为准确的整体项目规模。)
逻辑与物理位置:每个对象在逻辑上分别落在哪一层、哪个模块、哪个类;在物理上每个模块、每个对象、每一个类放在哪个应用服务器或客户端的哪个目录、哪个文件(库),或者是建立在数据库管理系统中的什么东东(过程、函数、视图、触发器等等)。
八、结构化与面向对象方法特点比较
1.从概念方面看,结构化软件是功能的集合,通过模块以及模块和模块之间的分层调用关系实现;面向对象软件是事物的集合,通过对象以及对象和对象之间的通讯联系实现;
2.从构成方面看,结构化软件=过程+数据,以过程为中心;面向对象软件=(数据+相应操作)的封装,以数据为中心;
3.从运行控制方面看,结构化软件采用顺序处理方式,由过程驱动控制;面向对象软件采用交互式、并行处理方式,由消息驱动控制;
4.从开发方面看,结构化方法的工作重点是设计;面向对象方法的工作重点是分析;但是,在结构化方法中,分析阶段和设计阶段采用了不相吻合的表达方式,需要把在分析阶段采用的具有网络特征的数据流图转换为设计阶段采用的具有分层特征的结构图,在面向对象方法中则不存在这一问题。
5.从应用方面看,相对而言,结构化方法更加适合数据类型比较简单的数值计算和数据统计管理软件的开发;面向对象方法更加适合大型复杂的人机交互式软件和数据统计管理软件的开发;
参考文献:
《实用软件工程》第二版,郑人杰、殷人昆、陶永雷等著
《微软项目:求生法则》Steve McConnell著,余孟学译
《软件工程:实践者的研究方法》(第5版)Roger S.Pressman著
《软件构架实践》SEI软件工程译丛,林·巴斯著
《RUP2000》电子版;
《UML与系统分析设计》张龙祥著;
《面向对象的分析与设计》杨正甫著;
本文来自CSDN博客,转载请http://blog.csdn.net/nengyu/archive/2009/01/12/3758312.aspx
标
明
处
出
:
第二篇:考勤---概要设计说明书
四、概要设计说明书
四、概要设计说明书
1.引言.............................................................................................................................................1
1.1编写目的.............................................................................................................................1 1.2项目背景.............................................................................................................................1 1.3定义.....................................................................................................................................2 1.4参考资料.............................................................................................................................2 2.任务概述.....................................................................................................................................3
2.1目标.....................................................................................................................................3 2.2运行环境.............................................................................................................................3 2.3需求概述.............................................................................................................................3 2.4总体架构设计.....................................................................................................................4 2.5条件与限制
.......................................................................................................................4 3.总体架构设计........................................................................................................................4 3.1处理流程.............................................................................................................................6 3.2总体结构.............................................................................................................................6 3.3特色功能.............................................................................................................................6 3.4关键技术...........................................................................................错误!未定义书签。4 系统模块设计错误!未定义书签。................................................................................................................错误!未定义书签。
1.引言
1.1编写目的
本手册作为用户与该系统软件开发维护人员共同遵守的软件概要设计说明。
1.2项目背景
开发软件名称:考勤管理系统
四、概要设计说明书
项目任务提出者:小组
项目开发者:CCIT讯飞151TRY小组 用户:xx公司 实现软件单位:CCIT
考勤作为一个企业的基础管理,是企业对员工工作管理的基本依据。实际管理和记录工作非常需要快速获知各个部门员工的每日出勤情况,以便于及时向高层管理者反映员工的出勤,缺勤情况(包括迟到、早退、病假、事假、出差等情况)。我们提出基于SSM(maven)结构的网络考勤系统,实现网上考勤任务,以减轻考勤人员的工作量。我们准备开发员工考勤管理系统,完成员工基本信息维护、企业的部门信息维护、企业基本考勤类型的维护、员工考勤的管理、员工考勤的查询与分析。实现人事考勤的需要,包括员工迟到、早退、请假、旷工的情况的记录,对员工整个月的考勤记录进行查询和统计。企业考勤管理系统是为了解决员工考勤管理的而设计的,目的是建立一个能够初步实现企业考勤管理系统的智能化管理,提高考勤管理效率,工作人员能够在各个岗位上的工作状态得到及时的反馈,而系统所需的工作人员的数量少,效率高。降低资源浪费,同时增强员工管理的透明度以及约束员工自觉遵守出勤制度。
1.3定义
【列出本文档中所用到的专门术语的定义和缩写词的原文。】
1.4参考资料
【列出有关资料的作者、标题、编号、发表日期、出版单位或资料来源,可包括:
a.项目经核准的计划任务书、合同或上级机关的批文; b.项目开发计划; c.需求规格说明书;
四、概要设计说明书
d.测试计划(初稿); e.用户操作手册(初稿);
f.文档所引用的资料、采用的标准或规范。】
2.任务概述
2.1目标
(1)提供简单、方便的操作。
(2)通过考勤管理无纸化的实现,使企业的考勤管理更加科学规范。(3)节省考勤管理的成本。
(4)提高企业考勤管理的透明度和效率,防止“虚假出勤“的现象。(5)对系统提供必要的权限管理。
(6)为企业实现整体信息化的其他相关系统提供必要的数据支持。
2.2运行环境
结合用户当前的软件的硬件环境,设计了新系统运行硬件和软件环境: 2.2.1设备
Win7/8/10操作系统电脑 2.2.2支持软件
操作系统 Windows 2007 数据库
mysql 开发工具 eclipse 2.2.3接口
1.硬件接口:硬盘
2.软件接口:常用的办公软件 2.2.4控制
[说明控制该系统的运行的方法和控制信号,并说明这些控制信号的来源。]
2.3需求概述
企业考勤管理系统是为了解决员工考勤管理的而设计的,目的是建立一个能够初步实现企业考勤管理系统的智能化管理,提高考勤管理效率,工作人员能够在各个岗位上的工作状态得到及时的反馈,而系统所需的工作人员的数量少,效率高。
企业考勤管理系统是一个企事业单位不可缺少的一部分,它的内容对于企业的决策者和管理者来说都是至关重要的,因此,企业考勤管理系统应该能够为用户提供充足人事管理的信息和快捷的管理查询手段,但一直以来人们使用传统的人工方式管理员工的上下班等信息,四、概要设计说明书
这种管理方式存在着许多缺点,诸如效率低,保密性差等,而且时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少的困难。
2.4 总体架构设计
我们所做的系统目的:
(1)提供简单、方便的操作。
(2)通过考勤管理无纸化的实现,使企业的考勤管理更加科学规范。
(3)节省考勤管理的成本。
(4)提高企业考勤管理的透明度和效率,防止“虚假出勤“的现象。
(5)对系统提供必要的权限管理。
(6)为企业实现整体信息化的其他相关系统提供必要的数据支持。
2.5条件与限制 设计约束
1、所有的数据库命名都是以模块的缩写加上具体表的英文词汇组成,这样能够统一数据库表的命名,也能够更好的规范数据库表命名。
2、所有数据库的设计,都依赖于本地数据库,并且采用面向对象的设计方法,首先进行对象实体的设计,最后将对象持久化到数据库中,所有的表和表之间的关联(ER图)都采用标准的Visio画图工具进行,这样能够将整个系统的设计和数据库设计有机的结合起来。
3、界面风格:管理界面做到美观大方、风格统一,并有一些提示信息指导用户操作使用。尽量使用选择框、下拉框等选择操作界面,方便用户的使用。
4、消息提示:中文提示,言简意赅。
3.总体架构设计
3.1处理流程
1注册邮箱(员工,审批员,考勤员)
注册:
通过邮箱注册
a)用MailUtil这个工具类来实现邮箱激活注册
四、概要设计说明书
登陆:特色技术:通过输入数据库已存在用户名,直接显示用户头
像
Ajax异步查询
2输入(员工/审批/考勤)邮箱,密码 3登录进入(员工/审批/考勤)界面
4员工界面管理个人信息,查看修改个人信息,申请请假信息,打卡。5点击注销,退出回登录界面
6进入审批界面,审批员工申请信息,查询员工历史信息,查询员工请假信息,打卡
7进入考勤界面,修改用户信息,删除用户信息,增加用户信息,查看所有员工信息,申请请假信息
系统流程图
四、概要设计说明书
3.2总体结构和模块外部设计
系统逻辑架构图
3.3特色功能
整个项目我们完成了以下功能:注册,登陆,个人信息;查看,增加,删除,添加,审批,打卡功能以及主页面分页面设计。
3.4关键技术
打卡,邮箱注册,增删改查,界面设计
四、概要设计说明书
4.系统模块设计
4.3.1登入界面设计:
需要输入邮箱(email)和密码(PASSWORD)。必须为数字。
登陆成功即进入系统,失败的话需要重新输入信息。
密码规则:7位以上非汉字字符串;包含一个特殊字符和一个数字。
四、概要设计说明书
显示当前时间。由安全问题获取密码。验证码验证。
4.3.2员工界面设计:
可以进行考勤操作。
可以进行统计查询自己考勤信息。
可以进行密码修改。
可以进行报表打印操作。
可以进行公告留言操作。
4.3.2.1考勤操作界面: 网站树形导航 当前状态 注销通道 留言提示
考勤基本操作(包括上班,下班,加班,请假,出差操作的按钮)员工信息列表介绍 考勤规则
四、概要设计说明书
上班
存在上班异常将显示异常个数和要求填写异常解释 下班
下班异常并提供相应选择 请假
请假原因及时间说明 出差
出差信息填写
四、概要设计说明书
4.3.2.2考勤查询界面:
此处显示查询了详细考勤信息
根据开始时间和结束时间进行查询
4.3.3.1考勤查询界面:
根据时间和员工进行各类查询
此处显示查询结果
4.3.3.2员工设置界面:
显示员工的信息列表
四、概要设计说明书
直接生成EXCEL电子表格
添加员工,查找员工操作
添加员工
查找员工
第三篇:学生档案管理系统概要设计说明书
学生信息管理系统设计规格说明书
一、总体结构设计
本系统从总体分可分用户表、学生基本信息表、学生在校学籍表、院内课程表、学生课程表、学生成绩表、学生奖惩信息表、教员信息表、班级信息表、系别信息表。
1.用户表:用户名、用户编号、密码、权限、用户基本信息
2.学生基本信息表:姓名、学号、性别、出生日期、与学生关系、家庭成员、家长职业、家长单位、家庭住址、家庭电话
3.学生在校学籍表:学号、班级、系别、入学时间、学生电话、班主任、导员、攻读学历
4.院内课程表:年级、学期、课程、任课教师、课时、课程类型、课程信息
5.学生课程表:学号、年级、学期、课程、任课教师、课时、上课教室、课程信息
6.学生成绩表:
姓名、学号、系别、班级、年级、学期、课程、任课教师、课时、分数、是否通过
7.学生奖惩信息表:姓名、学号、系别、班级、年级、学期、奖惩类型、奖惩信息、备注 8.教员信息表:姓名、职务 9.班级信息表:班级、系别 10.系别信息表:系别
1.1系统总体结构图
图1.1系统总体结构图
1.2、包图及关系
(1)数据库设计 数据库分析
在系统操作流程图分析的基础上,可以列出该系统所需要的主要数据项和数据结构。
用户表:用户名、用户编号、密码、权限、用户基本信息
学生基本信息表:姓名、学号、性别、出生日期、与学生关系、家
庭成员、家长职业、家长单位、家庭住址、家庭电
话
学生在校学籍表:学号、班级、系别、入学时间、学生电话、班主任、导员、攻读学历
院内课程表:年级、学期、课程、任课教师、课时、课程类型、课程信息
学生课程表:学号、年级、学期、课程、任课教师、课时、上课教室、课程信息
学生成绩表:
姓名、学号、系别、班级、年级、学期、课程、任课教师、课时、分数、是否通过
学生奖惩信息表:姓名、学号、系别、班级、年级、学期、奖惩类型、奖惩信息、备注 教员信息表:姓名、职务 班级信息表:班级、系别 系别信息表:系别 创建数据库表
将上面的E-R图转换成表格形式,在这里即为创建数据库。本课题在创建数据库时,采用的是SQL Server 2000的企业管理器,不需要使用任何的SQL语句,即可成功创建数据库。在SQL中新建了一个名为Student_MessageInfo的数据库,根据先前做的分析,新建了多个数据库表。其中较为重要的表如下所示,其中表格形式的数据库表,学生基本信息
二、过程设计
1、模块说明及程序流程图(1)学生基本信息模块
该模块实现的功能:学生可以查询个人基本信息,成绩信息,学分信息以及惩处信息,但不能修改信息.(2)学生课程模块
该模块实现的功能:学生课程,系统根据学生所报专业选出其对应的选修课,然后学生可根据专业选择其中一项,然后提交.(3)教师信息模块
该模块实现的功能:教师可查询授课信息,学生选课信息,学生基本
信息和学生成绩.(4)管理员查询信息模块
该模块实现的功能:管理员可对学生信息,教师信息,课程信息,学院信息,专业信息,班
进行查询
2、精确类图
四、界面设计
用户登陆:该系统根据用户的身份实现了不同的功能,用户登陆时需要选择一种登陆方式(默认情况下是学生),系统再根据用户选择的登陆方式到相应的表中去搜索。例如,登陆时选择了教师登陆方式,系统将会在教师信息表中搜索是否存在与该用户的输入相符的信息,如果存在则进入教师主页,否则提示用户输入有误,请重新输入。
1、学生用户界面 ①、修改密码
学生的初始密码是由管理员指定的。学生登陆后,可以按照要求自行修改使用密码。首先需要输入原始密码,如果原始密码没有输入正确将不能修改密码,只有在原始密码正确的基础上,用户才能继续下面的操作。新密码设定后,系统还要求用户再输入一次重复密码,避免因为误输而导致密码丢失。②、查询指定学期成绩
学生可以查询自己指定学期的成绩和所有的成绩。方便学生了解自身情况。
③、查询截止目前所获学分
学分一直以来都是学生们倍受关注的焦点。就目前已有的系统来说,虽然实现了学生查询成绩的功能,但是关于学分部分仍然需要学生自行统计。本系统弥补了现有系统这方面的不足,学生可以直接查询到截止目前所获得的学分情况,减少了学生需要自行统计的工作量,提高了工作效率。④、选课系统
学生选课系统是针对学生进行网上选课而设计的,学生可以自主选择自己想修的课程。2.、老师用户界面 ①、查询授课计划
教师可以利用该系统实现查询授课计划的功能,教师不仅可以看到自己本学期要授的课程信息,还能查看选修对应课程的学生名单,同时可以添加对应课程的学生成绩。帮助教师提高了工作效率。②、查询学生基本信息
教师可以查询学生的基本信息,以帮助教师了解学生情况。可以按班级查找、按姓名查找、按学号查找、按年龄查找、按籍贯查找,也可以一起查找。
3、管理员界面 ①、班级信息管理
班级信息管理包括添加班级信息,修改班级信息以及删除班级信息。在班级信息管理之前,需要先对学校信息和专业信息管理。只有在已有的专业信息中才能建立班级档案,班级信息和专业信息是从属关系。
②、学生基本信息管理
学生基本信息管理包括学生基本信息添加、学生基本信息修改、学生基本信息删除。下面给出的是学生信息添加界面 ③、教师基本信息管理 教师基本信息管理包括教师基本信息添加、教师基本信息修改以及教师基本信息删除。
第四篇:人事管理系统概要设计说明书范文
概要设计说明书
1. 引言
1.1 编写目的
在人事管理系统项目的前一阶段,也就是需求分析阶段中,已经将系统用户对本系统的需求做了详细的阐述,本阶段已在系统的需求分析的基础上,该文档的目的是描述企业人事管理系统项目的概要设计,其内容包括: 系统功能简介 系统结构设计 系统接口设计 数据设计 模块设计 界面设计
本文档的预期的读者是:
XX有限公司的领导
技术人员
XX有限公司的领导 相关项目组的所有成员
1.2 项目背景
国外企业关于人事信息的管理,主要是利用人力资源方面管理系统来实现的因为这类系统同IT、通信等领域技术的发展存在密切的联系,因此在计算机、网络等技术发展相对快的国家,基本上创建了一套人力资源管理系统,人力资源方面的信息能够在其本国范围内被授权查阅。无论人才流动到哪里,在人们进行求职、贷款以及办理保险之时,具备查阅权限的机构都能够查阅该人的信息,以衡量为该人办理有关手续的潜在风险,或者是否可以录用。
1.3 定义
1.3.1 专门术语
C/S:Client/Server客户机/服务器。
可修改性:容许对系统进行修改而不增加原系统的复杂性。
有效性:软件系统能有效地利用计算机的时间资源与空间资源的能力。
可适应性:软件在不同的系统约束条件下使用户需求得到满足的难易程度。可移植性:软件从一个计算机系统或环境搬到另一个计算机系统或环境的难易程度。主键:数据库表中的关键域。
1.3.2 缩写
系统:若未特别指出,统指本机票预定系统。
SQL: Structured Query Language(结构化查询语言)。ATM: Asynchronous Transfer Mode(异步传输模式)。
1.4 参考资料
以下列出在概要设计过程中所使用到的有关资料:
[1]韩万江 《软件工程案例教程》机械工业出版社 [2]李金勇 曹军生,《SQL sever 2000实用教程》,北京理工大学出版社 [3]林邓伟 等,《JAVA程序设计项目教程》,北京理工大学出版社 [4]孙峰,《数据库原理及应用》。天津大学出版社 [5]软件工程文档编制国际标准:GB8567—88 2. 总体设计
2.1 需求规定
数据库分析是数据库管理系统开发周期中的一个重要的阶段,也是工作量比较大的一 项活动。随着现代软件的发展,手工分析方式已经很难满足数据库管理系统数据库分析的要 求,必须借助相应的工具。
设计数据库系统时应首先充分了解用户各个方面的需求,包括现有的以及将来可能增
加的需求。用户需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构 能充分满足各种信息的输入和输出。通过对书店管理工作过程的内容和数据流程分析,设计 数据项和数据结构。
通过与企业的沟通和需求分析,要求系统具有以下功能。1.新员工资料的添加、修改、删除和查询。2.部门信息的添加、修改、删除和查询。3.自动分配员工编号和部门编号。
4.人事调动的详细记录,包括部门、职位和职称的调整,以及人员离职。
5.添加/修改日常出勤记录,这里重点实现可按全体员工、部门员工和所选员工添加/修改 日常出勤记录,以方便用户操作。员工日常公出/请假信息的添加、修改、删除和查询。每月工资信息的批量添加、修改、删除和查询。
2.2 运行环境
2.2.1 设备
1.Web服务器1台 2.数据库服务器1台 3.备份服务器1台 4.开发服务器1台
5.软件防火墙服务器1台 6.千兆路由器1台
7. 10M网络宽带1条
2.2.2 软件环境
本系统的的软件环境如下
1.My Eclipese 10开发工具 2.SQL Server2008数据库系统 3.Windows xp操作系统;4.防火墙,杀毒软件
2.3 基本设计概念和处理流程
概念模型是对信息世界的建模,所以概念模型应该能够方便、准确的表示出信息世界 中的常用概念。实体--关系模型(Entity-Relationship Module,简称E-R图)是数据库结构设计常用的方法。得到了数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体以及它们之间的关系,为后面逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。根据需求分析和功能分析,规划出本系统中使用的数据库实体分别为员工实体,部门实体,工资实体,出勤实体,公出请假实体,人事调动实体,福利实体,员工离职实体等员工实体包括ID、编号、姓名、性别、身份证号、出生年月、年龄、民族、婚姻状况、政治面貌、如党团时间、籍贯、联系电话和手机号码等属性。员工实体E-R图如图2.1所示:
部门实体包括部门编号、部门名称、部门经理、部门地址和部门电话属性。
部门实体E-R图如图2.2所示:。
公出实体包括ID、所属工资月份、员工编号、员工姓名、基本工资、加班费、工龄工
资、全勤奖、奖励总额、职务津贴、请假扣除等属性。工资实体E-R图如图2.3所示:
2.4 结构
本系统的实现采用典型的三层模式、B/S结构来实现,不同的客户端程序共同访问中心数据库,系统结构如图1:
图1:系统结构
系统基本功能图解体系基本结构图
2.5功能需求与系统模块的关系 各项功能需求的实现同各个块程序的分配关系:
2.5.1登录页面
需要登陆的人员,对于不同的身份,他们的权限是不一样 的。当用户输入ID 和密码时,查询数据库,若用户名和密
码正确,则进入相应的员工信息页面,若不正确,则提示用户名或密码错误,人显示当前页面。
功能描述: 用户管理 配置管理 数据备份 数据维护 1.2.3.4.2.5.2员工注册 功能描述:
新员工注册,输入员工的注册信息,包括(登录账号,登录密码,核对密码,联系电话,联系地址,电子邮箱)。
注册信息的修改。
用例图
2.5.3员工的登录和登出
功能描述:
员工登陆
员工退出 用例图:
2.5.4信息查询 功能描述:
查看公司内部相关信息 查看个人信息
查看其他员工的部分信息 用例图
2.5.5人事档案
1增加员工档案信息 2修改员工档案信息
3删除员工档案信息 4查询员工档案信息
5打印员工档案信息 用例图
2.5.6工资信息管理 功能描述:
1.工资信息模块
2.计发工资信息
3.查询工资信息
4.保险/福利
5.打印工资信息 用例图
2.5.7员工培训 功能描述:
1.员工培训模块主要包括:
2.培训信息的录入 3.培训信息的删除 4.培训信息的修改 5.培训信息的查询 6.履历表的打印 用例图
2.5.8公司招聘
功能描述:
1.录入招聘信息
2.查询招聘信息
3.修改招聘信息
4.删除招聘信息
5.查询应聘者信息
6.删除应聘者信息
用例图
2.6 人工处理工程
创建用户(注册新用户):用户信息需要手工输入计算机。更新部门、员工资料:需要手动输入更新内容。
2.7 尚未解决的问题
由于数据的传输上需要通过网络传输,为了客户资料进行保密,需要在网络的传输过程中对数据进行加密。
这个工作主要是在准备网络包,及解开网络包这两个模块完成,它们各对数据进行加密及解密还原工作。
在加密算法选择上将使用RSA 加密算法。具体算法可参照参考资料中《Computer Network》p.598。
3.接口设计 3.1用户接口设计
3.2外部接口
3.3内部接口
4.运行设计 4.1运行模块组合
施加不同的外界运行控制时所引起的各种不同的运行模块组合如下表所示:
4.2运行控制
5.系统数据结构设计 5.1逻辑结构设计要点
根据设计好的E-R图在企业人事管理系统中创建各表。
员工信息表用于储存员工基本信息和单位相关信息,改数据表结构如表2.1所示:
部门表用于存储部门编号、部门名称等信息,该数据表结构如表2.2所示。
工资表用于存储每月每个员工的详细工资信息该数据表结构如表2.3所示。
6.系统出错处理设计 6.1出错信息
程序在运行时主要会出现两种错误:
1、由于输入信息,或无法满足要求时产生的错误,称为软错误。
2、由于其他问题,如网络传输超时等,产生的问题,称为硬错误。
对于软错误,须在定票/领票操作成功判断及输入数据验证模块由数据进行数据分析,判断错误类型,再生成相应的错误提示语句,送到输出模块中。
对与硬错误,可在出错的相应模块中输出简单的出错语句,并将程序重置。返回输入阶段。
6.2补救措施
所有的客户机及服务器都必须安装不间断电源以防止停电或电压不稳造成的数据丢失的损失。若真断电时,客户机上将不会有太大的影响,主要是服务器上:在断电后恢复过程可采用 SQL SERVER 的日志文件,对其进行ROLLBACK 处理,对数据进行恢复。
在网络传输方面,可考虑建立一条成本较低的后备网络,以保证当主网络断路时数据的通信。
在硬件方面要选择较可靠、稳定的服务器机种,保证系统运行时的可靠性。
6.3系统维护设计
维护方面主要为对服务器上的数据库数据进行维护。可使用 SQL SERVER 的数据库维护功能机制。例如,定期为数据库进行Backup,维护管理数据库死锁问题和维护数据库内数据的一致性等。
第五篇:《产品说明书及其编写》教学设计
一 教材内容分析
本节课的内容是《技术与设计1》(苏教版)第八章第一节的内容。《普通高中技术课程标准》中提出了“了解产品说明书或用户手册的作用与一般结构,能编写简单的产品说明书或者用户手册”的要求。编写产品说明书是技术产品设计的一般过程的最后一步,当学生为自己的作品编写好说明书之后,学生就完成了一个完整设计过程的体验。本节内容是在充分考虑用户的前提下,要求学生从设计角度了解产品说明书的作用及其编写。二 学情分析
本节课的教学对象是高一年级学生,产品说明书对于学生来说或多或少都接触过,有一定的阅读、使用产品说明书的能力。但是在日常生活中的这种对产品说明书的体验和认识,主要是来自作为消费者对说明书的朴素认识。而学生没有过以设计者的角度,思考产品说明书的编写问题。本节课学生将有一次全新的体验。经过前面章节的学习,学生已经对技术与设计有了一定的了解,并且积累了一些产品设计的实践经验,为学生撰写自制的作品和常用加工工具的产品说明书奠定了良好的基础。三 教学目标 1.知识与技能
(1)了解产品说明书的编写是技术设计过程的一个环节;(2)知道什么是产品说明书,产品说明书的作用;(3)了解产品说明书的编写规则和要求;(4)能够编写简单的产品说明书。2.过程与方法
(1)通过阅读产品说明书,切身理解产品说明书的作用、结构和形式,提高规范使用产品的安全意识;
(2)通过设计、编写一个简单的产品说明书,体验产品说明书的规范性。3.情感态度与价值观
通过本节的学习,进一步培养技术以人为本的理念,提高规范使用产品的安全意识,提高技术素养,培养严谨的科学态度。四 教学重点与难点
重点:产品说明书及其重要性,产品说明书的写作; 难点:如何比较规范地撰写简单的产品说明书。五 教学策略
根据本课的教学目标,我采用了讲授法、实物投影、多媒体展示、任务驱动、学生自主思考、合作讨论等多种教学方法相结合的策略。本节课的主要结构是“趣味性导入——知识建构——合作实践——总结评价——能力扩展”。具体做法如下:
1.通过让学生分组合作组装鲁班锁的活动,引入本课主题:产品说明书及其编写,激发学生的学习兴趣;
2. 由鲁班锁的使用说明书引导学生归纳总结出产品说明书的概念及其作用; 3.结合课本55页的范本“便携式小凳使用说明书”、鲁班锁的使用说明书以及案例讲解产品说明书的写作内容:一般结构、形式和要求,播放视频,扩展知识;
4.在学生对产品说明书有了一个整体了解后,设置任务:撰写手锯的使用说明书。学生小组讨论,合作完成学案,派代表通过多媒体展示学案,并同教师进行总结评价; 5.能力扩展(课后作业):做个小调查:1.产品说明书写作形式多样化,除了上述的形式外,还有哪些形式呢?2.给自己制作的通用技术作品(例如台灯)撰写一份份产品说明书。1.18副6根式鲁班锁及其产品说明书; 2.7张便携式小板凳; 3.6把手锯; 4.多媒体课件;
5.视频“苹果手机的使用说明” 以及“智能防盗系统动画说明书”。