




已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
东北大学秦皇岛分校毕业设计 论文 第 I 页 部门项目管理系统的设计与实现毕业设计部门项目管理系统的设计与实现毕业设计 目 录 1 绪论 1 1 1 系统开发的背景及目的 1 1 1 1 系统开发背景 1 1 1 2 系统研究的意义 1 1 2 系统的实用价值 2 1 3 部门项目管理的现状及发展趋势 3 1 4 本文的章节安排 3 2 系统开发环境 4 2 1 系统平台体系结构选择 4 2 2 系统开发环境 5 2 2 1 前台开发环境 5 2 2 2 系统后台数据库环境 5 2 3 J2EE 平台概述 6 2 3 1 J2EE 规范 6 2 3 2 J2EE 体系结构 6 2 4 SSI 框架介绍 8 3 系统分析 12 3 1 可行性分析 12 3 1 1 可行性研究 12 3 1 2 经济可行性分析 12 3 1 3 技术可行性分析 12 3 1 4 社会可行性分析 12 3 1 5 操作可行性分析 13 3 2 需求分析 13 3 2 1 项目目标 13 3 2 2 用户需求和模块功能 13 4 系统概要设计 15 4 1 系统总体设计 15 4 1 1 系统设计目标 15 4 1 2 系统功能模块图 15 东北大学秦皇岛分校毕业设计 论文 第 II 页 4 2 E R 图 15 4 3 数据库概要设计 17 5 详细设计 20 5 1 系统登录模块说明 20 5 1 1 功能简介及其页面的实现 20 5 2 员工管理模块说明 22 5 2 1 功能简介及其页面的实现 22 5 3 项目管理模块说明 24 5 3 1 功能简介及其页面的实现 24 5 4 部门管理模块说明 27 5 4 1 功能简介及其页面实现 27 5 5 产品管理模块说明 29 5 5 1 功能简介及其页面的实现 29 5 5 2 添加产品 29 6 系统测试 31 6 1 测试平台 31 6 2 测试方法 31 6 2 1 白盒测试法 31 6 2 2 黑盒测试法 32 结 论 33 致 谢 34 参考文献 35 附 录 36 附录 A 36 附录 B 40 东北大学秦皇岛分校毕业设计 论文 第 1 页 1 绪论 1 1系统开发的背景及目的 1 1 1系统开发背景 在国外 传统的项目管理方法较于国内相对成熟 国外的研究者在其研究过程中 付出了很多努力 也收获了很多成果 国外的系统主要是改进了传统的方法 在研究 传统方法的过程中 对原有模型的改造和算法上下了大量的功夫 通过吸收了传统方 法中的精华 对原有模型进行改造 对项目管理知识体系的实证研究 规范研究均获 得了新进展 项目管理知识体系最先由美国项目管理协会提出 由 1976 年发展至今 关于企业 项目管理的理论体系也在日臻完善 并在全球范围内普及推广 企业项目管理软件的 功能在不断地提高 使得企业项目管理从理论走向了实际实施 进而发挥了很高的效 益 现如今 很多跨国公司在企业中都采用企业项目管理技术和企业项目解决方案 渐渐的形成了企业项目管理化的局面 近些年来 国内对于企业级项目管理软件关注的人越来越多 从从前的个人到今 天的企业 由此可见在未来的企业级项目管理工具需要在满足单项目管理的需求下 同时也要满足企业级项目管理的需求 企业级项目管理软件作为 IT 企业整个系统中的 一个子系统 企业级项目管理工具要具有高度的可集成性 以便项目管理系统与其他 的业务管理系统的整合 这样才能发挥较高的管理效率 1 1 2系统研究的意义 项目管理作为一种管理方式在国际上获得了广泛的应用 已经从 80 年代仅限于建 筑 国防 航天等行业迅速发展到今天的计算机 电子通讯 金融业甚至政府机关等 众多领域 随着计算机系统的高速发展 项目管理技术的不断进步 各种各样的项目 管理软件层出不穷的出现 其功能 特点 应用对象也各不相同 随着各行各业的不 断发展 企业内的项目拓展和投资比比皆是 为了提高项目管理水平 赢得市场竞争 特别是加入 WTO 后在国内 国际市场上拥有与国际接轨的项目管理人才 越来越多的 东北大学秦皇岛分校毕业设计 论文 第 2 页 业界人士正通过不同的方式参加项目管理培训并力争获得权威的项目经理资格认证 新世纪项目管理的迅速兴起 给软件企业的发展带来了前所未有的发展机遇 因此 研究如何建立一个精简的 有效的企业项目管理体系 企业项目管理系统 内如何能够有效的支持企业项目管理 提高企业的项目管理能力 具有非常重大的实 际应用意义 1 2系统的实用价值 项目管理系统能给企业带来很多的实用价值 主要作用如下 1 精确性 应用项目管理软件的一个主要益处就是可以大项目大提高精确性 对于大型项目 的计算资源使用情况是非常困难的 项目管理软件有精确的算法来计算项目信息并设 有大量的内部例行程序检察用户的错误 2 经济型 项目管理软件的售价对大多数企业业务而言确实物有所值 3 使用简便 近几年来 项目管理软件的操作使用变得极其简单 稍加训练就可以完全掌握 诸多优点 使得项目管理软件的用户迅速增加 4 处理复杂问题的能力 项目管理软件在处理大型项目的某些方面确实比人工简便的多 对于只有少数活 动的短期项目 人工方法可以使用 但是如果项目有数以千计的活动 上千种资源 项目管理软件处理复杂工作的协助作用就显得格外重要 5 可维护性和可更改性 对人工系统进行项目信息的维护和修改 通常比较麻烦 例如 对某个项目的管 理没有应用计算机 那么每次发生变化时 项目人员就不得不人工重新设计 这就显 得非常麻烦 利用项目管理软件资源的任何更改都会自动反应到网络图表 成本表以 及资源颁布表等这些项目文件中 6 保持纪录 项目管理软件的一个主要优点就是它能很好的保持纪录 例如 可以保护有关每 个团队成员的进度计划 以及各项任务所用资源的数据资料 东北大学秦皇岛分校毕业设计 论文 第 3 页 7 速度 收集好相关数据资料并且输入后 软件就能非常迅速地进行几乎每一种想出来的 计算 系统在分秒之内便可完成修改工作 8 假设分析 进行假设分析是项目管理软件的一个超前进步的功能 也是它的一个显著优点 假设分析是用户可以了解项目中发生的各种情形的效果 用户在软件上运行不同的情 景 然后做出评估 这样 项目经理对某些偶发事件就可以做好计划准备 并估计相 应的结果 1 3部门项目管理的现状及发展趋势 部门项目管理早起的概念是基于项目型公司而提出的 即 管理整个企业范围内 的项目 它着眼于企业层次总体战略目标的实现对企业中的诸多项目实施管理 随着 外部环境的发展变化 项目管理方法在长期组织中广泛应用已经不局限与传统形式的 项目型公司 生产运行型企业或者政府部门等非企业型组织也广泛的实施项目管理 现代项目管理的日趋发展 让我们看到了部门项目管理在我们生活中广阔的应用 空间 现如今 各种各样的项目管理软件如雨后春笋般出现 总体来看 在新的商业 环境下 项目管理已成为企业发展的有力保障 企业部门项目管理成为未来长期性组 织管理的一种趋势 尽管我国众多企业还未真正意义上的实现企业项目管理 但在许 多企业中推行企业项目管理具备了优秀的基础条件 项目管理的国际化正形成趋势潮 流 1 4本文的章节安排 本文共分六章 具体安排如下 第一章为绪论 介绍了部门项目管理系统的开发背景和研究意义 实用价值 发 展现状及其趋势 此外 还对本文的章节安排做了简要的介绍 第二章为系统开发环境 介绍了实现本系统的平台体系 前后台的开发环境 J2EE 概述及 SSI 的简介 第三章为系统分析 分析了系统的可行性和用户需求 第四章为系统概要设计 介绍了系统的总体设计 系统的 E R 图及数据库的概要 东北大学秦皇岛分校毕业设计 论文 第 4 页 设计 第五章为系统的详细设计 介绍了系统的各个模块 登录模块 员工管理模块 项目管理模块 部门管理模块及产品管理模块 第六章为系统测试 介绍了系统测试平台和测试方法 东北大学秦皇岛分校毕业设计 论文 第 5 页 2 系统开发环境 目前在系统的应用开发领域中 主要分成了两种主流的编程体系 一种是基于浏 览器的 B S Brower Server 的结构 另一种则是 C S Client Server 结构 如今相关 系统的开发设计中都选择 B S 结构 在本次的企业项目管理系统开发设计中 选择的 就是开发环境为 B S 结构的体系 采用基于 SSI 的框架 使用 JSP 技术 后台数据库 选择了 Oracle 2 1系统平台体系结构选择 在本系统中的应用开发领域主要采用了 B S 结构 B S 结构即浏览器和服务器结构 是 WEB 兴起后的一种网络结构模式 WEB 浏览器是客户端最主要的应用软件 这种 模式统一了客户端 将系统功能实现的核心部分集中到服务器上 简化了系统的开发 维护和使用 客户机上只要安装一个浏览器 服务器安装了 Oracle Sybase Informix 或 SQL Server 等数据库 本设计采用的是 Oracle 数据库 浏览器通过 Web Server 同数 据库进行数据交互 在这种结构下 用户界面主要通过浏览器实现 节约了开发成本 应用服务器 Web 服务器 数据库服务器 客户端浏览器客户端浏览器 图 2 1 B S 结构 B S 最大的优点是可以在任何地方进行操作而不用安装任何专门的软件 只要有一 台能上网的电脑就能使用 客户端零安装 零维护 对于系统的扩展非常容易 现如 东北大学秦皇岛分校毕业设计 论文 第 6 页 今 B S 结构的使用越来越多 特别是由需求推动了 AJAX 技术的发展 它的程序也 能在客户端电脑上进行部分处理 从而大大的减轻了服务器的负担 并增加了交互性 能进行局部实时刷新 2 2系统开发环境 2 2 1前台开发环境 前台开发环境即 JSP 的开发环境 JSP Java Server Pages Java 服务器主页 技术 为创建显示动态生成内容的 Web 页面提供了简捷而快速的方法 JSP 技术的设计目的 使得构造基于 Web 的应用程序更加容易快捷 这些应用程序能够与各种 Web 服务器 应用服务器 浏览器和开发工具共同工作 JSP 是在普通 Html 中嵌入了 Java 代码的一个脚本 由于 JSP 使用 JAVA 作为程序 设计脚本语言 因此需要建立 Java 的运行环境 编译和调试运行 Java 应用程序 因此 需要安装 JDK Java Develop Kit Java 开发工具包 同时 JSP 是基于 Web 的 java 应用程序 因而它需要有特定的运行环境 即解释器 所以我们同时也要安装由 Apache 开发的 Tomcat 因此建立 JSP 运行环境需要安装两个软件 j2sdk 和 Tomcat 配置 java 运行环境即安装 JDK 安装了 JDK 就是建立好了 J2SE 运行环境 安装 结束后 需要配置 JSP 运行环境 首先需要安装 Web 服务器的 tomcat 安装完毕后 打开 Tomcat 后 打开浏览器 在地址栏中输入 http localhost 8080 可以看到 Tomcat 的欢迎界面 只要我们看到了这个界面 就说明安装成功 并且 JSP 的运行环境已经配置完毕 在此需要注意的是 如果系统中已经有其他的程序占用了 8080 端口 在启动时会失败 可以通过修改端口来解决问题 2 2 2系统后台数据库环境 本系统设计后台所需的开发工具是 Oracle10g Oracle 数据库系统是美国 Oracle 公 司提供的以分布式数据库为核心的一组软件产品 是目前最流行的客户 服务器体系结 构的数据库之一 Oracle 数据库是目前世界上使用最为广泛的数据库管理系统 它具 有完整的数据管理功能 具备完备关系 实现了分布式处理的所有功能 Oracle 是当前最流行的大型数据库之一 它支持包括 32 位 Windows 64 位 Windows OS HP UX ALX5L Solaris 和 Linux 等多种操作系统 东北大学秦皇岛分校毕业设计 论文 第 7 页 Oracle 具有完整的数据管理功能 可解决数据的大量性 数据的持久保存 数据 的共享 数据的可靠等诸多问题 同时 它是关系完备的产品 关系型 DBMS 的所有 信息都应在逻辑上用一种方法 即表中的值显示的表示 保证访问 保证视图更新 只要形成视图的表中的数据变化了 相应的视图中的数据同时变化 Oracle 数据库自 第 5 版就提供了分布式处理能力 到第 7 版就有比较完善的分布式数据库功能 用 Oracle 能轻松的实现数据库仓库的操作 2 3J2EE 平台概述 J2EE 是 java2 platform Enterprise Edition 的缩写 它是由美国的 Sun Microsystems 公司提出的一种用于开发分布式企业级应用程序的技术架构 J2EE 提供了一个多层次 的分布式应用模型和一系列开发技术规范 J2EE 简化了开发大型企业及应用系统的难 度 如今 J2EE 平台已经成为了开发分布式企业级应用的标准平台之一 2 3 1J2EE 规范 J2EE 平台由一整套服务 应用程序接口和协议构成 它对于开发基于 Web 的多层 应用提供了在功能上的支持 以下对 J2EE 中的 4 种技术规范进行描述 1 JDBC Java Database Connectivity JDBC API 为访问不同的数据库提供了一种 统一的途径 JDBC 对数据库的访问也具有平台无关性 2 JSP Java Server Pages JSP 页面由 HTML 代码和嵌入其中的 java 代码组成 服 务器在页面被客户端请求以后对这些代码进行处理 然后将生成的 HTML 页面返回给 客户端的浏览器 3 Java Servlet Servlet 是一种小型的 Java 程序 它扩展了 Web 服务器的功能 4 XML Extensible Markup Language XML 是一种可以用来定义其它标记语言的 语言 它被用来在不同的商务过程中共享数据 2 3 2J2EE 体系结构 J2EE 提供了基于组件的方式来设计 开发 组装和部署企业应用 J2EE 使用了多 层分布式的应用模型 主要通过以下几层来实现 1 客户层 运行在客户计算机上的组件 2 Web 层 运行在 J2EE 服务器上的组件 东北大学秦皇岛分校毕业设计 论文 第 8 页 3 业务层 运行在 J2EE 服务器上的组件 J2EE 应用程序是由组件构成的 应用程序客户端和 Applet 是指运行在客户计算机 上的组件 基于 Java Servlet 和 JSP 技术的组件叫做 Web 组件 主要运行在服务器上 企业 Java Bean 组件叫业务组件 也运行在服务器上 下面对 J2EE 的三个应用模型进 行简要说明 1 客户端 J2EE 客户端可以是一个 Web 组件或者是一个应用程序客户端 主要是 Web 客户 端包括 web 页面和 web 浏览器 小应用程序 主要运行在安装了 Java 虚拟机的 web 浏 览器的客户端 应用程序客户端 主要运行在客户机 可以提供用户界面 Java Bean 组件结构 在服务器和客户端两层中包括了基于 Java Bean 的组件结构 通过 Java Bean 可以实现数据的流动 可以在应用程序客户或 Applet 与运行在 J2EE 服务器上的 组件之间 或者是在 J2EE 服务器和后台数据库之间 J2EE 服务的通讯 客户层可以 直接与 J2EE 服务器上运行的业务层之间通讯 也可通过运行在 Web 层中的 Servlet 和 JSP 来实现 2 Web 组件 J2EE 的 web 组件可以是 Servlet 或 JSP 页面 3 业务组件 业务组件是指由位于业务层的企业 Bean 执行的逻辑 这些业务代码能够解决商业 领域上的一些重要的需求 现在主要有三种不同类型的企业 Bean 会话 Bean 实体 Bean 和消息驱动 Bean 会话 Bean 代表客户的一次短暂的会话过程 在客户执行完成 后 会话 Bean 以及它所包含的数据也随之流失 实体 Bean 代表的是持久的数据 既 存储在数据库的一行纪录 即使客户终止或者服务器关闭 在 J2EE 底层确保实体 bean 的数据被保存下来 4 企业信息系统层 企业信息系统层处理企业信息系统的软件 包括企业组织结构系统 对以上关于 J2EE 体系结构的概述 可以归纳到以下几个概念 首先 EJB 即 Enterprise Java Bean 是一种组件架构 用于开发和部署面向对象的 分布式的 企业 级的应用程序 东北大学秦皇岛分校毕业设计 论文 第 9 页 EJB 包括会话 Bean session bean 分为无状态会话 Bean stateless session bean 和有状 态会话 Bean stately session bean 实体 Bean entity bean 分为 Bean 管理实体 Bean 和容 器管理实体 Bean 由于这种 Bean 对应于数据库中的记录 所以数据库记录的任何改 变也被同步到组件池中的相关 bean 中 这个过程叫做持久性 消息驱动 Bean message driven bean 其次 容器即 container 一个实体 它管理组件的生命周期 安全 部署 和运 行时服务 每个类型的容器都只提供与相应类型的组件相关的服务 如 EJB WEB JSP Applet 和应用程序客户端 其中 EJB 容器和 Web 容器都运行在 J2EE 服务器中 2 4SSI 框架介绍 1 Struts2 框架技术 Struts2 框架是从 Web Work 基础上发展而来的 因为 Struts2 是 Web Work 的升级 并不是全新的框架 因此稳定性 性能都很好 并且拥有了 Struts1 和 Web Work 的优 势 下面将会详细介绍 Struts2 的常用的知识点 MVC 思想 MVC 并不是 Java 语言所特有的设计思想 也并不是 Web 应用所特有 的思想 它是所有面向对象程序设计语言都应该遵守的规范 MVC 思想将一个应用分 成三个基本部分 Model 模型 View 视图 和 Controller 控制器 其中 Model 实现系 统中的业务逻辑 通常可以用 Java Bean 或 EJB 来实现 View 用于与用户的交互 通 常用 JSP 来实现 Controller 层是 Model 与 View 之间沟通的桥梁 它可以分派用户的 请求并选择恰当的视图以用于显示 这三个部分协同工作 从而可以提高应用的可扩 展性及可维护性 在 Struts2 中 Struts2 是一个 pull 类型的 MVC 其中 Action 充当 MVC 的模型的 model 部分 JSP 作为 MVC 的模型的 view 部分 过滤器和拦截器作为 MVC 的模型的 controller 部分 Struts2 的特点 无需与 Servlet API 整合 更容易测试 优雅的请求参数封装 灵 活的试图技术 丰富的表达式语言 机动 灵活 简单的配置 线程安全的控制器 Action 霸气的插件 2 Spring 框架技术 Spring 是一个开源框架 它由 Rod Johnson 创建 主要是为了解决企业应用开发的 东北大学秦皇岛分校毕业设计 论文 第 10 页 复杂性而创建的 Spring 使用基本 Java Bean 来完成由 EJB 完成的事情 Spring 的用途 不仅限于服务器端的开发 由于 Spring 的简单性 可测试性和松耦合性 任何的 Java 应用可以使用 Spring Spring 是一个轻量级的控制反转 IOC 和面向对象 AOP 的容器框架 轻量 主要从大小和开销两方面而言 此外 Spring 是非侵入式框架 主要体现 在 Spring 应用中的对象不依赖于 Spring 特定类 控制反转 Spring 通过一种控制反转 IOC 的技术促进了松耦合 控制反转应用本 身不负责依赖对象的创建及维护 依赖对象的创建及维护是由外部容器负责的 这样 控制权就由应用转移到了外部容器 控制权的转移即所谓的反转 在运行期 由外部 容器动态的将依赖对象注入到组件中即称为依赖注入 依赖注入主要有三种方式 接 口注入 属性注入 构造函数注入 面向切面 Spring 还提供了面向切面编程的丰富支持 面向切面编程主要是针对 业务处理过程的切面进行提取 它所面对的是处理过程中的某个步骤或阶段 以获得 逻辑过程中各部分之间低耦合性的隔离效果 容器 Spring 包含并管理应用对象的配置和生命周期 它是一种容器 使得用户 可以配置自己的每个 Bean 如何被创建 以及 Bean 创建单独的实例或生成一个新的实 例 及它们之间如何相互关联 框架 Spring 可以将简单组件配置 组合成为复杂的应用 在 Spring 框架的应用 中 应用对象被声明在一个 XML 文件中 Spring 当然也提供了很多方便的基础功能如 事务管理 持久化框架集成等等 基于这些 Spring 的特征 我们在应用开发中可以编写出更加方便管理 方便测试 的优秀代码 同时也为 Spring 中的各种模块提供了大力的支持 Spring 框架由 7 个定义明确的模块组成 下面将简要介绍这 7 个模块 1 核心容器 核心容器是 Spring 框架中最基础的部分 通过依赖注入 Dependency Injection 特征来实现容器对 Bean 的管理 即是由核心容器提供的 在这其中最基本的 概念是 Bean Factory 它是任何 Spring 应用的核心 这里最基本的概念是 Bean Factory Bean Factory 是工厂模式的一个实现 它使用 IOC 将应用配置和依赖说明从 实际的应用代码中分离出来 东北大学秦皇岛分校毕业设计 论文 第 11 页 2 应用上下文 Context 模块 上下文模块使它成为一个框架 这个模块拓展了 Bean Factory 的概念 主要增加了对国际化消息 事件传播 以及验证的支持 另外 这个模块还提供了许多企业服务 3 Spring 的 AOP 模块 AOP 模块是在 Spring 应用中实现切面编程的基础 AOP 主要是针对业务处理过程中的切面进行提取 它所面对的是处理过程中的莫个步骤或 阶段 以获得逻辑过程中各个部分之间低耦合的隔离效果 AOP 的实现步骤是首先确 定连接点 切点 确定处理逻辑调用模式 编写处理逻辑 配置 ProxyFactoryBean 实 例 4 JDBC 抽象和 DAO 模式 使用 JDBC 经常导致大量的重复代码 取得连接 创 建语句 处理结果集 然后关闭连接 使用了 Spring 的 JDBC 和 DAO 模块就可以抽取 这些没必要的重复代码 保证数据库访问代码干净简介 防止因关闭数据库资源失败 而引起的其它问题 另外 这个模块还是用了 Spring 的 AOP 模块为 Spring 应用中的 对象提供了事务管理服务 5 对象 关系映射集成模块 Spring 还提供了 ORM 模块个使用对象 关系映射工具 的用户 Spring 并不是实现它自己的 ORM 解决方案 而是为几种流行的 ORM 框架提 供了集成方案 包括如 Hibernate JDO 和 IBATIS SOL 映射 Spring 的事务管理则支 持这些经典的 ORM 框架 6 Spring 的 Web 模块 Web 上下文模块建立与应用上下文模块之上 这个模块提 供了面向服务的支持 7 Spring 的 MVC 框架 Spring 为构建 Web 应用提供了一个功能全面的 MVC 框 架 Spring 的 MVC 框架使用 IOC 实现了控制逻辑和业务对象的弯曲分离 通过以上内容我们对 Spring 框架的详细介绍 我们了解到由于 spring 框架的自身 特点使得 J2EE 更加容易使用 面向接口而不是针对类编程 减轻了开发的复杂度 Spring 框架还会帮助我们 使代码的测试更加简单 同时 Java Bean 提供了应用程序配 置的最好方法 Spring 框架技术的出现让我们这些 Web 开发的用户获益匪浅 3 Ibatis 框架技术 Ibatis 一词来源于 internet 和 abatis 的组合 是一个由 Clinton Begin 在 2001 年发 起的开放源代码项目 最初侧重于密码软件的开发 后来成为一个基于 Java 的持久层 东北大学秦皇岛分校毕业设计 论文 第 12 页 框架 包括 SQL Maps 和 Data Access Objects DAO 相对 Hibernate 和 Apache OJB 等 一站式 ORM 解决方案而言 Ibatis 是一种 半自 动化 的 ORM 实现 Ibatis 框架让你能够更好的在 JAVA 应用中设计和实现实体层 这 个框架有两个主要的组成部分 一个是 SQL Maps 另一个是 Data Access Objects 另 外还包括一些可能有用的工具 SQL Maps Sql Maps 是整个 Ibatis Database Layer 的 核心 通过使用它可以节约数据库操作的代码量 Sql Maps 使用一个简单的 XML 文件 来实现 Java Bean 到 SQL statement 的映射 与其他框架相比 其最大的优势在于简单 Data Access Objects 允许通过一个简单接口来操作数据 从而隐藏实现的细节 使用 DAO 可以动态的配置应用程序来访问不同的实体存储机制 Ibaits 的工作流程 SQL Maps 提供一个简单框架 通过 XML 描述 JavaBeans MAP implementations 甚至原始 类型的包装到 JDBC 对象 关系映射 Object Relation Mapping 简称 ORM 是随着面向对象的软件开 发方法发展而产生的 面向对象的开发方法是当今企业级应用开发环境中的主流开发 方法 关系数据库是企业级应用环境中永久存放数据的主流数据存储系统 对象和关 系数据是业务实体的两种表现形式 业务实体在内存中表现为对象 在数据库中表现 为关系数据 内存中的对象之间存在关联和继承关系 因此 对象 关系映射系统一般 以中间见的形式存在 主要实现程序对象到关系数据库库数据的映射 POJO Plain Ordinary Java Objects 一般来讲 POJO 有一些 private 的参数作为对 象的属性 然后针对每个参数定义了 get 和 set 方法作为访问的接口 4 SSI 在本文中的工作原理 本节将通过所开发的项目的 MVC 模式 对 SSI 框架在项目开发中的应用进行简要 的介绍 首先是在控制层 利用 Struts2 的标签功能 在 Action 中直接与 JSP 页面上的数据 进行交互 同时 在调用业务逻辑层的应用时 Struts2 提供了对 Spring 的支持 开发 人员需要完成对 struts xml 的配置工作和编写各个 Action 类 在业务逻辑层 可以利用 Spring 框架的依赖注入来实现对业务逻辑类和 DAO 类 的实例编写 在事务处理的方面 我们可以利用 Spring 提供的面向切面的事务处理功 能 这样就可以使得数据的事务控制与数据访问接口的实现想脱离 在对象关系映射 东北大学秦皇岛分校毕业设计 论文 第 13 页 方面 利用 Spring 对数据库连接池的托管和对 Ibatis 框架的支持 开发人员需要完成 对数据源的配置 对不同模块所对应的 application xml 文件的配置 以及对业务逻辑 的接口定义和具体业务逻辑实现的代码编写 在持久层 利用 Ibatis 提供的半自动化的对象关系映射的实现 开发人员需要编写 具体的 SQL 语句 为系统设计提供了更大的自由空间 另外 开发人员需要完成对 SqlMapConfig xml 的配置 以及对 DAO 接口的定义和 DAO 接口的实现 在各层之间进行交换的过程中 利用数据传输类进行数据的传递和交互 其中 数据传输类与数据库表一一对应 SSI 框架能够降低我们代码的耦合度 增强了代码的健壮性和可重用性 加快了开 发速度 但是也有许多不足之处 也会给我们带来不便 东北大学秦皇岛分校毕业设计 论文 第 14 页 3 系统分析 3 1 可行性分析 3 1 1可行性研究 可行性研究是在系统调查的基础 主要对于要开发的系统是否具有必要性 可能性 从技术上 经济上 社会各个方面对所开发系统进行分析和研究 以避免可能发生的 投资失误的情况 保证系统开发的顺利成功 可行性的研究目的就是用最小的成本 在尽可能短的时间内解决尽量多的问题 3 1 2经济可行性分析 在经济可行性方面 主要考虑开发成本 使用成本 回报三方面 首先 开发成本主要使用 Windows 操作系统 Eclipse 在数据库方面主要使用 Oracle10g 进行数据操作 这些软件是开发系统所需成本 开发成员主要一人负责 开 发时间大约半个月 回报主要系统开发成功 可以实现项目管理系统的所有功能 3 1 3技术可行性分析 在技术上的可行性分析主要是分析当前所用软件以及开发人员所使用的技术能否顺 利完成开发项目工作 硬件 软件等等能否满足开发人员的需要 本系统主要采用了 当前最流行的 Browser Server 模式 数据库服务器选择的是 Oracle10 数据库 它能够 处理大量的数据 因此 本系统的软件开发平台可行 硬件方面 科技飞速发展的今 天 硬件更新速度也越来越快 容量也越来越大 价格越来越低 硬件平台也满足项 目开发需要 3 1 4社会可行性分析 首先 本系统从功能模块的提出到各个界面的设计再到每个功能模块的开发与实 现到后期的测试过程 全部由本人独立完成 开发过程参考 借鉴过网上资料和所学 课程 因此不存在侵权的法律问题 其次 在开发过程中 各部门配合将已有人员 项目等有关信息导入系统 完成这些工作后 项目管理会变得更加简便 最后 系统 的大部分功能模块都是根据需求分析提出的要求完成的 并且在开发过程中对需求分 东北大学秦皇岛分校毕业设计 论文 第 15 页 析的介绍进行了深入的研究 因此 已经熟悉业务流程 3 1 5操作可行性分析 操作可行性主要分析系统的运行方式 操作规程在用户组织内是否可以有效 顺利 实施等问题 在网络迅猛发展的今天 人们对于操作是否简洁而方便越来越重视 本 系统的设计就能够做到这一点 它很好地解决了人工操作的不便 在实践上具备了可 行性 本系统的设计清晰 用户界面良好 操作上简介 有完善的异常处理机制和验 证提示信息 因此操作方面可行 3 2 需求分析 3 2 1 项目目标 本系统的目标是要完成一个基于 B S 架构的项目管理系统功能的设计和开发 这些 模块主要包括项目管理 账号管理 部门管理 产品管理等功能 实现对企业所开发 的各个项目信息进行管理 以及部门员工信息的管理 实现管理自动化 系统化 规 范化 本系统开发过程主要采用基于 SSI 框架技术 Strut2 Spring Ibatis 使用 JSP 页 面技术 后台数据库采用 Oracle 开发而成 保证查询 添加 删除 修改等功能 本 系统的模块主要是实现账号管理 项目管理 部门管理 权限管理等模块的功能 3 2 2 用户需求和模块功能 需求分析是从客户的需求中提取出软件系统以帮助用户解决业务问题 通过需求分 析中对用户业务问题的分析 规划出系统的功能模块 即定义用例 这个步骤是是开 发者理解需求的升华 关系到系统的质量 对于企业来说 每个新项目的创建 项目 和人员的管理是一项非常繁琐的工作 为了实现项目人员管理的规范化 科学统计和 快速查询的需要 提高的工作效率 降低日常管理的工作量 运用先进的计算机信息技术 开发部门项目基本信息平台显示尤其重要 下面将具体讲解每个模块部分的具体需求 账号管理模块 基本的功能有人员登录 每个用户都有自己的账号和密码 和登 录权限 每个用户根据自己的用户名和密码和用户权限来登录进入系统 登录系统后 根据用户的不同权限 对系统执行不同的功能 本系统登录用户主要分为三种 高级 管理员和人力资源管理员 可以对员工账号管理模块 部门管理模块 项目管理模块 三个模块的添加 修改 删除 查询等操作 SQA 可以对项目管理模块进行添加 删 东北大学秦皇岛分校毕业设计 论文 第 16 页 除 修改 查询等操作 普通用户不可以对这些模块进行操作 只可以查看 操作按 钮对普通用户不可见 该功能只是面对未登录的用户 登陆成功后返回主页 在网站 中显示用户信息 若登录失败 则重新返回到登录页面 并提示用户登录失败信息 如果用户名或密码有错 系统拒绝用户登录 需要提示错误信息 查看员工列表 用 户使用 查看员工信息 功能 来查看所有在系统中的注册用户的信息 姓名 E mail 角色 用户类型 是否允许登录等信息 同时可以根据姓名 E mail 角色条件来查询 符合条件的成员记录 成员信息录入 登录到系统的管理用户可以添加一个用户的信 息 用户名 密码 姓名 电话 邮件 员工类型 员工部门 是否允许登录 角色 将成员信息保存到系统的成员表中 同时在后台数据库中删除掉员工信息 修改成员 信息 管理用户可以对用户信息及时的更新 同时后台数据库也要更新修改后的员工 信息 删除成员信息 管理用户也可以对变动的用户从用户表中进行删除 删除的员 工信息要在后台数据库中移除 项目管理模块 在项目管理模块中我们要完成对项目的多种处理功能包括 添加 一个项目信息 包括 项目编号 项目名称 项目类型 PM 项目状态 项目的开始 时间 计划结束时间 以及项目的简介 将新建的项目信息保存到项目信息列表中 将添加的内容同步到数据库中保存 修改项目详细信息 将更新的项目信息同步到后 台数据库中 对当前的项目选择成员 将选择的项目成员添加项目成员表中 同时将 添加的内容添加到后台数据库项目成员表中 查询项目全部详细信息 能根据项目名 称 项目编号 项目开始时间条件查询所开发的项目信息 能查询每个项目的详细信 息 部门管理模块 在部门管理模块我们要完成的功能主要包括 添加一个部门信息 包括 部门编号 部门名称 修改部门信息 删除部门信息 查询所有部门信息 产品管理模块 在产品管理模块我们要完成的功能主要包括 添加一个产品信息 包括 产品编号 产品名称 消费群体 修改产品信息 删除产品信息 查询所有产 品信息 东北大学秦皇岛分校毕业设计 论文 第 17 页 4 系统概要设计 概要设计的主要任务是把需求分析得到 DFD 转换为软件结构和数据结构 设计软 件结构的具体任务是 将一个复杂系统按功能进行模块划分 建立模块的层次结构及 调用关系 确定模块间的接口及人机界面等 数据结构设计包括数据特征的描述 确 定数据的结构特性 以及数据库的设计 显然 概要设计建立的是目标系统的逻辑模 型 与计算机无关 4 1 系统总体设计 4 1 1系统设计目标 企业项目管理系统主要是研究在项目的开发过程中 企业对多个项目如何进行同时 进行管理 项目开发人员可以随时监督每 同时 能够使内部工作效率大大提高 部 门间的协同工作水平也会大大提高 全程监控项目实现的整个流程 对企业项目管理 的规范业务上的薄弱环节也会大大改善 4 1 2系统功能模块图 经过对系统的需求分析的了解 我们对系统的功能模块进行了划分 我们主要根据 系统的几大模块包括项目管理模块 账号管理模块 部门管理模块逐步了解项目 图 4 1 是本系统所涉及的功能模块图 部门项目管理系统 账 号 管 理 模 块 项 目 管 理 模 块 部 门 管 理 模 块 产 品 管 理 模 块 图 4 1 功能模块图 东北大学秦皇岛分校毕业设计 论文 第 18 页 4 2 E R 图 1 用户实体 如图 4 2 所示 用户 用户名称系统限制 用户部门 部门角色 编号 用户类型 电子邮箱 电话 密码 用户编号 图 4 2 用户 E R 图 2 项目实体 如图 4 3 所示 项目 编号 项目类型 项目状态 项目编号 项目开始时间项目结束时间 项目描述 项目名称 图 4 3 项目 E R 图 3 项目成员实体 如图 4 4 所示 项目成员 角色编号 项目编号 人员编号 图 4 4 项目成员 E R 图 东北大学秦皇岛分校毕业设计 论文 第 19 页 4 用户角色实体 如图 4 5 所示 用户角色 角色编号 角色类型 角色名称 角色描述 角色定义 图 4 5 用户角色 E R 图 5 产品实体 如图 4 6 所示 产品 产品编号 编号 产品名称 消费者 图 4 6 产品 E R 图 6 部门实体 如图 4 7 所示 部门 编号部门名称 图 4 7 部门 E R 图 4 3 数据库概要设计 本系统将使用员工表 项目信息表 部门信息表 项目成员表来记录系统的数据 信息 详细表定义结构如下所示 东北大学秦皇岛分校毕业设计 论文 第 20 页 1 员工信息表 用于存放系统用户的信息 系统规定只有系统用户才用资格登录 系统 并对系统有相关的操作 具体设计如表 4 1 所示 表表 4 1 bs user 表表 字段名说明类型长度备注 ID编号VARCHAR255不为空 USER ID员工编号VARCHAR20主键 USER NAME员工名称VARCHAR30唯一键 PASSWORD密码VARCHAR16 DEPRATMENT ROLE部门角色NUMBER19 TELEPHONE电话VARCHAR20 EMAIL电子邮箱VARCHAR30 USER TYPE员工类型NUMBER1 USER DEPARTMENT员工部门VARCHAR255外键 2 项目信息表 用于记录与项目有关的数据信息 具体设计如表 4 2 所示 表表 4 2 bs project 表表 字段名说明类型长度备注 ID 编号 VARCHAR255 不为空 PROJECTNO 项目编号 VARCHAR20 主键 PROJECT NAME 项目名称 VARCHAR100 唯一键 PROJECT TYPE 项目类型 VARCHAR255 PROJECT DESCRIPTION 部门编号 VARCHAR100 PROJECT STATE 项目状态 VARCHAR255 PROJECT START TIME 项目开始时间 DATE PROJECT END TIME 项目结束时间 DATE 3 项目成员表 用于记录与项目成员有关的数据信息 具体设计如表 4 3 所示 表表 4 3 bs projectmember 表表 字段名说明类型长度备注 ROLE ID 角色编号 NUMBER19 主键 东北大学秦皇岛分校毕业设计 论文 第 21 页 PROJECTNO 项目名称 VARCHAR20 外键 USER ID 员工名称 VARCHAR100 外键 4 部门表 用于记录与部门有关的数据信息 具体设计如表 4 4 所示 表表 4 4 bs department 表表 字段名说明类型长度备注 ID 部门编号 NUMBER19 主键 DEPARTMENT NAME 部门名称 VARCHAR20 唯一键 5 角色表 用于记录与角色有关的数据信息 具体设计如表 4 5 所示 表表 4 5 bs roles 表表 字段名说明类型长度备注 ROLE ID 角色编号 NUMBER19 主键 ROLE NAME 角色名称 VARCHAR60 唯一键 ROLE TYPE 角色类型 NUMBER10 USER DEFINED 用户定义 NUMBER10 ROLE DESCRIPTION 角色描述 VARCHAR180 6 产品表 用于记录与产品有关的数据信息 具体设计如表 4 6 所示 表表 4 6 bs product 表表 字段名说明类型长度备注 ID 编号 VARCHAR255 不为空 PRODUCTID 产品编号 VARCHAR255 PRODUCTNAME 产品名称 VARCHAR50 CUSTOMER 客户 VARCHAR50 东北大学秦皇岛分校毕业设计 论文 第 22 页 5 详细设计 详细设计是软件工程中软件开发的一个步骤 就是对概要设计的一个细化 就是 详细设计每个模块实现算法 所需的局部结构 详细设计的主要任务是设计每个模块 的实现算法 所需的局部数据结构 本章将使用图形 代码 语言等工具将系统的每个模块处理过程的详细算法描述 出来 5 1系统登录模块说明 5 1 1功能简介及其页面的实现 由于此系统的使用者主要是公司的管理人员 同时也涉及到本公司的所有员工 每个部门员工负责不同的业务 拥有不同的权限 这就要求系统设计的权限需要明确 保证数据的安全性 系统对不同的操作者设置了不同的访问和操作权限 这样就保证 了系统信息的安全型 根据系统的要求 本系统的登录用户分为可操作全部信息的管理员和只能查看信 息的普通部门用户 本系统的权限管理主要是通过在不同用户登录系统后 登录成功后的页面 根据 登录用户的登录权限决定是否将操作按钮隐藏而实现的 登录时本系统对用户输入信息做了相关验证 如 提示用户名不能为空 密码不 能为空 类型不能为空 在输入了自己的用户名 密码 及选择了权限后 系统将从 员工表查找相关信息 如果用户名和密码 以及权限都匹配 就根据用户级别跳转到 相应的页面 并用 session 记录该用户的登录名和用户级别信息 便于登录到相关的用 户界面进行一些相关的处理 员工打开系统就会进入登录页面 再登陆页面输入正确的用户名 密码 登录权 限后 有系统判断登录者进入不同的页面 当用户名输入的登录名不存在或密码输入 错误的时候系统跳转到错误页面提示用户不存在 只有当用户输入了正确的用户名 密码和类型的时候才能进入项目管理系统 东北大学秦皇岛分校毕业设计 论文 第 23 页 如图 5 1 登录页面 图 5 1 登录页面 用户名类型为管理员的员工登录后的页面如图 5 2 所示 图 5 2 管理员登录后的页面 用户类型为普通用户的员工登录后的页面如图 5 3 所示 东北大学秦皇岛分校毕业设计 论文 第 24 页 图 5 3 普通用户登录后的页面 5 2员工管理模块说明 5 2 1功能简介及其页面的实现 1 新增员工 系统对新员工进行信息的添加 这个模块实现了对员工的信息录入功能 并将所 填写的相关信息提交到数据库进而保存 员工信息主要包括 员工编号 员工名称 密码 部门角色 电话 电子邮箱 删除标志 员工类型 系统限制 员工部门等 点击提交按钮时 系统会自动检查输入的数据类型是否与定义的数据类型向匹配 如 果类型匹配则将数据成功保存 在添加过程中 需要对添加的数据进行验证 添加成 功后返回账户管理模块的首页面 操作页面如图 5 4 所示 其中带 的为必填项 员工部门为部门管理模块中的所有部门 用户名的位数也有限定 密码和确认密码必 须一致 电话限制为由 1 开头的 11 位数字 邮件的格式必须正确 员工部门是部门管 理中所包含的部门 并且会随着部门管理中对部门的操作而做相应的变化 如图 5 5 所 示为输入不正确时页面的提示效果 东北大学秦皇岛分校毕业设计 论文
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025停车场经营权转让合同样本
- 胫骨骨折护理
- 2025年人工肝知识试题
- 隐匿性冠心病的临床护理
- 电气点检培训体系构建
- 耳石症个案护理
- 转移性小肠肿瘤的临床护理
- 小学语文教师试用期转正工作总结模版
- 面试技巧完整课件
- 循证医学实施难点与对策
- DLT 593-2016 高压开关设备和控制设备
- 幼儿园伙食费管理制度
- 【MOOC】学术英语写作-东南大学 中国大学慕课MOOC答案
- 【MOOC】现代邮政英语(English for Modern Postal Service)-南京邮电大学 中国大学慕课MOOC答案
- 应激性心肌病指南解读
- 【水利水电】李想 案例专项班教案 02-案例专项班(二)
- 教室租赁合同范本教程
- 执业药师资格考试试题及答案
- 《供应链管理》课件 第7章 供应链运输管理
- 三管三必须-新安法宣贯课件
- 书法测评基础理论知识单选题100道及答案解析
评论
0/150
提交评论