软件工程能帮多大忙? (转)

软件工程能帮多大忙? (转)[@more@]

一、思想各不相同,行为却是一样的

中国的程序员多数贫寒而有大志,看到国产软件行业凋敝,拯救中国软件业的愿望便由此生根发芽。我但是,我越做就越失望。

为什么?因为胡说八道胡乱指挥“项目经理”的太多,有寡不敌众的感觉吗?不是的。胡乱指挥的人的确多,什么中文软件,什么自主知识产权,什么扶持软件产业,什么硅谷梦想,的确寡不敌众。

但这根本不重要!反过来,即使这个社会人人都是比尔.盖茨,安迪.葛洛夫,对中国的软件业的繁荣也于事无补!

对“振兴民族软件业,知识救国”的失望,是因为我越来越意识到:人的思想和行为是两回事,人的思想可以有很大的差别,但他们的行动都是一样的。

去买麦当劳,您很想守秩序排队,还想隔得很开,不要身贴身——身贴身完全没必要。但如果是那样,您就一直远远站着吧,所有人都以为您只是在等人。

排队的好处他们不懂吗?可能不懂,但是即使懂,好象您自己就懂,但您也照样得挤进去。不挤不得食。您和他们的思想境界或许有巨大的差异,但身历其境,您的行动跟他们的都是一样的。你或许曾经迟疑,那你就已经吃亏。

相信每个读者都遇到过“项目经理”们都宣称要在项目实施软件工程。什么ISO90002,CMM,RUP。但行动上呢?他们的真实去做的是其实是很小的,仍然是无文挡,无控制,无注释的“三无产品”。如果帮助他们更彻底地履行他们的誓言,好意告诉他们,瀑布式的做法风险很大,软件需求必须定义清楚,团队必须沟通,他们就会拿出合同说时间不等人过期要罚款。

说,可以有很多套;做,则只有一套。思想上,大家可以天马行空,各执己见,乱说一通,然后一口咬定——不要紧,没代价。但是,如果付诸行动,则要承受扎扎实实的损失。口头上我们势必要跟对手过不去,但行动上我们很难跟自己的钱包过不去。结果,在一定的约束条件下,可观察的人的行为都是非常相近的,至少比起他们内心想法的差异而言是如此。正因如是,思想上的伪劣商品,比实物世界的伪劣商品多得多!  

二、“做了什么”有别于“为什么那么做”

我们永远不知道BILL.GATES那么作为什么便获得了成功,说“不知道”,那是因为很多失败的人也是那么做的。有人想模仿微软的成功经验,但无数失败的人也是那么做的,而另外很多不那么做的人却也同样取得了成功。

我们不知道微软的开发方法为什么能使得windows独步天下?是霸权,是垄断,是市场的需求?我们不知道。我们只知道,只有那样,开发的成本才会最低,开发的质量才会很高。

贫穷的印度为什么会有那么好的软件工程和软件管理?是他们会英语,是政府扶持,是劳动力便宜?我们不知道。我们只知道,在那样条件下,要靠软件来发展国民经济,那么CMM是软件出口的前提,好的软件管理是公司赚取利润的保证。至于这些不懂软件技术的印度项目经理为什么会发现并坚持这个选择,我们不知道。

应该开诚布公地告诉读者:软件工程不知道怎样把一个好的idea变成举世闻名的软件。要成功,那么运气、努力和经验,市场环境,就缺一不可,但是,软件工程既没有兴趣、也没有能力逐一掂量这些因素、逐一对这些因素论功行赏。软件工程只是指出一个软件企业要符合什么条件才更有机会在竞争中生存和发展。但怎样才能达到这个点,软件工程就束手无策,无言以答。

软件工程是解释软件开发过程行为的经验科学。它解释的对象是可观察的企业的行为,而不是不可观察的企业管理人员的动机、愿望、理想、观点和感受。软件工程只是解释——也仅能解释——一个成功的软件企业“做了什么”,而无法解释——也没有兴趣解释——一个成功的软件企业“怎么会这么做了”。

