软件工程(摘抄)
来源:互联网 发布:短信自动转发软件 编辑:程序博客网 时间:2024/05/19 16:37
1、软件的生命周期
2、软件的开发方法
软件的开发方法主要有形式化方法和逆向工程。进行逆向工程时,抽象层次越高,则得到的结果完备性越低
逆向工程是指从已安装的软件中提取设计规范,用来进行软件开发
净室软件开发方法:是一种形式化的方法,可以开发较高质量的软件,使用盒结构规约进行分析和建模,并将正确性验证作为发现和排除错误的主要机制。
3、软件开发模型
软件开发模型主要有:瀑布模型;演化模型;螺旋模型;喷泉模型,变换模型,智能模型,V模型
也可以采用快速应用开发,同一过程,敏捷方法。
演化模型医院称之为快速原型模型,是在快速开发一个原型的基础上,对原型进行改进。
螺旋模型是瀑布模型和演化模型的结合,每次迭代包含计划制定,风险分析,工程实施和客户评估四个部分。
原型法:以快速的方法构造一个可工作的雏形,然后进行迭代。如果缺乏用户不参与不配合或者数据软件资源缺乏管理则不适用。
快速应用开发是一个线性顺序的软件开发模型,强调极短的开发周期和可复用的程序构件开发
统一过程:是一个通用过程框架,使用UML为系统建模,包括初始阶段,细化阶段(确定架构,建立支持环境,阶段技术评审),构建阶段,交付阶段。
敏捷方法包含如下几种
极限编程:包括十二种最佳时间,小型发布,简单设计,测试先行,重构,结对编程等等。基线编程在基本设计完成后,并不进行直接编码,而是开发一系列用于检测本次发布的story的单元测试
其他主要的敏捷开发方法有
SCRUM:认为发布产品的重要性高于一切
FDD:针对中小型项目,适用于需求经常变动的项目
ASD(自适应软件开发):强调开发方法的适应性
DSDM(动态系统开发):以业务为核心
敏捷开发的原则是:
要求经常性的交付(但是不需要每一次交付为完整功能)
即使到了项目后期,也欢迎需求变更
软件工程小组可以分为四个组织泛型:
封闭式泛型:由主程序员,技术人员,和后备工程师组成
随机式泛型:松散的组织小组,依赖个人的主动性
开放式泛型:以上两者的结合
同步式泛型:依赖于问题的自然划分,没有沟通的需要
软件过程管理
主要有软件能力成熟度模型,也可以采用Trillum模型进行评估,bootstrap方法,ISO/IEC 15504标准等进行评估
PROLOG语言
是一种逻辑编程语言,更像是一种文体描述型语言,用特定的方法描述一个文体,然后电脑会自动寻找答案
在软件架构评估中,敏感点是一个或者多个构件的特性,权衡点是影响多个质量属性的特性,是多个质量属性的敏感点
- 软件工程(摘抄)
- 软件工程 第七版 摘抄
- 拼凑、摘抄-评李代平的软件工程第二版
- 《软件工程的事实与谬误》核心内容摘抄
- 幽默感悟(摘抄)
- 萨提亚亲密关系(摘抄)
- 俏皮箴言(摘抄)
- jdbc 入门(摘抄)
- 微博语(摘抄)
- C++经验谈(摘抄)
- 购房(摘抄)
- hadoop摘抄(二)
- hadoop摘抄(四)
- 零零碎碎(摘抄)
- 定制内核(摘抄)
- 虚拟计算(摘抄)
- 中间件技术(摘抄)
- 系统可靠性(摘抄)
- leetcode-26. Remove Duplicates from Sorted Array
- Android学习记录(五) 记录一下最近遇到的坑:android actionbar menu菜单无显示。
- LeetCode 2, Add Two Numbers
- 文件过滤<FilenameFilter>
- 2016面试爬坑之我所遇到的面试题(不定时更新,答案仅供参考)
- 软件工程(摘抄)
- 张庭宾的博客
- UVa 12657 Boxes in a Line 数组模拟双向循环链表
- hdu 3342 Legal or Not 拓扑排序
- Linux进程管理-调度-通信-
- Linux的chattr与lsattr命令详解
- “音视频技术WebRTC初探”公开课资料下载
- python中else的用法
- 合并排序详解