2、软件工具:所谓工具,在这里泛指是开发一切帮助开发软件的软件。为了提高软件设计的质量和生产效率,现已经发展了许多的帮助开发和维护软件的软件 。例如,我们要用某种语言来开发一个应用软件,这就要涉及到 ”编辑程序、编译程序、连接程序等,另外在软件测试阶段还要用到 “测试数据产生器、排错程序、跟踪程序、静态分析工具和覆盖监视工具等。也就是说在不同的时期要用到不同的软件开发工具。目前,软件工具发展迅速,许多用于软件分析和设计的工具正在建立,其目标 就是要实现软件生产自动化。- P2 ]% R1 U- Z" M( X) W
3、软件工程环境:软件方法和工具是软件开发的两大支柱,她们之间密切相关。软件方法提出了明确的工作步骤和标准的文档格式,这是设计软件工具的基础,而软件工具的实现又将促进软件方法的推广和发展。
" B3 C. J1 Q, J”环境“一词,对不同用户有着不同的含义。对最终用户(end user)而言,环境就是他们运行程序所使用的计算机系统。这类用户对环境的要求,主要是运行可靠,操作方便,容易学习和使用。而对于软件开发人员来说,则就不同了,可以说环境就是他们进行软件开发活动动的舞台。(例如,Algo-60,或者 资料管理系统(DbaseII DbaseIII),例如界面只能采用菜单来完成各种功能): l7 ]. `8 G5 r6 T O( z) r
象现在生产数据库管理的软件的环境有:大型数据库软件 Sybase ,还有能帮助进行程序设计的 PB 软件)7 S" _9 a6 c! O! k: l; M/ {% r' p
4、软件工程管理学:大家知道,对于一个企业来说,如果只有先进的设备和技术,而没有完善的管理,是不可能获得应有的经济效益的(例如海尔的海尔文化就是企业管理的象征),(例如微软企业文化宗旨的一句话) s( X3 Z& e2 J7 X3 u
软件生产也是一样的,如果管理不善,是不可能高质量、按时完成任务的。
5 q3 p/ `; G' \; S1 f G/ d”软件工程管理就是对软件工程生存期内的各阶段的活动进行管理。软件工程管理的目的是为了能按预期的时间和费用,成功地完成软件的开发和维护任务。! ?0 O# {4 \, J6 `# l# j
软件工程管理学的内容包括软件费用管理、人员组织、工程计划管理、软件配置管理等各项方面的内容。6 K1 ?! ]5 Y" R1 X- r
显然,软件工程管理也可借助计算机来实现。供经理人员估算成本、指定进度、生成报告等管理工具都已经在许多公司使用了。一个理想的软件工程环境,应该同时具备 支持开发和支持管理两个方面的工具。
+ B1 B" `5 Z0 U7 W( b以上简介了软件工程学的主要组成成分--软件工程方法学、软件工程环境以及软件工程管理的基本内容台和作用。它们即包括计算机科学家的研究成果,也概括了广大软件工作者的时间经验。还必须指出,软件开发技术可区分为形式化方法与非形式化方法两大分支。前者以形式化的程序变化和严整为主要内容,目的在于达到程序设计的自动化,多用于计算机应用人员。本课程主要讨论的是工程化的软件开发技术。
' T$ M: ~0 u% @. H9 {软件工程目标:付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件易于移植;只需较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠性高。
) C6 F; j/ Z3 t- k, S, [9 p软件工程内容:研究内容包括开发技术和开发管理两个方面。, @" Y2 k2 i9 S* @. B- U5 I$ n. M
开发技术主要研究 :软件开发方法,开发过程,开发工具和环境。
% w; P- A% U# B& w( D. d8 g开发管理主要研究 :软件管理学,软件经济学,软件心理学。# `, @) n7 _8 m5 n
软件工程需要解决的问题:软件的费用,可靠性,可维护性,软件生产率和软件的重用。 |