这类似于我们知道一个奥运冠军是怎样的,但这种知识跟如何才能训练出一个奥运冠军是两回事;我们知道谁谁谁是诺贝尔奖得主,但这有别于要我们培养一个诺贝尔得主;我们知道一个健康、聪明的男婴是怎样的,但如何才能生育一个健康、聪明的男婴,则是另外一回事。

三、通向繁荣之路漫漫

一个在大学教书的软件工程教授的言论,与他如果担任的项目经理和软件企业老板时的行为,是有很大不同的。孰好孰坏不是我们这里讨论的目的,我只是指出人们的行为依赖于他所处的约束条件,而与他的或许五花八门的观点和理想没有多大的关系。

不良的软件企业管理为什么会施行?这往往是在特定约束条件下,人们角逐自身利益的结果。他们要那样做,才去寻找自圆其说的理由,而不是他们先找到合理的理论后,才根据这个理论来行事。我们常常会颠倒了前后因果。是企业管理者想赶工期,才选择了“三无开发”,而不是有了项目经理有了“三无开发”才说服老板加快进度。不是软件企业的老板不知道“瀑布式开发”风险巨大才搞瀑布式开发,而是他们为了生计必须这样做,才选中了那些早就被彻底驳倒的理论和至今一知半解的项目管理者。不是BILL.GATES精通了软件工程才发财,而是他发了财后,软件专家才出来说:“那就是软件工程,象他那样就能发财。”

Rational公司的软件工具盛行于世界,还邀请微软ORACLE来助阵,但我们的项目经理们听进去了他多少?

大批的专家去印度,爱尔兰,以色列,去学习考察软件企业的管理,但是我们软件产业作坊式生产今天改观了多少?

华为,金碟邀请IBM,微软来出谋划策,即使这些计谋都是正确的,但那也不比建议搞定信息产业部来的更好。人在江湖,知易行难!

我们绝大多数人都懂得牛顿定律,但这一知识除了帮助我们更好地理解世界外,并没有对我们的个人生活产生多大的帮助。我们走路尚且没有跌倒,我们抛起儿子尚且不会忘记接住,恐怕不能归功于对牛顿定律的认识。是的,牛顿定律在工程技术方面极大地改善了我们的生活,但那是因为我们有足够的资源,可供反复试验的缘故。

但软件工程却没有那么幸运。软件工程给我们带来了前所未有的智力上的乐趣,我们一旦掌握了软件工程的基本原理,我们就能象走路、骑车、游泳、说话一样自然地运用,用来理解软件开发中的现象。但我们每个企业的发展的顺流逆流,却似乎有着它本来的走向。

在另一方面,人们却不能象做物理试验那样廉价地在一个企业中做软件工程的试验。一个软件企业管理理念的成败,往往不取决于它理论上是否成立,而只能取决于企业家、政治家、程序员与经理、官员,客户的共同博弈。

软件工程能帮多大忙?软件工程确实提高了个人在软件能力上的洞察力,但它无力支配各种现实力量的角逐。


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10748419/viewspace-1004506/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10748419/viewspace-1004506/

机器学习——Anaconda下载安装教程 Anaconda详细下载安装教程 阅读详情

相关推荐

Keras中LSTM输入数据重塑与预处理实战指南

LSTM(长短期记忆网络)作为循环神经网络的重要变体,在时间序列建模中发挥着关键作用。其核心原理是通过门控机制学习长期依赖关系,而输入数据的正确重塑是实现这一功能的基础。在Keras框架中,LSTM要求输入数据必须组织成(samples, timesteps, features)的三维张量结构,这与传统全连接网络的处理方式截然不同。从工程实践角度看,合理的数据预处理能显著提升模型性能,特别是在处理温度预测、股票价格分析等时间序列任务时。常见的数据源如CSV文件、图像序列等都需要特定的换方法,包括使用Tim

weixin_42300144的博客 288

告诉你一名软件测试人员的一天!

