软件体系结构_陈长清_《软件体系结构》课程教学大纲
《软件体系结构》教学大纲

《软件体系结构》教学大纲一、课程概述《软件体系结构》是根植于软件工程发展起来的一门新兴学科,目前已经成为软件工程研究和实践的主要领域。
体系结构在软件开发中为不同的人员提供了共同交流的语言,体现并尝试了系统早期的设计决策,并作为相同设计的抽象,为实现框架和构件的重用、基于体系结构的软件开发提供了有力的支持。
作为计算机科学与技术专业软件工程方向的重要专业课程,本课程主要系统地介绍软件体系结构的基本原理、方法和实践,全面反映软件体系结构研究和应用的最新进展。
既讨论软件体系结构的基本理论知识,又介绍软件体系结构的设计和工业界应用实例,强调理论与实践相结合。
本课程的先修课程为“软件工程”。
二、课程目标1.知道《软件体系结构》这门学科的性质、地位、研究范围、学科进展和未来方向等。
2.理解该门学科的主要概念、基本原理和策略等。
3.掌握软件体系结构的建模方法、描述方法,通过对不同软件体系结构风格的掌握,能够采用正确的基于体系结构的软件开发。
4.能够把所学的原理应用到具体的实践中去,培养学生发现、分析和解决问题的能力等。
三、课程内容与教学要求这门学科的知识与技能要求分为知道、理解、掌握、学会四个层次。
这四个层次的一般涵义表述如下:知道———是指对这门学科和教学现象的认知。
理解———是指对这门学科涉及到的概念、原理、策略与技术的说明和解释,能提示所涉及到的教学现象演变过程的特征、形成原因以及教学要素之间的相互关系。
掌握———是指运用已理解的教学概念和原理说明、解释、类推同类教学事件和现象。
学会———是指能模仿或在教师指导下独立地完成某些教学知识和技能的操作任务,或能识别操作中的一般差错。
教学内容和要求表中的“√”号表示教学知识和技能的教学要求层次。
本标准中打“*”号的内容可作为自学,教师可根据实际情况确定要求或不布置要求。
教学内容及教学要求表四、课程实施《软件体系结构》是计算机软件专业类必选课。
一般情况下周课时为3课时,共54课时。
软件体系结构_陈长清_《软件体系结构》课程教学大纲.doc

《软件体系结构》课程教学大纲一、课程名称:软件体系结构Sof tware Architecture二、课程编码:0810711三、学时与学分:48/3其中课堂教学32学时,实践教学16学时。
四、先修课程:软件工程五、课程教学目标1.帮助学生了解软件体系结构的基本概念,初步掌握中大型软件体系结构的分析与设计方法;2.使学生了解构建系统的目的是为了满足组织的需求,认识软件行业和开发组织在系统设计及其最终成败所起的作用,提高软件设计的基本素养;3.引导学生认识系统的性能、可用性、安全性等质量属性都是受软件构架制约的,或者说这些属性的实现影响着设计师的设计选择。
六、适用学科专业软件工程七、基本教学内容与学时安排•构架商业周期(2学时)构架的产生软件过程和构架商业周期什么样的构架才算好•什么是软件构架(2学时)软件构架概念的澄清软件构架的其他观点构架模式、参考模型和参考构架软件构架的重要性•A-7E案例分析(2学时)与构架商业周期的关系需求与质量A-7E航空电子系统的构架•理解质量属性(6学时)功能性和构架构架和质量属性系统的质量属性质量属性场景其他系统质量属性商业质量属性构架的质量属性•实现质量属性(6学时)战术介绍可用性战术可修改性战术性能战术安全性战术可测试性战术易用性战术战术与构架模式的关系构架模式和样式•设计构架(6学时)生命期中的构架设计构架形成团队结构创建骨架系统•飞行模拟:构架可集成性案例分析(2学时)与构架商业周期的关系需求与质量构架解决方案•构架编档(2学时)构架编档的使用视图选择相关视图视图编档跨视图文档统一建模语言• AT AM:一种进行构架评估的综合方法(4学时)ATAM的参与人员ATAM的结果ATAM的阶段Nightingale系统:应用ATAM的案例分析八、实践教学(16学时)•上机操作内容及要求:从网上选课系统、文本编辑系统、票务查询系统或正文关键字索引系统这四个系统中任选一个,根据不同的质量属性驱动,运用ADD方法设计两个或多个构架方案,再用ATAM 方法进行评价,然后选择最优方案加以实现,编程语言自选。
软件体系结构课件第4章软件体系结构描述

