




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第7章 系统设计与实现模型,系统设计与实现模型,分析 VS 设计 在描述一个软件系统的时候,分析模型虽然有效地确定了将要构建的内容,但却没有包含足够的信息来定义如何构建系统,设计模型可以用来填补分析和实现之间的差距。,分析 VS 设计,分析和设计是不同的阶段,但是边界比较模糊。 通常情况下,可以这么理解: 软件设计是软件开发的关键步骤,直接影响软件质量。,分析就是调查问题,分析模型 = 问题内容 设计就是找出解决方案,设计模型 = 解决方案,系统设计与实现模型,软件设计阶段的任务与目标: 设计任务:将需求、分析阶段获得的模型转换为可实现的系统。 设计阶段的主要任务:,系统体系结构设计 数据结构
2、设计 用户界面设计 算法设计,系统体系结构概述,系统体系结构用来描述系统各部分的结构、接口以及它们用于通信的机制。 系统体系结构建模首先要建立基本的模型,并把这些模型映射到系统需要的硬件单元上。,系统体系结构概述,体系结构设计过程中的主要活动:,系统分解:将系统分解为若干个相互作用的子系统 模块分解:将子系统进一步划分为模块 控制建模:建立系统各部分间控制关系的一般模型,系统结构模型,软件系统体系结构模型包图、构件图 硬件系统体系结构模型部署图,软件系统体系结构建模-包图,为了清晰、简洁地描述一个复杂的软件系统,通常都是把它分解成若干较小的系统(子系统)。如果需要的话,每个较小的系统还可以分解
3、成更小的系统。这样,就形成了一个描述软件系统的结构层次。 在UML中,使用“包”代表子系统,使用包图描述软件的分层结构。,BBS系统前台-包图,一个基于.NET平台的分层架构留言本小系统,主要实现了以下功能: 发布留言,浏览留言 管理员的登录、登出 管理员对留言进行审核、删除、回复,一个基于.NET平台的分层架构留言本小系统,系统总体架构: 采用三层架构:数据访问层、业务逻辑层、表示层 数据访问层使用Linq to Sql,XML,及SQL语句方式分别实现。 业务逻辑层通过接口耦合数据访问层,全局采用Abstract Factory+反射机制+缓存机制实现依赖注入功能。 表示层使用ASP.NE
4、T MVC实现,与业务逻辑层直接耦合。,一个基于.NET平台的分层架构留言本小系统,Web:表示层 BusinessComponent:业务逻辑组件 Entities:实体类 Factories:依赖注入组件 Interfaces:接口组件 LinqDataComponent:使用Linq to Sql实现的数据访问组件 SQLDataComponent:使用SQL实现的数据访问组件 XMLDataComponent:使用XML实现的数据访问组件 Utilities:工具组件 参考网址:,软件系统体系结构建模-包图,实体类组件,由于业务很简单,整个系统只有一个实体类:MessageInfo,工
5、具类组件,工具类组件里是一些可复用的工具性类,这里主要包括三个: CacheAccessor:用于缓存的存取操作。 SessionAccessor:用于Session的存取操作。 ValidateHelper:用于数据验证的相关操作,主要用在表示层里。,数据访问层接口,数据访问层接口规定了数据访问层应该实现的方法,并作为业务逻辑层的依赖接口。 由于整体只有一个实体Message需要数据持久化,所以数据访问层接口只有一个接口文件。,基于linq to sql的数据访问层,业务逻辑层,业务逻辑层实现主要的业务。这里的业务逻辑层有两个工件:AdminBusinessComponent和Message
6、BusinessComponent。其中后一个主要实现各种留言的业务操作,而前一个是管理员的业务操作。由于管理员的信息是记录在配置文件中而非持久化在数据库中,所以这个业务工件并不需要数据访问层的支持。 即使在如此微小的系统中,业务逻辑层也不是对数据访问层简单的封装调用,业务逻辑和数据访问是完全两个不同的概念。,依赖注入组件,依赖注入实现了依赖配置动态选择数据访问层并注入业务逻辑层中,实现两层之间的解耦,具体实现的基础是Abstract Factory模式,并配合了反射机制和缓存机制。 依赖注入组件的主要工件是DataComponentFactory,它是一个反射工厂,它可以通过反射机制加载某个
7、指定的数据访问层,而后将其注入到业务逻辑层中。至于具体加载哪一个,则依赖Web.config中的配置。 另外,还依赖CacheAccessor实现缓存机制,对加载过的数据访问组件进行缓存,提高系统运行效率。,软件系统体系结构建模-构件图,构件图(Component Diagram)描述构件及构件之间的关系,显示代码的结构。 在构件图中,将系统可重用的模块封装成为具有具有可替代性的物理单元,称为构件。 构件为系统中的一个物理实现单元,包括软件代码(源代码、二进制代码和可执行文件等)或者相应的组成部分,例如脚本或命令行文件,还包括文档、数据库等。,构件图,构件及接口构件表示,构件图实例,构件图实例,硬件系统体系结构建模-部署图,开发得到的软件系统,必须部署在某些硬件上予以执行。 在UML中,硬件系统体系结构模型由部署图建模。,部署图的基本概念,部署图(Deployment Diagram)描述了一个系统运行时的硬件结点,以及在
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Brand KPIs for milk:Silk in the United States-英文培训课件2025
- 小学生笔画课件
- 2025年新高一英语人教新版尖子生专题复习《完形填空》
- 口才课自我介绍课件视频
- 2025年金融行业AI伦理监管政策执行与效果评估报告
- 乡镇流动厨师管理办法
- 企业协议酒店管理办法
- 云南烟草品牌管理办法
- 乡镇融资项目管理办法
- 乡镇大型水库管理办法
- 肩袖修补术护理
- 政府委托代建合同范本
- DB37-T 1933-2022 氯碱安全生产技术规范
- 人教版英语九年级全一册单词表(合订)-副本
- 印章保管责任书
- 《论坛运营社区运营》课件
- 骨科降低卧床患者便秘发生率医院护理质量QCC改善案例
- 2025年上海市各区高三语文一模试题汇编之文言文二阅读(含答案)
- 低钠血症的中国专家共识2023解读
- 办公机器和设备出租行业现状分析及未来三至五年行业发展报告
- 楼面找平层裂缝修复方案
评论
0/150
提交评论