第三章 软件工程基本 8 a3 K+ F/ D6 Y: a. s4 ]
3.1 软件工程根基概念 " C/ K' v& I% ]! X3 P+ W/ ?
计较机软件是搜罗轨范、数据及相关文档的完整集结。 ( l' w2 T7 f8 n
软件的特点搜罗: , O5 d' K3 d* g3 I
(1)软件是一种逻辑实体; & p0 v* ]; C* R, q; l
(2)软件的出产与硬件分歧,它没有较着的建造过程;
: b2 |+ K/ @5 O" b r (3)软件在运行、使用时代不存在磨损、老化问题; 3 ]. H, [8 n8 ^2 z9 b
(4)软件的开发、运行对计较机系统具有依靠性,受计较机系统的限制,这导致了软件移植的问题; 3 G& M* A. p9 Q: e- Y
(5)软件复杂性高,成本昂贵; 3 l. S0 w' H4 h% B( M
(6)软件开发涉及诸多的社会身分。
( s7 n' l7 J3 C" c1 [" K 软件按功能分为应用软件、系统软件、支撑软件(或工具软件)。 " I$ P8 q+ z; \/ z$ c6 b4 m c7 n% {
软件危机首要默示在成本、质量、出产率等问题。 4 U+ x6 a: m2 y: f2 E
软件工程是应用于计较机软件的界说、开发和维护的一整套体例、工具、文档、实践尺度和工序。 $ M, M! T2 V, n
软件工程搜罗3个要素:体例、工具和过程。
6 x5 a! I( R1 X: ~4 D: j7 t 软件工程过程是把软件转化为输出的一组彼此相关的资本和勾当,包含4种根基勾当: + O5 Q" F0 q. p; b$ s3 S: \. _
(1)P—∨敉件规格声名; 0 A% W" V+ e3 K0 N3 L8 i5 @( v
(2)D—∨敉件开发;
# k! G9 d! z4 Z2 A/ N (3)C—∨敉件确认; ( l% M+ ^% ~+ m: v
(4)A—∨敉件演进。
# u! M& \0 B5 O& z$ |( ~( @ 软件周期E敉件产物从提出、实现、使用维护到遏制使用退役的过程。
5 r# p( z& B' m R6 c 软件生命周期三个阶段:软件界说、软件开发、运行维护,首要勾当阶段是:
5 G* f# j, F- E4 D8 a8 @' t (1)可行性研究与打算拟定;
( q: V: M8 |+ M (2)需求剖析;
o0 K9 q) U3 o; F$ K M7 n (3)软件设计; & a6 C a# Z; s# `' \5 {
(4)软件实现;
3 U1 [8 g6 T7 ]2 E( ?2 a6 h" v# P (5)软件测试;
. N; ~( M: L( _- Q (6)运行和维护。 ! z/ Y6 V2 d# m+ W0 w3 d/ y
软件工程的方针和与原则: / |8 Q+ E. ~8 e" a
方针:在给定成本、进度的前提下,开发出具有有用性、靠得住性、可理解性、可维护性、可重用性、可顺应性、可移植性、可追踪性和可互操作性且知足用户需求的产物。 + j' d _- ~- R9 y$ i
根基方针:支出较低的开发成本;达到要求的软件功能;取得较好的软件机能;开发软件易于移植;需要较低的费用;能按时完成开发,实时交付使用。 9 ~3 I( ?9 d7 y
根基原则:抽象、信息隐藏、模块化、局部化、确定性、一致性、完整性和可验证性。
9 P! C& w/ A* `, e! z2 m M3 ]9 l' A 软件工程的理论和手艺性研究的内容首要搜罗E敉件开起身术和软件工程打点。
D ?2 f, K, k& M, `( _0 _ 软件开起身术搜罗E敉件开发体例学、开发过程、开发工具和软件工程情形。
, |+ O2 n4 @/ m9 w" | ~ d1 h9 R 软件工程打点搜罗E敉件打灯揭捉、软件工程经计揭捉、软件心理学等内容。
' a- X) r7 Q' }7 C" t 软件打灯揭捉搜罗人员组织、进度放置、质量保证、设置装备摆设打点、项目打算等。 软件工程原则搜罗抽象、信息隐藏、模块化、局部化、确定性、一致性、完整性和可验证性。 |