能上的多种推理分析。
第4章 软件体系结构描述 ADL与其他语言的比较
第4章 软件体系结构描述 ADL与其他语言的比较
➢ 每个接口包含一种可发送的消息和一组可接收的消息。构件之间的消息要么是请求 其它构件执行某个操作的请求消息,要么是通知其他构件自身执行了某个操作或状 态发生改变的通知消息。
➢ 构件之间的消息交换不能直接进行,而只能通过连接件来完成。每个构件接口最多 只能和一个连接件相连,而连接件可以和任意数目的构件或连接件相连。
第4章 软件体系结构描述
C2 – 概述
➢ C2和其提供的设计环境(Argo)支持采用基于时间的风格来描述用户界面系统,并 支持使用可替换、可重用的构件开发GUI的体系结构。
➢ 在C2中,连接件负责构件之间消息的传递,而构件维持状态、执行操作并通过两个 名字分别为“top”和“bottom”的端口和其它的构件交换信息。
bottom_domain_interface ::= bottom_domain is out interface_notifications in interface_requests
interface_requests ::= {request;} | null;
interface_notifications ::= {notification;} | null;
➢ MIL方式对模块化的程序设计和分段编译等程序设计与开发技术确实发挥了 很大的作用。但是由于这些语言处理和描述的软件设计开发层次过于依赖程 序设计语言,因此限制了它们处理和描述比程序设计语言元素更为抽象的高 层次软件体系结构元素的能力。
《软件系统架构》课程大纲

《软件系统架构》理论课教学大纲一、课程基本信息二、课程目标与任务软件系统架构是计算机科学与技术专业的选修课程,主要强调及兼顾理论体系的体系性及技术题材的实用性。
将全部课程时间讲解实际案例分析,案例代表性强、大型案例丰富,多为实践一线的实际案例。
在完成本课程后,使学生达到:(1)掌握软件架构的原理, 方法及技巧;(2)了解常见的架构模式以及它们在企业应用;(3)能够对软件架构进行分析,撰写软件架构文档;(4)在实际工作中胜任软件设计师及初级软件架构师的工作。
三、课程主要内容、要求及学时分配四、主要教学组织形式与方法手段注重理论联系实际,培养学生正确的思维方式和动手能力,培养学生的分析和解决问题的能力,激发学生对软件系统架构学习和研究的兴趣。
重点讲解背景知识,引导为主,涉及具体模型结构,合理安排实验教学作品的内容,激发学生对本课程的学习兴趣。
采用多媒体教学手段、任务驱动式教学方法教学。
五、课程考核和成绩评定《软件系统架构》实验课教学大纲一、课程基本信息二、课程目标与任务《软件系统架构》的实验是本课程教学的极其重要的实践环节。
通过实验使学生加深对理论知识和基本原理的理解;更重要的是训练了针对实际问题进行软件开发的能力。
通过《软件系统架构》实验设计,使学生熟悉软件设计工作规范,掌握常见的体系结构风格和体系结构设计方法,培养科学作风,真正具备利用计算机解决实际问题的能力。
课程以软件设计知识为主线,包括:软件设计的要素、软件设计的支持与评价、软件设计方法、体系结构设计、详细设计、基于中间件的设计、基于复用的设计和设计演化。
该课程强调案例教学,培养学生综合运用设计知识为实际问题设计和选择解决方案的能力。
三、实验教学的组织和安排(见附表)1.实验项目的设置、要求软件系统架构实验课与理论课同步进行,每个实验学生都必须提前预习。
实验课以学生自己动手为主,教师辅助指导。
软件系统架构实验课的类型有:验证性、综合性实验,通过实验课的训练,学生应达到下列要求:①理解软件设计的要素,掌握常用的软件设计方法、技术与手段,能够为复杂系统创建成功的设计方案,能够完成复杂系统的设计的演化;②理解软件设计要素、过程和方法,能够识别复杂应用的关键设计要素,并进行分析、折中和设计解决;③理解体系结构的概念,掌握常见的体系结构风格和体系结构设计方法,能够为简单的应用完成体系结构设计;④掌握详细设计常用的方法、技术与手段,能够为应用系统的复杂组件完成详细设计;⑤理解软件设计的建模与描述方法,能够正确的描述复杂系统的设计方案,能够为简单系统的设计方案进行准确的评价。
《软件体系结构》教学大纲

