系统架构设计师学习笔记——软件工程
软件开发方法
结构化法
自顶向下,逐步分解求精严格分阶段,阶段产出标准化。应变能力差
面向对象方法
自底向上,阶段界限不明,更好应变,更好复用,符合人们的思维方式
面向服务的方法
粗粒度、松耦合、标准化和结构化
抽象级别:操作(方法)【低】——> 服务【中】——>业务流程【高】
原型法【需求阶段】
原型法搭配其他开发方法使用,针对需求不明确
按功能分:水平原型(界面)、垂直原型(复杂算法)
按最终结果分:抛弃式、演化式
其他开发方法
形式化方法:数字模型化,所有东西都可以验明和验证,而不是测试。直接通过数学模型转化代码,过于理想化
统一过程方法
敏捷方法
基于架构的开发方法
软件开发模型
开发模型是开发方法的下一层级,一个开发方法有多种开发模型
瀑布 原型(结构化方法的模型)
瀑布模型
缺点:想着一口气开发完成,事实是需求总是变动的,无法一口吃个胖子
迭代和增量
增量就是先具体完成一部分,在具体完成下一部分。迭代是所有功能大体完成,在一点点细化
增量模型与螺旋模型
螺旋模型在瀑布模型的基础上加了增量和风险评估
V模型和喷泉模型
V模型(测试贯穿始终)
瀑布模型(早期著名面向对象模型,前面几个都是结构化方法)
构建组装模型
快速应用开发模型(RAD)
CBSD(构建组装模型) SDLC(瀑布模型)= RAD(快速应用开发模型)
统一过程
敏捷方法
4大价值观
沟通:加强面对面沟通
简单:不过度设计
反馈:即使反馈
勇气:接受变更的勇气
12条过程实践规则
简单设计
测试驱动
代码重构
结对编程
持续集成
现场客户
发行版本小型化
系统隐喻
代码集体所有制
规划策略
规范代码
40小时工作制
敏捷开发实际是一组开发方法
极限编程:一些对费用控制严格的公司非常有效
水晶方法:探索了用最少纪律约束而仍能成功的方法,从而在产出效率与易于运作上达到一种平衡
开放式源码:程序开发人员在地域上分布很广【其他方法强调集中办公】
SCRUM:明确定义可重复方法的过程
功能驱动开发方法:开发人员分两类:首席程序员和“类”程序员
ASD方法:核心是三个非线性的、重叠的开发阶段:猜测、合作与学习
逆向工程
逆向工程包括四个层级
实现级:包括程序的抽象语法树、符号树、过程的设计表示
结构级:反应程序部分之间相互依赖的信息,如调用图、结构图、程序和数据结构
功能级:反映程序段功能及程序段之间关系的信息,例如数据和控制流模式
领域级:反应程序分量或程序诸实体与应用领域概念之间的对应关系的信息,例如实体关系模型
需求工程
需求获取
需求分析
UML
UML4 1视图
UML图
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhhkiaeg
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
微信运动停用后别人还能看到步数吗
PHP中文网 07-22