架构师,怎样才能搞定上下游客户?

2024-05-13 21:48

本文主要是介绍架构师,怎样才能搞定上下游客户?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

系列前序文章索引:

  1. 程序员为什么必须要懂架构?
  2. 架构到底是什么,你知道吗?
  3. 架构都有哪些,我该怎么选?
  4. 架构师都干什么,你知道吗?
  5. 练就哪些技能才胜任架构师?

架构师,在开展工作的过程中需要对接老板、产品、项目、开发、测试、安全和运营等各种岗位角色,他们都是架构需要关注和服务的内部客户,他们的痛点就是架构工作的驱动因素。架构师就是要用专业技能“搞定”这些角色的需求,输出大家都能接受的解决方案,大家好才是真正的好。为了达成此目的,我们必须知道不同岗位的关注点。

  1. 老板产品

老板的主要职责就是定方向、找人、找钱,他对架构设计的要求就是在给定的预算、时间范围内研发出软件系统,推动公司的战略或战术得以实现,也就是说架构方案不能过于理想,不能超出预算和截止时间。自从苹果公司的乔布斯封神之后,现在的互联网公司都崇尚老板担当首席产品官,例如腾讯马化腾、微信张小龙、百度李彦宏等等。产品经理需要思考打造什么样的产品才能达成公司的战略或战术目的,他要综合考虑产品是否满足功能、质量和商业等需求,满足功能需求只能达到及格线,易用性、交互体验、性能、可靠性等质量需求能否满足才是产品达到优秀的关键,以及从商业角度考虑选择什么时机将产品推向市场,有节奏地推动用户和业务的不断增长等。

任何技术都是服务于业务的,架构主要是承上启下的作用,架构设计需要将老板和产品的战略战术规划跟开发实现衔接起来,例如:公司准备进入某个新领域,但在没有足够把握的情况下先推出一款产品试试水,这个阶段的架构设计就不能太超前,而是要尽量简单轻量,以便开发团队能够快速将原型产品开发出来,推向市场并收集真实用户的反馈,验证想法。如果发现原先的想法过于纸上谈兵,那么接下来就要尽快调整方向了,这时候架构过于复杂反而不利于调整。如果经过试水验证发现产品找准了市场切入口,用户和业务都开始快速增长,那这时候就需要考虑做架构升级了,必须预见到后续业务发展趋势,预留一些提前量,确保技术不会托业务发展的后腿。

2. 项目管理

我们都知道,不管是传统瀑布式,还是敏捷迭代式,项目管理主要关注范围、进度和成本铁三角,以及满足上述三个维度约束下确保质量。那么从服务好项目管理这个内部客户看,架构设计必须要遵从范围、进度、成本和质量等约束,否则项目组都解散了,再好的架构也无用武之地。

  • 范围,指需求的范围。传统瀑布式项目的周期较长,通常在立项之初就明确全量需求范围了;敏捷迭代式项目是小步快跑,需求不是一次性确定的,而是增量添加的。针对不同类型的项目,架构设计就需要给出相应的方案,瀑布式项目可以搭配完整超前些的架构,而迭代式项目的架构必须是易于升级演的。
  • 进度,指研发的进度。时间是项目成功的关键因素,时也势也,再好再完美的产品错过了上市的最佳时机,最终也将被丢弃到垃圾桶当中。架构设计必须考虑采用哪种技术栈才能保障项目进度,最新的技术成熟度和社区支持不够,或者开发团队成员还没有足够的知识储备,很容易将项目拖入到无止境的延期当中。
  • 成本,指研发的成本。任何项目都是考虑投入产出比的,架构方案中有没有引入商业化的中间件产品,如果有就需要预算采购,如果采用开源产品替代,那就需要投入额外人力研究掌握。另外,技术栈难度高低也会影响人力成本,架构方案将决定团队是否可以并行开发等,架构设计必须在保守和激进间做好权衡。
  • 质量,指产品的质量。假如现在我们在满足进度、成本等要求的前提下交付了一款功能齐全的产品,但产品存在明显的质量缺陷,就像销售到用户手上的汽车存在安全隐患,那这样的产品不仅不挣钱,还要赔钱。从架构维度看,我们也可以围绕质量这个要求调整设计,让系统变得易于测试、容灾容错性更强、弹性更好等。

3. 开发测试

