




已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
.,1,第7章系统设计与实现模型,.,2,系统设计与实现模型,分析VS设计在描述一个软件系统的时候,分析模型虽然有效地确定了将要构建的内容,但却没有包含足够的信息来定义如何构建系统,设计模型可以用来填补分析和实现之间的差距。,.,3,分析VS设计,分析和设计是不同的阶段,但是边界比较模糊。通常情况下,可以这么理解:软件设计是软件开发的关键步骤,直接影响软件质量。,分析就是调查问题,分析模型=问题内容设计就是找出解决方案,设计模型=解决方案,.,4,系统设计与实现模型,软件设计阶段的任务与目标:设计任务:将需求、分析阶段获得的模型转换为可实现的系统。设计阶段的主要任务:,系统体系结构设计数据结构设计用户界面设计算法设计,.,5,系统体系结构概述,系统体系结构用来描述系统各部分的结构、接口以及它们用于通信的机制。系统体系结构建模首先要建立基本的模型,并把这些模型映射到系统需要的硬件单元上。,.,6,系统体系结构概述,体系结构设计过程中的主要活动:,系统分解:将系统分解为若干个相互作用的子系统模块分解:将子系统进一步划分为模块控制建模:建立系统各部分间控制关系的一般模型,.,7,系统结构模型,软件系统体系结构模型包图、构件图硬件系统体系结构模型部署图,.,8,软件系统体系结构建模-包图,为了清晰、简洁地描述一个复杂的软件系统,通常都是把它分解成若干较小的系统(子系统)。如果需要的话,每个较小的系统还可以分解成更小的系统。这样,就形成了一个描述软件系统的结构层次。在UML中,使用“包”代表子系统,使用包图描述软件的分层结构。,.,9,BBS系统前台-包图,.,10,一个基于.NET平台的分层架构留言本小系统,主要实现了以下功能:发布留言,浏览留言管理员的登录、登出管理员对留言进行审核、删除、回复,.,11,一个基于.NET平台的分层架构留言本小系统,系统总体架构:采用三层架构:数据访问层、业务逻辑层、表示层数据访问层使用LinqtoSql,XML,及SQL语句方式分别实现。业务逻辑层通过接口耦合数据访问层,全局采用AbstractFactory+反射机制+缓存机制实现依赖注入功能。表示层使用ASP.NETMVC实现,与业务逻辑层直接耦合。,.,12,一个基于.NET平台的分层架构留言本小系统,Web:表示层BusinessComponent:业务逻辑组件Entities:实体类Factories:依赖注入组件Interfaces:接口组件LinqDataComponent:使用LinqtoSql实现的数据访问组件SQLDataComponent:使用SQL实现的数据访问组件XMLDataComponent:使用XML实现的数据访问组件Utilities:工具组件参考网址:,.,13,软件系统体系结构建模-包图,.,14,实体类组件,由于业务很简单,整个系统只有一个实体类:MessageInfo,.,15,工具类组件,工具类组件里是一些可复用的工具性类,这里主要包括三个:CacheAccessor:用于缓存的存取操作。SessionAccessor:用于Session的存取操作。ValidateHelper:用于数据验证的相关操作,主要用在表示层里。,.,16,数据访问层接口,数据访问层接口规定了数据访问层应该实现的方法,并作为业务逻辑层的依赖接口。由于整体只有一个实体Message需要数据持久化,所以数据访问层接口只有一个接口文件。,.,17,基于linqtosql的数据访问层,.,18,业务逻辑层,业务逻辑层实现主要的业务。这里的业务逻辑层有两个工件:AdminBusinessComponent和MessageBusinessComponent。其中后一个主要实现各种留言的业务操作,而前一个是管理员的业务操作。由于管理员的信息是记录在配置文件中而非持久化在数据库中,所以这个业务工件并不需要数据访问层的支持。即使在如此微小的系统中,业务逻辑层也不是对数据访问层简单的封装调用,业务逻辑和数据访问是完全两个不同的概念。,.,19,依赖注入组件,依赖注入实现了依赖配置动态选择数据访问层并注入业务逻辑层中,实现两层之间的解耦,具体实现的基础是AbstractFactory模式,并配合了反射机制和缓存机制。依赖注入组件的主要工件是DataComponentFactory,它是一个反射工厂,它可以通过反射机制加载某个指定的数据访问层,而后将其注入到业务逻辑层中。至于具体加载哪一个,则依赖Web.config中的配置。另外,还依赖CacheAccessor实现缓存机制,对加载过的数据访问组件进行缓存,提高系统运行效率。,.,20,软件系统体系结构建模-构件图,构件图(ComponentDiagram)描述构件及构件之间的关系,显示代码的结构。在构件图中,将系统可重用的模块封装成为具有具有可替代性的物理单元,称为构件。构件为系统中的一个物理实现单元,包括软件代码(源代码、二进制代码和可执行文件等)或者相应的组成部分,例如脚本或命令行文件,还包括文档、数据库等。,.,21,构件图,构件及接口构件表示,.,22,构件图实例,.,23,构件图实例,.,24,硬件系统体系结构建模-部署图,开发得到的软件系统,必须部署在某些硬件上予以执行。在UML中,硬件系统体系结构模型由部署图建模。,.,25,部署图的基本概念,部署图(DeploymentDiagram)描述了一个系统运行时的硬件结点,以及在这些
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年福建省宁德市福安市农村党群招聘22人模拟试卷及完整答案详解一套
- 2025内蒙古土地资源收储投资(集团)有限公司常态化招聘急需紧缺专业人员50人模拟试卷及答案详解(名校卷)
- 2025贵州省文化和旅游厅所属事业单位第十三届人博会引进人才3人考前自测高频考点模拟试题参考答案详解
- 2025年河北承德滦平县公开招聘社区工作者22名考前自测高频考点模拟试题附答案详解(典型题)
- 2025北京首都医科大学附属北京世纪坛医院招聘13人(第三批)考前自测高频考点模拟试题有答案详解
- 2025年湖南衡阳市公安局警务辅助人员招聘120人模拟试卷及1套参考答案详解
- 2025年河北石家庄市大气污染防治服务保障中心、石家庄市城市管理综合行政执法局公开选调工作人员13名模拟试卷有答案详解
- 2025年度哈尔滨“丁香人才周”(春季)延寿县事业单位引才招聘模拟试卷完整参考答案详解
- 2025年中国工商银行黑龙江省分行纪检人才专项社会招聘1人考前自测高频考点模拟试题参考答案详解
- 2025内蒙古鄂尔多斯生态环境职业学院人才引进38人模拟试卷附答案详解(考试直接用)
- CJ/T 469-2015燃气热水器及采暖炉用热交换器
- 初中数学实验教学探索计划
- 仓储项目项目计划书
- 2025年高处作业证理论考试练习题(100题)含答案
- 2025-2030年中国桥梁钢构行业竞争格局研究报告
- 盆底级考试题及答案
- 性窒息的预防与应对
- 《会计职业道德》第2版 课件 第六章会计核算的法律规定
- DBJ51T 181-2021 地下工程水泥基渗透结晶型防水材料应用技术标准
- 小学数学教育与未来教育趋势
- 《人与动物的关系》课件
评论
0/150
提交评论