看一个行业好不好,与其去看日常工作,还不如看行业大势。可以确信的是,当前择业测试绝对不会错。软件测试工程师的一天是怎么度过的呢?其实可以按照时间轴进行分为三个阶段去上班的阶段工作中的阶段下班后的阶段清楚了一天时间的阶段划分,那么就可以知道一天的时间如何分配,以及自己的工作内容是什么了。一、去上班的阶段作为软件测试的工程师,每天的开始往往是伴随着激烈的闹钟开始,潜意识中和烦躁的闹钟做着激烈的斗争,在睡意惺忪中极不情愿的起床。

apex_eixl的博客 1347

【PSINS工具箱】159联邦滤波器代码优化与注释、运行结果、文字性解释。15维状态量、9维观测量,联邦滤波与集中式滤波对比。完整代码可订阅后查看

基于工具箱的联邦滤波代码,15维状态量、9为观测量

985工科博士毕业,专攻定位、导航和滤波等算法研究。从业10年,主要使用MATLAB 471

软件工程大忙

                           一、思想各不相同,行为却是一样的 中国的程序员数贫寒而有大志,看到国产软件行业凋敝,拯救中国软件业的愿望便由此生根发芽。我但是,我越做就越失望。 为什么?因为胡说八道胡乱指挥“项目经理”的太,有寡不敌众的感觉吗?不是的。胡乱指挥的人的确,什么中文软件,什么自主知识产权,什么扶持软件产业,什么硅谷梦想,的确寡不敌众。但这根本不重要!反过来,

SnowFalcon的专栏 2301

STM32有这么难学吗?这些工具可以大忙

点击上方“小麦大叔”,选择“置顶/星标公众号”福利干货,第一时间送达大家好,我是小麦,之前使用ST的开发套件STM32Cube Ecosystem进行一些开发学习,STM32的相关开发工作...

一名热爱技术的工程师的博客。分享技术干货,记录美好生活。永远相信美好的事情即将发生。 2799

STM32很难?这些工具可以大忙

目 录1. STM32Cube Ecosystem2. CubeMX3. CubeIDE4. CubeProg5. CubeIDE进行开发5.1 STM32CubeIDE Home...

张巧龙的博客 1015

软件工程实践总结

软件工程实践总结 一、回望暑假时的第一次作业,你对于软件工程课程的想象 1哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么? 暑假的那篇软工作业,我的期待和目标是学习软工实践,能够巩固过去学到的知识,让自己的编码能力有所提升并且可以到学习到新的技术。虽然,每次的作业都要花费相当长的时间去思考和解决,但每次都能耐心并且如期的完成任务。从每次各次作业的完成情况看来,有因为一窍不通而不断琢...

weixin_30606461的博客 183

如何从软件工程型为AI工程师?

作者 | Andrew Zola译者 | 刘志勇策划 | 李冬梅众所周知,近年来,随着人工智能的兴起,人工智能工程师变成抢手的人才。大家都对各种人工智能的岗位好奇憧憬,本文介绍了如何从...

weixin_40920183的博客 1346

软件工程专业值得考的8个证书,零基础入门到精通,看这篇就够了!赶紧收藏!

1.软件测试工程师*报名条件:满18周岁*报考时间: 报名随时;考试每月*证书用途:从事互联网、网站运营、产品策划与推广金融、电信、科技等工作2.计算机二级*报名条件:满18周岁*报考时间: 报名随时;考试每月*证书用途:从事软件工程相关工作,计算机二级可以让企业单位对您的技能有很好的判断增加面试就业率3.Python技术开发*报名条件:满18周岁*报考时间: 报名随时;考试每月*证书用途:可以从事数据分析工作、网络编程工作、web开专项技术证书上业和息化部教销与号。

2401_84215240的博客 6330

选择软件工程和计算机科学专业的同学一般人不会告诉你的血泪建议

给选择软件工程和计算机科学专业同学的血泪建议,看完真的有可能改变你的大学四年。作为一个过来人,我只想说软件工程这东西真的要打好基础。软件工程其实和计算机科学与技术在大一大二是没什么本质区别的,就算到了大三大四也很难区分开来,两者的基础基本保持一致。因为计算机学院教不了你太,你能不睡觉我都算你牛。绝大部分的计算机专业的同学,包括所谓的985、211名校班的同学,有很大一大二都在混日子,毕业之后什么技术都不会。

