收藏 分享(赏)

库存管理系统前台模块的设计与实现.doc

上传人:wo7103235 文档编号:6264646 上传时间:2019-04-03 格式:DOC 页数:68 大小:2.45MB
下载 相关 举报
库存管理系统前台模块的设计与实现.doc_第1页
第1页 / 共68页
库存管理系统前台模块的设计与实现.doc_第2页
第2页 / 共68页
库存管理系统前台模块的设计与实现.doc_第3页
第3页 / 共68页
库存管理系统前台模块的设计与实现.doc_第4页
第4页 / 共68页
库存管理系统前台模块的设计与实现.doc_第5页
第5页 / 共68页
点击查看更多>>
资源描述

1、本 科 毕 业 论 文库存管理系统前台模块的设计与实现The Design and Implementation of Front Module of Storage Management System姓 名:学 号:学 院:软件学院系:软件工程专 业:软件工程年 级:指导教师: 年 月摘 要目前市面上经常看到的都是些 C/S 架构的库存管理系统,但是 C/S 架构一般适用于局域网,如果对于多营业网点,想要在不同的地方进行管理,需要专门的远程访问,使用 C/S 架构就似乎有些牵强,是否能通过 B/S 架构来搭建一个类似的库存管理系统?既然是库存管理,那能否做得通用,使其能够适用于大部分的客户,

2、并真正帮助他们更好的管理呢?本次系统开发,就是带着以上这几个问题开始的。我们想要搭建的,是一个能够适用于不同客户,帮助他们实现对多种产品、多个库存点进行便捷管理,并具有良好用户体验性的基于 B/S 架构的库存管理系统。系统需求来源于我们本身对于库存管理的调查和研究,系统设计则是根据平时所学,及对所获得的需求的理解。前台模块是系统的一大部分,是富有创造性和挑战性的一个模块,如果把系统比作一个机器人,前台模块就相当于机器人的外壳、及其与内部系统的衔接。本次开发,使用的技术有 XHTML、JSF、Richfaces 等,JSF 提供了一种以组件为中心的用户界面(UI)构建方法,简化了 Java 服务

3、器端应用程序的开发,这也是为什么选择使用该技术的原因。这一模块的开发主要侧重于页面的布局和设计,前台页面脚本、响应前台操作的响应事件方法及与后台交互的代码设计与编写。本次前台模块设计与开发的创新点有:(1)使用了比 struts、webwork 更为高级的 JSF框架。 (2)使用 XHTML 作为页面标记语言。 (3)运用一些小技巧,增加系统的用户体验效果。关键词:库存管理;JSF;XHTMLAbstractNowadays, it is usually to find the storage management system with C/S architecture in the ma

4、rket. But the C/S architecture usually adapt to LAN. If there is more than one business website, C/S architecture seems to be difficult to use in different places because different places need special remote access. Is it possible to use B/S architecture to build a similar storage management system?

5、 As to storage management system, can it be widely used to more of the customers to help them make a good management?The purpose to develop this system is to solve questions above. We want to build the storage management system based on the B/S architecture can be used by different kinds of customer

6、s to help them manage their products and different storehouses conveniently. The requirement of the system comes from our investigation and research on the storage management system. The development of the system is based on our ordinary knowledge and understanding of this requirement.The front deve

7、lopment module is one of the important proportions of the system full of creative and challenge. If we compare the system to a robot, then the front development is similar to the surface and connection to internal system of the robot. This time we use techniques as XHTML, JSF and Richfaces etc to de

8、velop the system. JSF provide a kind of user interface with the component development as the central. It simplifies the development of JAVA server side application. That is why we choose this technique. The development of this module emphasis on the design of the web page, writing script of front pa

9、ge and designing action listener of events from front action. In addition, the coding of the interactive with background system is one of this module developments tasks.The innovation of this front development is as bellow: (1) Using more advanced structure than STRUTS and WEBWORK. (2) Using the XHT

