软件工程——什么是软件

简介: 软件工程——什么是软件

一、什么是软件


1.软件是计算机系统中与硬件相互依存的另一部分,它是包括程序,数据及其相关文档的完整集合

2.程序是按事先设计的功能和性能要求执行的指令序列。

3.数据是使程序能正常操纵信息的数据结构

3.文档是与程序开发,维护和使用有关的图文材料。


二、软件的特点


· 软件是一种逻辑实体,而不是具体的物理实体。因而它具有抽象性


· 软件的生产与硬件不同,在它的开发过程中没有明显的制造过程


· 在软件的运行和使用期间,没有硬件那样的机器磨损,老化问题


· 软件的开发和运行常受到计算机系统的限制,对计算机系统有着不同程序的依赖性


· 软件的开发至今尚未完全摆脱手工艺的开发方式


· 软件本身是复杂的。(1)实际问题的复杂性;(2)程序逻辑结构的复杂性


· 软件成本相当昂贵


· 相当多的软件工作涉及到社会因素


三、软件的分类


· 按软件的功能进行划分:


— 系统软件:操作系统;数据库管理系统;设备驱动程序;通信处理程序等。


— 支撑软件:文本编辑程序;文件格式化程序;程序库系统;磁盘向磁带向数据传输的程序;


支持需求分析、设计、实现、测试和支持管理的软件。


—应用软件:商业数据处理软件;工程与科学计算软件;计算机辅助设计/制造软件等。



· 按软件工作方式划分:


·实时处理软件;· 分时软件; · 交互式软件;· 批处理软件。


· 按软件服务对象的范围划分:


· 项目软件(某些领域的特殊需要或国家需要);· 产品软件(开发后,推向市场,以盈利为目的)。


· 按使用的频度进行划分:


· 一次使用; · 频繁使用


· 按软件失效的影响进行划分:


· 高可靠性软件; · 一般可靠性软件

目录
相关文章
|
架构师 Java 测试技术
【软件工程】为什么要选择软件工程专业?
【软件工程】为什么要选择软件工程专业?
445 0
|
6月前
|
人工智能 程序员 开发工具
『软件工程1』详解软件是什么
该文章探讨了软件工程的基本概念,包括软件的定义、特征、软件危机的原因及其应对策略等内容。
|
9月前
|
Java 程序员 数据处理
从软件危机中处理软件工程问题
【6月更文挑战第28天】本文介绍软件危机及其处理方式。1968年的北约会议首次提出“软件危机”,指软件开发的复杂性和成本超支问题。现代解决策略包括多种方法和模型,如OO、结构化、RUP和SOA,旨在提高效率和适应性。
860 0
从软件危机中处理软件工程问题
|
10月前
|
敏捷开发 设计模式 测试技术
【软件设计师备考 专题 】软件过程改进:提升软件开发效率和质量
【软件设计师备考 专题 】软件过程改进:提升软件开发效率和质量
267 0
|
算法 Java 程序员
软件工程工作必备
软件工程工作必备
82 0
|
搜索推荐 开发者
软件工程高效学 | 软件的内涵与危机
软件工程是计算机领域的一门专业基础课,它对于培养大家的软件素质、提高大家的软件开发能力与软件项目管理能力具有重要意义。本篇介绍软件工程的基本概念,包括软件的内涵、软件危机的产生、软件危机的表现及原因等相关内容。
190 0
软件工程高效学 | 软件的内涵与危机
|
Java 程序员 测试技术
软件工程导论—软件与软件工程(上)
软件工程导论—软件与软件工程(上)
软件工程导论—软件与软件工程(上)
|
算法 IDE 测试技术
软件工程导论—软件与软件工程(下)
软件工程导论—软件与软件工程(下)
软件工程导论—软件与软件工程(下)
sbs
|
SQL Oracle 关系型数据库
软件需求工程
前言之前看过一些系统分析相关,偏信管、软工专业的书:《系统分析与设计方法》,《软件需求》。 需求工程 部分对实际开发工作有不少帮助。相信很多开发也不太了解信管或者软工,更多关注于具体领域的前沿技术,所以这些概念应该能用到。文中部分是引用书中原文,部分是个人观点。文中产品,软件,系统是类似的含义。2020.7.10 —— by zz。需求需求一词的字典义是“被命令或强制性的东西;需要或者必要”,和软
sbs
661 1
软件需求工程
|
存储 安全 数据库
【软件工程基础】软件需求
【软件工程基础】软件需求
171 0