m0_61101264的博客 644

软件工程还是网络安全专业好?(非常详细)丛零基础到精通,收藏这篇就够了!

经常会有粉丝私信大白:软件工程还是网络安全专业好?需要结合自己的实际情况来决定,每个人的需求不同,自然选择也是存在差异的。从就业市场来讲,推荐网络安全。网络安全人才稀缺、市场需求量大,通过培训几个月时间就能毕业找工作,而且薪资待遇还不错。

QIANDXX的博客 340

软件工程实务》学习心得:从 “只会写代码” 到 “能做靠谱软件” 的蜕变

摘要:本文分享了《软件工程实务》课程的学习心得,系统梳理了从项目启动到测试上线的完整开发流程。课程颠覆了"软件工程就是写代码"的认知,重点讲解了产品愿景、需求分析、架构设计、敏捷开发等关键环节。通过"能源管理系统"案例实践,作者掌握了用户故事编写、微服务架构设计、Scrum团队协作等实用技能,并养成了先设计后开发、重视测试与安全的良好习惯。课程带来的最大改变是从单纯编码向全流程思维,为未来的软件开发工作奠定了方法论基础。

2501_92183367的博客 385

写给大忙人看的_软件测试简历范文

阿沐 扬长避短的原则 基本信息 年龄:男生照实写,女生:>26(未婚未育不写,已婚已育,写) 籍贯:不推荐写(HR),要写(长沙) 居住地:深圳 --北京,上海 稳定性 婚姻情况:男生照实写,女生:(未婚未育不写,已婚已育,写) 电话:一定要写,写正确,注意格式:334 130-1110-2220 邮箱:一定要写,写正确,不推荐用qq邮箱(163/126--》昵称非主流) 专业:专业对口就写上(软件工程,软件科学), 不对口不写--金融专业 金融产品的测试 ...

软件测试阿沐博客 474

新手如何通过快马平台直观理解软件工程:从零构建学生信息管理系统

对于刚接触软件工程的朋友来说,那些听起来高大上的概念,比如“模块化”、“高内聚低耦合”、“开发流程”,是不是感觉有点抽象,不知道从何下手?我刚开始学的时候也是这样,总觉得理论和实践之间隔着一堵墙。后来我发现,最好的学习方法就是动手做一个实实在在的小项目,把那些概念“装”进去,边做边理解。最近,我尝试用来辅助学习,它有个很酷的功能:你可以用自然语言描述你想要的项目,AI就能你生成可运行的代码框架。这简直是为新手量身定做的“脚手架”。今天,我就以构建一个。

SilvermistFalcon19的博客 30

我不会OOO,仍然可以XXX_

自:http://blog.csdn.net/absurd   按照《审死官》里的读法,标题可以读着:答复:我不会圈圈圈,仍然可以叉叉叉。圈圈叉叉并不特指某个东西,而是一个通配符。代表诸如:我不懂COM原理,仍然调用COM组件。我不懂数据结构,仍然可以写程序。我记不得常用API,仍然照样用IDE。如此等等。   我 是个爱好和平的人,不喜欢和别人口诛笔伐,几乎从来没有写过主动攻击别人的文章。亚里...

weixin_34315665的博客 2485

EEZYbotARM MK2机械臂3D打印图纸 STL格式

3D打印机械臂,做电赛使用的,淘宝有现成成品卖,也有图纸卖,价格昂贵。EEZYbotARM MK2机械臂3D打印图纸,4舵机,3自由度。挺好用的。

DOA定位估计仿真,matlab2021a测试

DOA定位估计仿真,matlab2021a测试

上一篇: 源代码为你而开吗??Is Open Source for You? (转)
下一篇: 将图象列表转换成设备无关位图 (转)
cuiji1279
博客等级 码龄10年 13粉丝 591原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值