合约公司管理系统_详细设计说明书.doc_第1页
合约公司管理系统_详细设计说明书.doc_第2页
合约公司管理系统_详细设计说明书.doc_第3页
合约公司管理系统_详细设计说明书.doc_第4页
合约公司管理系统_详细设计说明书.doc_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

合约公司管理系统合约公司管理系统 详细设计说明书详细设计说明书 专业 软件工程 学生姓名 完成时间 2020 年 1 月 11 日 合约公司管理系统设计与实现详细设计说明书 第 0 页 共 20 页 文档信息及修订记录文档信息及修订记录 文档名称 称 合约公司管理系统设计与实现详细设计说明书 文档编号 02 文档类型详细设计说明书 文档密级 机密 秘密 内部公开 文档主送全体成员 文档抄送 修 订 人修订日期修订说明版本 修订 110 25 编写 210 26 修改 210 27 修改 注 更改状态包括 C 创建 A 增加 M 修改 D 删除 合约公司管理系统设计与实现详细设计说明书 第 1 页 共 20 页 目目 录录 1引言 1 1 1编写目的 1 1 2项目背景 1 1 3定义 1 1 4参考资料 2 2总体设计 2 2 1需求概述 2 2 2程序结构说明 3 3程序描述 4 3 1用户登录程序模块 4 3 1 1程序特征描述 4 3 1 2程序功能描述 4 3 1 3程序性能描述 4 3 1 4程序输入 输出项 5 3 1 5算法 6 3 1 6程序逻辑 6 3 1 7接口 7 3 1 8存储分配 7 3 1 9限制条件 8 3 1 10测试要点 8 3 2管理模块程序 8 3 2 1程序功能描述 8 3 2 2程序性能描述 8 3 2 3程序输入 输出项 8 3 2 4算法 9 3 2 5程序逻辑 10 3 2 6接口 11 3 2 7存储分配 13 3 2 8限制条件 13 3 2 9测试要点 14 3 3一般用户查询程序 14 3 3 1程序功能描述 14 3 3 2程序性能描述 14 3 3 3程序输入 输出项 15 3 3 4算法 15 3 3 5程序逻辑 15 3 3 6接口 16 3 3 7存储分配 16 3 3 8限制条件 16 3 3 9测试要点 16 合约公司管理系统设计与实现详细设计说明书 第 0 页 共 20 页 1 1引言引言 1 1编写目的编写目的 合约公司管理系统详细设计是设计的第二个阶段 这个阶段的主要任务是在 合约公司管理系统概要设计书基础上 对概要设计中产生的功能模块进行过程 描述 设计功能模块的内部细节 包括算法和详细数据结构 为编写源代码提 供必要的说明 概要设计解决了软件系统总体结构设计的问题 包括整个软件系统的结构 模块划分 模块功能和模块间的联系等 详细设计则要解决如何实现各个模块 的内部功能 即模块设计 具体的说 模块设计就是要为已经产生的合约公司 管理各子系统设计详细的算法 但这并不等同于系统实现阶段用具体的语言编 码 它只是对实现细节作精确的描述 这样编码阶段就可以将详细设计中对功 能实现的描述 直接翻译 转化为用某种程序设计语言书写的程序 1 2项目背景项目背景 系统名称 合约公司管理系统 开发语言 JAVA 开发工具 MyEclipse WEB 服务器 Tomcat Apache 结合 Tomcat 解析 JSP Servlet Apache 解 析静态 HTML 文件 数据库 SQL Server2005 开发环境 Windows 7 开发人员 颜凡腾 王晓楠 逄彦玲 周璋 1 3定义定义 SQL SERVER 系统服务器所使用的数据库管理系统 DBMS SQL 一种用于访问查询数据库的语言 合约公司管理系统设计与实现详细设计说明书 第 1 页 共 20 页 事务流 数据进入模块后可能有多种路径进行处理 主键 数据库表中的关键域 值互不相同 外部主键 数据库表中与其他表主键关联的域 UML Unified Modeling Language 统一建模语言 类图 class diagram 表述系统中各个对象的类型及其间存在的各种静态关系 交互图 interactive diagram 是表述各组对象如何依某种行为进行协作的模 型 SQL Structured Query Language 结构化查询语言 1 4参考资料参考资料 1 齐志昌 谭庆平 宁洪 软件工程 第二版 M 北京 高等教育出版社 2004 2 王珊 萨师煊 数据库系统概论 第四版 M 北京 高等教育出版社 2006 3 卢述林 企业信息化的途径分析及合同管理系统的开发 D 重庆大学 2007 4 张义明 合同管理信息系统的设计与实现 D 山东大学 2005 412 13 5 赵晋强 基于J2EE煤炭合同管理系统的设计与实现 D 太原理工大学 2005 6 9 6 刘晓华 陈亚 J2EE应用开发详解 M 电子工业出版社 2004 1010 15 7 美 Subrahmanyam Allamaraju等著马树奇译 J2EE编程指南 1 3版 M 北 京电子业出版社 2002 3 11 13 8 王建华 Java2核心技术卷II M 北京机械工业出版社 2005 68 75 2 2总体设计总体设计 2 1需求概述需求概述 按照需求分析文档中的规格要求 使用数据库存储了公司的所有合同以及员 工的基本信息 并且提供对存储的数据进行查询 修改 增添 删除的界面 方便用户使用 同时 系统最大限度地实现易安装 易维护性 易操作性 运 行稳定 安全可靠 合约公司管理系统设计与实现详细设计说明书 第 2 页 共 20 页 2 2程序结构说明程序结构说明 合约公司管理系统由三个大模块 六个小模块组成 系统的组织结构图如 下图所示 合约公 司管理 系统 基础信息设置 查询子系统 管理子系统 公司合同信息 系统参数设置 管理员设置 修改密码 添加用户 合同添加 合同执行 合同统计 项目信息 合同信息查询 员工信息查询 系统登 陆 客户信息查询 合同分类 图 2 1 合约公司管理系统模块功能结构图 合约公司管理系统设计与实现详细设计说明书 第 3 页 共 20 页 3 3程序描述程序描述 3 1用户登录程序模块用户登录程序模块 3 1 1程序特征描述程序特征描述 本程序模块是合约公司管理系统的一个子模块 操作对象是用户 负责用户 登陆控制 3 1 2程序功能描述程序功能描述 本模块的核心程序是 UserLoginManager 类 此类根据界面输入的用户名密 码来请求服务器验证用户登陆 主要功能 1 根据用户输入的用户名密码进行登录验证 验证成功进入主界面 显示合约 列表 1 编写登陆界面 界面有用户名 密码两个输入框 有 登录 退出 连个功能按钮 a 若点击 退出 按钮 退出程序 b 若点击 登录 按钮 开始用户登陆 先显示查找服务器等待界面 若查找失败 提示失败原因 重新返回 登陆界面 若成功 进入登陆等待界面 在登陆等待界面 若登陆成功 进入程序主界面 显示合约列表 若 登陆失败 提示用户失败原因 重新返回登陆界面 2 编写查询服务器等待界面 显示查找等待进度条 3 编写登陆等待界面 显示登陆等待进度条 4 编写合约列表界面 2 要能处理网络连接出错等异常情况 发生异常后 均给出提示 再重新返回 登录界面 3 输入的用户名 密码要进行合法性检查 用户名 密码不能为空 3 1 3程序性能描述程序性能描述 本模块要求各操作能独立完成 并且对于各种意外原因造成的操作中中断模 合约公司管理系统设计与实现详细设计说明书 第 4 页 共 20 页 块能够有及时的处理 3 1 4程序输入程序输入 输出项输出项 输入界面如下图所示 图 3 1 登陆界面视图 输入项 登录界面的输入项如下图所示 图 3 2 登陆界面输入项 登录成功的输出界面如下图所示 合约公司管理系统设计与实现详细设计说明书 第 5 页 共 20 页 图 3 3 登录成功输出界面 3 1 5算法算法 本模块不设计复杂算法 3 1 63 1 6 程序逻辑程序逻辑 用户登录程序模块是整个合约公司管理系统的首界面 并且 也是系统安全 性的正要保障 用户登录程序会将用户输入的用户名和密码与服务器端数据库 中存储的管理员和软件使用者信息进行比较 如果信息匹配上 服务器就会返 回一个信息 并调取登录成功的合同列表界面显示在用户端浏览器上 并且在 用户进行其他操作以及界面跳转时都不需要再进行用户名和密码的输入 用户登录程序的逻辑结构如下图所示 合约公司管理系统设计与实现详细设计说明书 第 6 页 共 20 页 用户登陆界面 进入查询服务器界面 发送 dispatch请求 获取服务器地 址serverIP 进入登陆等待界面 并根据用 户名 密码 向服务器发送 login请求报文 登陆 成功返回serverip 退出退出程序 失败 从服务器接收到报文 启动报文接收线程 当前是登陆请求命令 调用报文解析模块 解析报文 登陆成功 提示登陆成功 发送合 同信息列表 停止报文接收线程 Yes Yes No Yes 提示用户登陆失败 从服务器接收数据 否 是iq报文 且查询 jabber iq ros ter No 调用报文解析模块 解析合同报文 进入主界面 显示 合同信息列表 图 3 4 程序逻辑流程图 3 1 7接口接口 暂无 3 1 8存储分配存储分配 本模块无存储分配计划 合约公司管理系统设计与实现详细设计说明书 第 7 页 共 20 页 3 1 9限制条件限制条件 由于应用软件的具体硬件设置和具体操作人员的熟练程度制约了登录的速 度 3 1 10 测试要点测试要点 本模块的测试计划初步定为按照业务逻辑流程测试 3 2管理模块程序管理模块程序 3 2 1程序功能描述程序功能描述 1 功能类型 其他 2 功能概述 合同的起草添加 删除 修改 删除以及打印 3 前提业务 用户登陆模块 4 功能约束 权限约束 5 约束描述 6 操作权限 公司管理人员 功能流程图见图 2 1 所示 3 2 2程序性能描述程序性能描述 合约公司管理系统权限管理模块的操作只有管理员一级的用户拥有权限 不 存在多用户并发访问的压力问题 但是对于用户的权限控制比较占用资源 可 能存在的问题集中在多表操作上 在用户登录系统的验证和进入系统后的权限 控制时会频繁访问数据库 造成可能的系统压力 用户列表的翻页操作 由于 用户信息数据量大 可能随着翻页的增加导致系统速度变慢 3 2 3程序输入程序输入 输出项输出项 由于合同对于整个公司的重要性 程序输入的合同的各个信息 以及参与 合同制定的相关人员的基本信息 都应保证准确无误 保证合同信息的完整性 和正确性 方便一般用户的查询 程序输入界面如下图所示 合约公司管理系统设计与实现详细设计说明书 第 8 页 共 20 页 图 3 5 管理模块程序界面 程序输出的是合同列表 如下图所示 图 3 6 合同列表界面 3 2 4算法算法 1 用户可见窗体节点树的动态生成 用户所见的节点树由该用户所扮演的角色决定 事实上是由角色所具有的权限 所决定的 数据库的 窗体表 中存储各窗体节点的信息 包括窗体名称 链 接 节点编码等 节点编码体现节点的层次 节点编码的位数除以 得到的值再减 即为该节点位于的层数 每个节点编码 根节点除外 去掉末尾的两位数后得到的编码即为此节点的父节点的编码 这样 只要有了一个节点集合以及这些节点的编码 就可以唯一确定并生成一 棵树结构 因此 只要根据用户权限从数据库中读取出该用户所能操作的所有 合约公司管理系统设计与实现详细设计说明书 第 9 页 共 20 页 节点的集合 就可以在用户界面上动态的创建出此用户所能够访问的节点 窗 体 2 页面按钮权限控制 对于页面和按钮的控制 是通过角色管理实现的 首先 给已有的角色分配定 义好的业务 存入数据库中的 角色 窗体 业务关系表 中 当用户登录系统时 会根据用户的角色在 角色 窗体 业务关系表 中查询 角色所拥有的业务和窗体 通过窗体可以生成如上的节点数 通过用户拥有的 业务查询 业务 按钮对应表 则可以控制用户在刚窗体中的按钮是可见的 3 2 5程序逻辑程序逻辑 IDO 层 1 cn edu bit yanwang privilege right ido ConIDO 对应表 privilege business 合同列表 2 cn edu bit yanwang privilege right ido TreeIDO 对应生成的权限树的节点关系 3 cn edu bit yanwang privilege right ido UserDetailIDO 对应用户的个人详细信息 4 cn edu bit yanwang privilege right ido UserRoleIDO 对应表 privilege userrole 用户角色表 FS 层 1 cn edu bit yanwang privilege right fs ConFS 负责查询与合同相关的信息 2 cn edu bit yanwang privilege right fs RightFS 负责查询与权限相关的信息 3 cn edu bit yanwang privilege right fs UserFS 负责查询与用户相关的信息 BO 层 1 cn edu bit yanwang privilege right bo RoleUserBO 与用户角色相关的操作 2 cn edu bit yanwang privilege right bo ConBO 合约公司管理系统设计与实现详细设计说明书 第 10 页 共 20 页 与合同相关的操作 BS 层 1 cn edu bit yanwang privilege right bs ConBS 负责处理合同相关的逻辑 1 public FeedBack queryAllBus HttpServletRequest req HttpServletResponse rep 查询系统所有合同 2 cn edu bit yanwang privilege right bs RightBS 负责处理权限相关的逻辑 1 public FeedBack checkUserPsw HttpServletRequest req HttpServletResponse rep 检验登录用户名密码是否合法 3 cn edu bit yanwang privilege right bs ConBS 负责处理合同相关的逻辑 1 public FeedBack queryAllCon HttpServletRequest req HttpServletResponse rep 查询所有合同信息 2 public FeedBack querySpecialCon HttpServletRequestreq HttpServletResponse rep 查询特定合同信息 3 public FeedBack deleteCon HttpServletRequest req HttpServletResponse rep 删除合同 4 public FeedBack updateCon HttpServletRequest req HttpServletResponse rep 修改合同信息 5 public FeedBack addCon HttpServletRequest req HttpServletResponse rep 添 加合同 3 2 6接口接口 1 人员管理 1 人员信息管理页面 systemprivilege RoleManagement jsp a 查询人员权限信息 调用 Class cn edu bit yanwang privilege right bs RoleBS 调用 Function queryRoleInfo 合约公司管理系统设计与实现详细设计说明书 第 11 页 共 20 页 返回 JSP systemprivilege sub RoleManagement jsp b 跳转到增加人员界 调用 Class cn edu bit yanwang privilege right bs BusinessBS 调用 Function queryAllBus 返回 JSP systemprivilege sub RoleAdd jsp c 删除人员 调用 Class cn edu bit yanwang privilege right bs RoleBS 调用 Function delRole 返回 JSP systemprivilege sub RoleManagement jsp d 跳转到修改人员信息界面 调用 Class cn edu bit yanwang privilege right bs RoleBS 调用 Function queryRoleInfoByRoleDBID 返回 JSP systemprivilege sub RoleModify jsp 2 增加人员页面 systemprivilege RoleAdd jsp 调用 Class cn edu bit yanwang privilege right bs RoleBS 调用 Function addNewRole 返回 JSP systemprivilege sub RoleManagement jsp 3 修改角色页面 systemprivilege RoleModify jsp 调用 Class cn edu bit yanwang privilege right bs RoleBS 调用 Function modifyRole 返回 JSP systemprivilege sub RoleManagement jsp 2 合同管理 合同管理页面 systemprivilege ConManagement jsp a 显示合同列表 调用 Class cn edu bit yanwang privilege right bs ConBS 调用 Function queryAllCon 返回 JSP systemprivilege sub ConManagement jsp b 按合同名查询合同信息 调用 Class cn edu bit yanwang privilege right bs ConBS 合约公司管理系统设计与实现详细设计说明书 第 12 页 共 20 页 调用 Function querySpecialCon 返回 JSP systemprivilege sub ConManagementSpecial jsp c 跳转到添加合同界面 调用 Class cn edu bit yanwang privilege right bs ConBS 调用 Function queryAllConName 返回 JSP systemprivilege pre ConAdd jsp d 删除合同 调用 Class cn edu bit yanwang privilege right bs ConBS 调用 Function deleteCon 返回 JSP systemprivilege sub ConManagement jsp e 跳转到修改合同界面 调用 Class cn edu bit yanwang privilege right bs ConBS 调用 Function queryCon 返回 JSP systemprivilege sub ConModify jsp 3 2 7存储分配存储分配 SESSION 调用说明 1 创建 SESSION user role relations 用户角色关系 表示一个登录用户所拥有的所有角色的列表 userdbid 用户 DBID 是系统对用户的唯一标识 username 用户名称 userpassword 用户密码 businessinfo 所有可以用于分配的权限的列表 single role info 一个角色拥有的权限的列表 con info 所有合同信息列表 canseetreewindownodes 用户可见窗体节点树的节点列表 2 调用 SESSION userdbid 用户 DBID username 用户名 userpassword 用户密码 合约公司管理系统设计与实现详细设计说明书 第 13 页 共 20 页 3 2 8限制条件限制条件 此部分的功能应当只限于管理员一级的用户使用 3 2 9测试要点测试要点 由于合约公司系统管理模块的用户不会太多 一般来说 主要是管理员一级 的用户才有权限操作 所以测试的要点不应放在压力测试上 而应当放在边界 值测试和操作权限控制测试上 因为系统管理的操作关系到整个系统的运作和 用户的安全性 所以应当注意是否有可能通过非法路径执行系统相关操作从而 破坏系统安全性 在对合同和员工信息进行增加 删除和修改操作后 数据库 各表之间的数据一致性 此部分的各项操作都涉及到多表访问 需要增加必要 的事务回滚 对于用户登录系统并进行各种操作的权限控制比较复杂 需要进行压力测试 从而确定以牺牲一定的系统资源换取的系统安全性是否值得 找到一个平衡点 3 3一般用户查询程序一般用户查询程序 3 3 1程序功能描述程序功能描述 1 功能类型 查询合同信息和人员信息 2 功能概述 显示查询结果 3 前提业务 无 4 后继业务 5 功能约束 没有约束 6 约束描述 7 操作权限 面向所有用户 程序功能流程图如下图所示 合同和人员信息查 询 jsp 录入项检验 非空 提交所填内容 失败 合同和人员查询数 据处理 jsp 成功是否成功执行数据库操作查询结

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论