开发测试要基于架构设计做子系统的概要设计、详细设计、测试方案设计和测试用例编制等,从这项下游工作来看,开发测试就需要关注系统的逻辑划分,即系统被分解成几个子系统,每个子系统分别承担什么职责,关键业务场景的交互流程是怎样的,子系统之间采用哪种交互机制和通讯协议等。如果缺失这些信息的输入,我们开发测试的工作就会受到影响,严重会导致无法交付合格的产品。

除了承担部分设计工作之外,开发测试主要职责就是将文档图纸上的设计真正落地实现,这就涉及到具体技术栈的选型,也就是我们程序员构建虚拟世界的工具。若以 Web 应用程序开发为例,技术栈的选型主要包含以下几个方面:

  • 操作系统 OS:主要包括 Linux \ Windows \ Android \ macOS \ iOS \ watchOS \ tvOS 等,不管是服务器还是客户端都有多种选择,我们必须对它们要有概略的了解,然后根据需求和自身情况选择合适的。
  • 运行时 Runtime:主要包括 Java \ C++ \ Python \ Ruby \ PHP \ C# \ JS \ C \ Perl \ Shell \ VB \ AS \ Scala \ R \ Go 等,每种编程语言都各具优势,例如:Java 生态圈非常强大,Python 特别适合人工智能领域,Go 常用于构建云计算基础设施等。
  • 容器 Web Container:主要包括 Apache \ Tomcat \ Jetty \ GlassFish \ Weblogic \ WebSphere \ JBOSS \ Nginx \ IIS 等,前后端分离、静动态资源等场景需要不同的容器。

如果项目压力很大,那么选择熟悉的技术栈是合适的,这样我们就可以聚焦在业务实现上,不用操心技术维度导致的问题。如果项目压力适中,团队也希望掌握一些新技术栈,以便后续可以使用新技术开发新系统,那么选择次新的、主流的技术栈是最好的,在项目中实践熟悉新技术,完成团队研发能力的升级更新。

4. 运维运营

系统在发布上线之后将会被移交给运营团队,但运营团队的关注点跟开发测试不同,他们关注系统能否稳定运行,在处理业务请求时的耗时长短、吞吐量等性能表现,当业务量爆发式增长时系统是否具备弹性伸缩能力,系统在长时间运行过程中的稳定性、可靠性和鲁棒性等。另外,任何对用户有价值的系统上线之后都要面临黑客、羊毛党的攻击,系统必须要有安全性保障,确保用户个人信息和业务交易过程的安全。俗话说:百密必有一疏。考虑得再周全,线上仍然会发生出乎你意料的事情,系统必须要有实时检测、提前预警和事后恢复等机制,运营的职责就是系统能够提供 7*24 不间断的服务,不让系统拖业务发展的后腿。

