文档介绍:第一章软件工程基础知识
软件的定义
软件工程
软件生命周期
FAQ(关于软件工程)
什么是软件?
好的软件有那些特点?
什么是软件工程?
什么是软件过程?
什么是软件过程模型?
什么是软件工程方法?
puter Aided Software Engineering)?
软件工程和系统工程有什么区别?
软件工程面临的关键挑战是什么?
1. 1 软件的定义
什么是软件
软件的特点
软件发展史
软件危机
什么是软件? (1/2)
书本上的定义
– Software is a set of items or objects that forms a “configuration” that includes programs, documents, data, ……
IEEE的定义
– Software puter programs, procedures, and possibly associated documentation and data pertaining to the operation of puter system.
可执行部分
不可执行部分
数据
文档1
文档2
什么是软件? (2/2)
与计算机系统操作有关的程序和数据以及任何与之相关的文档的集合。
程序
什么是程序(1/2)
程序: 由程序设计语言所描述的、能为计算机所识别、理解和处理的语句序列
程序例子
Main( )
{ int i, j; // 变量定义
char Str[10];
i = i + j ; // 语句说明
……}
什么是程序(2/2)
程序设计语言具有良好、严格语法和语义
目前程序设计语言主要有以下几种类型
面向机器: 如汇编语言、机器语言等
面向过程: 如Fortran, Pascal, C等等
面向对象: 如Java等等
面向问题: 如结构化查询语言SQL等等
什么是文档
文档: 记录软件开发活动和阶段性成果、理解软件所必需的阐述性资料
需求分析文档
软件设计文挡等
编写文档目的
促进对软件的开发,管理和维护;
便于各种人员(用户,开发人员)的交流
软件特点
不会老化
逻辑产品(智力, 无形)
维护困难和复杂(完善, 纠错,…...)
生产只需复制
软件开发性质如成本、进度等难以估计
软件的开发更加依赖于开发人员的业务素质、智力、人员的合作、组织和管理
好的软件有哪些特点?
软件发展史