如何缓解业务需求与系统结构的冲突

互联网软件、系统的发展是为了解决人们日益增长的效率需求。

从事软件开发必然会接触到这个话题:以伪装的behavior去满足客户的需求。相信越是庞大复杂的系统,越是有这种设计。

举个简答的例子,现在网购平台到处都是,你点击一个购买按钮,其对用户的behavior只是一个提交成功。但背后又有多少需要做的?比如数据备份、分布式数据校验、异常处理等等。一个好的软件,必是一个异常处理强大的系统。因为目前的计算机还处于计算往智能发展的环节,我们做这样一个计算。我假使一台计算器出错的概率是1%,现在的大数据平台还逃不过分布式的限制,再加上数据备份、冗余处理,姑且算1:5。那么不出错的概率就是 1 - (0.99 * 0.99 * 0.99 * 0.99 * 0.99) = 5%。

为什么系统要吃下这些异常?因为日益激烈的竞争中,每一次异常都会降低用户继续使用系统的期望值。这是需求与系统的第一点冲突。

系统的成熟度一般受三个因素影响。一、现有的科技水平。科技的发展程度是受时间、物理因素限制的,10年前红红火火的软驱现在还剩几家?其二、架构师自身的技术水平。搭建一好环境、基础框架、工具类、模型,是架构师的基础,如何让这套体系运转下去才是体现其技术水平与专业预判能力的关键。技术日新月异,从商业角度分析,不可能时常变更系统的架构,这从成本、风险、稳定性上都不可行。第三、不管如何强大的设计团队,都是离不开实施工程师的努力的。你可以说得天花乱坠,但那毕竟不是最终成果。

从系统角度出发,不可能为了某个特殊的业务,改变我的基础结构。这样对扩展、兼容性都有影响。那就用我的假象来满足你把。我提出足够高层次的抽象,来满足业务方向。用多方向的实现来实现用户交互。那么如果业务变更了呢?比如现在变成先付钱,再挑商品了,又改如何呢?这个问题还在思考中。

系统有其生命周期,所以在设计之前,我们要先明白这个周期的基数。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值