软件工程复习

本文是大连理工大学软件工程期末考试的复习资料,涵盖了软件工程概述、软件开发过程、需求分析、软件架构创建、类的分析与设计、代码生成、设计优化、软件测试等方面的内容。重点讨论了UML、软件开发方法、瀑布模型、需求跟踪、软件架构风格、MVC模式、设计原则和设计模式,以及软件测试策略和软件度量。
摘要由CSDN通过智能技术生成

大连理工大学软件工程期末考试复习

一、软件工程概述

  • 软件工程主要包括哪些内容?
    软件工程体系
    开发过程
    软件需求
    软件设计
    软件构造
    软件测试
    软件维护
    支持过程
    软件配置管理
    软件工程过程
    软件工程工具和方法
    软件度量

1.统一建模语言UML构成:
–用例图,表示系统和使用者或其它外部系统之间的交互,有助于将需求映射到系统。
–活动图,表示系统中顺序/并行结构
–类图,用于表示类&接口之间的关系
–对象图,用于表示类途中定义的类的对象实例
–时序图,用于表示重要对象之间的互动顺序
–状态图,用于表示整个生命周期中单个对象状态
–组件图(通信图,状态图),表示系统内重要组件和彼此交互的接口
–组织结构图(交互概况图,组件图,包图),表示类/组件内部
–部署图,表示系统如何部署到真实世界的图

2.软件开发方法:
面向对象优于传统方法的根本原因是什么?
-原理:面向对象是对现实世界中事物的稳定抽象
-特点:面向对象概念和表示方法的一致性,降低复杂性,增加可理解性,促进软件重用

二、软件开发过程

1.软件开发各阶段活动任务
1)可行性分析与开发计划(技术可行性,经济可行性,社会可行性)
2)需求分析:对需求变更管理;包括功能性需求和非功能性需求;输出需求规格说明书文档
3)软件设计:包括概要设计和详细设计
4)程序编码
5)软件测试:流程{单元测试->集成测试->系统测试};测试方法{黑盒,白盒}
6)软件维护:改正性维护,适应性维护,完善性维护,预防性维护

2.软件开发生命周期模型
1) 瀑布模型{文档驱动,推迟实现,质量保证}
2) 快速原型模型{用户&开发者的桥梁}
3) 喷泉模型{迭代,无缝,线性过程}–迭代是OO开发过程中主要特征
4) SCRUM{Scrum注重过程,XP注重实践}

  • Devops:
    横向打通架构,开发,管理,运维等部分,让大家的运行环境一致
    纵向打通开发的各个阶段(全生命周期),实现跨工具链的自动化

三、需求分析

  • 用户需求和系统需求
    客户为主导定制的需求文档是用户业务需求
    开发者为主导定制打需求文档是系统需求
    =>系统需求是对用户需求的细化和完善;
    =>系统需求阅读对象是开发者,用户需求阅读对象是委托方/客户
    =>系统需求是用户需求的开始,用户需求要得到委托方确认

  • 涉众
    和系统目标相关的一切人和物,有最终用户,投资者,业务提出者,业务管理者,业务执行者,第三方,开发方

  • 系统目标&系统功能确定
    涉众提供系统目标,系统目标影响对涉众的取舍。目标定义是软件开发的纲领,用户需求只有和目标进行关联,才有实际意义。

  1. 用例图:
    表示系统和使用者或其它外部系统之间的交互,
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值