10、ML as the web page design language. (3) Using some tricks to improve the user experience of this system.Key Words: Storage management system; JSF; XHTML目 录第 1 章 绪论 11.1 选题意义 .11.2 相关技术 .11.2.1 XHTML11.2.2 JSF21.2.3 Richfaces31.2.4 Spring/Ibatis41.3 论文结构 .4第 2 章 需求分析 52.1 需求概述 .52.2 功能性需求 .52.2.1 功能需

11、求 52.2.2 性能要求 72.3 客观条件限制 .72.4 系统关键问题分析 82.4.1 合理的数据库设计 82.4.2 友好的界面展示 82.4.3 合理的功能模块划分 82.4.4 清晰的业务处理流程 82.5 环境支持 .92.5.1 开发平台 92.5.2 版本控制工具 92.5.3 运行环境 92.6 本章小结 .10第 3 章 概要设计 .113.1 总体设计 .113.1.1 功能模块划分 113.1.2 基本设计概念与处理流程 123.1.3 总体结构 153.1.4 人工处理过程 163.2 系统数据结构设计 163.3 本章小结 .16第 4 章 详细设计与实现 .1

12、74.1 系统外围框架 174.2 仓库管理 .234.3 日常经营 .264.4 账户角色管理 264.5 客户关系管理 274.6 本章小结 .28第 5 章 前台模块展示 .295.1 系统外围框架 295.1.1 系统头部及菜单 295.1.2 错误提示页面 305.1.3 统一的消息提示 315.2 仓库管理 .325.2.1 产品类别管理 325.2.2 添加新的产品分类 335.2.3 产品管理 345.2.4 添加新产品 355.2.5 仓库维护 365.2.6 库存管理 375.3 日常经营 .405.4 账户角色管理 415.5 客户关系管理 425.6 本章小结 .43第

13、 6 章 总结 446.1 工作总结 .446.2 工作展望 .44参考文献 45致 谢 46ContentsChapter 1 Introduction .11.1 Background .11.2 Related Technologies 11.2.1 XHTML.11.2.2 JSF.21.2.3 Richfaces .31.2.4 Spring/Ibatis 41.3 Thesis Structure4Chapter 2 Requirements.52.1 Requirements Overview.52.2 Functional Requirements.52.2.1 Functio

14、nality52.2.2 Performance.72.3 Restrictions of Objective Condition 72.4 Analysis of Key Issues 82.4.1 Proper Database Design 82.4.2 Friendly UI 82.4.3 Proper Functionality Partition .82.4.4 Clear Operation Flow 82.5 Environmental Support92.5.1 Development Platform 92.5.2 Version Control Tool.92.5.3 R

15、untime Environment .92.6 Summary .10Chapter 3 General Design 113.1 Architecture of System .113.1.1 Functionality Partition.113.1.2 Basic Design Ideas and Operation Flow .123.1.3 Overall Structure of System 153.1.4 Manual Processing 163.2 Design of System Data Structure.163.3 Summary .16Chapter 4 Det

16、ailed Design and Implementation 174.1 External Framework 174.2 Storage Management234.3 Day-to-Day Operating264.4 Management of Accounts and Roles.264.5 Customer Relationship Management .274.6 Summary .28Chapter 5 Front Module Demonstration 295.1 External Framework 295.1.1 Logo and Menu .295.1.2 Erro

17、r Pages 305.1.3 Uniform Message 315.2 Storage Management325.2.1 Product Category Management .325.2.2 Add New Product Categories 335.2.3 Product Management.345.2.4 Add New Products.355.2.5 Storages Maintain365.2.6 Storage Management.375.3 Day-to-Day Operating405.4 Management of Accounts and Roles.415

18、.5 Customer Relationship Management .425.6 Summary .43Chapter 6 Summary446.1 Conclusion .446.2 Future Work44References 45Acknowledge 46第 1 章 绪论1第 1 章 绪论1.1 选题意义随 着 信 息 时 代 的 来 临 , 计 算 机 、 网 络 已 经 基 本 普 及 , 计 算 机 办 公 已 经 成 为 一 种 普 遍现 象 , 对 于 一 个 经 营 者 来 说 , 如 何 管 理 好 自 己 经 营 的 产 品 , 如 何 把 握 产 品 的 存 储

