版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、软件工程导论(4) 软件工程思想,思想?,我们太过倾向于遵循我们自己的乐观主义。我们太喜欢忽视真理的声音,而去听从万灵药贩卖者的诱惑,本章内容,4.1 永远不可低估思想的作用 4.2 以人为本 4.3 软件开发不是一门艺术 4.4 向传统工业学习 4.5 软件工程的例外 4.6 软件工厂思想,本章内容,4.1 永远不可低估思想的作用 4.2 以人为本 4.3 软件开发不是一门艺术 4.4 向传统工业学习 4.5 软件工程的例外 4.6 软件工厂思想,永远不可低估思想的作用,软件工程思想决定了软件工程的策略和方法,本章内容,4.1 永远不可低估思想的作用 4.2 以人为本 4.3 软件开发不是一
2、门艺术 4.4 向传统工业学习 4.5 软件工程的例外 4.6 软件工厂思想,以人为本,管理学的佐证 由智力活动所决定 软件工程是知识工程,管理中心从物本管理到人本管理,经济人社会人 以人为本,尊重软件团队的每一个人,调动每一个人的工作激情和创造能力,发挥每个人的潜力,知识工程的管理就是一种人性化的管理和全员参与的管理,组织的价值需要每个人的价值体现出来,本章内容,4.1 永远不可低估思想的作用 4.2 以人为本 4.3 软件开发不是一门艺术 4.4 向传统工业学习 4.5 软件工程的例外 4.6 软件工厂思想,软件危机,软件是高科技的智力产品,需要很高的创造性,但还是不能抹去其工业性 软件质
3、量问题直接危害到人们的生命财产、会造成国家经济的严重损失,企业会为此付出很大的代价 艺术可以定义为“人类以创造美为主要目的的技术及其产品”,本章内容,4.1 永远不可低估思想的作用 4.2 以人为本 4.3 软件开发不是一门艺术 4.4 向传统工业学习 4.5 软件工程的例外 4.6 软件工厂思想,向传统产业学习什么?,4.4 向传统工业学习,4.4.1 客户为导向 4.4.2 需求分析是基础 4.4.3 过程决定结果 4.4.4 持续改进过程 4.4.5 缺陷预防 4.4.6 围绕项目开展工作 4.4.7 验证和确认缺一不可 4.4.8 以架构设计为中心,客户为导向,满足客户的期望 超越客户
4、的期望 一切从客户出发 体现在具体过程中 让客户参与到公司的质量管理中,客户为导向就是以客户为中心,将客户的需求、期望和关心作为组织管理的活动原则和价值准则,充分体现了“以客户为关注焦点”的原则 客户为导向是一种文化,也是一种策略和方针。,质量=客户满意度,以客户为导向,最直接体现在客户需求工作之上 对需求不重视,导致软件开发的返工率很高、成本高、质量低等一系列问题,需求分析是基础,在传统的制造业,产品的每个新特性都是经过仔细推敲后才确定下来,一个惊人的数字,如果在项目执行的最后再来修正错误,那么可能比在项目的需求阶段就修正错误,多付出多少的代价?,一个惊人的数字,在项目的最后阶段修正需求错误
5、比在需求阶段修正它要多花费200倍的代价,过程决定结果,有什么流程,就有什么结果,流程决定了结果 产品是构建于过程之中 自动化生产线就是一个很好的例子,“七人分粥”故事,质量不是检验出来的,而是构建出来的,过程活动决定了成本,持续改进过程,PDCA IDEAL DMAIC QIP,持续改进,正是冰冻非一日之寒,不能三天打鱼、两天晒网,PDCA,持续改进,IDEAL,DMAIC,定义 测量 分析 改进 控制,QIP,缺陷预防,软件的劣质成本占开发的总成本在40%以上 如果第一次就把事情做对了,就消除了劣质成本 相比软件测试/质量检验,更有效的方法是开展预防缺陷的活动 在开发的每个阶段实施根本原因
6、分析, 为有效开展缺陷预防活动提供依据,项目管理已经很成熟,形成比较完整的体系 不管大大小小的事情,都可以看作一个项目 把一个个项目做好了,就把整个工程做好了 围绕项目开展各项工作,围绕项目开展工作,项目,验证和确认缺一不可,验证过程: Are we building the product right? 是否正确地构造了软件?即是否正确地做事,验证开发过程是否遵守已定义好的过程规范。 确认过程: Are we building the right product? 是否构造了正确的软件?即是否正在做用户真正所需要的产品,以架构设计为中心,软件架构设计决定了软件系统的性能、可靠性、扩充性和维护
7、性等 良好的架构设计能适应用户不同的需求、支持用户需求的改变 RUP也提倡“以架构设计为中心”的理念,本章内容,4.1 永远不可低估思想的作用 4.2 以人为本 4.3 软件开发不是一门艺术 4.4 向传统工业学习 4.5 软件工程的例外 4.6 软件工厂思想,软件工程有什么不同?,4.5 软件工程的例外,4.5.1 迭代 4.5.2 敏捷开发思想 4.5.3 持续构建和集成 4.5.4 永远的Beta 4.5.5 面向对象是一种思想 4.5.6 软件工程应归为知识管理,为什么选择迭代?,市场的压力和竞争策略的需要 产品开发的资金、周期和资源是有限的 软件的复杂程度不断提高,增加了项目失败的可
8、能性,将一个产品进行分阶段处理,可以尽早发现产品的市场问题或方向错误,降低风险。 对于越来越复杂、庞大的系统,多数情况下不容易一次性整体实现,而是通过分解逐步实现。 软件比较容易修改或扩充,在技术上可以保证软件迭代的可行性。,迭代,增量开发,迭代,迭代开发流程,螺旋模型,RUP模型,XP-eXtreme Programming极限编程,最简单的可能就是最有效的 极限编程适合 小团队 (2-10 programmers) “高风险” 快速变化或不稳定的需求 强调可测试性 格言 “沟通、简化、反馈、激励”,Kent Beck,XP Lifecycle -生命周期,TDD - Test-Driven
9、 Development测试驱动开发,TDD 流程,持续构建和测试,系统的集成从写代码的第一天就开始,而且持续集成 借助于持续集成,绝大多数缺陷在其引入的同一天就可以被发现 每日验证,包含了持续的集成验证,可以配合每日构建和持续集成的工作 在持续集成的驱动下,也加快了项目的进展 良好的开发环境和自动化测试可以保证持续构建和测试的实现,从第一天开始持续构建,永远的Beta,简单、朴素的Web 2.0思想 “追求卓越、永无止境”的境界 对持续构建的发展 充分挖掘大众的智慧和体验,“永远的Beta”正在成为互联网软件开发的主流思想之一,创造一个更为灵活、发展更为迅速的软件工程环境,面向对象是一种思想
10、,封装、继承性和多态性 从具体到抽象,再从抽象到具体 需求定义更彻底 改善软件的稳定性和可维护性,面向对象的编程语言,软件工程知识管理,需要同化和集成的概念 工作是和人打交道 能产生无形的智力产品,软件工程是一种智力活动,应归为知识工作和管理,是因为其符合知识工作的特点,知识管理的原则,工作人员了解自己的工作,或者说比其他人员(如管理人员)更理解自己的工作 对于开发人员不能完全靠工作成果的量化来完成绩效考核,不能实施计件工资等,所以必须让知识工作人员管理自己,这样才能真正发挥他们的潜力 需要不断激励他们,不断指导和帮助他们,培养他们的领导力,知识管理体系,个体知识组织化 隐性知识显性化 零散知
11、识系统化,本章内容,4.1 永远不可低估思想的作用 4.2 以人为本 4.3 软件开发不是一门艺术 4.4 向传统工业学习 4.5 软件工程的例外 4.6 软件工厂思想,软件工厂存在吗?,4.6.1 模块化思想 4.6.2 面向构件思想 4.6.3 软件复用 4.6.4 中间件 4.6.5 自动化无处不在,4.6 软件工厂思想,模块化思想,“化繁为简”朴素思想的一种表现 将复杂的系统分解为相对简单的模块,对单一模块容易各个击破 新产品(系统) = 通用模块(不变的部分) + 专用模块(变动的部分) 模块能标准化和通用化,面向构件的思想体现在需求和设计的层次上 构件是可独立配置的单元 构件的实现
12、是严格封装的 构件可以在适当的环境中被复合使用 面向构件思想还强调程序在动态运行时构件的自动装载 ,和“软件工厂”的概念已非常接近,面向构件思想,面向构件是一种前沿的软件设计思想,将成熟的工业化生产中标准构件、组装、自动化生产线等概念引入到软件开发过程中,并吸收了软件开发的结构化方法和面向对象方法中的一些优点而形成的,软件复用,软件复用就是设法使用已有的软件组成元素来构成新的系统,以减少软件开发所需的费用和时间,提高软件的可维护性和可靠性,基于软件函数库的软件复用 生成方式,即对模式的复用 组装方式,中间件,中间件(middleware)可以看作是面向构件的开发思想的一个实例,或者说是软件复用思想的延伸 中间件可以为不同领域内的应
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 世界文化之旅教学设计-
- 2026年时政模拟题(含答案)
- 2026年(完整)三基考试内科试题及答案
- 2026年铣工技能实操考试题库及答案
- 海兴县(2025年)员额法官遴选面试考题及答案
- (2025年)医保新规解读医保知识考试试题及答案
- 2026年新版劳技试题及答案
- 2026年育婴员理论测试题及答案
- 2026年汽车知识试题附答案
- 2026年房建专业安全试题及答案
- 2026农行考试面试题及答案解析
- 2026年安徽商企文化旅游投资有限公司公开招聘工作人员2名笔试备考题库及答案详解
- 2026年党员发展对象考试题库及答案
- 2026年新保安员考试题库库附答案
- 2026年四川拟任县处级任职资格理论考试强化训练试题及答案
- 2026光纤荧光测温技术在高压电气设备的预警阈值设定报告
- 2025年医院信息科年度考核表
- 2026中国大宗商品物流园区期货交割库布局研究报告
- 英语48个国际音标课件(单词带声、附有声国际音标图)
- 统编版八年级下册语文第五单元测试卷(A)(含答案)
- 诫勉谈话个人书面检查范文(5篇)
评论
0/150
提交评论