《软件体系结构》教学大纲课程英文名称: Software Architecture课程编号:050302一、课程说明1.课程性质《软件体系结构》课程,是软件工程专业硕士研究生的主干课程。
2.课程的目的和任务软件体系结构主要介绍软件体系结构和中间件的基本概念,使学生对软件体系结构有比较深入的了解。
通过学习,使得学生在软件工程思想的基础上,更进一步掌握软件分析和软件开发的方法和思想,并能在实际中应用。
培养学生成为一名合格的软件分析师或软件工程师,并为其在该领域进一步深造打下坚实的基础。
3.适用专业软件工程,计算机科学与技术专业4.学时与学分学分:3 学时:45 讲授学时:45 实践学时:05.先修课程软件工程,数据结构与算法,操作系统,程序设计6.推荐教材或参考书目教材名称:《软件体系结构》张友生编著清华大学出版社ISBN:7302078106 2004版主要参考书目:《软件体系结构理论与实践》冯冲,江贺,冯静芳编著人民邮电出版社2004版7.主要教学方法与多媒体要求主要教学方法:理论和技术教学,案例驱动教学多媒体要求:多媒体教学占80%8.考核方式1、平时成绩(书面作业+上机实验+考勤)2、课程大作业3、期末闭卷笔试4、总成绩 = 笔试成绩(60/100)+ 平时成绩(20/100)+ 大作业成绩(20/100)9.课外自学要求书本上没讲过的内容,让学生自学。
推荐的教材,学有余力的学生可以自学。
二、教学基本要求和能力培养要求1.通过本课程的教学环节,达到以下基本要求1)、应使学生全面了解软件体系结构的概念。
2)、使学生对软件体系结构有比较深入的了解,掌握软件体系结构的思想,了解软件体系结构的设计过程。
3)、使学生在了解软件体系结构的基础上,能用之于软件开发的实践过动中去。
2.通过学习本课程应具备以下能力培养学生成为一名合格的软件分析师或软件工程师,并为其在该领域进一步深造打下坚实的基础。
三、课程教学内容第一章软件体系结构概论重点:了解软件危机的概念、产生以及表现。
软件体系结构教学大纲

软件体系结构教学大纲课程概述软件体系结构的主题是针对复杂软件系统的高层结构、组织单元之间的相互关系的描述,以及围绕这种描述开展的各项活动,如设计、评估、实现、管理等。
《软件体系结构》课程是软件工程专业核心课程,在该课程的学习中,同学们将学习软件体系结构的基本概念、原则和方法。
同时,通过实际软件项目设计任务驱动学生运用理论知识主动思考架构方案,引导学生应用辅助工具完成系统架构设计、评估和实现。
体验软件架构师在软件项目全生命周期的任务、角色,搭建软件体系结构“学与用”的桥梁。
课程大纲01绪论课时1.1 绪论02软件体系结构风格课时2.1 数据流体系结构风格2.2 调用/返回体系结构风格2.3 数据中心体系结构fengge2.4 虚拟机体系结构风格2.5 事件系统体系结构风格03软件体系结构建模及文档化课时3.1 软件体系结构建模及文档化04质量属性及其提升策略课时4.1 Availability and its Tactics4.2 Modifiability and its Tactics4.3 Performance and its Tactics4.4 Security and its Tactics4.5 Testability and its Tactics4.6 Usability and its Tactics05软件体系结构评估课时5.1 软件体系结构评估06综合应用案例课时6.1 综合应用案例07课程总结课时7.1 课程总结。
软件体系结构教学大纲

《软件体系结构》教学大纲一、课程概述《软件体系结构》是根植于软件工程发展起来的一门新兴学科,目前已经成为软件工程研究和实践的主要领域。
体系结构在软件开发中为不同的人员提供了共同交流的语言,体现并尝试了系统早期的设计决策,并作为相同设计的抽象,为实现框架和构件的重用、基于体系结构的软件开发提供了有力的支持。
作为计算机科学与技术专业软件工程方向的重要专业课程,本课程主要系统地介绍软件体系结构的基本原理、方法和实践,全面反映软件体系结构研究和应用的最新进展。
既讨论软件体系结构的基本理论知识,又介绍软件体系结构的设计和工业界应用实例,强调理论与实践相结合。
本课程的先修课程为“软件工程”。
二、课程目标1.知道《软件体系结构》这门学科的性质、地位、研究范围、学科进展和未来方向等。
2.理解该门学科的主要概念、基本原理和策略等。
3.掌握软件体系结构的建模方法、描述方法,通过对不同软件体系结构风格的掌握,能够采用正确的基于体系结构的软件开发。
4.能够把所学的原理应用到具体的实践中去,培养学生发现、分析和解决问题的能力等。
三、课程内容与教学要求这门学科的知识与技能要求分为知道、理解、掌握、学会四个层次。
这四个层次的一般涵义表述如下:知道———是指对这门学科和教学现象的认知。
理解———是指对这门学科涉及到的概念、原理、策略与技术的说明和解释,能提示所涉及到的教学现象演变过程的特征、形成原因以及教学要素之间的相互关系。
掌握———是指运用已理解的教学概念和原理说明、解释、类推同类教学事件和现象。
学会———是指能模仿或在教师指导下独立地完成某些教学知识和技能的操作任务,或能识别操作中的一般差错。
教学内容和要求表中的“√”号表示教学知识和技能的教学要求层次。
本标准中打“*”号的内容可作为自学,教师可根据实际情况确定要求或不布置要求。
教学内容及教学要求表四、课程实施《软件体系结构》是计算机软件专业类必选课。
一般情况下周课时为3课时,共54课时。
《软件体系结构》实验教学大纲

