当前位置: 首页 > news >正文

UML在软件开发中各个阶段的作用和意义

经典的软件工程思想将软件开发分成5个阶段:
需求分析,系统分析与设计,系统实现,测试及维护五个阶段.

之所以如此,是因为软件开发中饣含了物和人的因素,存在着很大的不确定性,
这使得软件工程不可能像理想的,可以其于物理学等的原理来做的物质生产过程.

如想建造一幢高档的写字楼,那么刚开始便将一切材料和工具全准备好显然是无比愚蠢的行为,
因为有可能你正在使用他人的钱,而这些人将是建筑大小,开状和样式的决定者,
通常情况下,投资方会在开工生改变想法,这样你必须有额外的计划.而对于整个工程,你也许只是其中的某一个工作组,
因此,你需要有各种各样的图纸和模型同其他小组沟通,达到联合工作.很显然,在客户的需求与实际的建筑技术之间找好一个契合点,是做好工程的关键.
许多软件工开发过程也如同上面例子一样,软件问题不仅仅是代码的问题,而成为了一个怎么样将整个过程转变成一个结构,过程和工具相结合的问题.
建模,即其目的和作用在于提供系统蓝图,包含细节设计,也含有对系统的总体设计,同时模型可以帮助开发小组更好地规划系统设计,更快的开发.

UML是一种功能强大的,面向对象的可视化系统分析的建模语言,

它的各个模型可以帮助开发人员更好地理解业务流程,建立更可靠,更完善的系统模型.

从而使用户和开发人员对问题的描述达到相同的理解,以减少语义差异,保障分析的正确性.

转载于:https://www.cnblogs.com/sharpest/p/5779920.html

相关文章:

  • elasticsearch的索引自动清理及自定义清理
  • ACdream 1069 无耻的出题人
  • puppert部署一
  • 永久修改主机名-Linux
  • 微信分享屏蔽跳转appstore解决方法
  • CISCO 交换设备IOS 备份/恢复操作
  • BZOJ1701 : [Usaco2007 Jan]Cow School牛学校
  • 【git】Intellij IDEA中Git插件提交内容到远程仓库
  • 本地项目上传到Github的示例方法
  • cenos下ActiveMQ关闭时出现异常
  • NOIP 2002过河卒 Label:dp
  • MongoDB概述
  • easyui设置全局分页
  • viewport
  • 程序员开发常用英语词汇
  • 「面试题」如何实现一个圣杯布局?
  • 【399天】跃迁之路——程序员高效学习方法论探索系列(实验阶段156-2018.03.11)...
  • co模块的前端实现
  • IndexedDB
  • iOS仿今日头条、壁纸应用、筛选分类、三方微博、颜色填充等源码
  • JavaScript函数式编程(一)
  • Magento 1.x 中文订单打印乱码
  • npx命令介绍
  • PaddlePaddle-GitHub的正确打开姿势
  • Redux 中间件分析
  • vue脚手架vue-cli
  • 工作手记之html2canvas使用概述
  • 温故知新之javascript面向对象
  • 在 Chrome DevTools 中调试 JavaScript 入门
  • 3月27日云栖精选夜读 | 从 “城市大脑”实践,瞭望未来城市源起 ...
  • 7行Python代码的人脸识别
  • Java总结 - String - 这篇请使劲喷我
  • ​html.parser --- 简单的 HTML 和 XHTML 解析器​
  • (图)IntelliTrace Tools 跟踪云端程序
  • (学习日记)2024.01.19
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • .NET / MSBuild 扩展编译时什么时候用 BeforeTargets / AfterTargets 什么时候用 DependsOnTargets?
  • .NET 中小心嵌套等待的 Task,它可能会耗尽你线程池的现有资源,出现类似死锁的情况
  • .考试倒计时43天!来提分啦!
  • @Async注解的坑,小心
  • @Bean注解详解
  • @RunWith注解作用
  • []新浪博客如何插入代码(其他博客应该也可以)
  • [20160902]rm -rf的惨案.txt
  • [2017][note]基于空间交叉相位调制的两个连续波在few layer铋Bi中的全光switch——
  • [BT]小迪安全2023学习笔记(第15天:PHP开发-登录验证)
  • [C#基础]说说lock到底锁谁?
  • [C#小技巧]如何捕捉上升沿和下降沿
  • [C++]priority_queue的介绍及模拟实现
  • [codeforces]Levko and Permutation
  • [html] 动态炫彩渐变背景
  • [IE编程] 如何设置IE8的WebBrowser控件(MSHTML) 的渲染模式
  • [iOS开发]事件处理与响应者链
  • [JS]JavaScript 注释 输入输出语句
  • [LeetCode] Ransom Note 赎金条