软件架构设计实践教程
课件处为本书PPT教案

作者:张家浩

丛书名:软件工程系列教材

定价:99元

印次:1-6

ISBN:9787302366379

出版日期:2014.08.01

印刷日期:2020.12.23

图书责编:张玥

图书分类:教材

电子书
在线购买
分享
内容简介
作者简介
前言序言
资源下载
查看详情 查看详情 查看详情

本教程是为计算机软件工程专业高年级学生或研究生“软件体系结构”课程而编写的教材(含实践内容),包括基本概念和案例分析、实践及思考题等。 全书共9章,分别是第1章认识软件架构,第2章架构与架构师的作用,第3章软件架构的描述与可视化,第4章从需求到架构,第5章软件架构设计的参考模型,第6章软件架构的概要设计与实现,第7章基于接口、组件和SOA的架构设计与实现,第8章基于MVC设计模式的架构设计与实现,第9章基于关键需求的架构设计、验证与评审。 本书与其他同类教科书的不同之处在于,作者根据多年企业工作和学校相关课程教学的经验,结 合学生的实际情况和特点,有所选择地强化了相关课程中从关键需求分析到概要设计、接口和组件设计、MVC模式应用、架构测试和验证等针对性、实用性强,学生看得见、摸得着,能感受、有兴趣学的软件架构知识和动手实践内容,淡化了软件架构的形式化描述等学生难于理解和把握且过于理论化的内容。 本书形式与内容编排与同类教科书有较大变化,在简短的基本概念介绍之后,配备大量的配套案例分析,希望能够帮助学生理解概念,并获得真实的架构体验。同时,在案例介绍中尽可能地采用当前比较流行的平台和工具,使学生在了解和掌握相关知识之后,马上就可以使用,缩短了学校与企业实际运用之间的距离。 教程每章还配有实践题和思考题,方便老师和学生使用。本书主要用作软件工程相关专业的“软件体系结构”课程,也可作为其他相关专业的教学用书,或作为从事软件开发的科技人员的参考书、培训教材等。

1982年南京大学计算机系本科毕业,硕士。曾历任南京有线电厂金融电子化研究所副所长、深圳紫金金融电子信息系统工程公司副总经理、同创集团服务器事业部总经理、南京欣网视讯科技股份有限公司(上市公司)研发中心副总经理等职,主持开发和管理过多项金融、电信行业大型应用系统软件开发。获部省项目奖、星火计划奖等多项。2004年-2011年任东南大学软件学院专职教师、软件工程教研室主任。开设有《现代软件工程》《软件项目管理》《软件体系结构》《组织行为学》等课程,2008年9月获东南大学教学成果一等奖。出版教材有:《软件项目管理》《现代软件工程》(机械出版社)《软件工程实训教程》(清华出版社)。

教过“软件体系结构”这门课的老师可能都有这样的体会: 这是一门很“吃力”、可能也是“不讨好”的课。请企业的老师来讲,他们不了解学生的情况,“天马行空”,学生不能理解。学校老师教,教的人自己多半是“从校门到校门”,几乎没有软件系统的实际开发经验,煞费苦心,教得很辛苦,效果也不好。软件架构师在软件工程过程中,不但需要具有丰富的系统开发经验,并且与一般编码工程师相比,还需要具有更有高度、全局性的视角和软件过程抽象的能力,一般任课教师很难达到;同时,一个无法回避的现实是: 学生进行编程和系统开发时间较少,基础能力较差(少数学生除外),与课程的要求严重不符。 软件工程专业的学生,又必须开设这门课,但上述教与学两方面的情况都不尽如人意,也是不争的事实。 1. 教材编写的动机 作者曾在某届软件工程研究生班(来自全国几十个高校、均为计算机相关专业)的入学摸底(C++/Java编程)中发现,大多数学生的C++或Java的编程能力,仅限于会编写一个控制台输入输出的简单“排序算法”,很多人居然从来没有用过MFC(当然包括VS2005~VS2010)。据说是老师说的,C++编程不用MFC的理由是,基础知识要保持平台无关性。似乎如果可能,最好连Windows或UNIX也不用,可惜做不到。更有很多老师,让学生照着老师编写的可运行代码“输”进去,运行起来,就可以交编程作业了。考试的时候,背背名词解释、填填标准答案,大家“和谐”相处,皆大欢喜。 这样的学生到了企业,怎么“对付”自己的程序员人生?作者在给企业讲课的时候,看到有些通过了系统分析师(软考)考试的员工,在介绍系统架构时,不论什么类型的应用系统...

目录
荐语
查看详情 查看详情
第1章认识软件架构1

1.1软件架构与软件工程1

1.1.1软件产业的工业化与现代化1

1.1.2软件系统的复杂性2

1.1.3克服“软件危机”的进程3

1.1.4现代软件产业发展的时代特征4

1.1.5国内软件产业发展的问题6

1.1.6软件架构与软件工程课程的关系7

1.1.7本课程的参考书7

1.2软件架构概述8

1.2.1软件架构的定义8

1.2.2软件架构的视角9

1.2.3软件架构的表示方法10

1.2.4架构的一般特性10

1.2.5统一过程(RUP)的架构 13

1.3感受身边的架构存在13

1.3.1电灯开关控制系统的架构13

1.3.2鼠标接口的架构14

1.4两个小程序的架构分析15

1.4.1两个小程序15

1.4.2“欢迎”程序的实现过程16

1.4.3小程序的架构实现小结19

1.5实践与思考19

1.5.1实践题19

1.5.2思考题20\软\件\架\构\设\计\实\践\教\程\/目录/ 第2章架构与架构师的作用21

2.1架构是需求将如何被实现的描述22

2.1.1文件传输软件的架构描述与分析22

2.1.2文件传输软件的新需求及其改进方案25

2.1.3架构描述表达了系统必须实现的需求26

2.1.4架构描述表达了软件系统的实现结构27

2.2架构提供满足关键属性需求的方案29

2.2.1汽车控制系统架构演变的案例分析29

2.2.2软件系统的关键质量属性需求33

2.2.3关键质量属性需求与系统功能的正交性34

2.3架构是软件迭代开发的框架36

2.3.1架构是软件迭代开... 查看详情

查看详情