第10章 WebApp开发综合案例_第1页
第10章 WebApp开发综合案例_第2页
第10章 WebApp开发综合案例_第3页
第10章 WebApp开发综合案例_第4页
第10章 WebApp开发综合案例_第5页
已阅读5页,还剩95页未读 继续免费阅读

下载本文档

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

文档简介

1、第第10章章 WebApp开发综合案例开发综合案例 10.2 Web商品进销存信息系统商品进销存信息系统 2 10.3 Web书城信息系统书城信息系统 3 10.4 本章小结本章小结 4 10.1 WebApp项目开发概述项目开发概述 1 10.5 课程设计任务书及评价课程设计任务书及评价 510.1 WebApp项目开发概述项目开发概述 第10章 WebApp开发综合案例教学目标教学目标 了解Web工程概念及与传统软件工程的区别 理解WebApp的概念、特点和开发过程 掌握WebApp的分析、设计和测试方法 掌握WebApp综合开发方法及课程设计过程10.1 WebApp项目开发概述项目开发

2、概述 10.1.1 WebApp的特点及类型的特点及类型 1)WebE的概念及与传统项目的区别的概念及与传统项目的区别 1998年年Yogesh Deshpande和和Steve Hansen提出提出了了Web工程(简称工程(简称WebE)的概念,是指按计划进行的网)的概念,是指按计划进行的网络综合性工作。基于络综合性工作。基于Web的系统和应用简称的系统和应用简称WebApp,不不同于其他计算机软件,而是基于同于其他计算机软件,而是基于web的系统与的系统与“页面排页面排版和软件开发、市场和预算、内部交流和外部联系以及版和软件开发、市场和预算、内部交流和外部联系以及艺术和技术间艺术和技术间”

3、综合作用的产物。综合作用的产物。10.1 WebApp项目开发概述项目开发概述 WebE与传统软件工程的区别与传统软件工程的区别,主要体现在,主要体现在6个方面,并如表个方面,并如表10-1所示所示: (1)WebApp强调信息的含量,传统软件工程则强调系统功能的完善; (2)WebApp关注视觉和感觉,传统的软件界面则奉行“简单为美”原则; (3)多数WebApp是数据驱动,传统的软件开发多是功能驱动或过程驱动; (4)WebApp适应不同的用户,传统软件系统的用户群体则常圈定在某个范围之内; (5)WebApp应在短期内开发完成,很难用传统软件工程中的形式化方法和测试技术; (6)WebE

4、要求技术、艺术和科学在更大范围内相互结合。10.1 WebApp项目开发概述项目开发概述 比较内容传统项目小型WebApp项目大型WebApp项目需求收集严格的受限制的严格的技术规格说明模型、规格说明健全总体描述UML、模型、规格说明健全项目持续时间以月或年为度量单位以天、周或月为度量单位以月或年为度量单位测试和质量保证致力于取得质量目标致力于风险控制重视所有的SQA活动风险管理明确的内部的明确的可交付使用的期限18个月或更长3-6个月或更短3-12个月或更短发布过程严格的快速的严格的发布后客户的反馈需要大量的主动工作以用户交互中自动获得自动获得及由请求反馈获得表10-1 WebApp与传统软

5、件项目的区别 10.1 WebApp项目开发概述项目开发概述 2)WebApp的特点WebApp的特点的特点具有以下8个方面:(1)网络密集性(Network intensiveness)。(2)并发性(Concurrency)。(3)无法预测的负载量(Unpredictable load)。(4)性能敏感性(Performance sensitive)。(5)高可用性(High availability)。(6)数据驱动 (Data driven)。(7)内容敏感(Content sensitive)。(8)持续演化(Continuous evolution)。WebApp驱动持续演化的过程

6、的特征: 即时性。即时性。 安全性。安全性。 美观性美观性。10.1 WebApp项目开发概述项目开发概述 WebApp的开发具有3个特点:WebApp常以增量的方式进行开发;经常发生变化;期限较短。因此,整个WebE过程也与这些特点相适应。 3)WebApp主要应用类型在在WebApp中,主要应用类型包括:中,主要应用类型包括: (1)信息型。 (2)下载型。 (3)可定制型。 (4)交互型。 (5)用户输入型。 (6)面向事务型。 (7)面向服务型。 (8)门户型。 (9)数据库访问型。 (10)数据仓库型。10.1 WebApp项目开发概述项目开发概述 10.1.2 WebApp开发过程

7、及技术方法开发过程及技术方法 1. WebApp开发过程开发过程 WebApp的分散性和交互性,使其开发遵从一定的开发规范、的分散性和交互性,使其开发遵从一定的开发规范、技术标准和流程,以保证整个开发团队协调一致的工作,从而提技术标准和流程,以保证整个开发团队协调一致的工作,从而提高开发工作效率,提升项目质量。高开发工作效率,提升项目质量。WebApp开发需要过程模型、开发需要过程模型、适合适合WebApp开发特点的技术和方法。过程、技术(工具)和方开发特点的技术和方法。过程、技术(工具)和方法称为法称为WebE的三要素。的三要素。 1)WebE过程及过程及WebApp开发流程开发流程 根据根

