- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
任务1 软件架构设计
【任务简介】
软件架构是软件设计的高层部分,从宏观层面对软件的模块进行了划分,定义各模块的接口和模块之间的通信形式,并对软件的物理架构和用例场景均做较为详细的设计。软件架构设计一般采用“4+1”视图模型,即逻辑视图、进程视图、开发视图、物理视图、场景视图,每个视图都反映了软件开发的一个方面内容。本任务将以“学分管理系统”为例讨论软件架构设计。
【任务分析】
“学分管理系统”采用分层架构设计,用户界面、业务逻辑处理和数据库访问分别封装在不同层次中,使用接口技术将业务与业务的具体实现分开。 与系统交互的用户角色有系统管理员、学工处,系部和学生。系统管理员在系统层面维护学生和教师账户,创建角色和分配权限。组织部门信息和学生信息由系统管理员从外部文档导入(如,通过系统的接口导入包含组织结构和学生信息的Excel文档)。学工处维护基础数据,配置项目参数。项目实施由学工处和系部共同负责,学工处负责制定项目计划,并发布项目,系部负责具体实施项目,包括启动项目、登记学生、项目评分、项目结项。
项目结项后,学生成绩将导入成绩库。学工处可以在学校层面查询和统计全部项目的数据。系部可以统计本系项目数据,学生可以查询自己的成绩。
本任务将从软件架构视图角度结合“学分管理系统” 讨论软件架构设计,并对系统的功能架构做具体划分。
【支撑知识】
一、软件架构定义
软件架构( Software Architecture)是软件设计的高层部分,是用于支撑细节的设计框架。架构也称为“系统架构”、“高层设计”或“顶层设计”。架构描述的对象是直接构成系统抽象组件。各个组件之间的连接则明确和相对细致地描述组件之间的通信。在实现阶段,这些抽象组件被细化为实际的组件,如具体某个类或者对象。在面向对象领域中,组件之间的连接通常用接口来实现。
二、软件架构设计目的
软件架构设计一般有以下几个目的:
为大规模开发提供基础和规范。软件系统的大规模开发,必须要有一定的基础和遵循一定的规范,这既是软件工程本身的要求,也是客户的要求。架构设计的过程中可以将一些公共部分抽象提取出来,形成公共类和工具类,以达到重用的目的。
一定程度上缩短项目的周期。利用软件架构提供的框架或重用组件,缩短项目开发的周期。
降低开发和维护的成本。大量的重用和抽象,可以提取出一些开发人员不用关心的公共部分,这样便可以使开发人员仅仅关注于业务逻辑的实现,从而减少了很多工作量,提高了开发效率。
提高产品的质量,好的软件架构设计是产品质量的保证,特别是对于客户常常提出的非功能性需求的满足。
三、软件架构设计原则
软件架构设计必须遵循以下原则:
满足功能性需求和非功能需求。这是一个软件系统最基本的要求,也是架构设计时应该遵循的最基本的原则。
实用性原则。就像每一个软件系统交付给用户使用时必须实用,能解决用户的问题一样,架构设计也必须实用,否则就会“高来高去”或“过度设计”。
满足复用的要求,最大程度的提高开发人员的工作效率。
四、软件架构设计“4+1”视图模型
架构视图是对从某一视角或某一点上看到的系统所做的简化描述,描述中涵盖了系统的某一特定方面,而省略了与此方面无关的实体。
Kruchten 提出了“4+1”视图模型,从5个不同的视角来描述软件体系结构,即逻辑视图、进程视图、开发视图、物理视图、场景视图。每一个视图只关心系统的一个侧面,5个视图结合在一起才能反映系统的软件体系结构的全部内容,如图3-2所示。
图3-2 “4+1”视图模型
1. 逻辑视图
逻辑视图用来描述系统的功能需求,即在为用户提供服务方面系统所应该提供的功能。在逻辑视图中,系统分解成一系列的功能抽象、功能分解与功能分析,这些主要来自问题领域(Problem Definition)。在面向对象技术中,表现为对象或对象类的形式,采用抽象、封装和继承的原理。用对象模型来代表逻辑视图,可以用类图(Class Diagram)来描述逻辑视图。借助于类图和类模板的手段,类图用来显示一个类的集合和它们的逻辑关系:关联、使用、组合、继承等。相似的类可以划分成类集合。类模板关注于单个类,它们强调主要的类操作,并且识别关键的对象特征。
逻辑视图的表示法:
构件(Components):类、类服务、参数化类、类层次。
连接件(Connectors):关联、包含聚集、使用、继承、实例化。
逻辑视图的风格采用面向对象的风格,其主要的设计准则是视图在整个系统中保持单一的、一致的对象模型,避免就每个场合或过程产生草率的类和机制的技术说明。
2.进程视图
进程视图考虑一些非功能性的需求,如性能和可用性。它解决并发性、分布性、系统完整性、容错性的问题,以及逻辑视图的主要
您可能关注的文档
- 嵌入式系统基础 嵌入式系统中的C语言编程基础 烧写Superboot到SD卡.docx
- 嵌入式系统基础 伪指令在嵌入式程序设计中的应用 连接ARM实验板至 PC机.docx
- 嵌入式系统基础 系统设计概述 实训基础 ARM底板 电源接口.docx
- 嵌入式系统设计 嵌入式系统设计 Linux系统应用实验.docx
- 嵌入式系统设计 嵌入式系统设计 系统应用-点餐系统.docx
- 嵌入式应用基础 自编教材 2.书稿(第二章).docx
- 桥跨结构施工 钢筋的力学性能及加工 教学设计-钢筋的性能及加工.docx
- 桥跨结构施工 几种典型的桥面铺装施工 电子教材-桥面铺装施工.docx
- 桥跨结构施工 几种典型的桥面铺装施工 教学设计-桥面铺装施工.docx
- 桥跨结构施工 桥面铺装概述 电子教材-桥面铺装概述.docx
- 软件开发与项目管理-1期 课程综合案例 KC02_课程案例_学工管理系统.doc
- 软件开发与项目管理-1期 模块设计 0203 模块三_任务四_电子教材.doc
- 软件开发与项目管理-1期 学生作品 KC02_课程案例_人力资源管理系统.doc
- 软件开发与项目管理-1期 学生作品 KC02_学生作品_电子商务网站数据库管理系统设计.doc
- 软件开发与项目管理-1期 学生作品 KC02_学生作品_网上招聘系统.doc
- 软件设计师 培训资料 PX11010500006_电子教材_专题6网络安全.doc
- 软装设计 抱枕、桌旗的选配 【软装搭配】地毯搭配有术 家里不美都难.docx
- 软装设计 窗帘的选配 5个方法解决窗帘搭配中80%的问题.docx
- 软装设计 床品的选配 【软装e坐标】床品搭配.docx
- 软装设计 床品的选配 【软装技巧】床品搭配技巧大全.docx
最近下载
- 【关爱青春期】《男生青春期教育讲座》.pptx VIP
- JB∕T 8527-2015 金属密封蝶阀.pdf VIP
- 2025 《高质量数据集 分类指南》.pdf VIP
- 2025年八年级语文上册《钱塘湖春行》古诗鉴赏对比阅读训练含答案.docx VIP
- 《工程测量基础(第2版)》课件 闭合导线测量.pptx
- 《铁路技术管理规程》(普速铁路部分)考试复习参考题库资料(500题).pdf VIP
- 2025年宿州市公安机关第二批公开招聘警务辅助人员240人笔试备考试题及答案解析.docx VIP
- 管理创新与思维创新 .pptx VIP
- 《光电传感器》PPT课件.ppt VIP
- CAD基础教程详解.ppt VIP
原创力文档


文档评论(0)