谈一下我对如何设计一个子系统的理解和思考

本文探讨了子系统设计的三大核心步骤:明确系统定位、界定系统边界及设计内部结构。通过这三个方面,帮助开发者构建出既实用又高效的应用系统。

一、概述

     子系统的概念没有一个统一的定义,有人说是模块,有人说是构件,现在比较时髦的说法是微服务。这里的子系统是指可独立部署、独立升级、对外提供接口(一般是restful接口)的程序。

     那么如何来设计这样一个子系统呢?从我多年做软件开发的经验和理解来看,设计这样一个系统需要做三件事情:1、理解系统的定位。2、理清系统的边界。3、设计系统的内部结构。

二、理解系统的定位

     理解系统的定位是指搞清楚系统存在的价值,即通常我们说的需求分析。搞清楚这样一个系统能给客户带来什么样的价值,是能提升客户的工作效率吗,还是能给客户降低成本。这个系统针对的客户痛点是什么,这是方向性问题,是在开发系统前一定要搞清楚的。

     搞清楚系统的定位非常关键,否则做出来的东西,技术含量再搞,界面再炫也没用。做的东西不是客户想要的,就没有价值。

三、理清系统的边界

     系统边界包含两方面的内容:一方面是系统需求的边界,客户有很多需求,经常这也想做那也想做,这时候就要考虑这些东西是不是都在这这个系统里面做,什么时候做,要有路标;另一方面是技术的边界,搞清楚这个系统所依赖的,和被依赖的;即通常我们说的系统间接口。

     清楚了系统的需求边界后才不至于把系统搞成大杂烩,什么都做,啥都没做好。开发人员疲于奔命,大家没有成就感。理清了系统间的接口后减少了后续联调的工作,多个系统也可以并行开发,不用关注彼此内部的实现。

四、设计系统的内部结构

     系统内部结构包含系统内各子模块的设计,数据库设计,消息通信机制设计,日志维护接口,权限管理等。这一块内容是我们开发人员经常接触的HLD和LLD部分。

     搞清楚了这三块,基本上对一个子系统的分析就差不多了。后面再对这三块展开详述,每一块该怎么做,有哪些方法和技巧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值