在传统业务模式下,我们企业的大部分软件系统都是用于办公自动化的,这些系统的用户数量是相对稳定的,运营团队只要保障这些系统稳定运行就可以了。但是到了互联网+时代,企业的核心系统都是面向线上全网客户的,并发访问量的波峰波谷是不断交替出现的,最大峰值流量也很难预测,这时候系统的弹性伸缩能力就显得特别重要了,运营团队比较关注系统是否方便扩容或缩容,是否支持跨数据中心部署,是否支持集群的克隆部署等。这些诉求都要纳入到架构设计的驱动因素当中,确保最终输出的架构设计方案能够满足上述要求。

  • 软技能-热门文章:(首发公众号)
  1. 如何在打造影响力的路上「码」不停?(
  2. 2020 来了,你的 2019 晒好封存了吗?(
  3. “花式”裁员套路深,你知道吗?
  4. 遭遇裁员,如何渡过心理危机?
  5. 程序员“求包养”攻略揭秘
  • 硬技能-热门文章:
  1. 如何设计出优美的Web API?(
  2. 程序员必须掌握的性能调优 X Y Z (
  3. 如何把单体式应用拆解成微服务?【上】
  4. 如何把单体式应用拆解成微服务?【下】
  5. 图解 Spring:HTTP 请求的处理流程与机制【1】

这篇关于架构师,怎样才能搞定上下游客户?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/986914

相关文章

Java架构师知识体认识

源码分析 常用设计模式 Proxy代理模式Factory工厂模式Singleton单例模式Delegate委派模式Strategy策略模式Prototype原型模式Template模板模式 Spring5 beans 接口实例化代理Bean操作 Context Ioc容器设计原理及高级特性Aop设计原理Factorybean与Beanfactory Transaction 声明式事物

MySQL数据库宕机,启动不起来,教你一招搞定!

作者介绍:老苏,10余年DBA工作运维经验,擅长Oracle、MySQL、PG、Mongodb数据库运维(如安装迁移,性能优化、故障应急处理等)公众号:老苏畅谈运维欢迎关注本人公众号,更多精彩与您分享。 MySQL数据库宕机,数据页损坏问题,启动不起来,该如何排查和解决,本文将为你说明具体的排查过程。 查看MySQL error日志 查看 MySQL error日志,排查哪个表(表空间

客户案例:安全海外中继助力知名家电企业化解海外通邮困境

1、客户背景 广东格兰仕集团有限公司(以下简称“格兰仕”),成立于1978年,是中国家电行业的领军企业之一。作为全球最大的微波炉生产基地,格兰仕拥有多项国际领先的家电制造技术,连续多年位列中国家电出口前列。格兰仕不仅注重业务的全球拓展,更重视业务流程的高效与顺畅,以确保在国际舞台上的竞争力。 2、需求痛点 随着格兰仕全球化战略的深入实施,其海外业务快速增长,电子邮件成为了关键的沟通工具。

系统架构师考试学习笔记第三篇——架构设计高级知识(20)通信系统架构设计理论与实践

本章知识考点:         第20课时主要学习通信系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分),而在历年考试中,案例题对该部分内容的考查并不多,虽在综合知识选择题目中经常考查,但分值也不高。本课时内容侧重于对知识点的记忆和理解,按照以往的出题规律,通信系统架构设计基础知识点多来源于教材内的基础网络设备、网络架构和教材外最新时事热点技术。本课时知识

系统架构师-ERP+集成

ERP   集成平台end:就懒得画新的页

分享5款免费录屏的工具,搞定网课不怕错过!

虽然现在学生们不怎么上网课, 但是对于上班族或者是没有办法到学校参加课程的人来说,网课还是很重要的,今天,我就来跟大家分享一下我用过的几款录屏软件=,看看它们在录制网课时的表现如何。 福昕录屏大师 网址:https://www.foxitsoftware.cn/REC/ 这款软件给我的第一印象就是界面简洁,操作起来很直观。它支持全屏录制,也支持区域录制,这对于我这种需要同时录制PPT和老师讲

【数据库实战】1_Oracle_命中关联人或黑名单或反洗钱客户

一、字段名称 1、CST_ID :客户编号 2、IDV_LGL_NM :客户姓名 3、关联方标志 RELPARTY_IND,0-否 未命中,1-是 命中 4、TBPC1010表,RSRV_FLD1_INF(备用字段)中的 第6位:黑名单标志,0无,1是。 第10位:反洗钱风险等级1-5。 反洗钱风险等级5级: 1级-低风险客户 2级-较低风险客户 3级-中风险客户 4级-较高风险客户 5级-高风

快速搞定“照片调色”!50000+Lr预设滤镜模板,一键让你照片不再丑!

照片调色不仅仅是调整颜色,更是一种艺术表达。通过巧妙地运用 LR 预设,可以突出照片的主题,增强情感共鸣。比如,在风景照片中,使用特定的预设可以让天空更蓝、草地更绿,让大自然的美丽更加生动地展现出来。 在人像摄影中,合适的 LR 预设可以让肤色更加自然、眼神更加明亮,让人物更加迷人。而且,LR 预设还可以根据不同的风格和场景进行定制,满足各种个性化的需求。如果你对照片调色还不是

系统架构师考试学习笔记第三篇——架构设计高级知识(19)嵌入式系统架构设计理论与实践

本章考点:         第19课时主要学习嵌入式系统架构设计的理论和工作中的实践。根据新版考试大纲,本课时知识点会涉及案例分析题(25分)。在历年考试中,案例题对该部分内容都有固定考查,综合知识选择题目中有固定分值的考查。本课时内容侧重于对知识点的记忆、理解和应用,按照以往的出题规律,嵌入式系统架构设计基础知识点基本来源于教材内。本课时知识架构如图19.1所示。 一、嵌入式系统发展历程

两步搞定 Tomcat 下启用 https:// 访问

这个简单教程中我们通过简单的两步就可以在 Tomcat 7 中启用 HTTPS 访问。 第一步:创建 .keystore 文件 使用如下命令生成 .keystore 文件 windows : 1 %JAVA_HOME%\bin\keytool -genkey -alias tomcat -keyalg RSA Linux: 1 $JAVA_HOM