19、 周 期是 一 个 至 关 重 要 的 部 分 。 目 前 有 很 多 中 小 型 的 经 营 者 , 由 于 流 动 资 金 有 限 , 无 法 购 买 大型 完 善 的 管 理 系 统 , 以 至 于 有 很 多 经 营 者 甚 至 还 在 使 用 传 统 的 手 工 登 记 方 式 管 理 自 己 的日 常 经 营 活 动 , 但 是 手 工 方 式 不 但 麻 烦 效 率 还 比 较 低 , 而 且 长 期 下 来 , 会 产 生 大 量 的 文件 和 数 据 , 这 对 于 查 找 、 更 新 和 维 护 都 带 来 了 巨 大 的 困 难 。 面 对 这 样 的 现 状 , 我 们

20、 选择 搭 建 一 个 小 型 的 库 存 管 理 系 统 , 以 期 满 足 这 样 一 个 潜 在 而 又 广 泛 的 需 求 。本 次 开 发 并 不 是 针 对 某 个 特 定 的 客 户 , 而 是 对 潜 在 的 中 小 型 客 户 群 进 行 调 查 、 分 析和 研 究 , 从 其 中 提 取 所 有 潜 在 客 户 的 共 同 需 求 , 从 而 来 设 计 一 个 面 向 所 有 潜 在 客 户 ,能 够 满 足 大 部 分 客 户 需 求 的 通 用 型 库 存 管 理 系 统 , 这 也 是 本 次 设 计 和 开 发 的 主 要 意 义 和亮 点 。 本 课 题 选

21、用 B/S 架 构 来 实 现 , 而 不 是 使 用 C/S 架 构 , 目 的 就 是 为 了 给 用 户 提 供一 个 打 开 浏 览 器 即 可 使 用 , 而 不 需 要 复 杂 安 装 的 方 便 快 捷 的 管 理 系 统 , 让 用 户 在 使 用该 系 统 后 能 够 真 正 的 得 到 帮 助 。而前台模块是系统开发的外壳部分,属于系统的表层开发,主要的侧重点在于系统框架的搭建、系统界面设计及与系统内部衔接的接口编写,另外参与部分系统级别的模型、数据库设计。前台模块相当于 MVC 开发框架中的 View 层和部分 Controller 层,是系统前端展示和操作的入口,是系统

22、和用户之间的桥梁,所以本模块的开发主要专注于保证系统的稳定性和系统操作界面的友好性,专注于营造一个良好的用户体验效果。1.2 相关技术1.2.1 XHTMLXHTML 是 The Extensible HyperText Markup Language(可扩展超文本标识语言)的缩写,是当前 HTML 的继承者。XHTML 是一个基于 XML 的标记语言,语法要求比较严格,而不像 HTML 语法那样松散。XHTML 是 HTML 的一个子集,几乎所有浏览器在正确解析 HTML 的同库存管理系统前台模块的设计与实现2时,都能够兼容 XHTML。本质上说,X HTML 是 一 个 过 渡 技 术 ,

23、 结 合 了 部 分 XML 的 强 大 功 能及 大 多 数 HTML 的 简 单 特 性 12。2000 年 底 , 国 际 W3C 组 织 (World Wide Web Consortium)组 织 公 布 发 行 了 XHTML 1.0版 本 。 XHTML 1.0 是 一 种 在 HTML 4.0 基 础 上 优 化 和 改 进 的 新 语 言 , 目 的 是 基 于 XML 应用 。 XHTML 是 一 种 增 强 了 的 HTML, 它 的 可 扩 展 性 和 灵 活 性 将 适 应 未 来 网 络 应 用 更 多 的 需求 。 XML 虽 然 数 据 转 换 能 力 强 大

