欢迎来到天天文库
浏览记录
ID:48025866
大小:4.75 MB
页数:89页
时间:2020-01-27
《第3讲 软件体系结构与系统要素.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第三讲软件系统要素与体系结构饶元西安交通大学软件学院课程体系结构企业信息化目标企业模型架构IT的作用软件系统的核心要素软件系统体系架构软件系统变革动力项目管理核心要素项目过程管理与控制软件系统模板体系可行性分析解决方案分析需求工程模型分析设计方法系统构造与实现系统测试实施与上线系统维护与优化内容•第一节:软件系统的核心要素•第二节:软件体系架构•第三节:IT技术变革的动力软件系统核心要素•系统(system)指在一定环境中,为了达到某一目的而相互联系、相互作用的若干个要素所组成的有机整体。•关键词:–环境---目的----联系-----作
2、用----要素----有机---整体.•软件系统:指在一定的软件开发与应用环境下,为了达到某一目的而相互联系、相互作用的若干个软件要素所组成的有机整体。软件系统核心要素•软件系统要素–系统环境(Environment)系统边界(Boarder)–目标(Target)环境(Environment)–边界(Boundaries)、目标(Target)–系统架构(SystemArchitecture)–子系统(Subsystem)输入(Input)处理输出(Output)–输入/输出(Input/Output)(Process)–接口(Inte
3、rface)–组成实体/对象(Element)–实体/对象关系(Relationship)思考问题:•软件系统的核心要素与软件工程的各个阶段有什么对应关系???•软件系统____<系统工程>____软件工程内容•第一节:软件系统的核心要素•第二节:软件体系架构•第三节:IT技术变革的动力架构简化建筑的复杂性CanbebuiltbyonepersonBuiltmostefficientlyandtimelyBuiltbyabigteamRequiresbyateamRequiresMinimalmodelingRequiresModelin
4、gSimpleprocessModelingWell-definedprocessSimpletoolsWell-definedprocessPowertoolsPowertoolsProjectmanagement风格体现建筑类别与结构要素计算机体系结构计算机体系结构CPU0CPU1CPU2CPU3CPU0CPU1CPU2CPU3存储器I/o存储器I/o存储器I/o存储器I/o互连网络存储器I/o存储器I/o存储器I/o存储器I/o存储器I/OCPU4CPU5CPU6CPU7集中共享存储器计算机UMA机器(UniformMemoryAc
5、cess)分布共享存储器计算机―软件体系架构”你早就知道•Main-Frame•Client/Server•Three-tier•B/S•P2P•―4+1‖View_UML•SOA•EDA•……SA之重要•最早指出SA的重要性的是大师EdsgerDijkstra(1930-2002)―..thelargertheproject,themoreessentialthestructuring!”(1968)1提出“goto有害论”;2提出信号量和PV原语;3解决了有趣的“哲学家聚餐”问题;4THE操作系统的设计者和开发者;5最短路径算法(SP
6、F)的创造者;6第一个Algol60编译器的设计者和实现者;http://www.cs.utexas.edu/users/EWD/http://www.cs.utexas.edu/users/EWD/ewd01xx/EWD196.PDF永远的Dijkstra•―对于我来说,计算机科学上的第一个挑战是如何把命令维持在有限范围内,然而巨大的、分立的宇宙是复杂地缠绕着的。第二个也是同样重要的挑战是如何传授解决那第一个问题的方法:只培养你个人的才智(那会随你进入坟墓的东西)是不够的,你必须教会其他人如何去发挥他们的才智。你越关注这两个挑战,你越会
7、清楚的看到它们只不过是同一枚硬币的两个面:自学是去发现什么东西是可以被教会的。”–Dijkstra(1930-2002)SA之重要好的软件体系结构,是好的软件的必要条件。“Goodarchitecturaldesignhasalwaysbeenamajorfactorindeterminingthesuccessofasoftwaresystem.‖问题:•为什么要引入软件体系结构的概念?•什么是软件体系结构?•软件体系结构在软件工程中的地位?•软件体系结构的作用是什么?•软件体系结构的特点是什么?•……为什么引入SA为什么引入SA为什么
8、引入SA为什么引入SA为什么引入SASA可以看作把程序族中的成员的结构化信息组织起来,使系统在体系结构级达到重用(体系结构抽象)家族程序,在信息隐藏和软件结构设计上具有相同模式(设计模式抽象)
此文档下载收益归作者所有