当前位置: 移动技术网 > IT编程>软件设计>架构 > 系统分析师-软件水平考试(高级)-理论-系统规划

系统分析师-软件水平考试(高级)-理论-系统规划

2019年11月20日  | 移动技术网IT编程  | 我要评论

系统分析师-软件水平考试(高级)-理论-系统规划

前言

系统规划是什么东东呢?

通俗点说,就是为了实现企业的战略目标,分析企业现状(技术外部)与系统状况(技术内部),从而提出新的技术要求,对现有系统进行规划设计等变化。

  1. 目标是实现企业战略目标;
  2. 分析企业现状(了解情况了,才能下手呗。站在技术角度,企业现状就分技术和非技术);
  3. 根据掌握的资料,对接下来的系统开发做出规划(技术规划,那是cto的工作,这里就直接系统规划);
  4. 落实规划,开发或改造系统,从而完成对企业战略目标的支持。

期间会涉及对一些项目或系统(一个公司会拥有多个项目与多个系统,用于支撑公司产业线)的评估,如机会选择,可行性分析,效益分析(分析师比架构师多了这些思量与考察,而高项则更为具体)。

xmind

(图片绝对清楚。如果看不清楚,请下载,或者在新页面中打开图片)

总结

xmind重难点的解读

步骤

为了帮助大家更好地理解这部分内容,我们举个栗子。

这样说吧,阿里巴巴定下了淘宝双十一战略目标。你作为cto,就要站在公司高层,开始规划阿里的系统,让它为双十一这一战略目标服务。

具体的实施过程应该是这样的:

  1. 首先,根据双十一这一战略目标,你得分析阿里现在技术环境(可以做出怎样的改变,业务上是否可以进行一定的妥协等等),并了解系统当前的状况(是否可以承受住双十一压力。承受不了的话,瓶颈在哪里等等)。无论做什么,收集信息,了解情况都是首要的。
  2. 其次,站在技术的角度,你需要确定公司信息系统该达到怎样的目标(更大一些说,应该是技术的目标标准)。比如双十一这样的战略目标,我确定公司的系统应该达到十万的订单处理速度(2019年,阿里的订单创建峰值已经达到了五十万左右),以及一系列类似的系统要求。
  3. 然后,根据前面制定的一系列系统要求。开始规划系统的拆分,将目标系统进行逻辑的拆分。但是如果已经有了系统基础,那么就需要在原有的系统上,进行调整。如阿里云平台必须保证在双十一时提供足够强大的基础设施支撑(可以在必要时,支撑大当量的横向扩展)。又如支付宝需要确保在双十一零点(流量冲击的峰值)保证可以支撑百万计的支付请求,并且妥善处理超出的部分。这样就完成了目标的落地方案生成。
  4. 接下来,需要确定工作的优先级别,以及开发顺序。由于总的开发资源是有限的,并且不同业务之间存在各种错综复杂的关系,所以,需要cto站在公司高层角度,进行这个层次的方案安排。如由于阿里云是其它业务的支撑基础,是实现目标的必要因素(甚至都没有太多业务妥协的空间),那么我们可以将它作为优先级第一的工作,并最大程度地倾斜企业资源等。其它工作以此类推。从复杂的角度,可以了解项目组合管理,以及企业战略管理等(但是分析师考试不会这么复杂的,这里只是举个栗子)。
  5. 接着,我需要对这些方案进行可行性分析。毕竟这些方案可能是我根据自己的经验,以及周边个别的意见,花了一天的时间整合出来的。其中可能存在一些不合理,不科学的部分,而我并不了解(个人的力量与认知毕竟有限。也许我对软件十分清楚,但是在硬件上提出了超脱物理规律的不可能方案,而我想当然地认为可以)。所以,需要进行可行性分析。甚至通过论证会议,进行具体的论证,从而确定方案是否可行,是否需要调整。
  6. 最后,根据前面这些简要的方案与意见,通过自己与下属不断沟通,从而形成一份具体的系统设计的方案-系统设计任务书。作为接下来实施系统建设工作的具体依据。

可行性分析

这里着重提一下这个部分,这个部分充分体现了系统的业务特性。

从考试角度说,这个部分虽然不是一个章节,但是每次考试都会考几分。

从实际角度来说,可能一些感兴趣的比较清楚,阿里的p7-p8,腾讯的t3-t4,晋升都是有一定困难的。晋升条件中有一条,需要对业务有足够的了解。就如同国外对程序员的分级看法,也对程序员的产品思维有着非常重的要求。大厂要求程序员对业务有一定的了解,一方面是确定经历真实性,另一方面就是观察面试者的业务思维,产品思维。可能p7,只是要求根据业务场景,实现业务方案,并适当根据技术,提出对业务的看法(如调整业务,提出新的业务特性等)。到了p8-p9就是希望你能在一个大的目标下,提出自己的产品理念。在项目经理的产品模型或产品想法的基础上,站在技术角度,给出新的产品想法,去完善产品模型,提高产品的层次。

以上看法,不保证完全正确,毕竟不同人的解读是不同的。但是还是值得参考一下的(日后我晋升p8,p9,考虑回来更新一下)。

那么可行性分析可以带来产品思维嘛?

当然,,,不能。

但是,可行性分析,绝对是一个绝佳的入门机会。可以帮助开发人员,从一个新的角度去看待自己开发的系统。并且这个入门的门槛很低,开发人员可以很好的理解,入门。后续的道路,就需要各位自己走了。毕竟完事开头难,开始解决了,后面走下去就行了。当然后续有更多积累了,我会分享我对产品,业务的看法。

至于其它部分,都比较简单,就不在此深入谈论了。

学习必要性

考试的必要性,我只说一句,分值可观。

现实的意义,我总结了三点比较重要的:

  • 提升高度。通过这部分的学习,可以为你晋升公司技术高层埋下一颗种子。起码你和boss扯皮的时候,不再是只有技术名词了。
  • 改善眼界。通过这部分的学习,可以改变你对信息系统的纯技术看法。有时候,人的改变,只是需要一个开始。
  • 心中有数。通过这部分的学习,可以令你明白现有项目的一些基本商业特性。起码你知道你的项目能走多远,是不是该跑路了。囧

这个章节就这些内容,如果有什么不清楚的,可以@我。如果有正在准备考试或已经通过考试的,或有交流需求的,可以@我,加群。

希望这篇博客对大家有所帮助。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网