24、, 完 全 可 以 替 代 HTML, 但 面 对 成 千 上 万 已 有 的 基 于HTML 语 言 设 计 的 网 站 , 直 接 采 用 XML 还 为 时 过 早 。 因 此 , 在 HTML4.0 的 基 础 上 , 用XML 的 规 则 对 其 进 行 扩 展 , 得 到 了 XHTML。 所 以 , 建 立 XHTML 的 目 的 就 是 实 现 HTML 向XML 的 过 渡 。 目 前 国 际 上 在 网 站 设 计 中 推 崇 的 WEB 标 准 就 是 基 于 XHTML 的 应 用 。1.2.2 JSFJSF 全称 Java Server Faces,是一种用于构建 J

25、ava Web 应用程序的标准框架(是 Java Community Process 规定的 JSR-127 标准)。它提供了一种以组件为中心的用户界面(UI)构建方法,从而简化了 Java 服务器端应用程序的开发。由于由 Java Community Process (JCP)推动,属于 Java EE 5 中的技术规范,所以受到了厂商的广泛支持。JSF(Java Server Faces)技术为开发基于网络用户界面的 Java 开发者提供了标准的编程接口 API 以及标签库。其结构图如图 1-1 所示:图 1-1 JSF 结构图 2第 1 章 绪论3就像 Struts 框架一样,JSF 定

26、义了一套 JSF 标签,能够生成与 JavaBean 属性绑定在一起的 HTML 表单元素。从应用开发者的角度看,两种框架十分相似,但是 JSF 可能会得到更多的支持,因为 JSF 是 Java 的标准。在未来的发展中,有可能所有的 J2EE 应用服务器都需要支持 JSF。JSF 引入了基于组件和事件驱动的开发模式,使开发人员可以使用类似于处理传统界面的方式来开发 Web 应用程序。提供了行为与表达的清晰分离。不用特别的脚本语言或者标记语言来连接 UI 组件和 Web 层。JSF 技术 API 被直接分层在 Servlet API 的顶端。技术为管理组件状态提供一个丰富的体系机构、处理组件数据

27、、确认用户输入和操作事件。1.2.3 Richfaces该框架实现为能在现有的页面增加 Ajax 的功能的组件库,所以并不需要写任何JavaScript 代码或用新的 Ajax 工具集(widget)取代现有的组件。图 1-2 展示了Richfaces 的工作原理。图 1-2 Richfaces 工作原理 10RichFaces 具有页面范围(page-wide)的 Ajax 支持,而不是传统的组件范围库存管理系统前台模块的设计与实现4(component-wide)的 Ajax 支持。因此,可以通过页面产生事件来调用一个 AJAX 请求来改变服务端的数据,并以 JSF 组件树同步页面的区域。

28、该框架能够和 JSF 框架良好的配合工作,使得 JSF 组建具有了 Richfaces 中的 Ajax 功能,能够保证页面的无刷新,从而为良好的用户体验提供了一个很好的基础。1.2.4 Spring/Ibatis后台开发使用 Spring、Ibatis 来进行,Spring 用于 Service 层、而 Ibatis 用于数据持久层,用来做数据库交互。详见后台开发模块的论文。1.3 论文结构本论文分六章,具体内容安排如下:第 1 章 绪论介绍课题的研究背景,系统开发意义,系统的主要功能及特点以及系统的开发语言及技术简介。本章主要向读者介绍本次选题的目的和意义及使用到的相关技术。第 2 章 需求

29、分析本章主要对系统任务的总体描述,并指出系统开发的侧重点,及所需的环境支持条件。从本章可以了解到本次系统开发想要完成的任务和最终想要达到的总体效果。第 3 章 概要设计阐述整个系统的整体设计原则,对系统的体系结构和总体设计进行了简单的描述,对系统进行总体的剖析,从本章可以看到一个系统的雏形。第 4 章 详细设计与实现将整个系统的需求转化为相应的设计,并详细的描述系统的开发过程中所遇到的一些问题。对自己开发的每个模块进行详细的描述。本章主要是深入系统的每个功能模块,并对其设计和实现的方法进行分析。第 5 章 前台模块展示本章使用了大量的截图来展示系统前台的各个部分,旨在展示系统的各个功能模块实现

