软件的本质

对于软件本质就不多说,因为定义比较多,也不能完全的理解,只能说提出一些问题。

1.软件开发面临的问题:

  1. 为什么软件需要如此长的开发时间
  2. 为什么开发成本居高不下
  3. 为什么在将软件交付顾客使用之前,我们无法找到所有的错误
  4. 为什么维护已有的程序要花费如此多的时间和人工
  5. 为什么软件开发和维护的进度仍旧难以度量

2.软硬件失效图:
在这里插入图片描述
从图中我们可以看出不断的变更是软件退化的根本原因。

3.软件应用领域:

  1. 系统软件-一整套服务于其他程序的程序。
  2. 应用软件-解决特定业务需要的独立应用程序。
  3. 工程/科学软件-‘数值计算‘类程序
  4. 嵌入式软件
  5. 产品线软件-为多个不同用户的使用提供特定功能。
  6. Web/移动App
  7. 人工智能软件

4.遗留软件
对于一些老旧的系统。他们不断的改变适应现在的需求,对于这类软件维护代价高昂,且系统演化风险较高。同时质量也比较差,可扩展性低。可读性差等特点让人十分头疼。但是又不能简单的去替换因为成本高,涉及到核心功能点。
最合理的处理方式就是什么都不做,至少在其不得不进行重大变更前什么也不做。如果遗留软件可以满足用户的需求且可靠的运行,那么他就是合理的。但是由于一些原因导致需要变化。

  1. 软件需要进行适应性调整,从而可以满足新的计算环境或者技术的需求
  2. 软件必须升级以实现新的商业需求
  3. 软件必须扩展以使之具有与更多新的系统和数据库互操作能力
  4. 软件架构必须进行改建以使之能适应不断演化的计算环境
    当这些变更发生时,就需要再次修改来适应现在的需求。
    当代软件工程的目标是"修改在进化论理论上建立的方法论"即软件系统不断经历变更,新的系统从旧的系统中建立起来,并且…新旧所有系统都必须具有互操作性和协调性。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值