8、据WebE的特点,可构建的特点,可构建WebE过程框架,如图过程框架,如图10-1所示。所示。(1 1)沟通交流()沟通交流(CommunicationCommunication)。在)。在WebEWebE过程中,沟通交流的特点有过程中,沟通交流的特点有3 3种种WebEWebE活动:规划(活动:规划(FormulationFormulation)、提取()、提取(ElicitationElicitation)和协商)和协商(NegotiationNegotiation)。)。(2 2)计划()计划(PlanningPlanning)。做出由一个任务定义和一个时间表组成的)。做出由一个任务定义

9、和一个时间表组成的WebAppWebApp增量式项目开发计划。增量式项目开发计划。(3 3)建模()建模(ModelingModeling)。软件项目和设计应与)。软件项目和设计应与WebAppWebApp开发相适应,然开发相适应,然后并入后并入WebAppWebApp建模活动中。建模活动中。 (4 4)构建()构建(ConstructionConstruction)。利用)。利用WebWeb工具和技术构建已建模的工具和技术构建已建模的WebAppWebApp,并可快速测试暴露设计问题及时调整及修改。并可快速测试暴露设计问题及时调整及修改。10.1 WebApp项目开发概述项目开发概述 10.

10、1 WebApp项目开发概述项目开发概述 (5)部署(Deployment)。 在实际开发过程中,WebApp开发的目标是按时、保质、保量完成预期交付软件。通常WebApp开发采用增量的迭代模型,其开发流程与传统软件开发项目的过程类似,具体WebApp开发流程,如图10-2所示。 主要任务包括:对问题进行定义及陈述交流;制定项目协议/合同及计划/方案;分析需求;设计体系结构、导航、接口;使用Web开发工具实现WebApp;测试及发布。图10-2 WebApp开发流程10.1 WebApp项目开发概述项目开发概述 2. WebApp开发技术及方法1)技术和工具建立高质量的建立高质量的WebApp

11、,需要三种技术:,需要三种技术:(1)基于部件的开发。(2)安全性技术。(3)Internet标准HTML和XML。2)WebE方法WebE方法方法主要有以下5种:(1)交流方法。 (2)需求分析方法。(4)设计方法。(5)测试方法。 10.1 WebApp项目开发概述项目开发概述 10.1.3 WebApp需求分析 WebApp的需求分析需求分析有3个任务个任务:表述问题、收集需求和分析建模,在表述问题期间主要确定WebApp的目的和目标,并定义用户种类。收集需求主要通过调研等确定具体功能、内容、界面等需求,并以分析建模进行具体描述。主要进行4种分析种分析:内容分析;交互分析;功能分析;配置

12、分析。分析重点分析重点是解决3个重要问题:表达或处理的信息内容;为最终用户提供的功能;WebApp表达内容和执行功能时,表现的行为,可将问题的回答表示为分析模型的一部分。 10.1 WebApp项目开发概述项目开发概述 WebE根据自身的特点,将分析模型分为:根据自身的特点,将分析模型分为:1)内容分析模型对WebE基础的内容进行分析。内容模型包含结构元素,为WebApp的内容需求提供一个重要的视图。其结构元素包含内容对象(如,文本、图形图像、照片、视频图橡、音频),其内容对象是WebApp的一部分。2)交互分析模型交互模型交互模型由4种元素组成组成:用例、顺序图、状态图、用户界面原型。(1)

13、用例。(2)顺序图。(3)状态图。(4)用户界面原型。10.1 WebApp项目开发概述项目开发概述 3)功能分析模型 功能模型功能模型描述WebApp的两个处理元素,各元素代表过程抽象的2个不同层次: (1)用户可观察到由WebApp传递给最终用户的功能。 (2)分析类中实现与类相关的行为的操作。 4)配置分析模型 客户端软件提供的基础设施,使用户可从所在位置访问。通常,浏览器用于显示从服务器下载的内容和功能。应针对各种浏览器特性及配置(配置模型的部分详细说明),对WebApp进行彻底测试。10.1 WebApp项目开发概述项目开发概述 5)关系导航分析模型 关系导航分析关系导航分析(Rel

14、ationship-navigation analysis,RNA)提供一系列分析步骤,主要分析各网页之间的关系。RNA方法方法可以分成5步: (1)用户分析。 (2)元素分析。 (3)关系分材。 (4)导航分析。 (5)评估分析。10.1 WebApp项目开发概述项目开发概述 10.1.4 WebApp设计 1. WebApp设计的目标要求WebApp设计设计的目标要求目标要求,主要包括7个方面:(1)简单性。(2)一致性。(3)相符性。(4)健壮性。(5)导航性。(6)视觉吸引。(7)兼容性。10.1 WebApp项目开发概述项目开发概述 2. WebApp的设计活动 WebApp设计设计

15、可分为6种活动种活动:构件设计、体系结构设计、导航设计、内容设计、美观设计和界面设计。每种设计都影响整体质量,可用金字塔表示,如图10-3所示。1)构件设计 WebApp经过发展逐渐形成为模板化功能化。其处理功能主要包括:数据库查询及其他操作;与外部企业系统的数据接口;用户的注册和认证。为了重复利用这些功能,应设计和构建一些程序构件,同普通软件在形式上一致。利用构件技术,可便于组建各种WebApp。2)体系结构设计 体系结构的设计主要定义WebApp超媒体结构、设计模式、设计模板、内容设计。设计模式为解决某些问题的一般性方法。如在WebApp中处理数据功能时,可用体系结构和构件级设计模式。超文