30、的具体效果,给读者一个对系统的直观感受。第 6 章 总结本章主要是对本次工作的总结和对未来工作的展望。第 2 章 需求分析5第 2 章 需求分析本章主要是进行任务内容的描述,并阐述了仓库管理系统的主要功能性需求,系统的整体流程,以及系统为了实现这些需求而必须解决的关键问题和所需的环境条件。2.1 需求概述随着社会的快速发展,国内的中小型企业已达 800 多万,如今的经营趋势已不再如从前。现在的经营者讲究的是快速占领市场,并且能较好的把握住每个客户。为了降低运营成本,产品的运输费用已成为经营者优先考虑的问题。该问题的解决方案无疑是把仓库设置在各个城市的某个地方,方便经营者进行货物的统一管理。这样

31、的做法,给企业自身带来了更大的经济利益,但是如何把各个地理位置的仓库信息进行统一的管理便成了经营者所要面临的另外一个问题,而传统的手工登记方式已经落伍,不足以解决这个问题。此外,目前大部门的仓库管理系统是 C/S 架构,用在多营业点的管理上似乎已经有点牵强。基于以上各方面的考虑,使用 B/S 架构来搭建这样一个库存管理系统成了我们的首要选择。带着这么一种想法,我们从潜 在 的 中 小 型 客 户 群 中挑选出了一部分典型的客户进行调查与分析,从中提取所有潜在客户的共同需求,从而来设计一个面向所有客户,能满足大部分客户需求的通用型库存管理系统。我们对整个系统的设计目标是:让客户快速上手,直接使用

32、,无须培训,高性价比。整个系统无需占用计算机太大的内存,且能让用户快速、准确、直观的管理各个仓库的产品信息。2.2 功能性需求2.2.1 功能需求在对客户群的调查和分析后,我们将获取的信息进行详细的分析与总结,提取出了本次开发的库存管理系统的五个主要功能:(1)信息录入功能主要是对货物、仓库的基本信息进行存储、编辑。主要包括:商品类别、商品类别的各种参数、商品名称、商品的特定参数、商品的状态、商品单价、商品入库、出库的数量、出库时间等信息;同时还包括对仓库信息的管理,包括仓库的地理位置,仓库中的产品信息等。库存管理系统前台模块的设计与实现6该功能涉及到系统的多个功能模块,如图 2-1 所示:信

33、息录入仓库管理出货登记进货登记产品管理产品类别管理图 2-1 信息录入功能图(2)信息查询功能操作记录查询:即对产品的出库情况和入库情况进行查询,并且能查看对应的操作者和客户;库存信息查询:通过商品名称对各个仓库中的所有库存商品信息进行查询;产品信息查询:通过输入产品的关键字查找出相应的产品信息。具体如图 2-2 所示:操 作 记 录 查 询信息查询库 存 信 息 查 询产 品 信 息 查 询图 2-2 信息查询功能图(3)统计功能方便客户对产品的进出货情况进行分析和统计,同时也可以对库存产品的状况进行汇总分析。(4)报表功能能将多种统计的结果通过报表的形式展示给客户,以便客户直观地了解企业自

34、身的经营第 2 章 需求分析7状况。(5)预警功能该功能主要是将库存量相对较低的库存产品给用户一个直观醒目的提示,便于用户及时采购相应的产品,以防采购不及时而导致经济效益下降。2.2.2 性能要求根据对需求的理解,我们在此对系统归结出以下四点性能要求:(1)准确性。随着企业自身的客户群数量的增多,出入库记录的增多,因此要求系统在记录统计时能做到及时,准确。(2)事务处理。系统可能涉及到批量操作,所以必须在系统中加入事务处理。(3)可移植性。由于要设计的是一个比较通用的库存管理系统,故要求系统具有较好的可移植性。(4)并发性。仓库管理系统涉及到的用户数量不会很多,所以对系统的并发性要求并不是很高

