惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

C
Check Point Blog
J
Java Code Geeks
H
Hackread – Cybersecurity News, Data Breaches, AI and More
D
Docker
腾讯CDC
The GitHub Blog
The GitHub Blog
大猫的无限游戏
大猫的无限游戏
Microsoft Security Blog
Microsoft Security Blog
GbyAI
GbyAI
Stack Overflow Blog
Stack Overflow Blog
博客园 - 司徒正美
T
The Blog of Author Tim Ferriss
Vercel News
Vercel News
P
Proofpoint News Feed
雷峰网
雷峰网
博客园_首页
B
Blog RSS Feed
Microsoft Azure Blog
Microsoft Azure Blog
爱范儿
爱范儿
V
V2EX
F
Fortinet All Blogs
酷 壳 – CoolShell
酷 壳 – CoolShell
MyScale Blog
MyScale Blog
S
SegmentFault 最新的问题

博客园 - caidehui

软件开发的特点总结之三---软件开发过程 软件开发的特点总结之一------人 软件开发的主要要素 一个典型的软件项目的WBS评析 为什么我们的WBS元素多是活动 关于好的WBS 制订好的WBS的步骤 重构还是结构,开创还是竞争--面对战略的难题 合同范围与需求分析后范围严重不符问题与分析 合同范围与需求分析范围不符的一个原因 技术与外语在外包中的地位问题 外包的定义及其特点 客户、员工、投资者、社会等对外包服务提供商的要求 服务商对外包方的期望 外包的进一步研究 外包的原因与目的 上网本打开的那扇门 Windows7跳动的心 Borland哀歌
软件开发的特点总结之二-----软件产品
caidehui · 2010-08-13 · via 博客园 - caidehui

            我们天天在开发软件产品,有必要思考一下软件产品的特点,我大致查阅了有关材料,做点总结:         

  1. 知识密集

  2. 创造性

  3. 虚拟性(不可见性)

  4. 实现不具有唯一性

  5. 复杂

  6. 高附加值

  7. 逻辑性强(*)

      由于软件所具有的这5个特性,导致了软件开发工作的复杂性。软件开发知识密集,意味着我们需要高智商的群体来完成,具有创造性也对人提出了很高的要求。虚拟的,看不见,就验不着,验不着的事就会有点悬,因此软件开发就必须千方百计的要让它看得见,文档、模型都是在设计阶段的要求。

      看不见的问题,也导致客户在表述有关需求的难度,这个难度也正好是软件开发最不好解决的问题之一。

      实现不具有唯一性,这个就麻烦了,每个人都可以有自己的做法,都能实现软件产品外部看起来的行为,但是里面怎么样,只有专业人士可以明白,这也导致了很多投机取巧的行为出现。

      复杂,这个Dijistra在几十年做过一个总结,大意是说只有软件系统从底层到顶层的复杂性为9级。

      高附加值,这个不知道是好是坏,好在于这个特性说明了软件的重要性,坏,也就说明了一旦出事的严重性。一旦软件投入使用,可能影响到一个企业的各个方面。

      总的来说,软件产品是纯脑力劳动的结果,它不同于我们以往的产品。我们不能要求梵高一定要每天画出一副画,但社会确要求我们的工程师按照这个速度生产软件。

      我们是脑力劳动者,却被像工人一样要求,我们是知识工人。