16、本级的设计模式着重导航特征的设计,允许用户以流畅的方式在WebApp内容间移动。 10.1 WebApp项目开发概述项目开发概述 图10-3 WebApp设计金字塔模型 10.1 WebApp项目开发概述项目开发概述 体系结构的设计与WebApp的目标、内容、导航原则紧密相关。体系结构主要分为体系结构主要分为4种:线性结构、网格结构、层次结构和网状结构。 (1)线性结构。当内部交互可预测顺序时,Web内容串形相连,常选择线型结构。这种结构简单,但缺乏灵活性。如图10-4所示。 (2)网格结构:当WebApp内容可分类地组织成二维或更高维时,可采用网格结构,如图10-5所示。这种结构有很大灵活性

17、,但也容易带来混乱。 图10-4 线性结构 图10-5 网格结构10.1 WebApp项目开发概述项目开发概述 (3)层次结构。如图10-6是最常见的体系结构。其结构可设计成使控制流水平地穿过垂直分支(超文本分支)的方式。在此结构中左边展示的内容可由超文本链接其他分支的内容,实现内容快速导航。 (4)网络结构。如图10-7在很多方面类似于面向对象系统的体系结构。对结构构件(网页)进行设计,使构件可将控制传递(以超文本链接)到系统中的其他部件,使导航相对灵活。 图10-6 层次结构 图10-7 网络结构10.1 WebApp项目开发概述项目开发概述 体系结构线性结构网格结构层次结构特点结构比较固

18、定Web内容一维化Web内容多维化最常见的结构优点简单有极大的灵活性有较大的灵活性缺点灵活性不高很容易带来混乱易混乱例子订单大型网站普通网站上述4种类型的体系结构,比较如表10-2所示。表表10-2 不同的体系结构比较不同的体系结构比较10.1 WebApp项目开发概述项目开发概述 3)导航设计 导航设计的主要过程为:识别用户角色,不同的用户角色可获得不同的内容和服务。如注册客户、特权客户可获得不同级别的信息和服务;为每一类用户角色确定访问目标;为每类用户的每个访问目标设计最佳的导航路径。导航设计还要解决使用各种辅助手段使导航更容易方便。在导航设计时,应为同类用户建立一个语义导航单元,以便后继

19、的管理。 4)内容设计 对内容对象建模后,编写对象传递的信息并对其格式化,尽量满足用户需求。常以所提供信息的概要描述和内容对象的类型说明来设计内容对象。10.1 WebApp项目开发概述项目开发概述 5)美观及布局设计 美观设计又称美工(学)设计,美观设计又称美工(学)设计,包括颜色配置、几何图案设计、文字大小字体和位置、图形使用等。在布局及设计中,主要考虑全局颜色配置、字体、字号、风格、样式、补充媒体(音频、视频、动画)的使用,以及其他美观元素。在设计时应进行布局规划。在设计布局时,主要基本原则设计布局时,主要基本原则是:是:(1)巧用空间。(2)重视内容。(3)顺序组织布局元素。(4)组织

20、导航、内容和功能。(5)不要以滚动条扩展空间。(6)浏览器窗口大小。10.1 WebApp项目开发概述项目开发概述 6)界面设计 界面设计包括屏幕布局,交互模式定义和导航机制描述。界面设计包括屏幕布局,交互模式定义和导航机制描述。界面设计应考虑3个方面:用户目前位置、操作及可导向的目标。并注重6项基本原则:基本原则: (1)页面速度。 (2)页面正确。 (3)菜单和界面风格统一。 (4)链接指示明显。 (5)界面功能清晰。 (6)常用表格等工具。10.1 WebApp项目开发概述项目开发概述 10.1.5 WebApp测试 应先测试最终用户所见内容和界面,再对体系结构及导航设计等方面进行测试。

21、最后,转到测试技术能力,WebApp基础设施及安装或实现方面。WebApp测试过程,如图测试过程,如图10-8所示。 图10-8 WebApp测试过程 1) 内容测试 用于检验WebApp提供信息的正确性、准确性和相关性。信息的正确性指信息的可靠性非误传,避免误解与纠纷;准确性指是否有语法或拼写错误。内容测试目的是发现内容方面的错误。除了检查静态内容,还应检测从数据库所维护的数据中导出的动态内容。 10.1 WebApp项目开发概述项目开发概述图10-3 WebApp设计金字塔模型 10.1 WebApp项目开发概述项目开发概述 2)界面测试 界面测试的总体策略是:发现与特定的界面机制相关的错

22、误;发现界面实现导航语义方式的错误、功能性错误或内容显示错误。用户与WebApp以界面机制交互,测试的主要内容为:测试的主要内容为:(1)链接测试。(2)表单测试。(3)Cookies测试。(4)客户端脚本测试。(5)动态HTML测试。(6)弹出窗口测试。(7)CGI脚本测试。(8)流动内容测试。(9)界面机制的应用。10.1 WebApp项目开发概述项目开发概述 3)性能测试 性能测试用于发现性能方面的问题,其产生原因是:服务器端资源缺乏、不合适的网络带宽及数据库数量,不完善或不当的操作系统能力,功能设计不当,可能导致客户-服务器性能下降的其他软硬问题。性能测试的目的:了解系统如何对负载作出