35、。2.3 客观条件限制系统面向的是中小型经营者,及经营者的下属员工,所以在系统的设计和开发时,必须考虑以下五个问题:(1)系统的简单易用。虽说是专业软件,但是考虑到使用对象大部分为非计算机专业人员,所以必须把系统设计得简单易用,又不失友好性和趣味性,使用户对该系统有信心和兴趣。(2)在必要的时应该给予用户一定的提示。系统难免碰到有些必须用专业名词,或者操作相对比较复杂的地方,在碰到类似的情况的时候,必须给予用户简单扼要的提示。(3)系统应该足够健壮、反应要够快,至少必须能够满足用户的日常操作。在涉及复杂运算,大批量数据库操作时,必须考虑优化。(4)大部分客户均使用的是 windows 操作系统

36、,普遍使用基于 Microsoft Internet Explorer 内核的浏览器,所以系统必须能够运行在 IE 上,应该能够完全兼容 Microsoft Internet Explorer 的各个主流版本,如 IE 6.0、IE 7.0、IE 8.0 等。(5)经济性。系统应满足客户的客观经济环境要求,有效降低成本。库存管理系统前台模块的设计与实现82.4 系统关键问题分析对于整个系统在设计过程中,难的不在于系统功能的实现,更多的是考虑数据库的设计、前台页面的展示、功能模块的划分和业务的逻辑流程。2.4.1 合理的数据库设计数据库的设计过程中应保证数据库模型的稳定性和拓展性,使设计出来的数

37、据库模型能够适应现实的数据模型,能够覆盖包容各种各类的现实数据实体。同时,应尽量减少字段的冗余,使重复的数据保持在最小限度,以此来减少数据库的存储空间,降低产生过多字段混乱的风险,从一定程度上提高数据库的运行速度。冗余字段的减少也方便数据库中表字段值的更新,降低了数据库表之间的耦合度,这样我们更新某个表时,就不需要去关心其他表中冗余字段的更新问题,尤其是对关系比较复杂的数据库表有更显著的效果。一个好的系统离不开后台的支撑,好的数据库后台可以简化开发过程,使系统功能更加清晰和准确。2.4.2 友好的界面展示界面的友好与否是用户评价一个系统优劣的重要指标,由于面对的中小型用户,不可能花费太多的时间

38、去学习系统的使用。因此在系统页面的设计过程中,我们考虑的是要给用户一个比较直观、清晰、准确的展示。在页面的布局中,页面的布局要怎样才能合理、美观,能否充分利用了 CSS 样式、XHTML、JSF 和 Richfaces 提供一个良好的界面?这对我们的开发和设计来说,是一个比较大的挑战。2.4.3 合理的功能模块划分在整个系统中,每个功能页面的布局应该基本一致,为了便于用户的使用,应该对系统的功能模块进行细致合理、人性化的划分,生成合理的系统菜单,使用户一目了然,能够快速准确的定位到想要使用的功能菜单,完成相应的工作。2.4.4 清晰的业务处理流程各个系统的功能模块应该给出清晰的业务处理流程,降

39、低前台流程处理的复杂度,帮助第 2 章 需求分析9用户快速的完成相应的任务。2.5 环境支持2.5.1 开发平台(1)操作系统由于目前开发条件的限制,我们选择使用 Windows XP 操作系统作为开发平台。(2)开发工具本次开发使用的是 J2EE 框架,所以我们将使用 MyEclipse 6.5 作为开发IDE。MyEclipse 全称 MyEclipse Enterprise Workbench, 是 Eclipse IDE 的 扩 展 , 也是 一 款 功 能 强 大 的 J2EE 集 成 开 发 环 境 , 包 括 了 完 备 的 编 码 、 调 试 、 测 试 和 发 布 功 能 ,

