从开发的角度去分解项目需求

举报
架构师聊技术 发表于 2021/03/31 17:55:36 2021/03/31
【摘要】 经历过不同的公司,也带领过不少团队,自然而然会参与不同的项目,遇到过有的同事接到一个新需求或者新任务时,一脸懵逼不知道如何入手。其实就是不知道如何分解需求,今天我们就从开发的角度来分解项目的需求,理清思路问题就迎刃而解。

经历过不同的公司,也带领过不少团队,自然而然会参与不同的项目,遇到过有的同事接到一个新需求或者新任务时,一脸懵逼不知道如何入手。其实就是不知道如何分解需求,今天我们就从开发的角度来分解项目的需求,理清思路问题就迎刃而解。

项目首先得了解需求,如果不了解需求,谈不上分解了,我不相信不了解需求的人能做好项目分解的工作,但现实生活中就有而且还不少这样的同行,在不了解业务需求的情况下就说简单、几条SQL语句搞定,这是极其不负责的表现。了解业务后,我们一般会从横向、纵向分解需求,横向拆分是指拆分业务功能,纵向拆分是指业务功能落地生命周期的拆分,这也是我在工作中使用的分解方法。

横向分析
横向指的是项目的功能,比如,我们常见的OA系统主要有考勤、员工管理、薪资管理、绩效管理等等,WMS系统则主要有仓库管理、商品管理、供应商管理、入库管理、出库管理、PDA、RF等等,是不是这些功能,我们都分解成一个个独立的功能单元进行开发呢,其实在现实项目中并不是这样,还要看各个业务功能的耦合度,如果耦合度比较高,则建议合并成一个功能点,这样更容易管理及业务实现,这也是DDD(领域驱动设计)所提倡的,各个业务需求的边界是非常重要的,如果落地前没有梳理清楚,后期实现是非常棘手,甚至可能直接导致项目的失败。
纵向分析
纵向指的业务落地的生命周期,单个功能的需求分析清楚明了是首要任务,然后就是根据需求设计业务模型、数据模型、技术实现模型,及采用哪种方式、哪种语言来实现,还有为了保证业务的正常运行,需不需要考虑高可用、高并发,及如何解决,最后针对一个单元任务形成一个整体的方案。

项目的业务需求分解是一个复杂的过程,既要对业务需求熟悉,也要有技术沉淀,缺一不可,最重要的还是要在实际的项目中多实践。如果有什么问题,可以加我微信,多多交流,共同进步。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。