第12章 Web工程_第1页
第12章 Web工程_第2页
第12章 Web工程_第3页
第12章 Web工程_第4页
第12章 Web工程_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

1、软件工程软件工程 第第12章章 Web工程工程 Web工程工程 uYogesh Deshpande和Steve Hansen在1998年就 提出了Web工程的概念。 uWeb工程作为一门新兴的学科,提倡使用一个 过程和系统的方法来开发高质量的基于Web的 系统。 uWeb工程使用合理的、科学的工程和管理原则, 用严密的和系统的方法来开发、发布和维护基 于Web的系统。 主要内容主要内容 u 基于Web系统和应用的属性 u Web工程过程 u Web分析 u Web设计 u Web测试 主要内容主要内容 u Web工程过程 u Web分析 u Web设计 u Web测试 基于基于Web系统和应用

2、的属性系统和应用的属性 uWeb工程不是软件工程的完全克隆,但是它借 用了软件工程的许多基本概念和原理,强调了 相同的技术和管理活动 uWebApp :Web的系统和应用 uWeb系统和应用:不同于其他类别的计算机软 件。基于web的系统是“页面排版和软件开发、 市场和预算、内部交流和外部联系以及艺术和 技术间”综合作用的产物 基于基于Web系统和应用的属性系统和应用的属性 u绝大多数WebApp中都要考虑下列属性 1.网络集约 (network intensive) 2.并发(Concurrency) 3.不可预测的登陆(Unpredictable load) 4.性能(Performanc

3、e) 5.可用性(Availability) 6.数据驱动 (Data driven) 7.内容敏感(content sensitive) 8.持续演化(continuous evolution) 基于基于Web系统和应用的属性系统和应用的属性 uWebApp的特征驱动 持续演化 的过程 1.即时性 开发者必须想一些办法来做计划、分析、设计、编码、测试,以适 应WebApp开发时间紧的要求 2.安全性 在整个支持某WebApp的基础设施和应用本身内部必须实现强的安 全措施 3.美学 一个WebApp的吸引力的一个不可否认的部分是其观感 基于基于Web系统和应用的属性系统和应用的属性 u 在We

4、b工程中,最常见的应用类别: 1.信息型:使用简单的导航和链接提供只读的内容。 2.下载型:用户从合适的服务器下载信息。 3.可定制型:用户定制内容以满足特定需要。 4.交互型:一个用户群落通过聊天室、公告牌或即时消息传递 来通信。 基于基于Web系统和应用的属性系统和应用的属性 u 在Web工程中,最常见的应用类别: 用户输入型:基于表格的输入是满足通信需要的主要机制。 面向事务型:用户提交一个由WebApp完成的请求(如下订 单)。 面向服务型:应用向用户提供服务(如帮助用户确定抵押支 付)。 门户型:引导用户到在本门户应用范围之外的其他内容或服 务。 数据库访问型:用户查询某大型数据库并

5、提取信息。 数据仓库型:用户查询一组大型数据库并提取信息。 主要内容主要内容 u 基于Web系统和应用的属性 u Web分析 u Web设计 u Web测试 Web 工程过程 uWebApp的开发具有如下特点: 1.WebApp常常以增量的方式去开发 2.变化经常发生 3.期限较短 u因此整个Web工程过程也与这些特点相适应。 Web 工程过程过程框架 u整个Web工程过程框架包括: 1.客户交流 2.计划 3.建模 4.构建 5.部署 Web 工程过程过程框架 1. 客户交流客户交流 在Web工程过程中,客户交流以两个主要的任务为主要特 点商业分析和规划。 商业分析为WebApp定义了商业/

6、组织背景,预测商业环境 或需求中的潜在变化,定义WebApp和其他商业应用程序、 数据库及功能的整合。 规划是一个收集包括所有参与者信息的需求。另外,尽 量去找出那些不确定的区域及哪里将会出现一些潜在的 变化 Web 工程过程过程框架 计划计划 作出WebApp增量式项目计划。这个计划由一个任务定义 和一个时间表组成(常常数周之内)。在这一时期内, 要做出WebApp的开发计划 建模建模 常见的软件工程和设计的任务要和WebApp开发相适应、 相融合、然后并入WebApp建模活动中去 Web 工程过程过程框架 构建构建 使用Web工具和技术去构建已被建模的WebApp。一旦构 建了WebApp

