刘捷老师软件设计最佳实践和案例分析培训doc.doc

刘捷老师软件设计最佳实践和案例分析培训doc.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
刘捷老师软件设计最佳实践和案例分析培训doc

软件设计最佳实践和案例分析培训? 课程简介: 几十年来,软件开发实践一直被惊人的低成功率所困扰。作为软件设计师,你知道现在软件开发悲剧的根源在哪里吗? 如果你连根源都不知道在哪里? 你怎样知道去解决呢? 在软件开发过程之中,会遇到各种各样的问题,原因归结起来主要根源有两个方面,一个是复杂性,一个是变化性。软件的规模越大,各个部分之间的牵连越复杂,更改也就越难。如果软件简单并且规模小,更改还比较容易。但是随着用户业务复杂,几乎所有的软件的任务规模都会越来越大。 伴随着软件越来越复杂,对软件的变更需求越来越频繁,更改所需求的花费越来越大。我们软件开发人员的悲剧就诞生了。 很多软件的设计往往是大泥球式的设计,指结构杂乱无章、错综复杂、邋遢不堪、随意拼贴的大堆代码。在现今软件开发日趋复杂的情况下,围绕着如何安排、规划这些活动的次序、周期和时间,人们提出过各种各样的软件开发方法模型。比如目前流行的敏捷/RUP等等. 但是你真正知道吗? 软件质量最终还是依赖较强责任心和能力的设计师。除非如此,不管是敏捷是非敏捷,软件设计的问题根本不能解决。因此持续关注优秀技能和良好的设计,才可以真正实现敏捷。 我们大多在一线的设计师,不了解设计的基本原则/模式,但是可惜当他知道一些原则和模式后,却已经变成了管理者(项目经理,产品经理等管理岗位),不在从事设计的工作. 这真是业界悲哀的事情.我们课程重点关注软件设计师技能, 这是本课程的设置的目的.课程总结了多年项目开发的实战经验,让学员体会在软件系统设计过程中提高能力。课程体系结构: 课程体系结构 课程主题 内容 项目案例 6个真实大型项目案例 设计过程 分析如何进行设计, 权衡过程 设计价值观 不仅仅实现功能,关注设计质量属性(可维护性和复用) 设计原则 软件设计的基本原则 设计模式 常见架构/设计模式 设计建模 敏捷UML建模 设计最佳实践 设计的最佳实践 课程特色: 一般的书籍和培训,往往是介绍设计过程,设计原则和模式,之后再给出几个简单的在理想情况下的应用.要么是拿出最终设计来讲解,然后告诉他的设计的是多么灵活,多么的好. 但是当你课程结束后,回到工作之中却发现情况是完全的不一样,这时你只有束手无策.本课程注重实战,采用案例贯穿方式完成讲解理论,让学员体验软件设计的思索,权衡,折中,选择的痛苦过程,首先提出真实项目的需求,然后学员开始动手设计,最终讲师和你一起思索,一起探讨,一起权衡,一起验证. 学员学习本课程应具备下列基础知识: 1)至少2年以上开发经验,经历过频繁需求变更或者系统重复开发的折磨 2) 熟悉Java/C#/C++任意一种面向对象语言或者具备面向对象编程基本概念 3) 一般软件企业的设计人员和初级架构师,以及资深程序员 谁已经选择了该课程? 我们已经为几十家企业提供了内训如Adobe中国研发中心,Autodesk软件(中国)研发中心,爱立信中国研发中心(7次内训),思科中国研发中心,卓望科技,朗讯研发中心,平安科技,Visto中国研发中心,横河电机(中国)有限公司,大唐电信研发中心,美国通用电气(GE)研发中心,迈瑞研发中心,阿里巴巴研发中心,摩托罗拉成都研发中心 主题 内容 第一单元 软件设计目标-灵活性/可插入性/可扩展 内容一:拥抱需求变化---设计师必须面对的 1、 不管你在何处工作,构建些什么,用何种语言,在软件开发上,一直最痛苦的事情是什么?? 或者什么是你开发之中最讨厌的问题是什么?---需求变更 2、杀死一个程序员不需要刀,只要需求变3次就好了!! 3、软件不断变更法则:真实世界中使用的程序必须进行变更,否则它在环境中的作用就会越来越小. 4、需求改变的态度-拒绝变化无用,积极心态面对变化 5、而敏捷对预测未来的方式是全新的,强调通过提高团队的能力、设计的弹性和流程的灵活性来适应变化。这种思路对软件开发也是很大的冲击。 6、软件设计的目标-灵活性,因为增加一个功能特性的成本并不单单是为这些功能编码所花费时间的成本,还应该包括特性扩展的障碍成本。现在我们遇到的最大障碍是现在系统的混乱,难以扩展。 7、 案例分析—通过案例分析需要变化的根源,以及各种情况 第二单元 如何设计才能实现灵活性 内容一:软件设计的灵活性 1、 什么是好的设计和衡量的手段,世界大师的观点(Robert C Martin , Peter Code,` James Shor) 2、一个好的系统设计应该有如下的性质:可扩展性、灵活性、可插入性。-Peter Code [CODE99] 3、可扩展性(Extensibility)容易添加新的功能. 结合案例,通过那些手段如何实现该目标 4、灵活性(Flexibility)代码修改平稳地发生. 结合案例,通过那些

文档评论(0)

jiaoyuguanliji + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档