课程简介

本课程介绍软件架构分析和设计过程和步骤、视图和文档、软件架构应用与常用的架构模式/策略/原则等诸多架构实际问题,透视软件架构是如何设计和实现的整个流程, 并且介绍应该如何应用系统架构设计为后期的详细设计和应用开发提供指导

课程大纲

一、 综述

教学目标:

1、软件架构分析和设计的总体框架;

2、软件架构分析和设计的意义和原则;

3、软件架构分析的步骤与内容;

4、软件架构逻辑设计和物理设计的步骤与内容;

54+1视图和软件设计说明书的编写方法。


培训对象:

1软件开发资深技术人员、技术经理、项目经理;

2、系统分析师、软件设计师和系统架构师。

考核措施:

 理论部分60%+实践部分30%+平时成绩10%

     

前备知识和技能:

熟悉软件开发和项目管理过程,有较强的软件设计和开发经验。

二、教学内容

     1 构架全景视图——核心开发过程

l  以构架为中心的开发过程——RUP统一软件过程

l  RUP统一软件过程的内容,包括角色,工件,和活动(业务、需求等九大科目)

l  阐述迭代模型,详细讲解RUP的先启阶段和精化阶段的迭代内容

l  对比RUP重量级过程与轻量级过程XPAgile Process的差别,以及各自的适用范围


     2软件架构导论

l  软件构架的概念

l  为什么需要软件构架

l  阐述构架基线的概念

l  构架基线是如何规避项目开发风险


     3章构架分析

l  介绍构架设计的相关理论(元模型体系),以及业界主流的构架体系模型

l  阐述构架风格的概念,介绍常见的相关构架风格

l  讲解构架模式和框架,以及如何应用构架模式与框架来创建健壮的构架

l  重点讲述层次模式,深入探讨应用层次模式来帮助开发系统初始的构架层

l  分析关键的抽象概念在构架分析中的核心作用

l  讲解如何开发系统的界面导航图来框定系统的主体功能行为

l  阐述构架机制的概念,深入说明分析机制,讲解如何使用分析机制来修饰分析类之设计约束


4章构架(逻辑)设计

l  阐述软件构架设计所面临的挑战,说明构架设计的质量目标

l  选择构架级技术方案的指南,讲解如何针对系统特征来确定构架级技术方案

l  阐述设计模型的组织结构,说明如何进行构架级的分包,以及划分子系统、定义接口等

l  讲解如何使用AOP来实现最为灵活的设计机制

l  阐述软件构造中的冗余,说明在构架设计中如何识别和利用复用机会

l  阐述SOA构架设计方案


5      构架(物理)设计

l  阐述源码的并行开发管理,进而讲解构件视图(实施模型)的概念

l  阐述软件系统中的并发需求,进而讲解进程视图的概念(即通常说的物理设计视图)

l  阐述软件系统中的分布需求,进而讲解部署视图的概念(即通常说的物理设计视图)


课程说明

参考资料

拓展阅读

其他

主讲教师

梁立新   

暂无简介

课程助教

  • 冯雪松

相关课程推荐

  • 正在进行
    理论计算机科学基础
    通过这门课程的学习,学生将了解计算理论的基础知识,掌握有效计算的概念。本课程的教学内容包括:形式语言与自动机理论、可计算性理论、计算复杂性理论等三个部分。这些内容分别回答下列问题:(1)有哪些计算装置?它们的能力如何?(2)什么是计算?哪些问题是(不)可计算的?(3)什么是有效计算?哪些问题是(不)可有效计算的?通过这门课程的学习,学生将了解计算理论的基础知识,掌握有效计算的概念。
  • 正在进行
    算法设计与分析(高级)
    “算法设计与分析”是计算机科学与技术专业的一门核心课程。通过学习算法不但对学习其他专业课程奠定了扎实的基础,也对培养学生的计算思维和求解问题的能力起到重要的作用。算法与计算复杂性理论一直是计算机科学研究的热点领域。面对各个应用领域的大量实际问题,最重要的是根据问题的性质选择正确的求解思路,即找到一个好的算法。特别在复杂的、海量信息的处理中,一个好的算法往往起到决定性的作用。 算法设计与分析涉及内容较多,根据MOOC课程的教学特点和需求,我们将它分成两个部分。其中“算法设计与分析(1)”主要讲授有关算法的基础知识和通用设计技术,包括算法的基本概念和数学基础、分治策略、动态规划、贪心法、回溯和分支限界等。“算法设计与分析(2)”是在上述基础上介绍两类重要问题的建模和算法设计,并进一步讨论问题难度的界定和困难问题的应对策略。这次开课的是第二部分“算法设计与分析(2)”。选修本课程的学生应该预先修过“算法设计与分析(1)”或者具有相关的基础。“算法设计与分析(1)”已经在华文慕课平台上线,网址是:http://www.chinesemooc.org/mooc/4748/,需要了解相关教学内容的同学可以访问。
  • 正在进行
    解密教育的技术变革史
    互联网并非人类历史上第一次“信息技术”革命。人类历史上一共出现过5种媒介技术:口头语言、手工抄写/羊皮书、印刷技术、广播电视和互联网。 媒介技术提供的记录和传承功能,对人类的群体社会认知,带来了革命性的影响。西方历史上曾经发生的两次文明的大发展,都正好处于媒介技术变革前后。希腊文明处于希腊从口传到手工抄写的媒介技术变革中;近代科学史上的哥白尼革命,又正好处于欧洲从手工抄写到机器印刷的技术转型中;今天,轮到了信息技术…… 吟唱、诗歌、戏曲、绘画、文字书写等,都曾经是一种表达“技术”;《荷马史诗》、《圣经》都曾经充当过识字课本;口头语言、羊皮纸卷、印刷书、广播电视,都是曾经的“教育技术”。 这门课程从重新定义教育和人这两个核心概念开始,带着你从媒介史、知识产业分工配套体系、教学模式和教育组织方式等不同的视角,游历人类一路走来传播生态环境、知识产业、教育教学的发展过程,从中寻找媒介技术影响教育变革的规律,指导学习者迎接未来教育变革的挑战,寻找创新和发展方向!

恭喜,报名成功

进入学习中心

恭喜,报名成功

确定

请进入开课界面预览

确定

X

请去您的邮箱验证

还没收到验证邮件?

1. 试试去广告邮件、垃圾邮件目录看看

2. 再次发送验证邮件

对不起,班次容量已满

请报名下一班次

知道了~!

对不起,您没有操作权限

知道了~!