7、,就会使用一系列快速测试去暴露出设计中 的错误 部署部署 把WebApp配置成适合于它所运行的环境,并把它发送给 终端用户。而后就开始进入评估阶段了。最后把评估反 馈给Web工程团队 Web 工程过程改善框架工程过程改善框架 u 改善框架 Web工程过程模型必须具有一定的适应性。 C一些情况下,一个框架活动会非正式地实施。 C其他的时候,一系列不同的任务将会被定义,并被团队成员去 执行。 C每种情况中,团队有责任在分配好的时间内完成高质量的 WebApp增量。 需要着重指出的是:与需要着重指出的是:与Web工程框架活动相关联的一些工程框架活动相关联的一些 任务,任务,可以被可以被修改、消除、或

8、基于问题、产品、工程及修改、消除、或基于问题、产品、工程及 Web工程团队人员的特征进行工程团队人员的特征进行扩展扩展。 Web工程中有用的规则工程中有用的规则 u如果去做一些企业级的WebApp,下面的一些 基本的规则应比较适用 1.即使WebApp的细节是模糊的,也要花一些时间去 理解商业需求和产品目标 2.用基于用况的方法,去描述用户如何与WebApp交 互 项目计划和跟踪 去指导分析和设计模型 作为测试设计的重要基础 Web工程中有用的规则工程中有用的规则 1.做一个项目计划(即便很简短); 2.花些时间去建模要做的东西 ; 3.考察模型的一致性和质量 ; 4.使用一些能使你去构建带有

9、尽可能多可重用组建 的系统的工具和技术 ; 5.设计一些综合性的测试,并在系统发布前执行它 们 。 方法和工具方法和工具 uWeb工程方法包括一系列能适用Web工程师理 解、特征化、而后做出一个高质量WebApp的 技术性任务。 uWeb工程方法一般包括如下几种: 1.交流方法交流方法:定义了能便于Web工程师和所有 WebApp投资者(如:终端用户、商业客户、问题 域专家、内容设计者、团队领导、项目经理)交 流的方法 方法和工具方法和工具 u Web工程方法一般包括如下几种:工程方法一般包括如下几种: 需求分析方法需求分析方法:提供了理解被WebApp所传送内容 的基础。了解提供给终端用户的

10、功能,以及各类 用户通过WebApp进行相互作用的模式。 设计方法设计方法:包括一系列表现WebApp内容、应用和 信息结构、界面设计及浏览结构的设计技术。 测试方法测试方法:包括正式的对内容和设计的模式、及 一系列包括构件级和结构问题、浏览测试、可用 性测试、安全性测试和配置测试的技术评审 内容摘要内容摘要 u 基于Web系统和应用的属性 u Web工程过程 u Web设计 u Web测试 Web的分析类别的分析类别 uWeb工程的分析特点 1.内容分析 2.交互分析 3.功能分析 4.配置分析 5.导航关系分析 Web的分析类别的分析类别 1.内容分析:因为Web工程以内容为基础,所以需要

11、 对Web工程的内容进行分析,其中的内容包括工程 中所有可见可听到的要素,通常包括文字、图形、 图像、音频和视频 2.交互分析:主要解决用户和系统之间的交互问题, 分析时会用到下面四种单元:用况图、顺序图、 状态图、用户界面原型 Web的分析类别的分析类别 功能分析:与交互分析类似,交互分析主要涉及Web工程 操作。用户可见的功能包括任何可以直接由用户操作的功 能 配置分析:主要对工程所涉及的环境和基础设施进行详细 的描述,其中基础设施主要包括构件基础设施和数据库将 被用于生成内容的程度 导航关系分析:主要分析各个页面之间的关系。可以通过 对用户的分析和对页面单元的分析来进行 分析元素分析元素

12、 u从分析元素来分,可以将Web工程分为CRC卡 片,用况图,及其它UML图 1.CRC (class responsibility-collaborator,类-责任-协作者)卡片: 提供了一种简单的标识和组织与系统或产品需求相关的类 的手段 2.用况图:一个描述软件如何被用于给定情形的场景 3.其它UML图:UM是用于对象建模和对象分析时使用的 一种工具 主要内容主要内容 一基于Web系统和应用的属性 二Web工程过程 三Web分析 五Web测试 Web设计设计 一Web设计主要可分为 1.体系结构设计 2.导航设计 3.界面设计 二一个良好的Web设计需要满足以下要求 1.设计要尽可能的

