UML学习笔记——为什么要学习
2025-08-24 21:11:04
UML是一种发展较早且非常成熟的面向对象建模语言,在国内的很多行业内也有广泛的应用,但并未很好的普及。
我见过的很多团队在做项目时大多应用需求驱动方式(由需求直接映射为系统功能)进行项目开发。这种映射一方面没能很好的对业务模型进行分析,所以需求仅能覆盖用户提出的要求,不能还好理解用户需求背后的实际需要和原因,往往被客户阶段性的想法牵着鼻子走,造成后续开发工作的偏离和返工;另一方面从需求映射到系统时,没有很好的遵循面向对象原则,就直接从界面设计和功能设计后就开始进入研发环节,这种工作过程虽然快捷但将完善性、灵活性、可扩展性等方面都没有考虑,整个团队采用填坑方式(后续上线发现缺陷再补救)不断推进项目。大多数情况下功能上线后,都是怀着惴惴不安的心情等待不好的事情发生,一旦发生整个团队就手脚并用的解决问题,后续的开发任务往往被一再拖延,团队各角色人员相互抱怨,推卸责任。
如果能在项目整个生命周期能对系统进行建模,使用建模的方式构件业务模型,识别用例,系统设计,架构分析,功能设计,测试用例,部署设计等,就能在前期让团队熟悉客户业务并容易获得用户需求确认,同时能在团队中充分交流并快速形成共识;系统模型也有利于快速形成各阶段文档减轻团队各角色的文档输出压力,把精力之中到设计与开发上。
另外,系统建模是对立与系统开发过程的,也就是说使用建模方法可以应用与各种软件工程项目,它不会改变团队以往的工作模式。
对于个人开发者,也能帮助他在写代码前厘清系统各个方面,并在写代码前就充分考虑各种面向对象原则和模式,极大提高开发效率。