软件工程三要素:方法,工具,和过程。
方法:方法就是完成软件开发各项任务的技术手段
工具:工具支持软件的开发,管理,以及文档生成。
过程:过程支持软件开发的各个环节的控制,管理。
软件工程的目标是:在给定成本,进度的前提下,开发出具有有效性,可理解性,可维护性,可适应性,可移植性,可追踪性,可互操作性且满足了用户需求的产品。为了实现其目标,软件工程提出来工程化的思想。工程是对技术实体的分析,设计,建造和管理。软件工程从管理和技术两方面指导软件开发
在给定成本,进度的前提下,开发出具有有效性,可靠性,可维护性,可重用性,可适应性,可移植性,可追踪性和可操作性且满足用户需求的产品。为了实现其目标,软件工程提出了工程化的思想。
软件工程研究模型:瀑布模型,增量模型,迭代模型。
软件开发方法:面向过程方法,面向数据方法,面向对象方法。
软件支持过程:CASE工具Rose ,北大青鸟系统,powerdesigner。
软件管理过程。如ISO9000,CMM,软件企业文化。
软件工程原则:1.0抽象 抽取事物最基本的特性与行为,忽略非本质细节。采用自顶向下,逐层细化的办法控制软件开发过程的复杂性。
2.0模块化 模块要大小适中,过大会增加复杂性,太小整个系统太复杂。
3.0信息隐蔽 采用封装技术,将程序模块的实现细节隐藏起来。
4.0局部化:要求物理模块内几种逻辑上的计算机资源,保证模块之间松散的耦合关系较强的内聚性。
5.0确定性:过程中所使用的概念应该是无异议的。
6.0一致性:程序内外接口应保持一致。
7.0完备性:实现系统所要求的功能。
8.0可验证性:开发大型软件系统需要对系统自顶向下,逐层分解。