软件

大连工业大学的听课笔记


软件工程

软件工程是计算机课程体系中基础课程,属于核心课程,它不直接教你如何编写软件,而是告诉你一套 方法论,用于指导软件开发。


软件定义

软件绝不是仅仅程序,编程只是其中的一部分。

IEEE 给出的定义: 计算机程序、文档、运行程序必须的数据、方法、规则

加起来方可成为软件,其中前2个概念很好理解,计算机程序就是程序,源代码;文档,无外乎程序使用说明书;运行程序必须的数据,则是程序运行起来是需要处理数据的,你得给它数据,程序才能运行;方法和规则,则有点隐晦,它们软件开发采用的方法,软件开发中遵循的规则。其中方法个规则在文档中说明,在程序中实现。

程序+文档+数据


软件分类

从功能上分,可以分为三类:系统软件、支撑软件、应用软件。

  1. 系统软件

    着重在系统两字上,指那些与计算机硬件紧密配合,使得计算机各个部件与相关软件和数据协调,高效工作的软件。常见的有:操作系统,编译程序

  2. 支撑软件

    协助用户开发软件的工具性软件。

  3. 应用软件(可以继续细分)

    • 商业数据处理软件

      超市库存软件、公司人力资源系统

    • 工程与科学计算软件

      CAD/CAM,仿真软件

    • 智能产品嵌入式软件

      重点在嵌入上,值嵌入在产品内部,控制产品工作的软件

      家用电器、智能手机,公交智能盒子

    • 人工智能软件

      利用非数值算法去解决复杂问题的软件。

      专家系统(IBM 的深蓝系统)、模式识别软件、人工神经网络软件

    • 个人计算机软件

      文字处理系统、点子表格、游戏娱乐软件


从规模上分,可细分为如下几类

类别参加人员数开发周期产品规模(LOC)
微型11 ~ 4 周0.5 k
小型11 ~ 6 月1 ~ 2 k
中型2 ~ 51 ~ 2 年5 ~ 50 k
大型5 ~ 202 ~ 3 年50 ~ 100 k
甚大型100 ~ 10004 ~ 5 年1 M ( = 1000 k)
极大型2000 ~ 50005 ~ 10 年1 ~ 10 M

其中产品规模,loc = line of code 代码行数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值