23、反应;收集度量数据,这些数据将促使修改设计,从而使性能的大改善。性能测试策略,包括以下3个方面 (1)连接速度测试。 (2)负载测试。 (3)压力测试。4)构件级测试 构件级测试也称功能测试,通过集中测试,试图发现WebApp功能方面的错误。每个功能都是一个软件模块,可用黑盒技术对其进行测试。构件级测试用例常受表单级的输入驱动。 10.1 WebApp项目开发概述项目开发概述 5)导航测试 导航描述了用户在一个页面内操作的方式。主要检测WebApp是否易于导航:导航是否直观?Web系统的主要部分是否可通过主页存取?Web系统是否需要站点地图、搜索引擎或其他的导航帮助?在一页面上放太多信息常起到

24、相反效果。导航测试的目的始终是确保在WebApp上线前发现导航功能方面的错误。测试每个导航都执行了预期功能:测试每个导航都执行了预期功能:(1)导航链接。(2)重定向。(3)书签。(4)框架和框架集。(5)站点地图。(6)内部搜索引擎。10.1 WebApp项目开发概述项目开发概述 6) 配置测试 配置的可变性和不稳定性是测试的重要因素。主要测试常用客户端和服务器端配置,确保用户在所有配置中的体验一样,并将特定于特殊配置的错误分离出来。 7)安全性测试 安全性测试将一系列设计的测试合并,模拟攻击WebApp及其环境中的弱点,验证其安全性。WebApp的安全性测试区域主要包括:安全性测试区域主要

25、包括: (1)测试有效和无效的用户名和密码。 (2) WebApp是否有超时的限制。 (3)日志文件是至关重要。 (4)使用安全套接字时。 (5)测试无授权可否在服务器端放置和编辑脚本。测试网站的数据安全能力和抗攻击能力,包括测试网站的数据安全能力和抗攻击能力,包括: (1)网站网络环境安全测试。 (2)系统软件安全测试。 (3)客户端应用程序安全测试。 (4)服务器端应用程序安全测试。 (5)防御能力测试。10.1 WebApp项目开发概述项目开发概述 10.1.6 WebApp项目管理 1)构建WebApp项目团队 开发大型的WebApp需要有一个具有强有力的团队,开发人员所具有的技能和知

26、识层次结构可组成一个由管理、技术和人员交流技能构成的三维技能空间。管理技能包括调整、规划和将Web系统与已经存在的信息系统集成;技术技能包括计算、网络和Internet通讯;人员交流技能包括图形设计、布局、人员通讯、表达技能等。开发人员可分为开发人员可分为6类:Web决策人员(如项目经理)、内容提供人员、Web开发人员、Web发布人员、Web支持人员、Web管理人员。其结构如图10-9所示。其成员可属于不同类别,分别承担不同的任务。 图10-9 Web项目团队结构10.1 WebApp项目开发概述项目开发概述。 2)软件项目管理原则进行WebApp项目管理的指导原则,主要有项目管理的指导原则,

27、主要有6项:(1)启动项目。(2)选择外包供应商。(3)评估报价的正确性和估算的可靠性。(4)理解所期望或实现的项目管理程度。(5)确定开发进度。(6)管理范围。3) 配置管理 对于WebApp配置管理,主要注重解决注重解决4个问题:内容、人员、可伸缩个问题:内容、人员、可伸缩性和关联控制。性和关联控制。10.2 Web商品进销存信息系统商品进销存信息系统 10.2.1 系统需求分析1. 系统开发的背景 随着信息化社会经济发展方式的转变,企业面临着激烈竞争,改善内部及整个供应链各环节的管理、调度及资源配置,迅速适应客户新需求和市场新机遇成为决定性因素。企业是一个充分利用资源(人、财、物、信息和

28、时间),创造价值的机构,ebApp可对这些资源进行计划、调度、控制、衡量、改进的管理技术和支持。商品进销存是企业供销的重要部门,是WebApp主要组成部分。开发和使用合理的WebApp,有效地控制存储、检索和资源有效利用,有助于让产、供、销、财务形成一个统一的整体,从而使企业处于全面受控状态,压缩投资规模,加快资金周转,降低产品成本和不必要的原料和在商品积压。10.2 Web商品进销存信息系统商品进销存信息系统 2. 系统的可行性分析 WebApp项目研发目的项目研发目的是:利用计算机网络和数据库技术,使企业生产、库存和销售能够有利结合起来,产销存衔接,提高企业的效率和效益。主要任务主要任务包

29、括:(1)适用性。(2)经济性。(3)整体性。(4)功能需求。(5)性能需求。(6)安全保密性。(7)用户界面需求。(8)环境需求。10.2 Web商品进销存信息系统商品进销存信息系统 3 系统功能需求分析 1)需求问题提出 以前,企业通过手工或单机维护“数据表”管理进货与库存等数据。使用中遇到很多问题,包括: (1)文件级共享,共享性差,安全性低; (2)实时性差,“数据表”中的内容只有及时保存后,其他电脑才能读到,另外,不能允许两个以上的人同时更新库存文件; (3)查询、统计等操作不方便; (4)以前根本不能实现Web网上订购功能。 2)功能需求分析 在数据库服务器及SQL Server

