- 1、本文档共19页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UML建模技术 软件系统有别于工业产品的特征 软件产品的只需产生一个母版,其它不耗费资源,可直接进行大规模复制进行生产 对单个软件产品质量的度量评价非常困难,一般采用对企业的能力成熟度来评定该企业的所有的软件产品质量 无烟工业 模型与建模 软件系统是对现实需求的计算机程序模拟,建模是为软件开发建立蓝图描绘各阶段的计划、以及收集整理各阶段的制品(输出)。 软件模型是对计算机软件系统的所有表达,它是对软件系统的一切描述,包括软件过程中各阶段的各种描述文档、规约、图形表示体系、编码阶段的所有代码、交付给用户的最终产品以及技术手册等。 在解决问题之前必须首先理解所要解决的问题。对问题理解得越透彻,就越容易解决它。为了更好地理解问题,人们常常采用建立问题模型的方法。 所谓模型,就是为了理解事物而对事物作出的一种抽象 为什么要建模 建立大厦和建立茅草屋的区别在于前者有计划性和目的性 模型可以帮助人们对已有遗产系统的理解 模型的建立加深对新系统在开发过程中不断深入的理解 模型可以重用(文档重用、经验重用) 误区一:建模就等于是写文档 误区二:从开始阶段解决一切问题 在一开始不可能考虑和预见到所有的细枝末节。 讨论 存在需求规约和代码的背离吗? 为什么最终交付的产品往往需要返工,这说明什么? 如何解决误区二提出的问题? 解决误区二提出的问题 误区三:建模是在浪费时间 很多初级程序员接受的教育局限于如何编写代码,对于完整的开发流程鲜有接触。在项目开发时总是简单重复类似的编码工作,而极少有机会从事每个阶段的建模工作。因而对建模没有任何概念上的认识。 事实上,建模非常重要: 提供了提高效率和学习技能的机会,这些技能能够使他们很容易地适应不同的项目或组织。 模型是一种很好的在项目组成员与项目负责人间,项目组成员与用户间的沟通途径。同时,在建立模型的过程中探讨问题,从而对“做什么”——系统的需求得到更好的理解,对“怎么做”达到充分的交流。 误区四:所有的开发人员都知道如何建模 面临一个严重的问题 许多不是开发人员的人,包括高级经理和用户,不知道软件企业的从业人员应该如何分工 不能够区分开高级程序员和一般程序员,认为所有的开发人员都应具备从头到尾开发整个系统的技能。 建模的技能,是只有当一个开发者通过学习它,并经过长期的实践才能够掌握。 软件开发非常复杂,一个人是很难具备所 有的技能去成功地进行开发,甚至也不可能去配置有一定复杂程度的系统。 开发者应该有自知之明,学无止境。通过互相取长补短, 建模者可从程序员身上学到一项技术的具体细节,程序员也可从建模者那里学到有价值的设计和体系结构的技术。 (1) 准确的原则 模型必须准确地反映软件系统的真实情况。模型必须准确,意味着在软件开发的整个周期内模型必须和产品始终保持一致。 (2)标准规范的原则 模型必须在某种程度上是通用的。建模的基本目的是交流,一个开发队伍内部的交流,同一软件的不同时期的版本的开发队伍的交流,不同软件的开发队伍之间的交流,以实现最大程度的软件复用。交流需要语言,语言是通用的、标准的。 (3)子系统划分的原则(横向划分) 不可能单独用一个模型来反映整个系统的任何侧面。软件系统是复杂的,对于软件模型的任意一个侧面不可能用一个模型来反映所有内容,需要把问题分解为不同的子模型,分别处理这些模型,相对独立但又互相联系,综合起来构成了此侧面的一个完整的模型。 (4)分层的原则(纵向划分) 在建模的过程中,必须有不同的模型,以不同的抽象程度,反映系统的不同侧面。在软件构筑的不同阶段,不同的开发人员如:投资者、管理者、设计者、程序员、测试者和使用者看待软件的侧重面有所不同。因此,软件系统的建模需要不同的模型以反映系统的不同侧面。如,一类模型描绘系统的外部边界和行为,另一类模型描绘系统的内部逻辑关系。 (3)和(4)也合称为抽象,是人们观测和思考世界的基本原则和方法。 建模建议 仅有数据模型对于现代软件是不够的,需要不同侧面方便理解系统,方便指导当前推进开发的多种模型。 拥抱变化,并且允许你的模型能够随着时间进行改进。 模型体现为文档,但文档不就是模型。 只有代码才能与代码保持真正的同步。 设计直到代码发布以后才算完成。 怎样成为优秀的软件模型设计者 1. 人远比技术重要 2. 理解你要实现的东西 3. 谦虚是必须的品格,永远认识到自己的不足 4. 需求就是需求,必须照办 5. 比起需求的改变,更多的是你对需求的理解发生改变 6. 经常阅读别人的设计 7. 降低软件模块间的耦合度 8. 提高软件的内聚性 9. 考虑软件的移植性 10. 接受变化,拥抱变化 11. 不要低估对软件规模的需求 1
您可能关注的文档
- 2016-2017学年初高中衔接教材(苏教版).doc
- T-SQ与高级子查询.ppt
- 2016-2017学年太康一高高三第二次考试化学试题.doc
- 2016-2017学年度中期检测物理试题(共三套含答案).doc
- 2016-2017学年度第一学期期中六校联考高三地理试卷.doc
- T1113-5贺喆毕业设计开题报告.docx
- T1.测试基础知识_2.ppt
- 2016-2017学年初中道德与法治人教版七年级上册同步课件3.2 做更好的自己 课件.ppt
- 2016-2017学年第一学期九年级期中质量监测.ppt
- 2016-2017学年湖南新田县第一中学高二语文课件:第1单元+第3课《拟行路难(其四)》.ppt
文档评论(0)