更新时间:作者:小小条
这里的目标,通常可以归列为一条一条的use case,也就是一个个的功能需求。功能需求的分析,推荐WH分析法。
1、Who,Which, 系统的用户和与外部交互的系统

2、what,系统的一个个功能
3、How 用户如何体验系统
4、不要关心实现细节
实现的自由度:限制可以采用三角形分析法。
业务、法规、技术
考虑业务,公司的CEO希望今年我们业务能够在整个市场份额达到什么样的一个比例?希望我们用户口碑达到什么样的要求?根据这样的业务要求,口碑要求来进行设计系统,需要满足十毫秒的响应,需要支撑多少万的TPS、QPS。所以架构师的靠考虑,它的限制来自于现在的业务要求,来自于未来的业务发展,也就是来自于什么CEO的。
技术方面,当前现存的中间件能够达到什么样的要求?同时它又有什么样的问题?这个时候,不管是拼接这种技术,还是拼接那种技术,必然会有一些限制,这些限制会不会影响业务呢?技术与业务需要互相沟通,综合考虑,找到一个切入点,平衡点,实现技术简单化,业务功能丰富化。
除此以外,法律法规方面,系统需要合法合规,比如个人信息要加密等。
做到什么程度:质量可以采用“怎么”的分析法
1、怎么安全、怎么快、怎么稳定、怎么方便、怎么牛
2、运行时质量要求:支撑10万QPS、1万TPS、延时<1s
3、准备时质量要求:一分钟内可以扩展到10000个节点
4、结合功能需求的WHAT,结合用户体验
现有的手段:资产和技术现有的手段包当前的资产和一些技术。我们的架构一般都是迭代的,所以,我们每一个新的项目都会有一些上个项目的积累,新的产品也都是前一个产品的衍生。上一个项目或者产品的代码库、架构设计文档、架构设计的思路都是资产,还有系统中很多已经熟悉的技术,这些都是我们系统的手段,它们可以共同配合我们的需求,来实现我们完完整整的一套架构设计。当你设计的时候,既要考虑功能性,也要考虑非功能性需求,以及我手上现存有哪些资产和技术,这样方便地来进行快速的迭代,快速的开发和设计。
推荐使用甘特图,燃尽图管理落地计划。
研发设计测试方案,TDD部署方案,DevOps物理架构:服务器、网络、机房、云平台
非功能性实现:容灾、多活、单元化、CDN缓存
发布流程:应用、数据、网络、CI/CD
采购目标自研、采购、外包、招标和产品决策
版权声明:本文转载于今日头条,版权归作者所有,如果侵权,请联系本站编辑删除