40、完 整 支 持 HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。 支 持 方 便 的 代 码编 写 、 测 试 以 及 排 错 , 利 用 它 来 开 发 , 可 以 极 大 的 提 高 工 作 效 率 。2.5.2 版 本 控 制 工 具这 次 开 发 , 虽 然 只 有 两 个 人 , 但 也 属 于 团 队 开 发 , 所 以 我 们 打 算 加 入 代 码 、 文 档 的版 本 控 制 管 理 , 使 用 的 管 理 工 具 是 SVN。 使 用 版 本 控 制 可 以 对 代 码 的 版 本 进 行 方 便 的 管理 , 有 效

41、的 避 免 冲 突 , 确 保 由 不 同 开 发 人 员 编 辑 的 同 一 代 码 都 能 够 得 到 更 新 。 SVN 全称 Subversion, 是 CVS 的 接 班 人 , 能 够 依 时 间 跟 踪 整 个 目 录 的 变 动 , 目 录 和 文 件 都 能 进行 版 本 控 制 , 而 且 SVN 的 安 装 、 配 置 都 比 较 简 单 , 它 有 自 己 的 用 户 管 理 , 不 需 使 用windows 的 管 理 员 账 户 , 可 以 使 用 http 方 式 对 版 本 库 进 行 访 问 , 使 用 起 来 简 单 方 便 , 加上 版 本 控 制 给 我

42、 们 管 理 源 代 码 提 供 了 莫 大 的 帮 助 。2.5.3 运 行 环 境(1)操作平台主要针对 Microsoft IE 系列。考虑到目前操作系统使用的广泛性,一般个人用户使用的是 Microsoft Windows 系列,还有目前各浏览器使用比率对比,及系统面向的客户群等各种因素的综合考虑,本系统主要针对 Microsoft 的 Internet Explorer 进行设计和开发。要求系统能够支持 IE 8.0 及以前版本。库存管理系统前台模块的设计与实现10(2)数据库使用 MySQL 作为数据库。MySQL 是一款开放源码的小型关系型数据库,相比Oracle、DB2、SQL

43、 Server 来说,可能规模比较小,功能相对有限,但是对于可能会有的数据量来说,它提供的功能已经绰绰有余,对于所面向的用户来说是一个相当不错的选择。2.6 本章小结本章主要是从用户的角度进行以下四点分析:一、描述系统所要完成的主要任务;二、分析系统中的几个关键性问题;三、从客观的角度分析系统设计和开发所必须考虑的客观因素;四、对系统的开发、运行所需的环境做了统一的介绍。系统面向的是广泛的中小型客户及其下属员工,这是本次系统需求的核心部分,除了完成系统的主体功能(库存管理)外,还必须从用户的角度进行客观、实际的分析,如所使用的操作环境、数据库等。经过实际调查,这部分人主要使用 Windows

44、操作系统,这也是我们之所以选择针对 Microsoft Internet Explorer 进行设计和开发、选择使用 MySQL 当作数据库的主要原因。本章还提出了一些在以后的设计和开发中必须被纳入考虑范围的问题,如系统的简单易用、友好的人机交互、系统的健壮性等,总之,要使系统尽可能的符合用户的实际情况,从而帮助用户真正的解决问题。第 3 章 概要设计11第 3 章 概要设计本章主要是对系统进行概要的分析和设计,根据第 2 章的系统需求分析,通过一系列的探讨和说明,展示系统的初期设计,主要是从宏观的角度来观看这个系统。3.1 总体设计本节主要描述系统的总体结构和系统的需求规定,并选取了其中两个

45、关键的问题进行比较详细的分析说明。3.1.1 功能模块划分根据对需求的理解,系统的使用者将会不同,因此系统中必须有角色的概念。系统以角色管理模块、角色使用模块功能的形式进行设计,总体分为普通用户、高级用户、系统管理员这三种角色。各角色所对应的系统模块划分如图 3-6 所示:小管家库存管理系统普通用户高级用户系统管理员进货登记出货登记报表查询产品管理出货登记模块管理权限分配客户管理进货登记角色管理仓库管理账户管理图 3-1 系 统 功 能 结 构 图库存管理系统前台模块的设计与实现12(1)普通用户普通用户,一般是开放给企业主下属的普通员工使用的账户,主要的操作所涉及的就是一些日常经营活动所需的