30、2008中,创建商品进销存管理数据库,在数据库上建立各关系模式对应的库表,并确定主键、索引、参照完整性、用户自定义完整性等。10.2 Web商品进销存信息系统商品进销存信息系统 (1)C/S模式实现的库存管理系统功能需求: 对各原始数据表实现输入、修改、删除、添加、查询、打印等基本操作; 方便及时多用户地录入商品、进货、工具等入出库单数据; 方便查阅、核对入出库单数据,并能方便维护商品、进货、工具等入出库单原始数据; 以组合方式快速查阅商品、进货、工具等入出库单原始数据; 按一键完成对库存、按月或分日对商品、进货的统计; 自动产生商品或进货的实时库存; 以树型结构或表格方式方便查阅各类各种商品

31、或进货的实时库存; 由分类统计值,反查其明细清单; 将主要表或查询信息按需导出到“数据表”中,支持原有手工处理要求,导出到“数据表”的数据能用于保存或排版打印等需要; 分级别用户管理; 月份设定与统计管理;10.2 Web商品进销存信息系统商品进销存信息系统 高级管理员的管理操作如:系统数据的备份与恢复、系统用户的维护、动态SQL命令操作、系统日志查阅等; 系统设计成传统的Windows多文档多窗口操作界面,要求系统具有操作方便、简捷等特点; 用户管理功能,包括用户登录、注册新用户、更改用户密码等功能; 其他你认为子系统应有的查询、统计功能; 要求所设计系统界面友好,功能安排合理,操作使用方便

32、,并能进一步考虑子系统在安全性、完整性、并发控制、备份恢复等方面的功能要求。(2)B/S模式实现的网上订购系统功能需求: 实现网上用户的注册与登录,登录用户的管理; 方便查阅(如分页查询)商品及库存信息,方便商品选购; 实现基本的购物车功能; 完成订购、实现网上支付过程,并自动产生订购明细数据,产生商品10.2 Web商品进销存信息系统商品进销存信息系统 要求Web网页系统要运行稳定、可靠,操作简单、方便。 3)库存管理系统C/S模式要求基于以上系统涉及的处理数据,C/S模式实现的库存管理系统具体涉及到问题:(1)方便及时多用户地录入商品、进货、工具等入出库单数据;(2)方便查阅、核对入出库单

33、数据,并方便维护商品、进货、工具等入出库单原始数据;(3)以组合方式快速查阅商品、进货、工具等入出库单原始数据;(4)按一键完成对库存、按月或分日对商品、进货的统计(5)自动产生商品或进货的实时库存;(6)以树型结构或表格方式方便查阅各类各种商品或进货的实时库存;(7)由分类统计值,反查其明细清单;(8)将主要表或查询信息按需导出到“数据表”中,支持原有手工处理要求,导出到“数据表”的数据能用于保存或排版打印等需要;(9)分级别用户管理;(10)月份设定与统计管理等。 10.2 Web商品进销存信息系统商品进销存信息系统 4)业务流程及数据流图 在认真调查分析有关信息需求的基础上, 通过对We

34、b订购子系统的业务流程图分析,可得到其中“网上订购”部分的数据流图,如图10-10所示。图10-10 Web订购子系统中“网上订购”数据流图 10.2 Web商品进销存信息系统商品进销存信息系统 库存管理业务处理的商品库存管理子系统的业务流程图,如图10-11。从而得到数据流图。图10-11 库存管理子系统业务流程图 10.2 Web商品进销存信息系统商品进销存信息系统 5)系统数据字典 数据流图主要用于描述数据与处理的关系,数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。以下数据字典卡

35、片的形式来举例说明。 (1)“商品入库单”数据结构: 名字:商品入库单 别名:商品生产量 描述:每天生产或加工车间,以入库单形式来记录其产量,并登记入库 定义:商品入库单=入库单号+类别+规格+材质+单位+生产车间+成本+日期+入库值+经办人 位置:保存到入出库表或打印保存10.2 Web商品进销存信息系统商品进销存信息系统 (2)“商品入库单商品入库单”数据结构之数据项数据结构之数据项:名字:入库单号 名字:类别别名:序号 别名:商品类别名描述:唯一标识某商品入库的数字编号 描述:商品的第一大分类名定义:整型数 定义:字符型汉字名称,汉字数=100次 存取方式:联机处理、检索与更新、顺序检索

36、与随机检索 数据流图表达了数据和处理的关系,数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。以下数据字典卡片的形式来举例说明。“商品入库单”数据结构: 名字:商品入库单 别名:商品生产量 描述:每天生产或加工车间,以入库单形式来记录其产量,并登记入库 定义:商品入库单=入库单号+类别+规格+材质+单位+生产车间+成本+ 日期+入库值+经办人 位置:保存到入出库表或打印保存10.2 Web商品进销存信息系统商品进销存信息系统 (5)处理过程 处理过程的具体处理逻辑一般用判定表或判定树来描述

37、。数据字典中只需要描述处理过程的说明性信息。如“实时商品库存计算”的处理过程说明如下: 处理过程名:实时商品库存计算 说明:随着入库单、出库单的不断输入,要能实时计算出当前各商品的库存 输入:入库单数据流,来自生产车间;出库单数据流,来自销售部门销售 输出:计算出各商品当前库存 处理:商品库存计算的功能就是实时计算商品库存,处理频度:每小时20-40次,每当有入库单数据流或出库单数据流发生都要引发库存计算事务,计算库存涉及的数据:每小时4kb-10kb,希望在发生入库或出库信息时实时计算库存。10.2 Web商品进销存信息系统商品进销存信息系统 6)具体处理的主要数据B/S模式实现的网上订购系

