前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >七、 软件工程(二)

七、 软件工程(二)

原创
作者头像
堕落飞鸟
发布2022-01-10 14:08:04
6310
发布2022-01-10 14:08:04
举报
文章被收录于专栏:飞鸟的专栏

1、 面向对象方法(2-4 大概率)

面向对象分析

利用用例和用例图表示需求,从用例模型中提炼形成领域模型,用例的实现可以用交互图表示,从领域模型用例图形成类图,用包图和类图形成体系结构图

面向对象分析模型主要由顶层架构图用例用例图领域概念构成,设计模型则包含以包图表示的软件体系机构图以交互图表示的用例实现图、完整精确的类图描述复杂对象的状态图和用于描述流程化处理过程的活动图

架构图(包图),用例实现图(交互图),类图(完整,精确),其他(状态图,活动图)

面向对象设计

面向对象设计原则:单一职责原则开放封闭原则里式替换原则依赖倒置原则接口隔离原则组合重用原则迪米特原则(最少知识)

单一职责原则:设计目的单一的类。

开放封闭原则:对扩展开放,对修改封闭。

里式替换原则:子类可以替换父类

依赖倒置原则:要依赖于抽象,不是具体实践。对接口进行编程,不要对实现编程

接口隔离原则:接口隔离原则 使用多个专门的接口比使用单一的总接口好。

组合重用原则:组合重用原则 尽量使用组合不是继承达到重用的目的

迪米特原则:一个对象应当对其他对象有尽可能少的了解。

2、 开发模型(2-4 必考)

开发模型

特点

瀑布模型

结构化方法。开发阶段性,需求明确,文档齐全,风险控制弱。

原型模型

迭代方法。分为原先开发与目标软件开发。需求不明确。

螺旋模型

迭代方法。瀑布与原型(演化)模型结合体。适用于大型、复杂、风险项目

喷泉模型

面向对象方法。复用好。开发过程无间隙、节省时间。

V模型

开发与测试结合

变换模型

适用于形式化开发

智能模型

适用于基于规则的专家系统

快速应用开发 RAD

基于构件的开发方法。用户参与、开发或复用构件,模块化要求高, 不适用于新技术

RUP/UP

用例驱动、架构为中心、迭代、增量

可重用构建模型

基于构件的开发方法。开发或复用构件

3、 敏捷开发(1)

以人为本,与用户紧密协作,面对面沟通,尽早发布增量小而自主的开发团队。适用于规模小的项目。

Xp极限编程:高效、低风险、测试先行(先写 测试代码,再编写程序)

Cockburn水晶方法:不同项目,不同策略

SCRUM并列争求法:迭代。30天为一个迭代周期,按照需求优先级实现。

FDD功用驱动方法:开发人员分类。分为指挥者、类程 序员。

开放式源码:虚拟团队,开发成员分布各地。

ASD自适应方法:预测—协作—学习

4、 UML(3 必考)

统一建模语言或标准建模语言,支持模块化和软件系统开发的图形语言,为软件开发的所有阶段提供模块化可视化支持

UML四种事务

结构事务:名词、静态部分、物理元素

行为事务:动词、动词部分、行为

分组事务:

注释事务:注解

UML分类

静态模型:用例图、类图、对象图、构件图、部署图

动态模型:状态图、活动图、顺序图、协作图

用例图:由参与者、用例、边界以及它们之间的关系构成的用于描述系统功能的视图。

用例关系

包含一个过程包含多个子过程,脱离子程序是不完整的

扩展一个过程有子过程进行补充(非必须),脱离子程序也是完整的。

泛化继承的反关系,父类是子类的泛化,一个过程有多种实现方式。

类图:展现了一组对象、接口、协作它们之间的关系

分类

实体类:对应系统需求中的实体,保存在永久存储中,使用数据表或文件存储

控制类:应用程序执行逻辑

边界类:外部用户与系统之间的交互对象进行抽象,主要包括界面类等

类图中的关系

对象图

展现了某一时刻一组对象以及他们之间的关系,描述了在类图中所建立的实物的实例的静态快照

UML图特点

UML图

特点

用例图

由参与者、用例,边界以及他们之间的关系构成的用于描述系统功能的视图。 用例之间的关系有包含,扩展、泛化

类图

展现了一组对象、接口、协作和他们之间的关系。 类之间的关系有关联、依赖、实现、泛化。

对象图

描述了一组对象及他们之间的关系。 对象图描述了在类图中所建立的事物实例的静态快照。

构件图

描述一个封装的类和他的接口、端口,以及由内嵌的构件和连接件构成的内部结构。

组合结构图

用于画出结构化类的内部内容

顺序图 (序列图)

由一组对象或参与者以及它们之间可能发送的信息构成。 强调消息的时间次序的交互图。

通信图

强调收发信息的对象或参与者的结构组织,强调对象之间的组织结构。

定时图

强调消息跨越不同对象或参与者的实际时间,而不仅仅关心消息的相对顺序。

状态图

用来描述一个特定的对象所有可能的状态,以及由各种事件的发生而引起的 状态之间的转移和变化。

活动图

将进程或其他计算的结构展示为计算内部一步步的控制流和数据流。

部署图

软件和硬件之间的组织物理关系以及处理节点的组件分布情况。

制品图

描述计算机中一个系统的物理结构通常和部署图一起使用。

包图

描述由模型本身分解而成的的组织单元,以及他们之间的依赖关系。

交互概览图

是活动图和顺序图的混合物

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档