欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > PPT文档下载
     

    Lecture2软件架构师.ppt

    • 资源ID:2145797       资源大小:9.34MB        全文页数:85页
    • 资源格式: PPT        下载积分:8
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要8
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    Lecture2软件架构师.ppt

    软件架构 Software Architecture,中国人民大学 信息学院计算机系, 数据工程与知识工程 教育部重点实验室 朱青,第 2 章 软件架构师,企业中架构师 架构师的定义和职责 架构师的素质 工作中架构师 解决商业问题 架构师软件的核心人物,软件架构师,一个软件架构师需要有广泛的软件理论知识和相应的经验来事实和管理软件产品的高级设计。 软件架构师: 定义和设计软件的模块化,模块之间的交互, 用户界面风格,对外接口方法, 创新的设计特性,以及高层事物的对象操作、逻辑和流程。,软件架构师系统的核心,软件架构师与客户商谈概念上的事情, 与经理商谈广泛的设计问题, 与软件工程师商谈创新的结构特性, 与程序员商谈实现技巧,外观和风格。 软件架构师企业的高级人才需求与培养 引用:网络ppt: 软件企业的人才需求主讲人:邱嘉文,人才在软件企业价值链中的地位,客户的业务问题或机遇。,帮助客户 实现业务价值的软件工具。,软件过程,软件企业,人才培养基地,帮助软件企业实施软件工程的人才。,软件过程是知识密集型过程,软件过程,业务领域 知识,软件工程 知识,软件企业 知识,解决方案 知识,软件企业人才/知识结构,需求开发 人员,产品服务 人员,软件客户,软件研发 人员,企业管理 人员,软件企业,业务领 域知识,解决方 案知识,企业运 营知识,软件工 程知识,软件企业的组成,需求开发人员,产品服务人员,软件研发人员,企业管理人员,软件企业,软件工 程知识,业务领 域知识,企业运 营知识,解决方 案知识,软件过程,软件过程,TOONE软件过程(1999-2000),软件企业的组成,企业管理人员举例,人资管理人员,企业管理人员,行政管理人员,投资管理人员,运营监管人员,财务管理人员,产品服务人员,需求开发人员,产品服务人员,软件企业的组成,软件研发人员,企业管理人员,软件企业,软件工 程知识,业务领 域知识,企业运 营知识,解决方 案知识,软件过程,软件产品服务人员举例,产品服务人员,需求开发人员,需求开发人员,软件企业的组成,产品服务人员,软件研发人员,企业管理人员,软件企业,软件工 程知识,业务领 域知识,企业运 营知识,解决方 案知识,软件过程,需求开发人员举例,需求开发人员,软件研发人员,软件研发人员,需求开发人员,软件企业的组成,产品服务人员,企业管理人员,软件企业,软件工 程知识,业务领 域知识,企业运 营知识,解决方 案知识,软件过程,软件研发人员举例,软件研发人员,国内软件企业面临的普遍问题,普通开发员好找,软件工程师难寻,处于作坊式向工程化进化的艰难过渡期,软件过程失衡,脱节,过程成熟度低,陷于规范管理和僵化管理相混淆的境地,外功易修,内功难练,市场的要求高和企业研发能力不足矛盾突出,普通开发员和软件工程师之一,普通开发员 掌握了计算机基础知识; 熟悉计算机资源,学会了编程语言,喜欢卖弄技巧,喜欢比较编程语言的优劣; 以能编出某种特殊功能的程序为荣,不懂原理,不求甚解; 喜欢个人开发,不重视文档编写;,软件工程师 计算机基础知识扎实; 掌握两门以上编程语言,很少停留在表面比较编程语言的优劣; 以编写出用户满意的高质量软件为荣。 懂得个人开发和团队开发的利弊,文档规范,齐全。,普通开发员和软件工程师之二,普通开发员 只重视功能的实现,不重进度和质量的把握。 怕被“管”得太死,动不动就说限制了思路,没有发挥空间。 不喜欢做测试工作,认为测试低人一等,从来没有做过测试工作。 只根据自己的爱好学习技术;,软件工程师 懂得在进度、质量(功能)和成本之间平衡。 懂得规范的目的在于重用,重用有利于提高效率和集中精力创新。 认为测试工作比编码更具挑战性,自己经常为同伴的代码做白盒测试。 根据企业项目的需求和自己发展目标的共同点选择学习内容和方向;,普通开发员和软件工程师之三,普通程序员 认为别人程序很差,不喜欢看别人的代码; 总认为自己比业务专家还更理解需求。 项目开始喜欢说:“没问题,SO EASY”。 项目大大延期时喜欢说:“设计太烂,没法编程”。,软件工程师 喜欢为同事走查代码,并以此获得学习他人有点的机会; 懂得自己只是可能比业务专家更懂编程。 项目开始喜欢问:“那是什么?这是为什么?”。 项目大大延期时喜欢说:“我为什么就没想到”。,企业的人才类型和素质结构关系,技术素质,管理素质,时间管理,缺陷管理,计划管理,成本管理,风险管理,知识管理,分析技术,架构技术,编程技术,测试技术,设计技术,初级工作者,高级综合人才,高级管理人才,高级技术人才,高级技术人才理想成长路径,时间管理,缺陷管理,计划管理,成本管理,风险管理,知识管理,分析技术,架构技术,编程技术,测试技术,设计技术,初级工作者,高级综合人才,高级管理人才,高级技术人才,1,6,4,5,2,3,预备程序员,中级程序员,高级程序员,设计员,分析员,架构师,管理素质,技术素质,高级管理人才理想成长路径,时间管理,缺陷管理,计划管理,成本管理,风险管理,知识管理,分析技术,架构技术,编程技术,测试技术,设计技术,初级工作者,高级综合人才,高级管理人才,高级技术人才,1,A,7,9,8,配置经理,SQA经理,产品经理,研发部经理,6,4,5,2,3,预备程序员,技术素质,管理素质,高级综合人才实际想成长路径,时间管理,缺陷管理,计划管理,成本管理,风险管理,知识管理,分析技术,架构技术,编程技术,测试技术,设计技术,初级工作者,高级综合人才,高级管理人才,高级技术人才,1,A,7,9,8,6,4,5,2,3,预备程序员,B,项目组长,C,项目负责人,D,项目经理,E,项目总监,F,技术总监,管理素质,技术素质,软件企业人才成长实际路径,时间管理,缺陷管理,计划管理,成本管理,风险管理,知识管理,分析技术,架构技术,编程技术,测试技术,设计技术,初级工作者,高级综合人才,高级管理人才,高级技术人才,1,A,7,9,8,6,4,5,2,3,B,C,D,E,F,技术素质,管理素质,企业人才类型理想分布状况,时间管理,缺陷管理,计划管理,成本管理,风险管理,知识管理,分析技术,架构技术,编程技术,测试技术,设计技术,初级工作者,高级综合人才,高级管理人才,高级技术人才,1,A,7,9,8,6,4,5,2,3,B,C,D,E,F,管理素质,技术素质,企业实际人才类型分布状况,分析技术,架构技术,编程技术,测试技术,设计技术,高级综合人才,高级管理人才,高级技术人才,1,A,7,9,8,6,4,5,2,3,B,C,D,E,F,技术素质,管理素质,缺陷管理,计划管理,成本管理,风险管理,知识管理,初级工作者,时间管理,软件架构师工作,Software Architecture: A preview The importance of SA Architecture vs. Design The State of the practice The State of Research The issues,The waterfall model of Software life cycle,Req. analysis & specification,Software Architecture & design,Coding & unit testing,Integration & system testing,maintenance,Capturing Solution using 4+1 Views:,System topology, delivery, installation,Project management Development team,System Integrators Dynamic properties: performance, scalability, availability.,End user functionality,Logical Views:,Logical view (or CC-View) Describe the architecturally significant elements of the architecture such as components (classes) and their communication Can be specified Using UML (class diagram) Using ADL,Physical view,Represents how the major processes and components are mapped on to application hardware E.g. how the database and web servers working with database are distributed across a number of servers machines,Development view,Represents the internal organization of the software components E.g., the depiction of a nested package and class hierarchy for a java application would constitute the development view of an architecture,Process view,Describes the concurrency and coordination elements of an architecture E.g., in IT application, the main concerns are describing multi-threaded or replicated components, and the synchronous or asynchronous communication mechanism used,Use-case view,Used tie all these views They capture the requirements for the architecture Can be related to one or more views Can be used to test/validate the architecture,Alternative to 4+1: SEI Work known as views and beyond,Documents an architecture using Module view Describe a structural view of the architecture Code modules, classes, packages, and subsystems in the design Component-and-Connector view (uses ADL) This view describe the behavioral aspects of the architecture using component (e.g., objects) and the connectors (e.g., procedure call, CORBA) Allocation view Shows the mapping between the processes and their hardware; How they talk to each other using NTW or DBASE,Hardware DESIGN Vs. Software Design,Software High level design (Architecture) Low level design (algorithms & Data Structure) Code level Executable,Hardware Programming Logic design Circuit,The Importance of Architectural design,Explicit use of architectural design can be seen Standardized components: common set of components forms the basis for a set of related operations Specific systems can be realized by just adding the specialized components Product family: common set of components that form the basis to produce a family of closely related producer; Frameworks (platform): A generic set of components that forms the basis of a variety of related products; need to be tailored for specific system Domain-specific architectures: architectural abstractions designed for specific class of systems (e.g., DoD and avionic systems),Stakeholders and their Concerns,Software Architect,End-users: how dependable is the system?,Acquirers: Neat features, low cost, short time to market, parity with competing products!,Maintainers: how to change?,Management: how to keep track of milestones, budget, etc,Developers: Low cost, timely delivery, not change very often!,Examples of Driving Qualities,observable at Runtime Performance Security Availability Reliability Usability Scalability,Not observable at Runtime Modifiability Portability Reusability Integrability Testability,Business Qualities Time to market Cost Projected lifetime of the system Targeted market Rollout schedule Extensive use of legacy systems,Qualities of the Architecture Conceptual integrity Correctness and completeness,软件架构师工作,软件架构师案例分析 Trustie课题,协同开发平台团队,流程制导、支持异构集成的软件生产线介绍,Trustie课题 协同开发平台团队 2009.06.01 北京·,www.trustie.net,内容,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、主动监控,www.trustie.net,一个旅行定制系统,用户通过浏览器定制旅行计划,主要包括以下四大功能需求: 电子商务门户 订单处理 供应商 银行支付,TravelPlan,背景介绍-需求,www.trustie.net,应用复杂化、平台复杂化 流程驱动、服务集成 个性定制、信息集成 多层架构、平台异构,背景介绍-需求,www.trustie.net,生产线特征 支持基于多中间件平台的复杂分布式软件系统的生产 支持模型驱动的开发方法,支持可信保障,背景介绍-流程制导、支持异构集成的软件生产线,www.trustie.net,背景介绍-流程制导、支持异构集成的软件生产线,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、主动监控,生产线设计人员定义生产线加工工序 项目开发团队下载、装配个人工作平台,内容,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、主动监控,应用项目中制品的组织和管理,内容,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、主动监控,项目管理人员分配软件制品加工任务,内容,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、主动监控,业务流程设计人员进行业务流程的设计和开发,内容,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、主动监控,Java&J2EE开发人员进行业务构件和门户构件的开发,内容,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、主动监控,部署人员进行统一进行流程、应用、构件的部署,内容,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、多粒度主动监控,业务分析人员和平台管理人员进行业务流程监控和平台性能监控,内容,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、主动监控,生产线设计人员定义生产线加工工序 项目开发团队下载、装配个人工作平台,内容,www.trustie.net,构造软件品加工工序,形成以制品为核心的“生产线数据流”,生产线建模工具,生产线演示-构造软件制品加工工序,www.trustie.net,构造软件品加工工序,形成以制品为核心的“生产线数据流”,生产线建模工具,生产线演示-构造软件制品加工工序,www.trustie.net,构造软件品加工工序,形成以制品为核心的“生产线数据流”,生产线建模工具,生产线演示-构造软件制品加工工序,数据流,www.trustie.net,生产线演示-构造软件制品加工工序,www.trustie.net,生产线演示-生产线配置文件,www.trustie.net,个人工作平台,生产线使用人员根据所属角色,下载工具,装配形成个人工作平台,生产线演示-装配个人工作平台,个人工作平台,任务管理,制品管理,生产线生命周期管理,BPMN 建模,Web服务 开发,流程 部署,流程 测试,软件生产线,个人工作平台,个人工作平台,www.trustie.net,Internet,生产线演示-装配个人工作平台,www.trustie.net,Internet,生产线演示-装配个人工作平台,www.trustie.net,Internet,生产线演示-装配个人工作平台,www.trustie.net,Internet,生产线演示-装配个人工作平台,www.trustie.net,Internet,生产线演示-装配个人工作平台,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、主动监控,应用项目中制品的组织和管理,内容,www.trustie.net,生产线演示-应用工程及制品管理,www.trustie.net,生产线演示-应用工程及制品管理,www.trustie.net,生产线演示-应用工程及制品管理,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、主动监控,项目管理人员分配软件制品加工任务,内容,www.trustie.net,以任务驱动生产线进行软件生产活动,形成“生产线控制流”,生产线演示-生产线任务管理,个人工作平台,任务管理,制品管理,生产线生命周期管理,BPMN 建模,Web服务 开发,流程 部署,流程 测试,软件生产线,控制流,任务管理系统,客户端,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、主动监控,业务流程设计人员进行业务流程的设计和开发,内容,www.trustie.net,生产线演示-模型驱动的业务流程开发,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、主动监控,Java&J2EE开发人员进行业务构件和门户构件的开发,内容,www.trustie.net,生产线演示-异构构件的开发,www.trustie.net,生产线演示-基于WorkManage的航班查询服务,TravelPlan 航班查询,酷讯查询,携程查询,同步查询,航班信息,顺 序 执行,www.trustie.net,生产线演示-基于WorkManage的航班查询服务,TravelPlan 航班查询,酷讯查询,携程查询,基于WorkManager的异步查询,航班信息,并发 执行,www.trustie.net,生产线演示-协作门户构件的开发,旅游目的地、天气、地图等Portlet之间的协作,www.trustie.net,生产线演示-协作门户构件的开发,旅游目的地、天气、地图等Portlet之间的协作,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、主动监控,部署人员进行统一进行流程、应用、构件的部署,内容,www.trustie.net,生产线演示-统一部署,www.trustie.net,背景介绍 生产线演示 生产线构造与装配 生产线制品管理 生产线任务管理 模型驱动的业务流程开发 异构构件的开发 统一部署 多层次、多粒度主动监控,业务分析人员和平台管理人员进行业务流程监控和平台性能监控,内容,www.trustie.net,生产线演示-多层次、多粒度的主动监控,

    注意事项

    本文(Lecture2软件架构师.ppt)为本站会员(本田雅阁)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开