38、统的具体处理的主要数据要求: (1)可以实现网上用户的注册与登录,登录用户的管理; (2)方便查阅(如分页查询)商品及库存信息,方便商品选购 (3)实现基本的购物车具体功能; (4)完成订购、实现网上支付过程,并自动产生订购明细数据,产生商品Web销售对应的出库记录;自动更改商品库存; (5)事后能查阅个人的历史订单及明细数据; (6)具有商务网站基本功能:网站公告、系统简介、用户信息维护、找回密码、联系、友情链接等。C/S与B/S两类系统共用同一个数据库,数据间紧密依赖、密切关联与联动,数据库则集中存放在企业服务器上的SQL Server 2008的DBMS中。7)系统需要管理的实体信息 1

39、0.2.2 系统设计 1)数据库概念结构设计根据实体联系分析可以画出基于Web进销 存信息系统的E-R图,如图10-12所示。10.2 Web商品进销存信息系统商品进销存信息系统 图10-12 Web进销存信息系统E-R图 10.2 Web商品进销存信息系统商品进销存信息系统 由实体之间的联系,可画出各实体的E-R图,如图10-13至图10-18所示。可建立相应关系数据表。 图10-13 现有库存实体E-R图 图10-14 入库实体E-R图图10-17 设备库存实体E-R图 图10-18 计划采购实体E-R 10.2 Web商品进销存信息系统商品进销存信息系统 实体与实体间的关系E-R图,如图

40、10-19所示。图10-19 实体之间关系E-R图10.2 Web商品进销存信息系统商品进销存信息系统 2)系统功能模块设计 (1)主要功能模块。库存系统包含6个主要功能模块,即系统模块、入库业务管理模块、出库业务管理模块、退料业务管理模块(还库业务管理模块)、盘点业务管理模块(报表输出)、需求管理模块。对于每个功能模块,都包含数据录入、编辑、查询、统计、打印、应急、帮助等功能。 (2)开发步骤。开发一个典型数据库应用程序,需要3个步骤:数据库设计、GUI用户界面设计和业务逻辑实现。后面将具体介绍相关步骤,GUI设计通常需要和业务逻辑交替进行。 对Web网上订购子系统的功能进行集中、分类,按照

41、结构化程序设计的要求,可得出子系统的功能模块图如图10-20,而库存管理子系统各项功能模块如图10-21所示。10.2 Web商品进销存信息系统商品进销存信息系统 图10-20 Web网上订购子系统一级功能模块图 图10-21 库存管理子系统功能模块图 10.2 Web商品进销存信息系统商品进销存信息系统 3)操作流程设计 网上订购系统运行时通常可以按照如图 10-22所示的操作流程进行操作。 4)数据库设计 按照实体-联系图转化为关系模式的方法,本系统共使用到至少23个关系模式(含4个辅助关系),在此只给出23个表名:Web订单表(weborders);Web订单明细表 weborderde

42、tails);Web用户表(webuser);Web购买折扣表(webdiscount);Web支付方式表(Webpaydefault);Web即时信息表(webmessage);商品年月设置表tccpny);商品入出库表(tccprck);10.2 Web商品进销存信息系统商品进销存信息系统 图10-22 网站操作流程示意图 10.2 Web商品进销存信息系统商品进销存信息系统 商品实时库存表(tccpsskc);月累计库存表(tccptj);商品月区段库存表(tccpkctj);月商品明细库存表(tccpkc200412);进货年月设置表tcplny);进货入出库表(tcplrck);进货

43、实时库存表(tcplsskc);进货累计库存表(tcpltj);进货月区段库存表(tcplkctj);进货月区段库存表2(tcplkctj2);月进货明细库存表(tcplkc200412);工具库存表(tcmjkc);系统用户表 (users);日志表(logs);系统参数表(tcsyspara)。数据库库表关系图如图10-23所示。10.2 Web商品进销存信息系统商品进销存信息系统 【注意】表索引对性能的影响以及是否采用,需要通过实际系统的运行比较进行判定。图10-23 系统数据库库表关系图10.2 Web商品进销存信息系统商品进销存信息系统 10.2.3 系统实现 1. 主窗体及其菜单

44、(1)库存管理子系统的主窗体。以库存管理子系统为例,采用了多文档界面,为此需在本系统项目中添加一个多文档窗体,命名为frmmain.在主窗体中,可加入主菜单、工具栏与状态栏等,如图10-24。图10-24 库存管理子系统的主界面10.2 Web商品进销存信息系统商品进销存信息系统 (2)主窗体的菜单。在主窗体中,单击鼠标右键,选择弹出式菜单中的“menu editor”命令,创建如图10-25所示的应用系统菜单结构。图10-25 库存管理主窗体菜单 10.2 Web商品进销存信息系统商品进销存信息系统 2. 主要模块的实现 1)商品出库或入库录入模块 企业商品的采购入库录入窗口,其运行界面(只

45、列出子窗口,以下同)示意图,如图10-26所示。出库或入库录入组合查询窗口如图10-27所示。 图10-26 商品采购入库录入窗口 图10-27 商品出库或入库组合查询窗口10.2 Web商品进销存信息系统商品进销存信息系统 2)商品月明细库存生成与查询模块 商品月明细库存生成与查询模块的运行界面如图10-29所示,模块实现简述:利用组合条件实现查询,能方便并快速地查找到信息。 系统年月设置表控制着商品月明细库存的天数范围及对月明细库存表的创建、生成、结转、删除等管理功能,图10-28及图10-29所示的窗口简明地实现了这些功能。10.2 Web商品进销存信息系统商品进销存信息系统 图10-2

