软件工程——什么是软件

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

一、什么是软件


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

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

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

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


二、软件的特点


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


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


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


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


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


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


· 软件成本相当昂贵


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


三、软件的分类


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


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


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


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


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



· 按软件工作方式划分:


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


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


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


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


· 一次使用; · 频繁使用


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


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

目录
相关文章
|
数据安全/隐私保护
INFO sasl.SaslDataTransferClient: SASL encryption trust check: localHostTrusted = false, remoteHostT
这篇文章描述了作者在执行HDFS操作时遇到的SASL加密信任检查日志信息问题,其中`localHostTrusted`为`false`,并且有时候这个日志信息会出现,有时候不会。
INFO sasl.SaslDataTransferClient: SASL encryption trust check: localHostTrusted = false, remoteHostT
|
人工智能 自然语言处理 算法
【Gemini怎么使用】:Gemini 2.0 国内使用指南
人工智能领域风起云涌,Google 凭借其 Gemini AI 模型的迭代升级,持续引领着技术革新的浪潮。特别是 Gemini 2.0 的发布,标志着 AI 发展进入了一个全新的阶段
8238 14
|
存储 算法 C语言
用C语言开发游戏的实践过程,包括选择游戏类型、设计游戏框架、实现图形界面、游戏逻辑、调整游戏难度、添加音效音乐、性能优化、测试调试等内容
本文探讨了用C语言开发游戏的实践过程,包括选择游戏类型、设计游戏框架、实现图形界面、游戏逻辑、调整游戏难度、添加音效音乐、性能优化、测试调试等内容,旨在为开发者提供全面的指导和灵感。
759 2
|
数据库连接 数据库 Java
解决:com.mysql.cj.jdbc.exceptions.CommunicationsException: Communications link failure(真实有效)
数据库连接失败 在数据库连接失败,经常会有蛮多一系列的问题导致的原因,这个时候一定要多去尝试一下各种方法,并且做好自己的梳理! 一、例如我在SpringBoot项目中使用了阿里的数据库连接池Driud。
45267 0
|
机器学习/深度学习 编解码 搜索推荐
实测13个类Sora视频生成模型,8000多个案例,一次看个够
SORA-like模型是一类基于OpenAI的SORA模型发展而来的视频生成技术,以其在生成高质量视频上的卓越表现受到关注。该模型不仅提升了视频的分辨率、自然度和视觉语言对齐,还增强了对长视频序列的可控性。适用于内容创作、世界模拟等多种场景,展现出广泛的应用潜力。然而,模型在自动化评估、与人类偏好匹配及处理复杂运动上仍面临挑战。未来研究将聚焦于多模态、连续、交互式及个性化视频生成等领域。
1428 2
|
前端开发 Java 数据库连接
表白墙/留言墙 —— 中级SpringBoot项目,MyBatis技术栈MySQL数据库开发,练手项目前后端开发(带完整源码) 全方位全步骤手把手教学
本文是一份全面的表白墙/留言墙项目教程,使用SpringBoot + MyBatis技术栈和MySQL数据库开发,涵盖了项目前后端开发、数据库配置、代码实现和运行的详细步骤。
438 0
表白墙/留言墙 —— 中级SpringBoot项目,MyBatis技术栈MySQL数据库开发,练手项目前后端开发(带完整源码) 全方位全步骤手把手教学
|
人工智能 自然语言处理 API
人工智能大模型之开源大语言模型汇总(国内外开源项目模型汇总)
人工智能大模型之开源大语言模型汇总(国内外开源项目模型汇总)
人工智能大模型之开源大语言模型汇总(国内外开源项目模型汇总)

热门文章

最新文章

下一篇
开通oss服务