(转)架构师已死(转自UML软件工程组织)

系统架构师考点--统一建模语言UML 大家好。今天我来总结一下面向对象的第二个考点–统一建模语言UML。UML(统一建模语言)是一种可视化的建模语言,而非程序设计语言,支持从需求分析开始的软件开发的全过程。UML的结构包括构造块、规则和公共机制三个部分。其中考点主要集中在构造块部分,UML有三种基本的构造块,分别是事物(thing)、关系(relationship)和图(diagram)。下面我们来具体说一说这三个基本的构造块。 阅读详情

2006年的职场出奇的冷清,相比前几年,简历的数量和质量都大为不如,很难得找到三年工作经验以上的人,有一个不是特别笨,就是特别怪。就是么,干得好谁没事换工作啊!Simon是一家外企软件公司的总经理,最近给这个问题愁坏了。项目一个接一个的接下来,人手越来越紧张。虽然Simon是个极限编程的粉丝,但也不得不批准了一份又一份的加班申请。HR经理把这个问题归结到房价上,他的妙论是“怕失业了还不上房款,不敢跳槽”。

这天,K项目组长Allen终于忍不住了,带了一个只有一年工作经验的小伙子要Simon面试,“很聪明!经验少了点。”

Simon皱了皱眉毛,说:“你不知道这个职位最低要求是三年工作经验吗?”

Allen说:“这已经是三个月里通过技术考试中最好的一个了,老大,试试吧。”Allen是Simon多年的哥们,比较随便。

抵到面子上来,Simon只好让Allen把小伙子带进来。

Simon的面试通常是三步曲:

问题一:你能说说毕业后的主要工作经历吗?

问题二:再说说你在公司的地位?

问题三:你的发展目标是什么?等回答后,比如说构架师,他就跟着问:想象一下你当构架师的一天,说给我听听?

小伙子回答第一问题很快很清楚,一年工作当然没什么东西。Simon觉得小伙子挺聪明。所以在小伙子回答了第二个问题后,问了一个发散性的问题:“你刚才说你在公司里处于中等水平,那比你差的人为什么会比你差呢?”

这个问题是个陷阱。

小伙子冒冒失失回答说:“我觉得他们每天工作是为工作而工作,工作没有责任感。”

Simon点点头说:“是吗?那真是糟糕的员工。那你刚好比糟糕的员工好一点了?”

小伙子的脸一下子红了,“我不是这个意思……”

“好了,那你说说比你好的人为什么比你强?”

“我觉得他非常努力,工作很多年了还在学习各种构架,水平很高。”于是Simon就问那最后一个问题。果然,小伙子回答的是要成为构架师。大概70%的人想成为构架师。但是构架师是什么呢?

Simon问道:“那你为什么要成为构架师呢?”

小伙子一愣,大概还没有人这么置疑过他。“年纪大了,不能老写程序吧。”这个回答,让Simon想起关于他对什么是老的定义:当你希望做年轻人做的事情时,你就还年轻;如果你希望做老年人做的事情,你就老了。这和你出生了多长时间是没有关系的。

Simon接着问:“好吧,那你说说你成为构架师以后,每天都会做什么?”

小伙子说:“我还没想过,不过,我想应该主要是需求分析,设计构架吧……”这大概是现在年轻人的通病,年轻人很容易追逐一些自己也不清楚的目标。

Simon问:“那设计构架具体都做些什么呢?”

小伙子这次的回答是:“比如,选择程序框架,决定用Spring或Struts等等。”

“哦,那我问你,你怎么说服别人是用Spring还是Struts呢?”

“如果我有经验,我会知道哪个更好……”

“是吗,但关于Spring或Struts的知识任谁都可以很容易得到。如果别人不同意你的建议,你怎么说服他?如果同意你的建议,那你不过是作出了和别人一样的认识,别人又凭什么认可你呢?”

小伙子没想过构架师日子里还有一个说服人的工作,说:“我是构架师,我应该有权力做决定吧?”

Simon想起权力的三种层次,第一层,任命;第二层,专业;第三层,品德。

Simon问:“如果在一个成熟的软件企业里没有你所想象的构架师呢?或者说,构架师这种职业已经死亡或消失了呢?你会怎么定位你的职业?”