46、8 商品明细库存生成与查询模块运行界面 图10-29 系统年月设置表的控制功能10.2 Web商品进销存信息系统商品进销存信息系统 3)商品实时库存计算与组合查询模块 商品实时库存计算与组合查询模块的运行界面如图10-30所示,模块实现简述:本功能窗体被设计成上下两部分,上部分数据网格控件显示查到的库存记录;下部分可组合6种条件。商品实时库存树形查询窗体,如图10-31所示。 图10-30 商品实时库存组合查询窗体 图10-31 商品实时库存树形查询窗体10.2 Web商品进销存信息系统商品进销存信息系统 4)商品进销存统计模块 商品进销存统计模块的运行界面如图10-32所示,模块主要实现商品

47、进货、销售、库存和结余统计(主要包含月产量、销量及结余等)与显示,及月商品间段库存统计(主要包含期初值、生产量、销售量、销量及期末值等)与显示功能。 图10-32 商品进销存统计报表窗口10.3 Web书城信息系统书城信息系统 10.3.1可行性分析1)技术可行性建立Web书城信息系统(简称网上书城0的技术方面,从计算机及网络硬件及软件资源方面都可行。在软件开发方面,本系统是一个基于ASP、VBScript 和SQL Server 2008的Web应用程序。2)经济可行性(1) 费用支出。主要包括3个方面: 在基建投资上; 其他一次支出; 经常性支出。(2) 经济效益。(3) 投资回收周期。3

48、)社会可行性(1) 法律方面的可行性。(2) 使用方面的可行性。4)结论10.3 Web书城信息系统书城信息系统 10.3.2 软件需求分析 Web书城是一种高质量、更快捷方便的购书方式。Web书城不仅可用于图书的再线销售,也有音碟、影碟的在线销售和相关广告宣传与链接导航。而且网站式的书店对图书的管理更加合理化、信息化、现代化。售书的同时还具有书籍类商品管理、购物车、订单管理、会员管理等功能,非常灵活的网站内容和文章管理功能。 开发一个Web书城,采用结构化设计分析方法,该系统包括前台购书和后台管理两大总的模块,后台管理模块又包括分类录入书籍(以及书籍的相关信息,如名称、页数、摘要、目录等)和

49、管理前台用户,前台管理模块包括用户登录,查询、浏览书籍,以及购书功能。本网站的所有会员都可以特价买书,新用户可通过注册成为本网站的会员,并可定购书籍和查询订单。10.3 Web书城信息系统书城信息系统 1)系统功能需求开发一个基于WEB的Web书城信息系统。具体功能包括:(1) 浏览功能:所有人员都可以浏览图书馆的图书信息。(2) 读者注册:读者在借书之前需要办理借书证,获得登陆系统密码。(3) 借还功能:合法借书者可以借、还图书和杂志。(4) 借书管理:管理员可以进行注册更改注销借书者信息等维护工作。(5) 读者登录系统,通过系统完成续借和预约图书和杂志功能。(6) 统计功能:包括对读者借书

50、情况、图书情况的统计功能 2)系统结构分析 Web书城管理系统的结构,可以划分为两个部分。如图10-33 所示。 系统前台管理和系统后台管理。10.3 Web书城信息系统书城信息系统 系统前台管理和系统后台管理。 图图10-33 Web书城信息系统功能结构10.3 Web书城信息系统书城信息系统 (1)系统前台。如图10-34 所示。图10-34 系统前台结构图10.3 Web书城信息系统书城信息系统 (2)系统后台。如图10-35 所示。图10-35 系统后台结构图3)系统数据流图Web书城管理系统主要处理模块的数据流程图,如图10-36 至图10-40所示。图10-36 顶层数据流程图10

51、.3 Web书城信息系统书城信息系统 图10-37 购书系统细化分析数据流程图图10-38 “书处理”的细化 10.3 Web书城信息系统书城信息系统 图10-39 “支付处理”的细化图10-40 “配送”的细化 10.3 Web书城信息系统书城信息系统 4)软件系统数据字典 以下仅以图10-41至图10-42,订书处理的1层数据流图为例,其相对应的数据字典为:数据源点及汇点描述:加工逻辑词条描述:数据流名词条描述:数据文件词条描述。 网上图书销售的数据字典,主要通过以下几个部分进行描述。 (1)数据存储。三个数据表的数据存储,如表10-3所示。10.3 Web书城信息系统书城信息系统 表10

