版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第10章WebApp开发综合案例
/课程设计
软件工程与实践目录
10.2Web商品进销存信息系统2
10.3Web书城信息系统3
10.4本章小结4
10.1WebApp项目开发概述1
10.5课程设计任务书及评价5教学目标及重点
教学目标●了解Web工程及与传统软件工程的区别●理解WebApp的概念、特点和开发过程●掌握WebApp的分析、设计和测试方法●掌握WebApp综合开发方法及课程设计重点重点10.1WebApp项目开发概述10.1.1WebApp的特点及类型1.WebE的概念及与传统项目的区别1998年YogeshDeshpande和SteveHansen提出了Web工程(简称WebE)的概念,是指按计划进行的网络综合性工作。基于Web的系统和应用简称WebApp,不同于其他计算机软件,而是基于web的系统与“页面排版和软件开发、市场和预算、内部交流和外部联系以及艺术和技术间”综合作用的产物。
开发一个Web商品进销存信息系统,为计划、采购、销售、库存和管理提供方便,实现进销存信息资源优化,有效地提高工作效率。采用C/S结构的基于WebService的进销存系统,选择VS2015与SQLServer2014开发环境,以C#编程语言完成,按照软件工程方法,首先对系统进行了需求分析,在进行系统的总体设计的基础上进行编程实现。.NET平台内建立对WebService支持,包括WebService构建和使用,可在应用程序集成或其他场合被重用。系统总体的功能有商品基本计划、采购、销售、库存、查询、统计、增删改和相关管理等。案例10-110.1WebApp项目开发概述WebE与传统软件工程区别,主要体现6个方面,并如表10-1所示:(1)WebApp强调信息的含量,传统软件工程则强调系统功能的完善;(2)WebApp关注视觉和感觉,传统的软件界面则奉行“简单为美”原则;(3)多数WebApp是数据驱动,传统的软件开发多是功能驱动或过程驱动;(4)WebApp适应不同的用户,传统软件系统的用户群体则常圈定在某个范围之内;(5)WebApp应在短期内开发完成,很难用传统软件工程中的形式化方法和测试技术;(6)WebE要求技术、艺术和科学在更大范围内相互结合。10.1WebApp项目开发概述比较内容传统项目小型WebApp项目大型WebApp项目需求收集严格的受限制的严格的技术规格说明模型、规格说明健全总体描述UML、模型、规格说明健全项目持续时间以月或年为度量单位以天、周或月为度量单位以月或年为度量单位测试和质量保证致力于取得质量目标致力于风险控制重视所有的SQA活动风险管理明确的内部的明确的可交付使用的期限18个月或更长3-6个月或更短3-12个月或更短发布过程严格的快速的严格的发布后客户的反馈需要大量的主动工作以用户交互中自动获得自动获得及由请求反馈获得表10-1WebApp与传统软件项目的区别软件质量保证10.1WebApp项目开发概述2.WebApp的特点WebApp的特点具有8个方面:(1)网络密集性(Networkintensiveness)。(2)并发性(Concurrency)。(3)无法预测的负载量(Unpredictableload)。(4)性能敏感性(Performancesensitive)。(5)高可用性(Highavailability)。(6)数据驱动(Datadriven)。(7)内容敏感(Contentsensitive)。(8)持续演化(Continuousevolution)。WebApp驱动持续演化的过程的特征:
①即时性。
②安全性。
③美观性。
WebApp的开发具有3个特点:WebApp常以增量的方式进行开发;经常发生变化;期限较短。因此,整个WebE过程也与这些特点相适应。10.1WebApp项目开发概述3.WebApp主要应用类型在WebApp中,主要应用类型包括:(1)信息型。利用网站的简单导航和链接提供信息资源。(2)交互型。通过聊天室、公告牌或即时消息等进行信息传递。(3)面向事务型。用户提交一个由WebApp完成的请求,如订货单。(4)面向服务型。应用程序向用户提供服务,如确定抵押支付。(5)门户型。应用程序引导用户到链接的其他应用信息或服务。(6)数据库访问型。用户查询某大型数据库并提取信息。(7)数据仓库型。用户查询一组大型数据库并提取信息。(8)用户输入型。基于表格的输入是满足通信需要的主要机制。(9)可定制型。用户定制电子期刊等内容以满足特定需要。(10)下载型。用户通过网站从合适的服务器下载信息。10.1WebApp项目开发概述10.1.2WebApp开发任务、过程和方法1.WebApp开发任务和过程WebApp的分散性和交互性,使其开发遵从一定的开发规范、技术标准和流程,以保证整个开发团队协调一致的工作,从而提高开发工作效率,提升项目质量。WebApp开发需要过程模型、适合WebApp开发特点的技术和方法。过程、技术(工具)和方法称为WebE的三要素。WebE过程及WebApp开发流程根据WebE的特点,可构建WebE过程框架,如图10-1所示。(1)沟通交流(Communication)。在WebE过程中,沟通交流的特点有3种WebE活动:规划(Formulation)、提取(Elicitation)和协商(Negotiation)。(2)计划(Planning)。做出由一个任务定义和一个时间表组成的WebApp增量式项目开发计划。(3)建模(Modeling)。软件项目和设计应与WebApp开发相适应,然后并入WebApp建模活动中。(4)构建(Construction)。利用Web工具和技术构建已建模的WebApp,并可快速测试暴露设计问题及时调整及修改。10.1WebApp项目开发概述(5)部署(Deployment)。在实际开发过程中,WebApp开发的目标是按时、保质、保量完成预期交付软件。通常WebApp开发采用增量的迭代模型,其开发流程与传统软件开发项目的过程类似,具体WebApp开发流程,如图10-2所示。主要任务包括:①对问题进行定义及陈述交流;②制定项目协议/合同及计划/方案;③分析需求;④设计体系结构、导航、接口;⑤使用Web开发工具实现WebApp;⑥测试及发布。图10-1WebApp开发过程框架10.1WebApp项目开发概述图10-2WebApp开发流程10.1WebApp项目开发概述2.WebApp开发技术及方法1)技术和工具建立高质量的WebApp,需要三种技术:(1)基于部件的开发。(2)安全性技术。(3)Internet标准HTML和XML。2)WebE方法WebE方法主要有以下5种:(1)交流方法。(2)需求分析方法。(4)设计方法。(5)测试方法。可扩展10.1WebApp项目开发概述10.1.3WebApp需求分析1.WebApp需求分析的任务WebApp的需求分析有3个任务:表述问题、收集需求和分析建模,在表述问题期间主要确定WebApp的目的和目标,并定义用户种类。收集需求主要通过调研等确定具体功能、内容、界面等需求,并以分析建模进行具体描述。主要进行4种分析:①内容分析;②交互分析;③功能分析;④配置分析。分析重点是解决3个重要问题:①表达或处理的信息内容;②为最终用户提供的功能;③WebApp表达内容和执行功能时,表现的行为,可将问题的回答表示为分析模型的一部分。
10.1WebApp项目开发概述2.WebApp需求分析模型WebE根据自身特点,将分析模型分为:1)内容分析模型对WebE基础的内容进行分析。内容模型包含结构元素,为WebApp的内容需求提供一个重要的视图。其结构元素包含内容对象(如,文本、图形图像、照片、视频图橡、音频),其内容对象是WebApp的一部分。2)交互分析模型交互模型由4种元素组成:用例、顺序图、状态图、用户界面原型。(1)用例。(2)顺序图。(3)状态图。(4)用户界面原型。10.1WebApp项目开发概述3)功能分析模型功能模型描述WebApp的两个处理元素,各元素代表过程抽象的2个不同层次:(1)用户可观察到由WebApp传递给最终用户的功能。(2)分析类中实现与类相关的行为的操作。
4)配置分析模型客户端软件提供的基础设施,使用户可从所在位置访问。通常,浏览器用于显示从服务器下载的内容和功能。应针对各种浏览器特性及配置(配置模型的部分详细说明),对WebApp进行彻底测试。10.1WebApp项目开发概述5)关系导航分析模型关系导航分析(Relationship-navigationanalysis,RNA)提供一系列分析步骤,主要分析各网页之间的关系。RNA方法可以分成5步:(1)用户分析。(2)元素分析。(3)关系分材。(4)导航分析。(5)评估分析。10.1WebApp项目开发概述10.1.4WebApp设计1.WebApp设计的目标要求WebApp设计的目标要求,包括7个方面:(1)简单性。(2)一致性。(3)相符性。(4)健壮性。(5)导航性。(6)视觉吸引。(7)兼容性。10.1WebApp项目开发概述2.WebApp的设计活动WebApp设计可分为6种活动:构件设计、体系结构设计、导航设计、内容设计、美观设计和界面设计。每种设计都影响整体质量,可用金字塔表示,如图10-3所示。1)构件设计WebApp经过发展逐渐形成为模板化功能化.处理功能主要包括:数据库查询及其他操作;与外部企业系统的数据接口;用户的注册和认证。为了重复利用这些功能,应设计和构建一些程序构件,同普通软件在形式上一致.利用构件技术,可便于组建各种WebApp。2)体系结构设计体系结构的设计主要定义WebApp超媒体结构、设计模式、设计模板、内容设计。设计模式为解决某些问题的一般性方法。如在WebApp中处理数据功能时,可用体系结构和构件级设计模式。超文本级的设计模式着重导航特征的设计,允许用户以流畅的方式在WebApp内容间移动。图10-3WebApp设计金字塔模型10.1WebApp项目开发概述
体系结构的设计与WebApp的目标、内容、导航原则紧密相关。体系结构主要分为4种:线性结构、网格结构、层次结构和网状结构。(1)线性结构。当内部交互可预测顺序时,Web内容串形相连,常选择线型结构。这种结构简单,但缺乏灵活性。如图10-4所示。(2)网格结构:当WebApp内容可分类地组织成二维或更高维时,可采用网格结构,如图10-5所示。这种结构有很大灵活性,但也容易带来混乱。
图10-4线性结构图10-5网格结构10.1WebApp项目开发概述
(3)层次结构。如图10-6是最常见的体系结构。其结构可设计成使控制流水平地穿过垂直分支(超文本分支)的方式。在此结构中左边展示的内容可由超文本链接其他分支的内容,实现内容快速导航。(4)网络结构。如图10-7在很多方面类似于面向对象系统的体系结构。对结构构件(网页)进行设计,使构件可将控制传递(以超文本链接)到系统中的其他部件,使导航相对灵活。
图10-6层次结构图10-7网络结构10.1WebApp项目开发概述
体系结构线性结构网格结构层次结构特点结构比较固定Web内容一维化Web内容多维化最常见的结构优点简单有极大的灵活性有较大的灵活性缺点灵活性不高很容易带来混乱易混乱例子订单大型网站普通网站4种类型的体系结构,比较如表10-2所示。表10-2不同的体系结构比较10.1WebApp项目开发概述
3)导航设计导航设计的主要过程为:①识别用户角色,不同的用户角色可获得不同的内容和服务。如注册客户、特权客户可获得不同级别的信息和服务;②为每一类用户角色确定访问目标;③为每类用户的每个访问目标设计最佳的导航路径。导航设计还要解决使用各种辅助手段使导航更容易方便。在导航设计时,应为同类用户建立一个语义导航单元,以便后继的管理。4)内容设计对内容对象建模后,编写对象传递的信息并对其格式化,尽量满足用户需求。常以所提供信息的概要描述和内容对象的类型说明设计内容对象。10.1WebApp项目开发概述
5)美观及布局设计美观设计又称美工(学)设计,包括颜色配置、几何图案设计、文字大小字体和位置、图形使用等。在布局及设计中,主要考虑全局颜色配置、字体、字号、风格、样式、补充媒体(音频、视频、动画)的使用,以及其他美观元素。在设计时应进行布局规划。在设计布局时,主要基本原则是:(1)巧用空间。(2)重视内容。(3)顺序组织布局元素。(4)组织导航、内容和功能。(5)不要以滚动条扩展空间。(6)浏览器窗口大小。10.1WebApp项目开发概述
6)界面设计界面设计包括屏幕布局、交互模式定义和导航机制描述。界面设计应考虑3个方面:用户目前位置、操作及可导向的目标。并注重6项基本原则:(1)页面速度。(2)页面正确。(3)菜单和界面风格统一。(4)链接指示明显。(5)界面功能清晰。(6)常用表格等工具。10.1WebApp项目开发概述
10.1.5WebApp测试技术和方法应先测试最终用户所见内容和界面,再对体系结构及导航设计等方面进行测试。最后,转到测试技术能力、WebApp基础设施及安装或实现方面。WebApp测试过程,如图10-8所示。1.内容测试用于检验WebApp提供信息的正确性、准确性和相关性。信息的正确性指信息的可靠性非误传,避免误解与纠纷;准确性指是否有语法或拼写错误。内容测试目的是发现内容方面的错误。除了检查静态内容,还应检测从数据库所维护的数据中导出的动态内容。
图10-8WebApp测试过程10.1WebApp项目开发概述
2.界面测试界面测试的总体策略是:①发现与特定的界面机制相关的错误;②发现界面实现导航语义方式的错误、功能性错误或内容显示错误。用户与WebApp以界面机制交互,测试的主要内容为:(1)链接测试。(2)表单测试。(3)Cookies测试。(4)客户端脚本测试。(5)动态HTML测试。(6)弹出窗口测试。(7)CGI脚本测试。(8)流动内容测试。(9)界面机制的应用。使网页具有记忆功能数据包通用网关接口10.1WebApp项目开发概述
3.性能测试性能测试用于发现性能方面的问题,其产生原因是:服务器端资源缺乏、不合适的网络带宽及数据库数量,不完善或不当的操作系统能力,功能设计不当,可能导致客户-服务器性能下降的其他软硬问题。性能测试的目的:①了解系统如何对负载作出反应;②收集度量数据,这些数据将促使修改设计,从而使性能的大改善。性能测试策略,包括以下3个方面(1)连接速度测试。(2)负载测试。(3)压力测试。4.构件级测试构件级测试也称功能测试,通过集中测试,试图发现WebApp功能方面的错误。每个功能都是一个软件模块,可用黑盒技术对其进行测试。构件级测试用例常受表单级的输入驱动。10.1WebApp项目开发概述
5.导航测试导航描述了用户在一个页面内操作的方式。主要检测WebApp是否易于导航:导航是否直观?Web系统的主要部分是否可通过主页存取?Web系统是否需要站点地图、搜索引擎或其他的导航帮助?在一页面上放太多信息常起到相反效果。导航测试的目的始终是确保在WebApp上线前发现导航功能方面的错误。测试每个导航都执行了预期功能:(1)导航链接。(2)重定向。(3)书签。(4)框架和框架集。(5)站点地图。(6)内部搜索引擎。10.1WebApp项目开发概述
6.配置测试配置的可变性和不稳定性是测试的重要因素。主要测试常用客户端和服务器端配置,确保用户在所有配置中的体验一样,并将特定于特殊配置的错误分离出来。7.安全性测试安全性测试将一系列设计的测试合并,模拟攻击WebApp及其环境中的弱点,验证其安全性。WebApp的安全性测试区域主要包括:(1)测试有效和无效的用户名和密码。(2)WebApp是否有超时的限制。(3)日志文件是至关重要。(4)使用安全套接字时。(5)测试无授权可否在服务器端放置和编辑脚本。测试网站的数据安全能力和抗攻击能力,包括:(1)网站网络环境安全测试。(2)系统软件安全测试。(3)客户端应用程序安全测试。(4)服务器端应用程序安全测试。(5)防御能力测试。10.1.6WebApp项目管理1.构建WebApp项目团队开发大型WebApp需要一个具有强有力的团队,开发人员具有的技能和知识层次结构,可组成一个由管理、技术和人员交流技能构成的三维技能空间.管理技能包括调整、规划和将Web系统与已经存在的信息系统集成;技术技能包括计算、网络和Internet通讯;人员交流技能包括图形设计、布局、人员通讯、表达技能等.开发人员可分为6类:Web决策人员(如项目经理)、内容提供人员、Web开发人员、Web发布人员、Web支持人员、Web管理人员.其结构如图10-9所示.其成员可属于不同类别,分别承担不同的任务。
10.1WebApp项目开发概述
图10-9Web项目团队结构10.1WebApp项目开发概述。2.软件项目管理原则进行WebApp项目管理的指导原则,主要有6项:(1)启动项目。(2)选择外包供应商。(3)评估报价的正确性和估算的可靠性。(4)理解所期望或实现的项目管理程度。(5)确定开发进度。(6)管理范围。3.配置管理对于WebApp配置管理,主要注重解决4个问题:内容、人员、可伸缩性和关联控制。10.2Web商品进销存信息系统10.2.1系统需求分析1.系统开发的背景随着信息化社会经济发展方式的转变,企业面临着激烈竞争,改善内部及整个供应链各环节的管理、调度及资源配置,迅速适应客户新需求和市场新机遇成为决定性因素。企业是一个充分利用资源(人、财、物、信息和时间),创造价值的机构,WebApp可对这些资源进行计划、调度、控制、衡量、改进的管理技术和支持。商品进销存是企业供销的重要部门,是WebApp主要组成部分。开发和使用合理的WebApp,有效地控制存储、检索和资源有效利用,有助于让产、供、销、财务形成一个统一的整体,从而使企业处于全面受控状态,压缩投资规模,加快资金周转,降低产品成本和不必要的原料和在商品积压。10.2Web商品进销存信息系统2.
系统的可行性分析WebApp项目研发目的是:利用计算机网络和数据库技术,使企业生产、库存和销售能够有利结合起来,产销存衔接,提高企业的效率和效益。主要任务包括:(1)适用性。(2)经济性。(3)整体性。(4)功能需求。(5)性能需求。(6)安全保密性。(7)用户界面需求。(8)环境需求。10.2Web商品进销存信息系统3系统功能需求分析1)需求问题提出以前,企业通过手工或单机维护“数据表”管理进货与库存等数据。使用中遇到很多问题,包括:(1)文件级共享,共享性差,安全性低;(2)实时性差,“数据表”中的内容只有及时保存后,其他电脑才能读到,另外,不能允许两个以上的人同时更新库存文件;(3)查询、统计等操作不方便;(4)以前根本不能实现Web网上订购功能。
2)功能需求分析在数据库服务器及SQLServer2014中,创建商品进销存管理数据库,在数据库上建立各关系模式对应的库表,并确定主键、索引、参照完整性、用户自定义完整性等。10.2Web商品进销存信息系统(1)C/S模式实现的库存管理系统功能需求:●对各原始数据表实现输入、修改、删除、添加、查询、打印等基本操作;●方便及时多用户地录入商品、进货、工具等入出库单数据;●方便查阅、核对入出库单数据,并能方便维护商品、进货、工具等入出库单原始数据;●以组合方式快速查阅商品、进货、工具等入出库单原始数据;●按一键完成对库存、按月或分日对商品、进货的统计;●自动产生商品或进货的实时库存;●以树型结构/表格方式方便查阅各类各种商品或进货的实时库存;●由分类统计值,反查其明细清单;●将主要表或查询信息按需导出到“数据表”中,支持原有手工处理要求,导出到“数据表”的数据能用于保存或排版打印等需要;●分级别用户管理;●月份设定与统计管理;10.2Web商品进销存信息系统●高级管理员的管理操作如:系统数据的备份与恢复、系统用户的维护、动态SQL命令操作、系统日志查阅等;●系统设计成传统的Windows多文档多窗口操作界面,要求系统具有操作方便、简捷等特点;●用户管理功能,包括用户登录、注册新用户、更改用户密码等功能;●其他子系统应有的查询、统计功能;●要求所设计系统界面友好,功能安排合理,操作使用方便,并能进一步考虑子系统在安全性、完整性、并发控制、备份恢复等方面的功能要求。(2)B/S模式实现的网上订购系统功能需求:●实现网上用户的注册与登录,登录用户的管理;●方便查阅(如分页查询)商品及库存信息,方便商品选购;●实现基本的购物车功能;●完成订购、实现网上支付过程,并自动产生订购明细数据,产生商品●要求Web网页系统要运行稳定、可靠,操作简单、方便。10.2Web商品进销存信息系统3)库存管理系统C/S模式要求基于以上系统涉及的处理数据,C/S模式实现的库存管理系统具体涉及到问题:(1)方便及时多用户地录入商品、进货、工具等入出库单数据;(2)方便查阅、核对入出库单数据,并方便维护商品、进货、工具等入出库单原始数据;(3)以组合方式快速查阅商品、进货、工具等入出库单原始数据;(4)按一键完成对库存、按月或分日对商品、进货的统计(5)自动产生商品或进货的实时库存;(6)以树型结构或表格方式方便查阅各种类商品或进货的实时库存;(7)由分类统计值,反查其明细清单;(8)将主要表或查询信息按需导出到“数据表”中,支持原有手工处理要求,导出到“数据表”的数据能用于保存或排版打印等需要;(9)分级别用户管理;(10)月份设定与统计管理等。
10.2Web商品进销存信息系统4)业务流程及数据流图在认真调查分析有关信息需求的基础上,通过对Web订购子系统的业务流程图分析,可得到其中“网上订购”部分的数据流图,如图10-10所示。图10-10Web订购子系统中“网上订购”数据流图10.2Web商品进销存信息系统库存管理业务处理的商品库存管理子系统的业务流程图,如图10-11。从而得到数据流图。图10-11库存管理子系统业务流程图10.2Web商品进销存信息系统5)系统数据字典数据流图主要用于描述数据与处理的关系,数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。以下数据字典卡片的形式来举例说明。(1)“商品入库单”数据结构:名字:商品入库单别名:商品生产量描述:每天生产或加工车间,以入库单形式来记录其产量,并登记入库定义:商品入库单=入库单号+类别+规格+材质+单位+生产车间+成本+日期+入库值+经办人位置:保存到入出库表或打印保存10.2Web商品进销存信息系统(2)“商品入库单”数据结构之数据项:名字:入库单号名字:类别别名:序号别名:商品类别名描述:某商品入库的数字编号描述:商品的第一大分类名定义:整型数定义:字符型汉字名称,汉字数<=3位置:商品入库表、商品入出库表位置:商品入库表、商品入出库表、商品库存表、各统计表,以及其他数据项的定义略(3)数据流数据流是数据结构在系统内传输的路径。前面已画出的数据流图能较好地反映出数据的前后流动关系,除此外还能描述为(以“入库单数据流”来说明):数据流名:入库单数据流说明:“商品入库单”数据结构在系统内的流向数据流来源:管理员接收事务数据流去向:库存处理事务平均流量:每天几十次高峰期流量:每天上百次10.2Web商品进销存信息系统(4)数据存储数据存储是数据结构停留或保存的地方,也是数据流的来源和去向之一。它可以是手工文档或手工凭单,也可是计算机文档。对数据存储的描述通常包括(以入库表数据存储为例):数据存储名:入库表说明:入库单数据,作为原始数据需要保存与备查编号:入库单为唯一标识,顺序整数,从1开始每次增加1输入的数据流:入库单数据流,来自生产车间.10.2Web商品进销存信息系统输出的数据流:出库单数据流,用于销售部门销售数据结构:“商品入库单”、“商品出库单”、“商品库存”数据量:一天,100*100=10000字节存取频度:每小时存取更新10-20次,查询>=100次存取方式:联机处理、检索与更新、顺序检索与随机检索数据流图表达了数据和处理的关系,数据字典则是系统中各类数据描述的集合,是进行详细的数据收集和数据分析所获得的主要成果。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程五个部分。以下数据字典卡片的形式来举例说明。“商品入库单”数据结构:名字:商品入库单别名:商品生产量描述:每天生产或加工车间,以入库单形式来记录其产量,并登记入库定义:商品入库单=入库单号+类别+规格+材质+单位+生产车间+成本+日期+入库值+经办人位置:保存到入出库表或打印保存10.2Web商品进销存信息系统(5)处理过程处理过程的具体处理逻辑一般用判定表或判定树来描述。数据字典中只需要描述处理过程的说明性信息。如“实时商品库存计算”的处理过程说明如下:处理过程名:实时商品库存计算说明:随着入库单、出库单的不断输入,要能实时计算出当前各商品的库存输入:入库单数据流,来自生产车间;出库单数据流,来自销售部门销售输出:计算出各商品当前库存处理:商品库存计算的功能就是实时计算商品库存,处理频度:每小时20-40次,每当有入库单数据流或出库单数据流发生都要引发库存计算事务,计算库存涉及的数据:每小时4kb-10kb,希望在发生入库或出库信息时实时计算库存。10.2Web商品进销存信息系统
6)具体处理的主要数据B/S模式实现的网上订购系统的具体处理的主要数据要求:(1)可以实现网上用户的注册与登录,登录用户的管理;(2)方便查阅(如分页查询)商品及库存信息,方便商品选购(3)实现基本的购物车具体功能;(4)完成订购、实现网上支付过程,并自动产生订购明细数据,产生商品Web销售对应的出库记录;自动更改商品库存;(5)事后能查阅个人的历史订单及明细数据;(6)具有商务网站基本功能:网站公告、系统简介、用户信息维护、找回密码、联系、友情链接等。C/S与B/S两类系统共用同一个数据库,数据间紧密依赖、密切关联与联动,数据库则集中存放在企业服务器上的SQLServer2014的DBMS中。
7)系统需要管理的实体信息(P333-334)10.2Web商品进销存信息系统图10-12Web进销存信息系统E-R图10.2.2系统设计1.数据库概念结构设计根据实体联系分析可以画出基于Web进销存信息系统的E-R图,如图10-12所示。10.2Web商品进销存信息系统由实体之间的联系,可画出各实体的E-R图,如图10-13至图10-18所示。可建立相应关系数据表。
图10-13现有库存实体E-R图图10-14入库实体E-R图图10-17设备库存实体E-R图图10-18计划采购实体E-R10.2Web商品进销存信息系统实体与实体间的关系E-R图,如图10-19所示。图10-19实体之间关系E-R图10.2Web商品进销存信息系统2.系统功能模块设计(1)主要功能模块。库存系统包含6个主要功能模块,即系统模块、入库业务管理模块、出库业务管理模块、退料业务管理模块(还库业务管理模块)、盘点业务管理模块(报表输出)、需求管理模块。对于每个功能模块,都包含数据录入、编辑、查询、统计、打印、应急、帮助等功能。(2)开发步骤。开发一个典型数据库应用程序,需要3个步骤:数据库设计、GUI用户界面设计和业务逻辑实现。后面将具体介绍相关步骤,GUI设计通常需要和业务逻辑交替进行。对Web网上订购子系统的功能进行集中、分类,按照结构化程序设计的要求,可得出子系统的功能模块图如图10-20,而库存管理子系统各项功能模块如图10-21所示。10.2Web商品进销存信息系统图10-20Web网上订购子系统一级功能模块图图10-21库存管理子系统功能模块图10.2Web商品进销存信息系统
3)操作流程设计网上订购系统运行时,通常可以按照如图10-22所示的操作流程进行操作。4)数据库设计按照E-R图转化为关系模式方法,系统共用到至少23个关系模式(含4个辅助关系),在此只给出23个表名:Web订单表,Web订单明细表;Web用户表;Web购买折扣表(webdiscount);Web支付方式表(Webpaydefault);Web即时信息表(webmessage);商品年月设置表tccpny);商品入出库表(tccprck)(转下页);图10-22网站操作流程示意图10.2Web商品进销存信息系统商品实时库存表(tccpsskc);月累计库存表(tccptj);商品月区段库存表(tccpkctj);月商品明细库存表(tccpkc200412);进货年月设置表tcplny);进货入出库表(tcplrck);进货实时库存表(tcplsskc);进货累计库存表(tcpltj);进货月区段库存表(tcplkctj);进货月区段库存表2(tcplkctj2);月进货明细库存表(tcplkc200412);工具库存表(tcmjkc);系统用户表(users);日志表(logs);系统参数表(tcsyspara)。数据库库表关系图如图10-23所示。10.2Web商品进销存信息系统【注意】表索引对性能的影响以及是否采用,需要通过实际系统的运行比较进行判定。图10-23系统数据库库表关系图10.2Web商品进销存信息系统10.2.3系统实现
1.主窗体及其菜单(1)库存管理子系统的主窗体。以库存管理子系统为例,采用了多文档界面,为此需在本系统项目中添加一个多文档窗体,命名为frmmain.在主窗体中,可加入主菜单、工具栏与状态栏等,如图10-24。图10-24库存管理子系统的主界面10.2Web商品进销存信息系统(2)主窗体的菜单。在主窗体中,单击鼠标右键,选择弹出式菜单中的“menueditor…”命令,创建如图10-25所示的应用系统菜单结构。图10-25库存管理主窗体菜单
10.2Web商品进销存信息系统
2.主要模块的实现1)商品出库或入库录入模块企业商品的采购入库录入窗口,其运行界面(只列出子窗口,以下同)示意图,如图10-26所示。出库或入库录入组合查询窗口如图10-27所示。
图10-26商品采购入库录入窗口图10-27商品出库或入库组合查询窗口10.2Web商品进销存信息系统
2)商品月明细库存生成与查询模块商品月明细库存生成与查询模块的运行界面如图10-29所示,模块实现简述:利用组合条件实现查询,能方便并快速地查找到信息。系统年月设置表控制着商品月明细库存的天数范围及对月明细库存表的创建、生成、结转、删除等管理功能,图10-28及图10-29所示的窗口简明地实现了这些功能。
图10-28商品明细库存生成与查询模块运行界面图10-29系统年月设置表的控制功能10.2Web商品进销存信息系统
3)商品实时库存计算与组合查询模块商品实时库存计算与组合查询模块的运行界面如图10-30所示,模块实现简述:本功能窗体被设计成上下两部分,上部分数据网格控件显示查到的库存记录;下部分可组合6种条件。商品实时库存树形查询窗体,如图10-31所示。
图10-30商品实时库存组合查询窗体图10-31商品实时库存树形查询窗体10.2Web商品进销存信息系统
4)商品进销存统计模块商品进销存统计模块的运行界面如图10-32所示,模块主要实现商品进货、销售、库存和结余统计(主要包含月产量、销量及结余等)与显示,及月商品间段库存统计(主要包含期初值、生产量、销售量、销量及期末值等)与显示功能。
图10-32商品进销存统计报表窗口10.3Web图书商城信息系统
10.3.1可行性分析1.技术可行性建立Web书城信息系统(简称网上书城0的技术方面,从计算机及网络硬件及软件资源方面都可行。在软件开发方面,本系统是一个基于ASP、VBScript和SQLServer2014的Web应用程序。2.经济可行性(1)费用支出。主要包括3个方面:①在基建投资上;②其他一次支出;③经常性支出。(2)经济效益。(3)投资回收周期。3.社会可行性(1)法律方面的可行性。(2)使用方面的可行性。4.结论 10.3.2软件需求分析Web书城是一种高质量、更快捷方便的购书方式。Web书城不仅可用于图书的再线销售,也有音碟、影碟的在线销售和相关广告宣传与链接导航。而且网站式的书店对图书的管理更加合理化、信息化、现代化。售书的同时还具有书籍类商品管理、购物车、订单管理、会员管理等功能,非常灵活的网站内容和文章管理功能。开发一个Web书城,采用结构化分析设计方法,该系统包括前台购书和后台管理两大总的模块,后台管理模块又包括分类录入书籍(以及书籍的相关信息,如名称、页数、摘要、目录等)和管理前台用户,前台管理模块包括用户登录,查询、浏览书籍,以及购书功能。本网站的所有会员都可以特价买书,新用户可通过注册成为本网站的会员,并可定购书籍和查询订单。10.3Web图书商城信息系统
1)系统功能需求开发一个基于WEB的Web书城信息系统。具体功能包括:(1)浏览功能:所有人员都可以浏览图书馆的图书信息。(2)读者注册:读者在借书之前需要办理借书证,获得登陆系统密码。(3)借还功能:合法借书者可以借、还图书和杂志。(4)借书管理:管理员可进行注册更改注销借书者信息等维护.(5)读者登录系统,通过系统完成续借和预约图书和杂志功能。(6)统计功能:包括对读者借书情况、图书情况的统计功能2)系统结构分析Web书城管理系统的结构,可以划分为两个部分。如图10-33所示。系统前台管理和系统后台管理。10.3Web图书商城信息系统系统前台管理和系统后台管理。
图10-33Web书城信息系统功能结构10.3Web图书商城信息系统(1)系统前台。如图10-34所示。图10-34系统前台结构图10.3Web图书商城信息系统(2)系统后台。如图10-35所示。图10-35系统后台结构图3)系统数据流图Web书城管理系统主要处理模块的数据流程图,如图10-36至图10-40所示。图10-36顶层数据流程图10.3Web图书商城信息系统图10-37购书系统细化分析数据流程图图10-38“书处理”的细化10.3Web图书商城信息系统图10-39“支付处理”的细化图10-40“配送”的细化10.3Web图书商城信息系统4)软件系统数据字典以下仅以图10-41至图10-42,订书处理的1层数据流图为例,其相对应的数据字典为:数据源点及汇点描述:加工逻辑词条描述:数据流名词条描述:数据文件词条描述。网上图书销售的数据字典,主要通过以下几个部分进行描述。(1)数据存储。三个数据表的数据存储,如表10-3所示。名字别名描述定义位置用户表会员表记录会员的个人基本情况用户表=会员id+姓名+联系方式+家庭住址+登录密码Web书城数据库管理员表管理员表记录会员的个人基本情况管理员表=管理员id+职位+联系方式+姓名+登录密码Web书城数据库图书表图书表记录所卖书的基本信息图书表=图书id+名称+出处+作者+出版日期Web书城数据库表10-3数据表的数据存储10.3Web图书商城信息系统(2)数据结构。三个数据表的数据结构,如表10-4所示。表10-4数据表的数据结构名字别名定义位置会员id会员号,编号会员id=会员申请日期+会员个人编号会员申请日期=8{数字字符}8会员个人编号=5{数字字符}5用户表管理员id管理员号,管理员编号管理员id=部门编号+职工个人编号部门编号=2{数字字符}2职工个人编号=5{数字字符}5管理员表图书id图书号,图书编号图书id=种类编号+编号种类编号=2{数字字符}2编号=5{数字字符}5图书表10.3Web图书商城信息系统(3)数据元素。用户表、管理员表和Web书城数据库的数据元素,如表10-5所示
表10-5数据元素名字别名描述定义位置姓名昵称1{字符}8用户表、管理员表Web书城数据库联系方式联系方式手机、电子邮件或电话联系方式12{数字型}12|8{数字型}8用户表、管理员表Web书城数据库职位职位1{汉字}4用户表、管理员表Web书城数据库密码登陆密码6{字符}6用户表、管理员表Web书城数据库出处出版社1{汉字}15图书表Web书城数据库作者编辑者1{汉字}4图书表Web书城数据库10.3Web图书商城信息系统5)实体—联系图Web书城的实体—联系图。如图10-41所示。图10-41Web书城系统E-R图10.3Web图书商城信息系统6)状态转换图Web书城的状态转换图。如图10-42所示。图10-42Web书城系统状态转换图10.3Web图书商城信息系统10.3.3软件设计1.子系统设计1)子系统功能(1)提供了全面,详细的图书购物入口,轻松实现快捷购买。(2)可以通过不同分类进行导航,用最方便,最快捷的方式找到你需要的图书。(3)提供了图书购物所需的各种工具与网站,满足你的图书购买需求。(4)公正性很强(大站.专站.小站)排列顺序分明.公平公正的图书网址TOP排行榜。10.3Web图书商城信息系统10.3Web书城信息系统2)子系统流程图经过系统需求分析,可以设计并画出Web书城子系统流程图,如图10-43所示。图10-43Web书城子系统流程图10.3Web书城信息系统3)子系统模块设计(1)书籍管理模块。(2)用户管理模块。(3)销售统计模块。(4)商品查询模块。(5)商品浏览模块。(6)购物车模块。2.数据结构设计(1)books表。数据结构的books表,如表10-6所示。表10-6books表(2)user表。数据结构的user表,如表10-7所示。表10-7user表10.3Web图书商城信息系统3.网站模块及界面设计1)网站模块接口网上书店网站模块及其接口,如图10-44所示。图10-44网站模块及其接口
2)界面功能设计。如表10-8所示。书店模块书店主界面书籍查看畅销书籍新书上架书籍详细介绍用户用户登陆用户注册找回密码用户注销购物车查看购物车支付金额管理员后台主界面后台用户管理前台用户管理前台用户详细信息书籍分类管理书籍查看书籍修改书籍添加10.3Web图书商城信息系统10.3.4软件实现鉴于篇幅有限,主要概要简介界面的实现。1)Web书城主界面Web书城主界面,如图10-45所示。图10-45Web书城页面
10.3Web图书商城信息系统在主页面用户可以登陆,注册,找回密码,查询书籍等。点击相应的超链接即可。2)书籍查询书籍查询可按书名、作者、出版社等关键字进行查询,在输入框中输入相应的信息,点击“搜索”即可,转到相应的书籍。Web书城书籍查询界面,如图10-46所示。图10-46书籍查询界面10.3Web图书商城信息系统3)畅销书籍畅销书籍页面,可以分门别类地列出大量最近最受欢迎的各种书籍信息,通过点击即可查询浏览。4)最新书籍最新书籍页面是最近新添书籍,可以让用户了解最近新书。5)书籍详细介绍书籍详细介绍页面是对一本书的详细介绍,包括书名、作者、价格、评论。6)用户登陆在用户登陆时要输入用户名、密码,还有验证码。如果信息合法,则进入登陆成功页面。用户注册及会员登录界面如图10-47所示。10.3Web图书商城信息系统图10-47用户注册及会员登录界面10.3Web图书商城信息系统7)登陆成功用户登陆成功后,会在登陆窗口上显示“***用户,欢迎您!”的提示。8)登录失败如果登陆失败,会谈出对话框提示密码错误,会提示用户重新登陆。9)找回密码用户要找回密码,需要回答问题或向注册的邮箱/手机发送信息,重新输入找回的密码。10)用户注册用户注册,需要输入用户名、密码、确认密码、电子邮箱、问题、问题答案。然后进行提交。11)查看购物车查看购物车,可查看书籍的数量及总价等,也可删除或重新购物,最后经过确认付款结账。如图10-48所示。图10-48查看购物车10.3Web图书商城信息系统12)后台主界面在后台主界面,管理员点击相应的链接就可以进行管理。包括书籍管理、用户管理、分类管理。13)后台用户管理后台用户管理,可以删除管理员,添加管理员。14)前台用户管理前台用户管理页面,管理员可以查看用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 海康威视内部制度
- 煤矿内部市场化价格制度
- 煤矿材料跟踪组内部制度
- 环保局完善内部管理制度
- 理财公司内部激励制度
- 监理内部规划交底制度
- 科室内部会诊管理制度
- 管制刀具店内部制度
- 篮球馆内部规章制度模板
- 贸易内部结算价制度
- 可持续采购培训课件
- 2026年宠物行业白皮书
- 2026年及未来5年中国半导体键合设备行业市场全景监测及投资战略咨询报告
- 2026及未来5年中国混凝土外加剂行业市场全景调研及发展趋向研判报告
- 小产权房放弃合同范本
- 2026年江西信息应用职业技术学院单招职业技能考试题库附答案详解
- DB3210∕T 1204-2025 方巷裔家牛肉制作技艺
- 工程塑料项目可行性分析报告范文(总投资18000万元)
- 2026年一年级下学期语文教学工作计划2篇
- 2026年浙江纺织服装职业技术学院单招职业适应性测试题库及答案1套
- COPD患者护理新技术应用与展望
评论
0/150
提交评论