1、,软件工程文件规范,软件文档可分为系统文档和用户文档两类。 用户文档分为用户手册和操作手册。 软件工程文档是在软件开发过程中产生的,与软件生命周期密切相关。,总体要求 可行性研究报告的编写要求,8.2.1 引言 8.2.2 可行性研究的前提 8.2.3对现有系统的分析 8.2.4对所建议系统的简要描述 8.2.5 投资及效益分析 8.2.6 社会因素方面的可行性 8.2.7 结论:可行性分析必须有一个结论.,项目开发计划的编写要求,1、引言 2、项目概述。 3、实施计划,软件需求说明书编写要求,1、引言 2、任务概述 3、需求规定 4、性能要求 5、其他专门要求 6、运行环境规定,概要设计说明
2、书编写要求,1、引言 2、总体设计 3、模块设计 4、系统数据结构设计 5、运行设计 6、故障处理设计 7、其他设计,详细设计说明书编写要求,1、引言 2、系统结构 3、模块设计说明 4、结构设计,数据库设计说明书编写要求,引言 外部设计 结构设计 运用设计,用户手册的编写要求,1、引言 2、用途 3、运行环境 4、使用过程,操作手册的编写要求,1、引言 2、软件概述 3、安装和初始化 4、运行说明:,测试分析报告编写要求,1、引言 2、测试概要 3、测试结果及发现。 4、对软件功能的结论,软件工程质量国际标准,1、IEEE 1058.1软件项目管理计划标准; 2、ISO/IEC 12207
3、软件生命周期过程标准; 3、ISO/IEC 9126 软件质量特性 4、ISO 9000质量标准、ISO 9000_3标准等。 这些标准的基本思想是:质量不是在产品检验中得到的,而是在生产的全过程中形成的。 我国的国家标准大多是按照国际标准来制定的。 软件质量特性由以下六方面来衡量: 功能性 可靠性 易使用性 效率 可维护性 可移植性,回本章首,开 发 实 例,了解项目论证和计划 熟悉软件开发的各个阶段 学会用软件工程的方法开发一个小软件,1 项目论证和计划,利用PowerBuilder和Sybase,设计出相应的基于C/S的人事管理系统。 1.1 系统调查在企业的日常事务中,人事管理工作是非
4、常重要的一项工作,它负责整个企业的日常人事安排,人员的人事管理等等。上一代的人事管理系统是单机单用户方式,开发简单,能充分利用数据库的特性。其缺点是开发出的系统依赖性强,运行必须依托数据库环境;不容易升级与扩展;无法实现数据的共享与并行操作;代码重用性差。,1.2 新系统的总体功能需求和性能要求,采用现有的软硬件软件及科学的管理系统开发方案,建立人事管理系统,实现移动人事管理的计算机自动化。系统应符合公司人事管理制度,并达到操作直观、方便、实用、安全等要求。并做到以下几点:,(1)简单性 (2)灵活性 (3)完整性 (4)可靠性,1.2 新系统的总体功能需求和性能要求,(1)支持企业高效率完成
5、劳动人事管理的日常业务,包括新职员调入时人事的管理,职员调出、辞职、退休等。 (2)支持企业进行劳动人事管理及其相关方面的科学决策,如企业领导根据现有的员工数目决定招聘的人数等。,人事管理系统可以用于支持企业完成劳动人事管理工作,实现的目标有:,1.3 系统开发的框架,图1 系统开发框架,2 可行性分析,通过对系统内容的调查与分析,复查了系统的规模和目标。对于新系统设计的几个关键技术的可行性分析后的流程图如下:,图2 系统处理流程图,2.1 技术可行性,随着国内软件开发的日益发展壮大,各种中小企事业单位已具备独立开发各种类型的软件的能力,能够满足不同行业的特别的需求。而这个系统尽管其在组织关系
6、上存在着很大的复杂性,繁琐性,但是就整个系统的技术构成上来看,它还是属于一个数据库应用类的系统。其基本操作还是对存在数据库进行添加、删除、查找、编辑等。所以就单纯的数据库应用来看,暂不存在太大的技术问题。,2.2 经济可行性,对于整个系统而言,在系统未运行之前,初期投资比较大,花费相对而言比较多。但减少了数据的流通环节,提高了效率,又保证了各项数据的准确性,同时也避免了工作人员的流动造成的收据丢失等问题,适应了当前的发展形式。,2.3 管理可行性,随着时代的发展,人员素质已经逐步提高,不论是对于电脑系统的基本操作还是对于系统的维护都有了一定的基础,管理的可行性也得到了保障。,2.4 开发环境可
7、行性,采用PowerBuiler9作为开发工具,PowerBuiler9可以和多种PC产品集成,并可以通过专用接口或ODBC接口连接许多比较常用的数据库。PowerBuiler9具有可视化的开发环境,使代码的编写更为直观,并且在可视化环境下的调试和维护也相对容易。再次PowerBuiler9随身携带的Sybase SQL Anywhere本身就是个功能强大的DBMS,对小型应用来说,直接使用这个数据库就是个质优价廉的选择。而为方便用户界面的开发,PowerBuilder9提供了大量控件,这既丰富了应用程序的表达能力,也加快了项目的开发速度。同时,它拥有多平台的开发环境,如果要把一个平台上开发的
8、代码移植到另外一个平台上,只要重新编译就可以了。,3 需求分析,3.1 数据流分析数据流程图是新系统逻辑模型的主要组成部分,它可以反映出新系统的主要功能、系统与外部环境间的输入输出、系统内部的处理、数据传送、数据存储等情况。它的绘制依据是现行系统流程图,数据流程图是管理信息系统的总体设计图。 (1)顶层数据流图,图3 顶层数据流图,3.1 数据流分析,(2)管理员总体数据流图,图4 管理员总体数据流图,3.1 数据流分析,(3)普通用户总体数据流图,图5 普通用户总体数据流图,3.2 系统流程图,图6 系统流程图,3.2 数据字典, 数据字典是开发者与用户相互沟通的有效途径之一。 数据字典是各
9、类数据描述的集合,它是进行详细的数据收集和数据分析后所获得的主要成果。针对本系统,通过职员管理内容和过程分析,设计的数据项和数据结构如下:,(1) 职员基本情况 (2) 职员学历信息 (3) 职员所属部门信息 (4) 职员籍贯信息 (5) 职员代号信息 (6) 用户授权信息,3.2 数据字典,主要数据字典用卡片表示如下:,名字:职员基本信息 描述:档案入库时进行登记的职员基本信息表 定义: 职员基本信息=职员代号+职员姓名+性别+所在部门+身份证号+出生年月+籍贯+民族+学历+政治面貌+工龄+开始工作时间+家庭住址+联系电话+所在部门代号+学历 位置: 职员基本信息,名字: 职员编码信息 描述
10、: 标识不同用户的编码 定义:职员编码信息=人员编码+职员姓名+权限 位置:登陆界面信息,名字: 职员学历信息 描述: 标识员工的学历情况 定义: 职员学历信息=职员代号+姓名+学历代码+学历名称 位置:职员学历信息,名字: 用户授权信息 描述: 标识不同用户的操作权限 定义: 用户授权信息=职员姓名+职员代号+程序号。 位置: 登陆界面信息,名字:职员所属部门信息 描述:标识每个职员的部门情况 定义:职员部门信息=职员代号+部门代号+部门名称 位置:部门信息,3.2 数据字典,名字:调入时间 描述: 标识职员调入的时间 定义:调入时间 datetime 位置:职员基本信息,名字:联系电话 描
11、述: 职员的联系电话 定义:联系电话varchar(15) 位置:职员基本信息,名字:职员学历 描述:职员的学历情况 定义:学历 varchar(30) 位置:职员基本信息,名字: 备注 描述: 职员信息的补充说明 定义:备注varchar(30) 位置:职员基本信息,4 总体设计,4.1 功能模块图,图7 人事管理系统模块,4.2 层次方框图,图8 系统功能框图,4.3 IPO图,图9 IPO图,4.4 系统的功能结构图,图10 人事管理系统功能结构图,4.5 人事管理工作中其工作流程模型图,图11 工作流程,4.6 系统数据库关系说明图,图 12 系统数据库关系说明图,5 详细设计,5.1
12、 查询功能流程图,图13 查询功能流程,5.2 登陆界面程序流程图,图14 登陆界面程序流程图,5.3 添加功能流程图,图15 增加功能流程图,5.4 系统程序流程图,图16 系统程序流程图,5.5 系统功能流程图,图17 系统功能流程图,6 系统实现,6.1 实现工具1PowerBuiler9.0本系统采用 PoweBuilder9.0软件开发 ,它广泛使用于 C/S体系结构下的应用程序 ,具有完整 的 Web应用开发功能 ,同时支持多种关系数据库管理系统,采用面向对象技术,图形化的应用开发环境 ,是数据库的前端开发工具 ;通过微软公司的 ODBC接口和其他的大型数据库接 口,能够高速读取数
13、据库中的数据。值得一提的是 PowerBuilder拥有数据窗口对象(DATAwlND0w),它能操纵关系数据库的数 据而无需编写 SQL语言,可进行修改、更新、插入、删除等。,6.1 实现工具,2Sybase8.0 数据库PowerBuilder9上 的Sybase8.0 是PomerSoft子公司推出的新一代数据库 开发工具,它除了能够设计传统的性能、基于客户/服务器 (ClientServer)体系结构的应用系统外,也能够用于开发基于Internet的应用系统 。Sybase数据库还具有客户端应用程序与数据库服务器分布的透明性。Sybase的客户/服务器体系结构基于独立的单进程、多线程服
14、务器SQL Server和支持客户端进程的例程库Open Client,两者之间采用内部的TDS表单式数据流协议传送数据14,6.2 开发平台,人事管理系统的数据库采用Sybase8.0,前端采用PowerBuilder 9.0作为应用开发工具。客户端软件在Windows95/98、Windows Me 以及Windows 2000/XP下均可以安装使用。,6.3 数据库系统工作结构图,图18 数据库系统工作结构图,7 测试与维护,测试是为了发现程序中的错误而执行程序的过程。测试的目的是软件投入生产性运行之前,尽可能多地发现软件中的错误。成功的测试能发现系统运行中的错误,让系统正确运行。,7.
15、1 测试结果(1) 管理系统登陆模块(2) 人事管理系统主界面模块(3) 职员基本信息显示及查询、打印模块(4) 数据查询模块,7.1 测试结果,(5) 调入人员的信息查询结果:显示调入人员的基本信息状况 (6) 调出人员的信息查询结果:显示调出人员的基本信息状况 (7) 报表输出模块 (8) 数据统计分析模块 (9) 窗口模块 (10)系统退出模块,7.2 系统维护,(1) 数据维护模块用于对在职人员、离职人员、调出调入人员、数据备份、数据恢复以及查看运行日志等内容的维护。,图19 数据维护窗口,7.2 系统维护,(2) 运行日志模块用于管理人员查看登陆信息以及其信息被查看、更改的操作信息和
16、操作时间,便于发现系统发生错误的原因,防止不法分子的非法进入及非法操作,保障系统的正常工作。,图20 运行日志界面,7.2 系统维护,(3) 调入、调出人员维护:根据人员变动情况,对调动信息进行维护。,图21 调入、调出人员维护,7.2 系统维护,(4) 系统维护模块通过此模块管理远可以对部门表、籍贯表、学历表、职称、职务表和用户权限等信息进行管理,并且可以通过此模块对运行日志进行相应的设置。,图22 系统维护窗口,7.2 系统维护,(5) 部门维护模块用于对部门信息进行维护,管理员可以通过这个模块对部门信息进行增加和删除等修改操作,便于系统的及时更新。,图23 部门维护界面,7.2 系统维护
17、,(6) 权限设置模块管理员通过该模块可以增加、删除用户,对不同用户进行不同的权限设置,普通用户通过该模块可以修改自己的口令密码。,图 24 权限设置界面,7.2 系统维护,(7) 增加用户模块管理增加用户时,要对增加的新用户设置类型以及用户名称和用户口令。,图25 增加用户界面,7.2 系统维护,(8) 用户口令维护模块管理员或者一般用户可以通过该模块修改口令,在修改之前为了防止盗用,需要首先输入原口令,然后再进行相应的修改,并且为了防止修改时输入错误的口令,因此需要对新输入的口令进行验证,若在修改的过程中,不想重新去修改口令时,则可选择“取消”按钮,取消操作,若修改成功则提示成功修改信息,若修改时出错则提示出错的原因,请用户继续对其进行修改。,图26 用户口令维护界面,7.2 系统维护,(9) 权限维护模块管理员通过此模块可以对不同的用户,设置不同的操作权限,设计时将其设计成可选框,若赋予用户某个权限,则在相应的权限上选中,在选择框上出现一个“”表示选中此项目,可选框的默认状态为选中状态。没有选中的选择表示用户没有此项操作权限。,图27 权限维护界面,小结本章主要以人事管理系统作为实例,介绍了软件工程的各个环节,旨在帮助对软件工程有一个清晰的认识,利用软件工程的方法来解决实际问题。,