13、简单 2.布局要尽可能的美观 3.整体的一致性 体系结构设计体系结构设计 体系结构设计 1.线性结构 2.网格结构 3.层次结构 线性结构 网格结构 体系结构设计体系结构设计 u不同的体系结构比较 体系结构体系结构线性结构线性结构网格结构网格结构层次结构层次结构 特点结构比较固定 Web内容一维化 Web内容多维化最常见的结构 优点简单有极大的灵活性有较大的灵活性 缺点灵活性不高很容易带来混乱易混乱 例子订单大型网站普通网站 导航设计导航设计 u导航设计,主要可以分为两部分 1.可以对不同的用户权限给出不同的导航路径 2.给同一类用户一个共同的导航语义 u在导航设计时,需要为同一类用户建立一个

14、语 义导航单元,这样方便后继的管理。 u在导航设计时,需要考虑建立合适的导航约定 和帮助。 界面设计界面设计 uWeb工程中界面在用户心目中具有非常重要的 地位。界面可以说是Web工程给人的第一印象, 只有让用户对第一印象产生好感觉时,用户才 有可能使用WEB工程的其它功能导航和 内容。 u所有的用户界面需要易使用,易操作,直观, 一致。除此之外,界面还要求有助于用户浏览, 界面需要显示用户当前所在的网站或工程的路 径。 界面设计界面设计 uWeb界面设计要考虑的三个问题: 1.浏览者目前的位置 2.浏览者目前可以进行的操作 3.浏览者可以导向的目标 界面设计界面设计 uGoogle简洁的界面

15、 界面设计界面设计 uWEB工程的设计原则 1.页面速度 2.页面正确 3.所有的菜单和界面的风格应该统一 4.链接指示应明显 5.界面功能明显清晰 6.通常都需要使用表格等工具 组件级设计组件级设计 uWeb应用程序逐渐形成变得模板化,功能化。 这种处理功能主要包括 1.数据库查询以及其它操作 2.与外部企业系统的数据接口 3.用户的注册和认证 uWeb工程师必须设计和构建一些程序组件,它 们和普通软件在形式上是一致的。利用构件技 术,可以很方便地组建各种不同的Web应用程 序。 组件级设计组件级设计 u理想的构件模型 界面组件 逻辑组件 数 据 库 组 件 网 络 组 件 用 户 管 理

16、组 件 并 发 处 理 组 件 主要内容主要内容 u 基于Web系统和应用的属性 u Web工程过程 u Web分析 u Web设计 质量评判标准质量评判标准 u通常采用下面的一些原则来测试和评价 WebApp的质量 1.内容测试可以从句法和语义两个层次来评价; 2.功能测试可以发现不符合用户需求的错误; 3.结构评估是为了确保它恰当地展现了WebApp的内容和功能, 确保它是可扩展的,确保能支持新的内容或功能 ; 4.易用性测试是为了确保每个不同的用户群能被WebApp界面 支持,能学会并运用所有需要的导航用法和意义 . 质量评判标准质量评判标准 导航测试是为了确保所有的导航用法和意义都被实

17、现以便发现导航 错误 性能测试必须在各种各样的操作条件、配置和负载下进行,确保系 统能响应用户的交互操作,能在可接受的性能下降的条件下处理极 端的负载量 兼容性测试就是在客户机和服务器上设定不同的配置条件下执行 WebApp 协同工作测试是为了确保WebApp能很好地与其他的应用程序和数据 库交互 安全性测试就是评估潜在的易攻击性,任何一个成功的入侵都认为 是安全方面的失败 在在WebApp环境下出现的错误环境下出现的错误 uWebApp测试中的独特的错误特征: 1.WebApp测试发现的错误,一开始都是显现在客户 端(如,某个浏览器或PDA或手机),所以web工 程师看到的只是问题的表象,而

18、不是其实质 2.一个WebApp运行在许多不同的配置条件及各种各 样的环境下,所以脱离某个错误最初产生时的环 境,重现这个错误是很困难甚至是不可能的 在在WebApp环境下出现的错误环境下出现的错误 一些错误是由于错误的设计和不恰当HTML(或其 他的程序语言)编码所导致,但许多错误都与 WebApp的配置有关 因为WebApp是一个客户机/服务器的结构,所以很 难横跨客户端、服务器和网络这三层来分析错误产 生的原因。 一些错误是因固有的操作环境所致(如,正在进行 测试的某个特殊的配置),另一些可归咎于多变的 操作环境(如,瞬间的资源装载或者与时间相关的 错误) 测试策略测试策略 u 广泛采用WebApp测试策略 1. 重新审查WebApp内容模型,发现可能的错误。 2. 重新审查接口模型,确保能适应所有的使用条件。 3. 重新审查设计模型,发现

温馨提示

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

评论

0/150

提交评论