软件工程的本质特征

1、软件工程关注于大型程序的构造

2、软件工程的中心课题是控制复杂性

软件所解决的问题十分复杂,通常不得不把问题分解,使得分解出的每个部分是可以理解的,而各个部分之间保持简单的通信关系。这并不能降低问题的整体复杂性,但是却可使它变得可以管理。

3、软件经常变化

软件系统交付使用后仍然需要耗费成本,而且在开发过程中必须考虑吧软件将来可能的变化。

4、开发软件的效率非常重要

软件工程的一个重要课题就是,寻求开发与维护软件的更好更有效的方法和工具,

5、和谐的合作是开发的关键

为了有效地合作,必须明确地规定每个人的责任和相互通信的方法。纪律是成功地完成软件开发项目的一个关键。

6、软件必须有效地支持它的用户

这意味着必须仔细地调研用户,以确定适当的功能需求、可用性要求及其他质量要求(可靠性、响应时间等)。这还意味着,软件开发不仅应该提交软件产品,而且应该写出用户手册和培训材料。

7、在软件工程领域中是由具有一种文化背景的人替具有另一种文化背景的人

通常软件开发者通过访谈、阅读书面文件等方法了解用户需要的工作流程,然后用软件实现了这个工作流程。但是,决定软件系统成功与否的关键:用户是否真正遵守这个工作流程。

作为开发者我们需要学习用户所需求领域的一些专业知识,理解开发用户真正的需求。

相关推荐
holeer5 天前
【V3.0】「酒店 × 视觉AI」项目 | 需求分析说明书(软件工程概论 - 课程作业三)
人工智能·软件工程·需求分析·原型设计·总体设计·结构化设计
雾江流5 天前
Xtra 2.54.1 | Twitch直播第三方客户端,开源纯净无广
软件工程
张较瘦_6 天前
[论文阅读] AI + 教育 | 不是单纯看视频!软件工程培训的游戏化融合之道
论文阅读·人工智能·软件工程
张较瘦_6 天前
[论文阅读] AI + 软件工程 | 用统计置信度破解AI功能正确性评估难题——SCFC方法详解
论文阅读·人工智能·软件工程
@insist1236 天前
软考-软件设计师-计算机体系结构核心考点与应用
软件工程·软考·软件设计师
零一iTEM7 天前
Bambu Studio 在Windows上无法启动
笔记·软件工程·学习方法
yzx9910137 天前
重构边界:软件工程与计算机科学的未来就业方向深度观
重构·软件工程
木枷8 天前
KIMI-DEV: AGENTLESS TRAINING AS SKILL PRIORFOR SWE-AGENTS
人工智能·软件工程
木枷10 天前
SWE-smith: Scaling Data for Software Engineering Agents
人工智能·软件工程
郝学胜-神的一滴10 天前
在Vibe Coding时代,学习设计模式与软件架构
人工智能·学习·设计模式·架构·软件工程