`
caozuiba
  • 浏览: 922737 次
文章分类
社区版块
存档分类
最新评论

[技术讨论]我们与国外的软件开发差异在哪里

 
阅读更多

这是从水木上一个话题引发的一个延伸话题,其中提到国内软件开发的现状的一些分析,这里附在下面:

发信人: qlw (钱五哥), 信区: SoftEng
标 题: Re: “软件工程”中的“工程”大家是如何理解的?
发信站: 水木社区 (Thu Jan 14 23:43:55 2010), 站内


工程和技巧相对应。工程的基础是可以测量,曾经复印过一张施工队的进度和报价
上面将投入、工时、成本算的清清楚楚。这和动辄可能延期的软件开发有天壤之别

但是软件工程也是很困难的,测量到现在似乎也没有什么人提出来与时俱进的方法
工程化最终导致了文档化和僵化。因此出现了敏捷过程 - 出发点是简化传统的工程
思路,从而回归到产品化的正确道路上。但是在解决规模扩大的问题方面还是有
些问题。早一些的CASE、组件化、软件工厂等概念,虽然盛极而衰,但是留下了
包括pattern、UML在内的遗产,对工程化有不小的帮助。

工程化首先要求可以重用,如果至今一直用主机+Cobol+DB2,则我坚信现在已经
工程化好久了,可惜目前是Linux+虚拟化+云计算的时代,原先搞的那套玩意早就
过时了,工程化还受到技术成熟性的制约!

可以看看Gartner的Hyper Cycle,现在M2M已经开始预热了。看到这类玩意,不禁
心说,“工程化又远了”

供讨论

【 在 timshaw (写啥呢?真矛盾) 的大作中提到: 】
: 多谢qingrun评价,我是哑巴,说不出子丑寅卯
: 呼唤canper,kabbesy,mike,SPQR,dicken等老版友
: 呼唤钱五哥
: ...................

发信人: timshaw (写啥呢?真矛盾), 信区: SoftEng
标 题: Re: “软件工程”中的“工程”大家是如何理解的?
发信站: 水木社区 (Thu Jan 14 23:58:08 2010), 站内


我再讲些感想。

软件工程是如此的复杂,风险是如此的高,搞到65%的软件项目延期,30%的项目直接取消。
跟传统工程的按时交付率差别如此之大。
原因有二:
第一是软字,软的就像女人的奶子客户都想捏成自己想要的形状。很多客户都不知道达到随便捏的程度需要吃多少木瓜,这种客户和软件提供商的沟通有点巴别塔。
其 二在原软件工程固有的复杂性。传统工程正如我开始所说,设计和实现相分离,劳斯莱斯的design和implementation是完全个裂开的。而软件 项目中design和implementtation是如此的不可分家,每一个实现者都在自己的范围内进行design。

和传统工程比 较,软件工程的轨迹必然是守破离。大乱时代,我们需要一个框架,是以学习传统工程,但由于上面两点,慢慢的,软件工程变异出自己的特性,我认为这里可以分 为三个层次:过程论/方法论/最佳实践和反模式,这些都是那些重视测量估算的传统工程所没有的。慢慢的最终发展出自己的一套理论,和传统软件工程完全不同 的理论。在这里,测量不是最重要的,最重要的是革新,是重构,是抽象,是沟通是融合而不是分而治之不是人为构筑壁垒。

发信人: ilovecpp (cpp), 信区: SoftEng
标 题: Re: “软件工程”中的“工程”大家是如何理解的?
发信站: 水木社区 (Fri Jan 15 23:48:23 2010), 站内

【 在 timshaw (写啥呢?真矛盾) 的大作中提到: 】
: 我再讲些感想。
: 软件工程是如此的复杂,风险是如此的高,搞到65%的软件项目延期,30%的项目
: 直接取消。
: 跟传统工程的按时交付率差别如此之大。

传统工程真有这么牛?

787的延期,Larabee的延期,业界巨头数十亿美元轻易打水漂。

一部美国军机发展史,就看见三个词:延期,超出预算,项目取消。

软件工程喜欢拿盖房子作比。盖房子真是这个时代最接近软件工程的传统工程?

我父母是电子工程师。我的直观印象是,电子产品的开发决不像盖房子,倒是和
软件开发的过程颇多相似之处。

和传统工程比,我们做得真的更差吗?

诸多疑问,难以厘清。

发信人: qingrun (青润), 信区: SoftEng
标 题: Re: “软件工程”中的“工程”大家是如何理解的?
发信站: 水木社区 (Sat Jan 16 11:23:17 2010), 站内

对于国内来说,我们和国外的差距主要在管理意识上,而不是技术层面;由于管理意识的差异,引起的投资方对软件系统的渴望和要求有了非常大的变化,国内的传媒 方面对国外软件项目的报道,也包括国外对自己的软件工程实施的报道也都大多集中于成功的例子,加上随着大家对科技进步的奢望,总认为软件应该能做到什么什 么样子,应该能解决什么什么问题,却忽视了软件本身最需要解决的根本问题:数据积累。
国外的软件行业走过了超过我们三倍以上的时间,他们积累的数据基础远远不是我们目前能够比拟的。
对 美国来说,因为几次世界大战都没有到他的本土,他的企业和经济的延续性在全世界范围内都可以算是最好的,其数据的保持也是最好的,而我国,大部分企业都是 80年以后重建的,更多的数据在二战,文革中全面毁灭,没有剩下什么,我们所能研究到的数据积累能超过10年的都不多,而且大部分是未信息化处理的原始数 据,但是同时,国内的宣传为了获得眼球的注意力,更多的关注在国外已成功地项目和目前的技术积累和产品状态下,所以,附带而来,传统行业在信息化的时候对 我们的期望就处于一个相对过高的水平线上,于是就带来了意识与技术现实的直接冲突,加上可投入研发资金和积累的时间问题,于是这个矛盾就更为剧烈了。
所以,不是我们做得不够努力,而是环境太过于苛刻了。
虽说解决这些问题不是不可能但是,需要多方面的配合和引导,涉足点太多,就超出了这个话题了。呵呵
【 在 ilovecpp (cpp) 的大作中提到: 】

分享到:
评论

相关推荐

    国外的EXCEL插件

    标题中的“国外的EXCEL插件”指的是在Excel电子表格软件中使用的第三方扩展工具,这些插件通常由独立开发者或专业公司开发,旨在增强Excel的功能,提供更丰富的数据分析、图表制作、公式处理等能力。与国内的“百宝...

    linux驱动开发的好书,老外写的

    - **业余无线电**:讨论业余无线电通信技术及其在Linux中的支持。 - **VoIP**:介绍Voice over IP技术及其在Linux中的实现。 - **高速互连**:探讨InfiniBand等高速互连技术及其在Linux中的支持。 #### 二十一、...

    三套瞬变电磁软件正反演结果对比分析(“反演”文档)共20张.pptx

    本文主要对比分析了三套国外瞬变电磁软件(Maxwell、Em vision、Emigma)的正反演计算结果,讨论了每种软件的特点和优缺点,并对比分析了不同软件在不同场景下的性能。 一、软件介绍 Maxwell是由澳大利亚EMIT公司...

    基于云计算技术的桌面虚拟化研究.pdf

    而在国内,有些厂家不仅研发了桌面虚拟化软件,还提供终端硬件产品,因此在整体拥有成本上能够与国外品牌竞争。 文档详细讨论了企业如何利用虚拟化技术推进云计算IAAS层系统建设,整合服务器资源、存储资源和网络...

    手机软件测试总结

    同时,持续集成和持续测试(CI/CD)的概念也被广泛应用于手机软件开发中,以便尽早发现和修复问题,提高产品质量。在测试完成后,测试报告应详细记录测试结果,包括缺陷跟踪和修复情况,为后续的优化和维护提供参考...

    计算机网络课程第一章

    计算机工程专业关注硬件系统的设计和构建,包括计算机、通信系统以及它们的交叉领域,同时也涉及软件开发,尤其是与硬件紧密相关的部分。 计算机科学专业则偏重理论基础和算法,涵盖广泛的领域,如人工智能、生物...

    微软软件外包项目案例分析.pptx

    中国企业在软件外包项目中面临的挑战包括文化和语言的差异造成的交流、交往的困难,缺乏欧美市场的开拓者和协作者,对外包软件的开发管理模式没有全面的了解,软件从业人员专业素质上有缺陷,人员流动过大造成的项目...

    国外经典教材,汇编语言带书签。比国内的教材带劲多了

    此外,书中还包含了对现代处理器架构的讨论,使读者能够了解不同处理器之间的差异以及如何编写跨平台的汇编代码。 ### 结论 总而言之,《专业汇编语言》是一本值得每位对汇编语言感兴趣的程序员拥有的书籍。无论是...

    本科毕业论文---基于php的招聘网站设计与实现正文.doc

    此外,还会对比国内外的开发技术差异,例如国内可能更倾向于使用PHP与MySQL的组合,而国外可能更偏好使用Java或Python等其他后端语言。 在系统运行环境及系统开发相关技术章节,论文会详细介绍如何搭建开发环境,...

    专业汇编语言艺术(国外精品书籍)Professional.Assembly.Language

    目标读者包括但不限于计算机科学专业的学生、软件开发工程师、系统架构师以及对低级语言编程感兴趣的爱好者。 #### 三、核心知识点解析 1. **汇编语言基础** - **定义**:汇编语言是一种低级编程语言,用于编写...

    基于PHP的MyBackupProv2.3多功能数据库备份工具国外开源源码.zip

    理解前端开发技术,如Bootstrap、jQuery等,有助于自定义和优化用户交互体验。 4. **安全实践**:备份工具涉及到敏感数据,所以理解安全最佳实践至关重要,包括但不限于密码加密、输入验证、防止SQL注入和跨站脚本...

    JAVA在线考试管理系统(源代码+论文+开题报告+外文翻译+英文文献+答辩PPT)

    它可能会涵盖软件工程的瀑布模型、敏捷开发或者螺旋模型等开发流程,同时也会涉及需求分析、系统设计、测试与维护等环节。此外,论文可能还会讨论系统的性能瓶颈及解决策略,如数据库查询优化、并发控制等。 开题...

    华南理工大学开发类答辩系列.pptx

    根据给定的文件信息,我们可以总结出华南理工大学开发或计算机专业类答辩的主要知识点,这些知识点主要围绕着一个基于特定框架的音乐播放系统的开发过程展开。接下来,我们将详细探讨每个部分的关键内容。 ### 一、...

    ICT外包

    ICT(Information and Communication Technology)外包是指企业将信息技术相关的服务,如软件开发、系统维护、数据处理等,交由外部专业公司来完成的一种商业策略。这种做法可以帮助企业专注于核心业务,降低成本,...

    国产于机国外搏击 (2004年)

    综上所述,虽然原始文件的内容无法直接解读,但从标题、描述及标签中我们可以推断出这篇论文可能讨论的是计算机科学或其他自然科学领域中的一项技术在中国与其他国家之间的比较和发展情况。文章可能包含了对该技术的...

    中职程序设计课程教学改革探索与实践——以Python选修课为例.pdf

    Python作为现代主流编程语言,在软件开发、数据挖掘、人工智能等多个领域有广泛应用,能够提高学生的学习兴趣,并为他们未来的职业发展提供社会价值。 三、教学模式的改革探索 为激发学生学习兴趣,培养计算思维和...

    基于Android平台的百度云推送聊天交友APP的设计与实现毕业论文.doc

    在这一部分,作者讨论了系统硬件和软件的要求,确保APP能在多种设备上稳定运行。需求分析部分,作者列出了用户的主要需求,如实时聊天、好友添加、个人信息管理、消息推送等功能,同时也考虑了安全性、隐私保护和...

    信息化企业环境变迁及会计信息研究.docx

    然而,在国内,国产会计信息系统偏向于对功能模式的探究与开发,大多数状况下,多功能往往造成该系统无法极速汇合,极有可能会引发计算代码的频繁失误或使用过程的中止。 在信息化企业环境变迁下,会计信息系统构建...

    省市区三级选择器

    下面将详细讨论这种选择器的设计原理、实现方式以及在实际应用中的注意事项。 首先,省市区三级选择器的设计目标是提供一个直观、易于使用的界面,让用户能够快速找到并选择自己的所在位置。通常,这个组件会以下拉...

Global site tag (gtag.js) - Google Analytics