52、-3 数据表的数据存储名字别名描述定义位置用户表会员表记录会员的个人基本情况用户表=会员id+姓名+联系方式+家庭住址+登录密码Web书城数据库管理员表管理员表记录会员的个人基本情况管理员表=管理员id+职位+联系方式+姓名+登录密码Web书城数据库图书表图书表记录所卖书的基本信息图书表=图书id+名称+出处+作者+出版日期Web书城数据库(2)数据结构。三个数据表的数据结构,如表10-4所示。10.3 Web书城信息系统书城信息系统 表10-4 数据表的数据结构名字别名定义位置会员id会员号,编号会员id=会员申请日期+会员个人编号会员申请日期=8数字字符8会员个人编号=5数字字符5用户表管

53、理员id管理员号,管理员编号管理员id=部门编号+职工个人编号部门编号=2数字字符2职工个人编号=5数字字符5管理员表图书 id图书号,图书编号图书id=种类编号+编号种类编号=2数字字符2编号=5数字字符5图书表(3)数据元素。用户表、管理员表和Web书城数据库的数据元素,如表10-5所示 10.3 Web书城信息系统书城信息系统 表10-5 数据元素 名字别名描述定义位置姓名昵称1字符8用户表、管理员表Web书城数据库联系方式联系方式手机、电子邮件或电话联系方式12数字型12|8数字型8用户表、管理员表Web书城数据库职位职位1汉字4用户表、管理员表Web书城数据库密码登陆密码6字符6用户

54、表、管理员表Web书城数据库出处出版社1汉字15图书表Web书城数据库作者编辑者1汉字4图书表Web书城数据库10.3 Web书城信息系统书城信息系统 5)实体联系图Web书城的实体联系图。如图10-41所示。图10-41 Web书城系统E-R图10.3 Web书城信息系统书城信息系统 6)状态转换图Web书城的状态转换图。如图10-42所示。图10-42 Web书城系统状态转换图 10.3 Web书城信息系统书城信息系统 10.3.3 软件设计1. 子系统设计 1)子系统功能 (1)提供了全面,详细的图书购物入口,轻松实现快捷购买。 (2)可以通过不同分类进行导航,用最方便,最快捷的方式找到

55、你需要的图书。 (3)提供了图书购物所需的各种工具与网站,满足你的图书购买需求。 (4)公正性很强 (大站.专站.小站)排列顺序分明.公平公正的图书网址TOP排行榜。 10.3 Web书城信息系统书城信息系统 2)子系统流程图经过系统需求分析,可以设计并画出Web书城子系统流程图,如图10-43所示。图10-43 Web书城子系统流程图10.3 Web书城信息系统书城信息系统 3)子系统模块设计(1)书籍管理模块。(2)用户管理模块。(3)销售统计模块。(4)商品查询模块。(5)商品浏览模块。(6)购物车模块。10.3 Web书城信息系统书城信息系统 2. 数据结构设计(1)books表。数据

56、结构的books表,如表10-6所示。 表10-6 books表10.3 Web书城信息系统书城信息系统 (2) user表。数据结构的user表,如表10-7所示。 表10-7 user表10.3 Web书城信息系统书城信息系统 3.网站模块及界面设计1)网站模块接口网上书店的网站模块及其接口,如图10-44所示。图10-44网站模块及其接口10.3 Web书城信息系统书城信息系统 书店模块书店主界面书籍查看畅销书籍新书上架书籍详细介绍用户用户登陆用户注册找回密码用户注销购物车查看购物车支付金额管理员后台主界面后台用户管理前台用户管理前台用户详细信息书籍分类管理书籍查看书籍修改书籍添加 (2

57、)界面功能设计。如表10-7所示。10.3.4 软件实现 鉴于篇幅有限,主要概要简介界面的实现。1)Web书城主界面Web书城主界面,如图10-45所示。图10-45 Web书城页面 10.3 Web书城信息系统书城信息系统 在主页面用户可以登陆,注册,找回密码,查询书籍等。点击相应的超链接即可。2)书籍查询 书籍查询可按书名、作者、出版社等关键字进行查询,在输入框中输入相应的信息,点击“搜索”即可,转到相应的书籍。Web书城书籍查询界面,如图10-46所示。10.3 Web书城信息系统书城信息系统 图10-46 书籍查询界面 10.3 Web书城信息系统书城信息系统 3)畅销书籍 畅销书籍页

58、面,可以分门别类地列出大量最近最受欢迎的各种书籍信息,通过点击即可查询浏览。4)最新书籍 最新书籍页面是最近新添书籍,可以让用户了解最近新书。5)书籍详细介绍 书籍详细介绍页面是对一本书的详细介绍,包括书名、作者、价格、评论。6)用户登陆 在用户登陆时要输入用户名、密码,还有验证码。如果信息合法,则进入登陆成功页面。用户注册及会员登录界面如图10-47所示。10.3 Web书城信息系统书城信息系统 图10-47 用户注册及会员登录界面10.3 Web书城信息系统书城信息系统 7)登陆成功 用户登陆成功后,会在登陆窗口上显示“*用户,欢迎您!”的提示。8)登录失败 如果登陆失败,会谈出对话框提示密码错误,会提示用户重新登陆。9)找回密码 用户要找回密码,需要回答问题或向注册的邮箱/手机发送信息,重新输入找回的密码。10)用户注册 用户注册,需要输入用户名、密码、确认密码、电子邮箱、问题、问题答案。然后进行提交。11)查看购物车 查看购物车,可查看书籍的数量及总价等,也可删除或重新购物,最后经过确认付款结账。如图10-48所示

温馨提示

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

评论

0/150

提交评论