46、操作,如:进货登记、出货登记等,该角色可以通过系统管理员分配更多权限。(2)高级用户高级用户,一般对应的用户为企业领导。该角色的权限除了普通的日常经营外,还可以查看各类经营报表(如产品销售报表、客户购买情况统计等) 、管理仓库、管理产品、并对企业对应的客户群、系统账号进行管理。仓库管理包含库存管理和仓库维护两个部分,其中通过库存管理可以查看、修改产品的库存量,并可以添加新的产品进入仓库;而仓库维护则主要负责仓库的维护,可增加新的仓库或者修改仓库信息。而产品管理包含产品分类管理和产品列表,其中通过产品列表可以查看、修改某种产品的详细信息,并可以添加新的产品;而通过产品分类管理则可以添加新的产品分

47、类或者修改某个产品分类信息。以上所描述的产品分类、产品、仓库中的产品、仓库均允许删除,但是必须在分类下无产品、产品无库存、仓库零库存的前提下才允许执行,这些限制都是为了保证系统的数据稳定性,系统其他模块功能的正常工作而设。(3)系统管理员系统管理员的工作则主要对应的是一些系统高级配置和维护。如权限、角色分配、模块管理等。一般该角色属于系统的维护人员,可由开发人员代理。这一块主要维护系统外围框架,不涉及系统内部实际使用。3.1.2 基本设计概念与处理流程系统的设计重点包含两大部分:一个是角色模块管理设计,系统的角色模块管理负责账户的权限配置和管理,为系统内部提供相应的保障和服务;另一个则是系统核

48、心产品结构设计,产品结构是库存管理的核心,负责系统内部产品逻辑处理,为产品管理、日常经营等功能模块提供相应的支持。另有一些模块逻辑相对比较简单,如:日常经营、客户管理等,这里就不具体罗列,详见第 4 章详细设计与实现。(1)角色模块管理设计系统基于角色菜单进行设计和开发,不同用户可以对应不同角色,不同的角色又能拥有不同的功能模块。每个角色可以拥有多个功能模块的使用权限,而同一个功能模块也可以属于不同的角色。角色设计图如图 3-2 所示:第 3 章 概要设计13角色 1角色 2角色 3功能模块 1功能模块 4功能模块 3功能模块 2账户 1账户 2账户 3功能模块 5角色拥有模块账户对应角色图

49、3-2 角 色 设 计 图这样的设计使系统有一个统一的权限管理,从而使接下来的系统开发针对的对象转化为系统的各个功能模块,而不用在系统的各个子功能模块中控制判断用户的角色来控制用户是否有该功能模块的使用权限。对于系统模块的配置,可由开发人员配置,亦可由系统维护人员来进行配置。系统角色权限控制的处理流程比较简单,主要是根据登录用户的角色,显示相应的操作菜单,开放对应的系统操作入口,让用户完成相应的操作,起到一个阀门的作用。系统处理流程如图 3-3 所示:用户进入系统判定用户角色显示相应的角色菜单用户使用系统完成相应操作用户退出系统图 3-3 总 体 处 理 流 程 图(2)产品结构设计产品结构相对比较复杂些,包含三层结构:一、产品分类;二、产品本身;三、仓库。库存管理系统前台模块的设计与实现14其结构如图 3-4 所示:产品 1仓库 1仓库 2产品 2产品 3产品仓库对应关系产品包含在某个仓库中产品类别 1产品类别 1产品和产品类别对应关系产品属于某个产品分类图 3-4 产 品 结 构 图从上图可以看出一个产品类别可以包含多个产品,一个仓库也可以包含多个产品,产品类别是各种产品的抽象体,它针对的是某一类别的产品,包含了属于该类产品的所有特征,而又可以允许该类下包含不一样的产品;而仓库则是各种产品的储存体,它针对的对象是单一特定的产品,允许某个产品存在于多个仓

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 学术论文 > 毕业论文

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报