《软件体系结构》实验教学大纲
课程名称:软件体系结构
英文名称:Software Architecture
课程编号:
课程性质:课程类型:专业选修是否为独立设课的实验课:否
适用专业:软件工程、计算机
学时与学分:总学时:72 总学分: 3.5 实验学时: 18 实验学分:0.5
执笔人:尹剑飞
制定时间: 2012年3月修订
一、实验课的任务、性质与目的:
开设实验课的任务是使学生熟悉软件体系结构的设计过程和重构方法,培养产品特征分析、模式设计、原型构建的能力。
实验性质主要为设计型软件构造,需要通过UML等设计语言描述软件体系结构、设计模式分析、产品特征映射、设计重构等,以达到设计与开发较大型软件的目的。
实验课按指定的上机题目,要求学生提交调试好的程序和运行结果,记入平时成绩。
二、主要仪器设备及环境:
实验在学校微机房完成,需要保证实验课时每人一台微机。
所需软件Win2000 XP,Linux, Visual Studio, UML等。
三、实验项目的设置与实验内容
四、教材、实验教材(指导书):
[1] 罗剑锋.Boost程序库完全开发指南,电子工业出版社
[2] 软件体系结构—理论与实践,冯冲,人民邮电出版社
[3] 软件体系结构及实例分析,余雪丽,科学出版社
五、考核方式与评分办法:
考核内容包括实验报告内容的确完整性、实验设计的清晰程度、实验数据的准确性、实验结果及分析的正确性、和实验态度。
六、大纲审核人:。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《软件体系结构》课程教学大纲
一、课程名称:软件体系结构 Software Architecture
二、课程编码:0810711
三、学时与学分:48/3
其中课堂教学32学时,实践教学16学时。
四、先修课程:软件工程
五、课程教学目标
1.帮助学生了解软件体系结构的基本概念,初步掌握中大型软件体系结构的分析与设计方法;
2.使学生了解构建系统的目的是为了满足组织的需求,认识软件行业和开发组织在系统设计及其最终成败所起的作用,提高软件设计的基本素养;
3.引导学生认识系统的性能、可用性、安全性等质量属性都是受软件构架制约的,或者说这些属性的实现影响着设计师的设计选择。
六、适用学科专业
软件工程
七、基本教学内容与学时安排
●构架商业周期(2学时)
构架的产生
软件过程和构架商业周期
什么样的构架才算好
●什么是软件构架(2学时)
软件构架概念的澄清
软件构架的其他观点
构架模式、参考模型和参考构架
软件构架的重要性
●A-7E案例分析(2学时)与构架商业周期的关系
需求与质量
A-7E航空电子系统的构架●理解质量属性(6学时)功能性和构架
构架和质量属性
系统的质量属性
质量属性场景
其他系统质量属性
商业质量属性
构架的质量属性
●实现质量属性(6学时)战术介绍
可用性战术
可修改性战术
性能战术
安全性战术
可测试性战术
易用性战术
战术与构架模式的关系
构架模式和样式
●设计构架(6学时)
生命期中的构架
设计构架
形成团队结构
创建骨架系统
●飞行模拟:构架可集成性案例分析(2学时)
与构架商业周期的关系
需求与质量
构架解决方案
●构架编档(2学时)
构架编档的使用
视图
选择相关视图
视图编档
跨视图文档
统一建模语言
●ATAM:一种进行构架评估的综合方法(4学时)
ATAM的参与人员
ATAM的结果
ATAM的阶段
Nightingale系统:应用ATAM的案例分析
八、实践教学(16学时)
●上机操作内容及要求:
从网上选课系统、文本编辑系统、票务查询系统或正文关键字索引系统这四个系统中任选一个,根据不同的质量属性驱动,运用ADD方法设计两个或多个构架方案,再用ATAM 方法进行评价,然后选择最优方案加以实现,编程语言自选。
●上机操作考核办法
提供构架文档等各类文档。
源程序和可执行文件。
进行课堂演示。
九、教材及参考书
●教材
书名:软件构架实践
作者:Len Bass, Paul Clements, Rick Kazman
译者:车立红
出版社:清华大学出版社
版本号:2004年6月第2版
●参考教材
(1)书名:《Software Architecture in Practice》作者:Len Bass, Paul Clements, Rick Kazman
出版社:清华大学出版社
版本号:2004年6月第2版(影印版)
(2)书名:Software Architecture
作者:Mary Shaw, David Garlan
出版社:清华大学出版社
版本号:2001年9月第4版
十、考核方式
书面考试+讨论、作业+实践表现。