第8章软件工程与网站设计内容回顾对Session的理解利用Session的自定义属性保存信息Cookie是怎样工作的向浏览器输出CookieGlobal.asax配置文件ASP.NET运行配置文件内容提要介绍面向对象系统的分析与设计,介绍了目前最常用的建模语言UML以及如何用Rose绘制。介绍常用项目评价标准:CMM(CapabilityMaturityModelForSoftware)和ISO9001。介绍电子商务网站的设计与开发,利用这个案例进一步巩固本书前面各章节的内容。面向对象的项目分析与设计概述系统分析(SystemAnalysis)的主要任务是分析问题论域,找出问题解决方案,发现对象,分析内部构成和外部关系,建立软件系统的模型。系统设计(SystemDesign)的主要任务是根据已经确定的系统模型,进行软件体系、流程的设计。OOA(ObjectOrientedAnalysis)就是面向对象系统分析,OOD(ObjectOrientedDesign)就是面向对象系统设计,统称为OOAD。UML(UnifiedModelingLanguage:统一建模语言)是目前最好的OOAD工具。面向对象建模语言与建模工具目前面向对象建模语言一般采用国际上最流行的UML语言建模工具一般目前专业的设计工具:RationalRose。UML发展史自20世纪70年代面向对象技术出现以后,面向对象技术在软件业界得到了广泛的应用。为了解决复杂软件系统的开发,纷纷推出了各种面向对象的软件工程方法,比较流行的有Booch、Rumbaugh(OMT)、Jacoboson(OOSE)、Coad-Yourdon等等方法,它们各有长处,也各有缺陷。UML发展史1994-1996年软件工程学家GradyBooch、IvarJacobson和JamesRumbaugh先后到Rational公司携手合作,以各自原有的方法为基础,并吸收其他方法的长处,共同提出了统一建模语言UML。UML0.9草案在1996年6月发布,它结合了三人方法的主要技术。1997年1月Rational公司向美国工业标准化组织OMG递交了UML1.0标准版本。1997年11月OMG宣布接受UML,并正式颁布了UML1.1作为官方的标准文本,此后,OMG的修改任务组(RevisionTaskForce:RTF)的专家负责对UML不断进行扩充与完善,相继推出了UML1.2、UML1.3、UML1.4版本。UML的特点UML的主要特点有4个。(1)统一标准:UML融合了当前一些流行的面向对象开发方法的主要概念和技术,成为一种面向对象的标准化的建模语言,结束了以往各种方法的建摸语言的不一致和差别。(2)可视化、表示功能强大:UML是一种图形化语言,系统的逻辑模型或实现模型都能用UML的模型图形清晰地表示,UML不只是一堆图形符号,在每一个UML的图形表示符号背后,都有良好定义的定义。UML还可以处理与软件的说明和文档有关的问题,包括需求说明、体系结构、设计、源代码、项目计划、测试、原型和发布等等。(3)独立于过程:UML是建模语言,独立于开发过程。虽然UML与Rational统一过程配合使用,将发挥强大的效用,但是UML也可以在其他面向对象的开发过程中使用,在常规的软件生命周期法中使用。(4)容易掌握:UML的概念明确,建模表示法简洁明了,图形结构清晰,容易掌握使用。学习UML应着重它的三方面的主要内容:UML的基本模型元素,把这些模型元素组织在一起的规则,UML语言的公共机制。只要具备一定的软件工程和面向对象技术的基础知识,通过运用UML建立实际问题的系统模型的实践,很快就能掌握和熟悉UML。UML绘制工具目前有很多UML图的绘制工具,比如微软的Viso,VisualModler和RationalRose等等。其中最为专业和正规的是RationalRose。Rose提供一套完整的绘图工具,是Rational公司研制的面向对象的CASE(ComputerAsistedSoftwareEngineering,计算机辅助软件工程)工具。系统分析与用例图1992年Jacobson在他的著作中提出了UseCase的概念和可视化表示方法——UseCase图。作为软件项目的开发和规划中的一个基本模型元素,UseCase的概念和方法受到了IT界的欢迎,很快被广泛应用到许多领域中。常用元素概述UseCase常用元素可视化图形名称描述用例用例图中的用例执行者(Actor)可以是用户,也可以是外部系统关联连接执行者和用例执行者执行者(Actor)是用户作用于系统的一个脚色(Role),执行者有着自己的目标,通过与系统的交互达到目标。执行者包括人执行者(HumanActor)和外部系统执行者(SystemActor)。系统的用户是人执行者,用户通过与系统的交互,操纵系统,完成所需要的工作。执行者不一定是人,它也可以是一个外部系统,该系统与本系统相互作用,交换信息。Jacobson在著作中提出了在确定执行者时应该考虑的一些问题:每一个执行者的主要任务是什么。活动者是否要读、写或修改系统中的信息活动者是否把系统外部的有关变化通知系统凡是与系统进行信息交换(包括数据信息和控制信息交换)的外部事物可以确认为活动者。系统的外部事物包括:人员、设备和外部系统。用例Jacobson给UseCase下的定义有两个:UseCase是对一个系统或一个应用的一种单一的使用方式所作的描述。UseCase是关于执行者在与系统对话中所执行的处理行为的描述。就是:UseCase描述了系统可能的用户和系统的功能模块的关系。脚色就是用户,而椭圆就是功能模块。系统设计与动态图UML的动态图有4个:顺序图、合作图、状态图和活动图。动态模型的必要性静态图,如UseCase图和类图等只能反映对象不同的模块的组成。系统都有具体事务的处理流程,利用UML图来表示这些处理流程需要使用动态图,需要动态模型因为它表达了系统在时间上的变化。ATM机的取款过程动态模型内容系统中动态实体之间的通讯可以使用UML中的四个图来描述:序列图(顺序图)、合作图、状态图和行为图(活动图)。利用Rose绘图工具可以直接将顺序图转化成合作图,只要学会绘制顺序图就可以。合作图只是顺序图的另一种表现方式。软件项目开发过程标准世界范围内,对于一个软件公司有两种认证体系:ISO9001和CMM体系。目前国内外比较流行的体系是CMM体系。ISO9001质量体系认证着重于产品的生产即硬件部分,没有专门的针对软件开发和维护过程质量控制的方法、工具和流程,难以满足软件开发、生产和维护过程的特殊要求。因此,需要寻找一种方法或手段系统、有效地保障软件质量。通过ISO9001认证相当于CMM2到CMM3之间。CMM简介CMM(CapabilityMaturityModelForSoftware,软件生产能力成熟度模型,以下简称“CMM”)是1987年由美国卡内基梅隆大学软件工程研究所研究出的一种用于评价软件承包商能力并帮助改善软件质量的方法其目的是帮助软件企业对软件工程过程进行管理和改进,增强开发与改进能力,从而能按时地、不超预算地开发出高质量的软件。CMM简介CMM目前通用流行的版本是1.1。按照软件工程研究所的原来计划,CMM的改进版本2.0(V2.0)是要在1997年的11月完成的。但是,美国国防部办公室要求软件工程研究所延迟发放公布CMM版本2.0,直至他们完成另一个更为紧迫的项目CMMI。CMM的5个级别CMM标准共分五级。其中,五级为最高级,即优化级。四级称为已管理级。三级为已定义级,即过程实现标准化。二级为可重复级,在这一级,建立了管理软件项目的政策以及为贯彻执行这些政策而定的措施。一级为初始级,过程无序,进度、预算、功能、质量不可预测,企业一般不具备稳定的软件开发与维护的环境。常常在遇到问题的时候,就放弃原定的计划而只专注于编程与测试CMM五个级别实验八在线书店系统的实现实验目标:了解:常见的网上购物的流程。熟悉:电子商务网站各个功能模块所涉及的主要技术。掌握:基本电子商务网站的设计和部署。步骤1:规划电子购物网站的整体结构购物网站的工作流程一般是:商品浏览、加入购物车、结帐、定单成立等步骤。本案例是一个简单的网上购物网站,整个网站采用B/S(浏览器/服务器)三层架构设计。表示层和逻辑业务层采用ASP.NET技术,后台采用Access进行数据管理。步骤3:设计电子购物网站的用户界面购物网站的首页是商品类目的浏览,首先选种某种商品,进而进入该网站中现有的该类商品信息供选择。设计电子购物网站的用户界面单击“办公室用品”商品类目,进入办公用品区购物页面设计电子购物网站的用户界面选择你想要购买的商品,并防入购物车;返回所有商品页面,继续选择“VB系列图书”类目,进入图书购物页面,并选择你想要购买的商品,单击购物车确认购物车的页面这时查看你的购物车,看你都买了那些商品,价值是多少本章习题填空题1、OOA(ObjectOrientedAnalysis)就是面向对象系统分析,OOD(ObjectOrientedDesign)就是面向对象系统设计,统称为_______。UML(UnifiedModelingLanguage:统一建模语言)是目前最好的OOAD工具。2、UML的动态图有4个:顺序图、_______、_______和活动图。3、通过ISO9001认证相当于_______到_______之间。OOAD合作图状态图CMM2CMM3选择题1、属于UML静态图的有()AUseCase图B类图C顺序图D合作图2、以下说法中,正确的是()A目前面向对象建模语言一般采用国际上最流行的UML语言,建模工具一般目前专业的设计工具:RationalRose。B实际上,系统分析与设计不可能截然分开,在系统分析过程中往往不仅考虑系统“做什么”的问题,也要考虑系统“怎么做”的问题。C执行者(Actor)是用户作用于系统的一个脚色(Role),执行者有着自己的目标,通过与系统的交互达到目标。DCMM标准共分五级。其中,五级为最高级,即优化级。四级称为已管理级。三级为已定义级,即过程实现标准化。二级为可重复级ABABCD本章总结介绍面向对象系统的分析与设计,介绍了目前最常用的建模语言UML以及如何用Rose绘制。介绍常用项目评价标准:CMM(CapabilityMaturityModelForSoftware)和ISO9001。介绍电子商务网站的设计与开发,利用这个案例进一步巩固本书前面各章节的内容。课程内容总结网站设计案例分析与课程设计第一章网站设计基础第二章.NETWeb编程基础第三章Web服务器端控件编程第四章网站逻辑结构设计第五章数据库的访问和管理第六章基于XML的.NETWeb服务第七章网站应用架构和配置第八章软件工程与网站设计