小伙子显得很震惊。

Simon画了一个系统构架,然后又给小伙子看了一段代码。

“那一个更难懂?”Simon问。

小伙子指着代码说:“代码难懂。”

Simon的解释是:“这就是为什么实际上所谓的构架师不存在的原因。一个更简单的东西怎么会更有价值呢?每个人都能够画出这种构架图,但不是每个人都能写出好的代码。”

送走了小伙子,Simon有点难受。他有点喜欢这个小伙子,但是,这又是一个被愚蠢的教育和误人子弟的技术杂志污染的家伙。Simon在自己的笔记本中加了一句话:中国程序员最愚蠢的认识之三:我想当构架师。前面两个赫然是:

35岁后写不动程序了;

我只要做Java(C++); 

六、软考·系统架构师——UML建模工具 了解UML在软件开发过程中充当的角色,以及其多种视图的表示和使用场景 阅读详情

相关推荐

解析软件工程中UML的安全建模要点

现代软件系统(如银行APP、医疗系统)每天处理着海量敏感数据,但据OWASP统计,70%的安全漏洞源于开发初期的设计缺陷。传统UML建模(如用例图、类图)更关注功能实现,而"安全建模"是在此基础上增加对"威胁-防护"关系的显性表达。本文将聚焦:如何用UML图(用例图/类图/顺序图等)标记安全需求、识别威胁点、设计防护措施,覆盖从需求分析到详细设计的全流程。

软件工程实践的博客 827

系统架构师——统一建模语言(UML)

在 UML 中,包括 3 种不同形式的交互图,强调对象交互行为顺序的顺序图,强调对象协作的通信图(协作图),强调消息的具体时间的定时图。UML 对系统架构的定义是:系统的组织结构,包括系统分解的组成部分、它们的关联性、交互、机制和指导原则,这些提供系统设计的信息。UML 是一种可用于详细描述的语言:UML 所建的模型是精确的、无歧义和完整的,因此适合于对所有重要的分析、设计和实现决策进行详细描述。是从用户角度描述系统功能, 是用户所能观察到的系统功能的模型图,用例是系统中的一个功能单元。

很多时候犯错都是在不知情的情况下发生的 558

统一建模语言UML完整电子书与实战指南

统一建模语言(Unified Modeling Language,简称UML)是一种标准化的图形化建模语言,广泛应用于面向对象的软件系统设计与分析。它由Grady Booch、James Rumbaugh和Ivar Jacobson于1990年代中期提出,并在1997年被国际对象管理组织(OMG)采纳为标准建模语言。UML通过一组图形符号和语义规则,帮助开发人员在软件开发的不同阶段(如需求分析、系统设计、实现与测试)中进行可视化建模,提升团队沟通效率并降低系统复杂性。

weixin_35671843的博客 1521

架构师必须学会的几种 UML图

总结了 UML 图中的几种常用的关系和工作中常用画 UML的软件

小羊子的技术专栏 1309

SAP 销售订单及发票 利润中心替代 Userexit出口 配置及程序

在跨公司销售业务中,跨公司销售订单的发票时无法从销售订单中将利润中心带到发票中,所以在跨公司的发票创建过程中需要配置出口来获取对应销售订单行项目的利润中心。 事务代码: 0KEM 配置步骤: 1、创建一个新的替代 2、创建一个步骤 3、维护一个先决条件,比如针对于特定工厂 PCASUB-VKBUR = '0001' 4、选择替代程序FORM,FORM必须为指定程序中存在的FORM名 5、编辑替代程序FORM 实现效果: 在程序FORM中打上断点 ...

李威威wiwi的博客 5069

基于javaEE的图书管理系统

极简的图书管理系统,无任何样式修饰,适合新手练手(图文并释) 1、实现了用户注册、登录,图书的添加、修改、删除和修改操作 2、工具需要:eclipse、mysql、Tomcat 3、做系统之前在eclipse需要配置Tomcat服务器和导入mysql连接数据库的jar包 4、数据库中建一个user表存用户信息,一个book表存图书信息 一、各种页面 index.html文件,系统运行的首页,有登录...

