欢迎来到天天文库
浏览记录
ID:39724402
大小:379.69 KB
页数:60页
时间:2019-07-10
《《软件工程管理技术》PPT课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、15.1软件工程管理概述15.2软件项目计划15.3软件配置管理15.4软件工程标准化与软件文档第15章软件工程管理技术返回主目录第15章软件工程管理技术15.1软件工程管理概述15.1.1软件产品的特点软件是非物质性的产品,而且是知识密集型的逻辑思维的产品,它具有以下特性:(1)软件具有高度抽象性,软件及软件生产过程具有不可见性。(2)同一功能软件的多样性,软件生产过程中的易错性。(3)软件在开发和维护过程中的易变性。(4)不同开发者之间思维碰撞的易发性。15.1.2软件工程管理的重要性由软件危机引出软件工
2、程,这是计算机发展史上的一个重大进展。为了对付大型复杂的软件系统,须采用传统的“分解”方法。软件工程的分解是从横向和纵向(即空间和时间)两个方面进行的。横向分解就是把一个大系统分解为若干个小系统,一个小系统分解为若干个子系统,一个子系统分解为若干个模块,一个模块分解为若干个过程。纵向分解就是生存期,把软件开发分为几个阶段,每个阶段有不同的任务、特点和方法。为此,软件工程管理需要有相应的管理策略。随着软件规模的不断增大,开发人员也随着增多,开发时间也相应持续增长,这些都增加了软件工程管理的难度,同时也突出了软件工程管理的必要性与重
3、要性。事实证明,由管理失误造成的后果要比程序错误造成的后果更为严重。很少有软件项目的实施进程能准确地符合预定目标、进度和预算的,这也就足以说明软件工程管理的重要。软件工程管理目前还没有引起人们的足够重视。其原因:一方面是人的传统观念,工程管理不为人们所重视;另一方面软件工程是一个新兴的科学领域,软件工程管理的问题也是刚刚提出的。同时,由于软件产品的特殊性,使软件工程管理涉及到很多学科,如:系统工程学、标准化、管理学、逻辑学及数学等。因此,对软件工程管理人们还缺乏经验和技术。在实际工作中,不管是否正式提出管理问题,但都在自觉或不
4、自觉地进行着管理,只不过是管理的好坏程度不同而已。15.1.3软件工程管理的内容1.开发人员软件开发人员一般分为:项目负责人、系统分析员、高级程序员、程序员、初级程序员、资料员和其他辅助人员。根据项目规模的大小,有可能一人兼数职,但职责必须明确。不同职责的人,要求的素质不同。如项目负责人需要有组织能力、判断能力和对重大问题能做出决策的能力;系统分析员需要有概括能力、分析能力和社交活动能力;程序员需要有熟练的编程能力等。人员要少而精,选人要慎重。软件生存期各个阶段的活动既要有分工又要互相联系。因此,要求选择各类人员既能胜任工作
5、,又要能相互很好地配合,没有一个和谐的工作环境很难完成一个复杂的软件项目。2.组织机构组织机构不等于开发人员的简单集合,要求有好的组织结构;合理的人员分工;有效的通讯。软件开发的组织机构没有统一的模式。下面简单介绍主程序员、专家组及民主组织3种组织机构:(1)主程序员组织机构:是由一位高级工程师(主程序员)主持计划、协调和复审全部技术活动;一位辅助工程师(或辅助程序员)协助主程序员工作,并在必要时代替主程序员工作;若干名技术人员(程序员)负责分析和开发活动;可以有一位或几位专家和一位资料员协助软件开发机构的工作。资料员非常
6、重要,负责保管和维护所有的软件文档资料,帮助收集软件的数据,并在研究、分析和评价文档资料的准备方面进行协助工作。主程序员组的制度突出了主程序员的领导,责任集中在少数人身上,有利于提高软件质量。(2)专家组组织机构:是由若干专家组成一个开发机构,强调每个专家的才能,充分发挥每个专家的作用。这种组织机构虽然能发挥所有工作人员的积极性,但往往有可能出现协调上的困难。(3)民主组织机构:是由从事各方面工作的人员轮流担任组长。很显然,这种组织机构对调动积极性和个人的创造性是很值得称道的,但是,由于过多地进行组长信息“转移”,不符合软
7、件工程化的方向。3.用户软件是为用户开发的,在开发过程中自始至终必须得到用户的密切合作和支持。作为项目负责人,要特别注意与用户保持联系,掌握用户的心理和动态,防止来自用户的各种干扰和阻力。其干扰和阻力主要有:(1)不积极配合:指当用户对采用先进技术有怀疑,或担心失去自己现有的工作时,可能有抵触情绪,因此在行动上表现为消极、漠不关心,有时不配合。在需求分析阶段,做好这部分人的工作是很重要的,通过他们中的业务骨干,才能真正了解到用户的要求。(2)求快求全:指对使用计算机持积极态度的用户,他们中一部分人急切希望马上就能用上计算
8、机。要他们认识到开发一个软件项目不是一朝一夕就能完成的,软件工程不是靠人海战术就能加快的工程;同时还要他们认识到计算机并不是万能的,有些杂乱无章的、随机的和没有规律的事物计算机是无法处理的。另外,即使计算机能够处理的事情,系统也不能一下子包罗万象,贪大求全。(
此文档下载收益归作者所有