qq_44357792的博客 2万+

UML九种标准图详解

UML九种标准图详解

深圳市多克创新科技有限公司 2万+

ROS2 机械臂末端刀具执行曲面路径规划入门教程

Noether工具路径规划系统摘要 Noether是一款用于网格曲面刀具路径规划的软件,支持喷涂、打磨、检测等机器人工艺流程。其核心流程分为三步:1)网格修改(平滑、分割等预处理);2)刀具路径规划(生成有序路径点序列);3)刀具路径修改(姿态调整等后期处理)。系统提供栅格规划和边界规划两种模式,支持自定义扩展。配套GUI工具可配置完整流程,包含网格处理、路径生成和可视化功能。通过示例演示了多组件网格处理、拼图边缘铣削等典型应用场景,并指导用户进行插件开发,实现圆柱体提取、摄像机悬停等定制化功能。系统采用模

机器人控制与仿真应用 917

【架构】这7种UML图的画法每个程序员都应该掌握

对于画UML的工具,有收费的专业软件设计工具像EA(Enterprise Architect) 、Astah和亿图,以及免费的在线工具比如draw.io,processon等,建议可以根据自身需要选择合适的工具,同时也建议从简单易用的工具入手。掌握类图、时序图、组件图、部署图、用例图、状态图、活动图这七种UML模型图,根据实际场景,在需求分析、架构设计和详细设计阶段选择并巧妙应用对应的模型图,有助于有效地进行软件建模和系统设计,成为一个掌控大局、指导技术团队的优秀架构师。

DreamSun的博客 7702

基于Python的房地产评估数据抓取与分析 —— 房价走势与市场报告

在房地产行业中,了解和分析房产价格的变化趋势、各个地区的房价差异以及市场评价报告,可以帮助投资者、购房者以及政策制定者做出更加明智的决策。本文介绍了如何使用Python爬虫技术抓取房地产平台上的房产评估报告、价格走势等数据,并对抓取的数据进行分析。通过这些技术,您可以自动化抓取房地产平台的数据,分析房价走势,获取市场报告,为房地产投资决策提供数据支持。假设我们要从链家网抓取某个房产的价格、房产描述以及历史成交价格,首先需要获取目标房产页面的URL,并发送HTTP请求。伪装为常见浏览器,避免被识别为爬虫。

2201_76125261的博客 847

【Flutter 问题系列第 85 篇】Xcode 运行 Flutter 提示 The Dart VM Service was not discovered after 60 seconds.

在 Xcode 上运行 Flutter 时提示 `The Dart VM Service was not discovered after 60 seconds. This is taking much longer than expected...`,意思是 `60秒后未发现Dart虚拟机服务。这比预期的要长得多`

“Allen Su”的博客 2240

架构师已死(转自UML软件工程组织)

孙华伟的博客 1005

双重分组进位跳跃进位链

跳跃进位链

qq_62260432的博客 941

ZT:架构师已死(转自UML软件工程组织)

  2006年的职场出奇的冷清,相比前几年,简历的数量和质量都大为不如,很难得找到三年工作经验以上的人,有一个不是特别笨,就是特别怪。就是么,干得好谁没事换工作啊!Simon是一家外企软件公司的总经理,最近给这个问题愁坏了。项目一个接一个的接下来,人手越来越紧张。虽然Simon是个极限编程的粉丝,但也不得不批准了一份又一份的加班申请。HR经理把这个问题归结到房价上,他的妙论是“怕失业了还不上房

我一路走来--- 2045

Python 爬虫实战:微信搜一搜内容深度爬取(含搜索结果解析与企业级架构设计)

在信息爆炸的时代,微信搜一搜已成为海量信息获取的重要入口。无论是个人知识探索,还是企业舆情监控,掌握微信搜一搜内容的深度爬取能力具有巨大价值。本文将从基础原理到企业级实现,全面解析微信搜一搜爬虫的开发过程。

yansideyucsdn的博客 2455

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

上一篇: ORA-00932:不一致的数据类型:要求-得到的却是CLOB
下一篇: 一位软件工程师的6年总结
txlaijava
博客等级 码龄19年 10粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值