欢迎来到杂志之家!发表咨询:400-888-7501 订阅咨询:400-888-7502 股权代码 102064

软件管理论文实用13篇

软件管理论文
软件管理论文篇1

2、沟通与协作

软件项目管理中的沟通与协作是指信息的交流,是使信息发挥积极作用和达到目标的手段;协作是指和谐地在一起工作的活动。沟通技术可分分四类:(1)正式书面沟通,包括项目文档和备忘录、项目里程碑和交货时间表、需求变更和错误跟踪规程、数据字典、系统分析模型(用例图等);(2)正式口头沟通,包括状态审查会、需求评审会、设计评审会、代码评审会、用户测试,项目定期例会等;(3)非正式口头沟通,包括小组碰头会、同行讨论、与直属业务领导讨论等;(4)电子沟通,包括电子邮件、内部BBS等。协作技术包括资源合理配置、开发步骤有序化、工作目标一致化、提高关心程度、信息共享等。

3、风险管理

软件项目风险管理是指对在软件开发过程中所遇到的预算和进度等方面的问题进行分析,寻求风险应对方法,做好风险管理计划。

针对软件项目中的风险管理问题,不少专家、组织提出了自己的风险管理模型。常见的主要风险管理模型如下。

1.SEI的连续风险管理模型(CRM)。SEICRM模型的风险管理原则是不断地评估可能造成恶劣后果的因素;决定最迫切需要处理的风险;实现控制风险的策略;评测并确保风险策略实施的有效性。CRM模型要求在项目生命期的所有阶段都关注风险识别和管理,它将风险管理划分为五个步骤:风险识别、分析、计划、跟踪、控制。

2.BarryBoehm模型。Boehm模型的思想核心是:10大风险因素列表。针对每个风险因素,都给出了一系列的风险管理策略。在实际操作时,Boehm以10大风险列表为依据,总结当前项目具体的风险因素,评估后进行计划和实施,在下一次定期召开的会议上再对这10大风险因素的解决情况进行总结,产生新的10大风险因素表,依此类推。Boehm模型的基本形式可描述为:RE=P(UO)3L(UO),其中RE表示风险或者风险所造成的影响;P(UO)表示令人不满意的结果所发生的概率;L(UO)表示糟糕的结果会产生的破坏性的程度。

3.软件工程风险模型(SERIM).SERIM模型要求从技术和商业两个角度对软件风险管理进行剖析,考虑的问题涉及开销、进度、技术性能等。它还提供了一些指标和模型来估量和预测风险,由于这些数据来源于大量的实际经验,因此具有很强的说服力。

五、软件项目管理技术

1.CMM。CMM是美国卡纳基梅隆大学软件工程研究所(CMU/SEI)提出的软件研发项目管理的一系列方法,它基于组织对关键过程域的支持,定义了软件过程成熟度的五个级别。级别1(初始级)描述了不成熟,或者说是未定义过程的组织。级别2(可重复级),级别3(已定义级),级别4(已管理级)和级别5(优化级)分别描述了软件过程成熟度级别递增的组织。和这些级别相关的KPA是:级别2:需求管理,软件项目计划,软件项目跟踪和监控,软件子合同管理,软件质量保证,软件配置管理。级别3:组织级过程焦点,组织级过程定义,培训大纲,集成软件管理,软件产品工程,组间协调,同行评审。级别4:定量过程管理,软件质量管理。级别5:缺陷预防,技术更新管理,过程更改管理。

2.CMMI。CMMI被看作是把各种CMM集成为一个系列的模型中。CMMI的基础源模型包括:软件CMM2.0版(草稿C),EIA-731系统工程,以及IPDCMM(IPD)0.98a版。CMMI也描述了5个不同的成熟度级别:级别1(初始级)代表了以不可预测结果为特征的过程成熟度。过程包括了一些特别的方法、符号、工作和反应管理,成功主要取决于团队的技能。级别2(已管理级)代表了以可重复项目执行为特征的过程成熟度。组织使用基本纪律进行需求管理、项目计划、项目监督和控制、供应商协议管理、产品和过程质量保证、配置管理、以及度量和分析。

3.PSP。PSP(PersonalSoftwareProcess,个体软件过程)是由CMU/SEI开发出来的,它的推出在软件工程界引起了极大的轰动,可以说是由定向软件工程走向定量软件工程的一个标志。PSP为基于个体和小型群组软件过程的优化提供了具体而有效的途径,例如如何制订计划,如何控制质量,如何与其他人相互协作等等。在软件设计阶段,PSP的着眼点在于软件缺陷的预防,其具体办法是强化设计约束准则,而不是设计方法的选择。因此,PSP保障软件产品质量的一个重要途径是提高设计质量。

4、小结

本文分析研究了软件项目管理中的需求管理、员工之间的沟通与协作、软件项目风险管理。最后结合实践,提出并分析了软件项目管理技术。我们相信随着软件工程的发展和进一步成熟,软件项目管理技术的发展会取得更大的进步。在实际项目中,我们要坚持改善软件工程的管理,并在实践中总结适合自身的经验,这样才有利于管理技术的进步和软件项目的顺利完成,创造出更高的品质、更大的效益。

参考文献:

[1]PhpMetzger,JohnBoddie.软件项目管理-过程控制与人员管理[M].北京:电子工业出版社,2002.

[2]RajeevTShandilya.王克仁译.软件项目管理[M].北京:科学技术出版社,2002.

[3]杨根兴,金荣得,宗宇伟.软件需求的不确定性与解决途径.计算机应用与软件.

软件管理论文篇2

1.2软件质量管理

软件质量管理在工程项目实施过程中决定着质量方针与责任的范畴,包括质量计划设计制定,项目质量检测保证和项目质量控制等程序。通过保证手段在质量过程中有效进行。

1.3软件配置管理

英文简称SCM,是在开发者中,标识,控制和管理软件变更的一种管理。配置管理的使用取决于项目规模和复杂性以及风险水平。软件配置管理针对开发过程中人员、工具的配置、使用提出管理策略。记录软件项目产品的更新过程,从而保证研发者在软件项目周期的各个阶段能够获得准确的产品配置。对项目开展过程软件开发进行有效调控和有效预测具有重要作用。

1.4编写软件项目计划书

它是软件项目管理组的首要任务,主要包括工作量、成本、开发时间的估计。并根据估计值制定和调整项目组的工作,详细记录了开发日程安排,资源供需,项目管理等各项情况。使从事该项目的人员了解该项目的大致情况。

1.5软件风险管理

软件工程风险管理是预测工作中可能出现的各种危害到软件产品质量的潜在因素的问题,对风险产生的后果进行分析评估。计算机软件风险预测的准确性评估与有效防范措施的应用都利于提高软件工程的效益,降低风险带来的经济损失,有效保证相关利益业主的权益。这几个方面都是相互贯穿、交织于整个软件开发过程中的。

2软件工程项目管理中存在的现实问题及解决方案

2.1人员工作安排不明确,应建立团队合作意识

在工程项目开发过程中是需要每个岗位人员的相互协调及无障碍交流,没有团队协作意识是无法有效的利用时间和资源开展各项工作。因此我们要提高一个工程项目的工作效率,就要合理安排人员的工作分配,强化每个工作人员的团队协作意识,有效避免管理团队中存在的分工不明确,不合作的问题。只有相互协作和相互信任的情况下才能高效的完成一件优质的软件工程项目。建立一套完善的人事考核制度,加强对员工的职位升降,工资奖金分配管理,有利于提高员工开发软件工作的积极性。

2.2缺乏实践性调研报告,应纳入到软件项目计划书

软件开发工程不仅要创新变革,也要考虑到它的实用性,以往出现的多个工程项目没有对实际项目建设中的需求实体和实际进行要求,以及实际项目建设的数据进行合理有效的调研,导致出现设计完整的软件产品运用与实际偏差较大,造成不必要的人员和资源浪费。因此要在软件设计前给予项目调研工作高度重视,对实际软件项目的需求及要求严格调查,应将软件项目调研报告附于项目计划书中,引起重视。

2.3风险管理意识不够,应该强化提高人员对风险管理的认知

风险的发生很可能会造成不可估量的损失,但是风险的发生是具有可控性的,如果能有效控制就会避免发生风险事故。可往往在计算机软件工程项目管理中的工作人员却很少知道风险管理的重要性,于是在软件开发中应提高项目主要负责人的风险管理理念,提高自身对风险管理预测能力的水平。只有了解了风险管理理论与风险管理体系,定期对项目实施中可能发生的风险进行有效排除,把控好风险管理前后的形势。

软件管理论文篇3

当一个采区的机器需要更换某个零件时,应该相应地让此采区的仓库内存在此零件,那我们就会遇到以下几种情况(见图2):(1)此采区仓库没有这个零件且其他采区仓库也没有这个零件,那么我们必须首先把此零件信息录入完整后,再在机器信息表中输入更换的零件名称、零件更换数量以及更换的时间。(2)此采区仓库没有这个零件但其他采区仓库有此零件,那么我们必须把其他采区仓库内的此零件调用到此采区仓库内,再在机器信息表中输入更换的零件名称、零件更换数量以及更换的时间。这就是一个完整的出库过程,在此过程中我们只需要输入需要更换的零件信息,其余的操作同样由软件在后台为我们执行。同样减少了面对冗杂的表格,也可实现对仓库内零件数量的精确管理。

3关于生命周期需求的简介

对设备的管理最注重的就是零件的生命周期,因为这直接关系到一个产品的质量。当我们能追踪统计到一个零件的生命周期,我们就可比较哪家厂家的零件质量更好,使用周期更长。从长远来看选择质量较好的厂家也能为我们企业的纯利润做出贡献,实现企业的现代化管理水平。生命周期的统计是通过追踪出库过程实现的,在同类机器中同一个编号的设备如需更换同类型设备,都会产生一条记录。那么我们可根据这条记录查找到最近一次更换的时间,那么用今天的时间减去最近一次更换此零件的时间,就会得到这个零件的生命周期(一个零件的生命周期=同类型零件替换它的时间-此零件安装的时间)。在生命周期的计算过程中,我们必须纵向的比较设备的编号、设备的类别(在这里主要区分柴油、电瓶单轨吊)、零件名称、零件所属大类、零件更换时间(见图3)。只有在同一台设备上并且我们所换的零件是一致的,软件经过后台运作才能把得到的结果反馈给我们。为了能得到打印版本,我们在设计之初就要求能通过数据库的输入、输出流,把数据库的记录导出来(以Excel表格的方式)。不论是我们要求查询的结果,还是数据库内所有的记录,都能以Excel的方式导出到我们指定的文件夹内。

软件管理论文篇4

一、引言 随着信息技术的飞速发展,软件产品的规模也越来越庞大,个人单打独斗的作坊式开发方式已经越来越不适应发展的需要。各软件企业都在积极将软件项目管理引入开发活动中,对开发实行有效的管理。我公司是西安一家中型软件企业,在公司中已经实行了项目管理制度,软件项目管理是整个项目管理中的一个重要组成部分。 从概念上讲,软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。实际上,软件项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,企业越能够稳定发展(即减小开发风险)。 软件开发不同于其他产品的制造,软件的整个过程都是设计过程(没有制造过程);另外,软件开发不需要使用大量的物质资源,而主要是人力资源;并且,软件开发的产品只是程序代码和技术文件,并没有其他的物质结果。基于上述特点,软件项目管理与其他项目管理相比,有很大的独特性。 二、软件项目管理的组织模式 软件项目可以是一个单独的开发项目,也可以与产品项目组成一个完整的软件产品项目。如果是订单开发,则成立软件项目组即可;如果是产品开发,需成立软件项目组和产品项目(负责市场调研和销售),组成软件产品项目组。 公司实行项目管理时,首先要成立项目管理委员会,项目管理委员会下设项目管理小组、项目评审小组和软件产品项目组。 1、项目管理委员会 项目管理委员会是公司项目管理的最高决策机构,一般由公司总经理、副总经理组成。主要职责如下: (1)依照项目管理相关制度,管理项目; (2)监督项目管理相关制度的执行; (3)对项目立项、项目撤消进行决策; (4)任命项目管理小组组长、项目评审委员会主任、项目组组长. 2、项目管理小组 项目管理小组对项目管理委员会负责,一般由公司管理人员组成。主要职责如下: (1)草拟项目管理的各项制度; (2)组织项目阶段评审; (3)保存项目过程中的相关文件和数据; (4)为优化项目管理提出建议。 3、项目评审小组 项目评审小组对项目管理委员会负责,可下设开发评审小组和产品评审小组,一般由公司技术专家和市场专家组成。主要职责如下: (1)对项目可行性报告进行评审; (2)对市场计划和阶段报告进行评审; (3)对开发计划和阶段报告进行评审; (4)项目结束时,对项目总结报告进行评审。 4、软件产品项目组 软件产品项目组对项目管理委员会负责,可下设软件项目组和产品项目组。软件项目组和产品项目组分别设开发经理和产品经理。成员一般由公司技术人员和市场人员构成。主要职责是:根据项目管理委员会的安排具体负责项目的软件开发和市场调研及销售工作。 三、软件项目管理的内容 从软件工程的角度讲,软件开发主要分为六个阶段:需求分析阶段、概要设计阶段、详细设计阶段、编码阶段、测试阶段、安装及维护阶段。不论是作坊式开发,还是团队协作开发,这六个阶段都是不可缺少的。 根据公司实际情况,公司在进行软件项目管理时,重点将软件配置管理、软件质量管理、软件风险管理及开发人员管理四方面内容导入软件开发的整个阶段。 在八十年代初,著名软件工程专家B.W.Boehm总结出了软件开发时需遵循的七条基本原则,同样,我们在进行软件项目管理时,也应该遵循这七条原则。它们是: (1)用分阶段的生命周期计划严格管理; (2)坚持进行阶段评审; (3)实行严格的产品控制; (4)采用现代程序设计技术; (5)结果应能够清楚地审查; 

软件管理论文篇5

在解决软件危机的过程中,越来越多的软件开发公司意识到在软件项目开发过程中有效的管理所起到的重要作用。而在软件项目管理过程中,软件项目的计划管理则是决定项目能否顺利实施的关键内容。本文将在下面具体阐述软件项目的计划管理。

1软件项目计划概述

软件项目计划是指为软件工程的运作和软件项目活动的管理提供一个合理的基础和可行的工作计划的过程。其目的是为执行软件工程和管理软件项目制定合理的计划。具体来讲,就是:(1)使软件项目的开发建立在可靠的基础之上,并将计划文档化,由开发人员遵循,并据此跟踪检查计划的执行。(2)确定软件项目开发的活动的承诺,使软件开发工作有序而协调的开展,以便根据软件计划的资源、约束和能力逐步向客户履行承诺。(3)明确与软件项目相关的组织和个人的承诺,将责任落实到组和个人,从组织管理上保证项目开发的成功。

2制定计划应遵循的原则

2.1重视对项目信息的了解

制定软件项目计划,不仅仅需要经验,更需要全面了解项目的相关信息。必须掌握的信息包括:关于所在组织的信息,包括组织结构图,各部门的职能,各关键部门的经理和部分成员(并尽可能认识这些人);关于市场的信息,包括本行业新产品和新技术的,竞争对手的情况,竞争对手的主要客户群信息,关于历史项目的信息,尤其需要注意以往项目实施过程中出现的问题记录和解决方法,关于客户的信息,与客户的沟通是相当重要的,特别要理解清楚客户对时间、进度和效果上的要求。只有在了解足够信息的基础上制定计划,才能增强指导性和针对性。

2.2重视项目计划的层次性

软件项目计划的层次通常分为高级计划、阶段计划和低级计划。高级计划是项目的早期计划,主要进行项目的阶段划分,主要包括人、财、物3个要素。大的阶段交替之

前,我们要做好下一阶段的详细计划,称之为阶段计划。阶段计划要确定各项任务的负责人、开始和结束时间、设备资源、任务之间的依赖关系、小的事件点(即里程碑)。开发人员的个人计划是低级计划,由开发人员根据自己的任务自行制定。通常,软件项目计划至多有4级,较小的软件项目有2级计划(高级计划与低级计划)也是可行的。

2.3重视历史数据的运用和积累

要充分利用以往类似软件项目的历史数据。不光成功项目的数据具有参照价值,失败项目的数据也具有借鉴作用。可以根据它们来制定和改进计划。此外也要注意积累历史数据,以便于为我所用,这些是可复用的资源。最好是通过文档化的过程形成模板,将以往的成功经验高效继承。.

2。4重视用过程化的思想指导开发

我们知道软件能力成熟度模型CMM,描述了五个级别的软件过程成熟度:初始级,可重复级,已定义级,已定量管理级,优化级。在可重复级即CMM2这个等级上,该过程具备了对软件项目基本的管理控制、方针和规程,并强调文档化的过程,一个项目成功了,就可以认为下一个项日也可以成功。

在项目的实施过程中,通常需要根据项目的进展情况及变更对项目计划进行修改,在策划和重新策划中涉及的内容,都包含在cMM2过程中。运用软件过程化CMM2的思想指导计划的编制与实施,可以提高软件项目的可控程度。尽管当前大多数企业都难以达到CMM2级及以上的等级能力水平,但至少要具备过程化的思想。

3计划的技术方法

在制定软件项目的计划时,以下是常用的技术。

3.1PERT

PERT(计划评审技术,ProgramEvaluationBEReviewTechnique)是5O年代末美国海军部在研制北极星潜艇系统时为协调3000多个承包商和研究机构而开发的,其理论基础是:假设软件项目持续时间以及整个项目完成时间是随机的,且服从某种概率分布。EPRT可以估计整个项目在某个时间内完成的概率。

构造PERT图,需要明确三个概念:事件、活动和关键路线。事件(Events)表示主要.活动结束的那一点;活动(Activities)表示从一个事件到另一个事件之间的过程;关键路线(CriticalPath)是PERT网络中花费时间最长的事件和活动的序列。开发一个PERT网络要求管理者确定完成项目所194科技创新导报ScienceandTechnologyInnovationHerald需的所有关键活动,按照活动之间的依赖关系排列它们之间的先后次序,以及完成每项活动的时间。

3.2CPM

CPM(关键路径法)是一项用于确定软件项目的起始时间和完工时间的方法。该方法的结果是指出一条关键路径,或指出从项目开始到结束由各项活动组成的不间断活动链。任何关键路径上的活动开始时间的延迟都会导致项目完工时间的延迟正因为它们对项目完工的重要性,关键活动在资源管理上享有最高的优先权。

在图l中,字母A、B、C、D、E、F、G、H、I、J代表了项目中需要进行的子项目或工作包,连线箭头则表明了工作包之间的关系,节点数字l、2、3、4、5、6、7、8N表明的是一种状况,从l开始到8结束,中间的数字则表明上一工作包的结束和下一工作包的开始。

A=1,表示A工作包的持续时间为1夭。

由图中可反映出该项目的路径共有4条。它们的历时长度分别为:

A+D+H+J=l+4+6+3=14(天)

B+E+H+J:2+5+6+3=16(天)

B+F+J:9(天)C+G+I+J=l4(天)

软件管理论文篇6

软件工程管理目前还没有引起人们的足够重视。究其原因:首先是人的传统观念,工程管理不为人们所重视;另一方面软件工程是一个新兴的学科领域,软件工程管理的问题也是刚被提出的。同时,由于软件产品的特殊性,使软件工程管理涉及到很多学科。因此.对软件工程管理,人们还缺乏经验和技术。但事实证明,由管理失误造成的后果要比程序错误造成的后果更为严重。很少有软件项目的实施进程能准确地符合预定目标、进度和预算的,这也就足以说明软件工程管理的重要。

二、软件工租,理的内容

目前软件生产自动化程度很低,在开发过程中人是起决定性的因素,因此,软件工程管理很大程度上是对人的管理。我们可根据软件产品的特点.分析软件下程管理的具体内容,它包括对开发人员、组织机构、用户、文档资料等方而的管理。

(一)开发人员

软件开发人员一般分为:项目负责人、系统分析员、高级程序员、初级程序员、资料员和其他辅助人员.根据项目的规模人小,有可能一人身兼数职,但职责必须明确。不同职责的人,要求的素质不同。如项目负责人需要有组织能力、判断能力和对重大问题能做出决策的能力;系统分析员则要有概括能力、分析能力和社交活动能力;程序员需要有熟练的编程能力等。人员要少而精,选人要慎重。软件生命期各个价段的活动有分工又互相联系。因此,要求选择各类人员既能胜任工作,又要能相互很好地配合.没有一个和谐的工作气氛很难完成个复杂的软件项目。

(二)组织机构

组织机构不等于开发人员的简单集合。这里的组织机构要求:好的组织结构、合理的人员分工和有效的通讯。软件开发的组织机构没有统一的模式。下面简单介绍三种组织机构。

1.主程序员组织机。IBM公司提出的主程序员组是软件系统结构化思想在组织上的体现。它的目的是为了保证全组的协调和统一。一位高级工程师(主程序员)主持计划、协调和复审组的全部技术活动。技术人员(一般25人)负责分析和开发活动,一位后援工程师支持高级工程师的工作,并且在该项目继续进行时,可以代替高级工程师工作,以减少可能的损失.

2.专家组。专家组强调每个人的才能,把每个人都看作是某一方面的专家,由这些专家组成一个开发机构。这种组织结构虽然能发挥所有工作人员的积极性,但往往有可能出现协调上的困难,选择这种方式要慎重.

3.民主组织.民主组织由从事各方面工作的人员轮流担任组长。很显然,这种组织结构对调动积极性和个人的创造性是很值得称道的。但是由于过多地进行组长信息“转移”不符合软件工程化的方向。

(三)用户

我们是为用户开发软件的,在开发过程中自始至终必须得到用户的密切合作和支持。作为项目负责人,要特别注意与用户保持联系,掌握用户的心理和动态.防止来自用户的各种干找和阻力。

1.用户不积极,不配合。这种表现通常来自对采用先进技术持怀疑态度的用户,他们心理上的抵触情绪会在行动上表现为消极、漠不关心。在需求阶段,做好这部分人的工作很重要,通过他们中的业务骨千,才能真正了解到用户的要求。要使他们认识到:计算机的发展和应用是现代化的必然趋势,使用计算机将会带来巨大的经济效益:让他们掌握新的技术和方法去取代某些可能过时的或淘汰的专长。

2.用户求快求全.这种表现来自对使用计算机持积极态度的人.他们中一部分人希望一个早上就能用上计算机,并且全能用上计算机。要他们认识到;开发一个软件项目不是一朝一夕就能完成的,软件工程不是靠人海战术就能加快的工期。另外,即使计算机能够处理的事情,系统也不能下于包罗万象,贪大求全。要根据现有的条件量力而行。如果系统大而全,必然会很复杂,开发时间就拖得很长,因此可能会导致一个系统的失败或性能太差.

3.用户需求变化.在软件开发过程中,用户可能会不断提出新的要求和修改以前提出的要求。从软件工程的角度不希望有这种变化。但实际上,不允许用户提出变动的要求是不可能的.因为一方面每个人对新事物有一个认识过程,不可能一下子提出全面的、准确的要求:另一方而还要考虑到与用户的关系。对来自用户的这种变化要正确对待:要向用户解释软件工程的规律,并在可能的条件下部分或有条件地满足用户的合理要求.例如:软件需求分析阶段结束后软件的设计口标已经确定,这时用户要求的重大变化要导致设计目标的变化,特别是到软件开发的后期,一般不可能满足这种变化的要求。要向用户解释清楚工程的内在规律,但对用户提出的如性能等局部方而的要求,只要是合理的,就要加以考虑。超级秘书网

4控制。人员控制是对开发组织内部人员控制。就是要保证开发人员的积极性和稳定性。人员的频繁更换或流动将会大大增加软件出错误的机会。至少要保证软件项目每一期工程或软件生命期每一阶段中人员的相对稳定性。同时注意发挥每个开发人员的积极性和创造性。经费控制要编制详细的经费预算。并在各阶段进行经费的核算。在经费上失去控制,软件项目就没有经济保证。质量控制与各阶段的复审在意义和作用上是一致的,在此不再叙述。

软件管理论文篇7

在软件和信息科技行业,项目管理经常决定了一个产品或者企业能否成功。项目管理得到越来越多的企业和政府部门的重视,例如中国于2002年4月召开了有关项目管理的首次国际研讨会。具体操作与项目最根本的不同在于具体操作是具有连续性和重复性的,而项目则是有时限性和唯一性的。本文由中国收集整理。项目是一项为了创造某一唯一的产品或服务的时限性工作。所谓时限性是指每一个项目都具有明确的开端和明确的结束;所谓唯一是指该项产品或服务与同类产品或服务相比在某些方面具有显著的不同。各种层次的组织都可以承担项目工作。项目有时只涉及一个组织的某一部分,有时则可能需要跨越好几个组织。项目是执行组织商业战略的关键。

一、软件产品项目管理的重要性

20世纪80--90年代,许多大型企业管理信息系统MIS的开发都以失败而告终。这是为什么?一个重要原因是软件项目管理水平上不去,尤其是需求分析管理水平上不去,使得项目快要验收或交付时,却出了大问题:要么发现用户需求获取不准确,要么发现用户需求变了,致使做好的系统不能用或不好用。20世纪90年代初,上海一家公司在青岛做一个港口MIS项目,北京有一个单位在天津做一个港口MIS项目,都是因为甲乙双方软件工程基本知识不具备,使得项目管理不到位,导致2个大型项目不成功。现在软件应用领域空前广阔,深人到社会和科学研究等领域的各个方面。软件的需求也比以往更加多,软件系统设计也空前复杂。软件的项目管理问题也就因此而产生了。90年代中期,软件项目管理不善的问题仍然严重。据美国软件工程状况调查,只有10%的项目能够在预定的费用和进度下交付。于是软件项目管理成为软件项目发展中最重要的核心问题。为了使软件项目开发获得成功,必须对软件开发项目的工作范围、可能遇到的风险、需要的资源(人、硬件、软件)、要实现的任务、经历的里程碑、花费的工作量(成本),以及进度安排等做到心中有数。软件项目管理的目的就是提供这些信息,分析信息,并根据分析结果对项目做出调整。软件项目管理开始于技术工作之前,在软件开发的整个过程中持续进行,最后中止于软件过程结束。

二、软件项目管理体系

随着软、硬件技术以及通信技术的日益成熟,软件技术可以与所有的传统产业相结合,促进产品的更新换代,大幅度提高产品的附加值,提高劳动生产率,推动产业结构与产品结构的调整。因此,软件的开发以及应用不仅仅是软件开发机构的任务,更深地涉及软件使用者的切身利益,尤其像管理信息系统MIS(ManagcmentInformationSystem)、计算机集成制造系统CIMS(ComputerIntegrationManufacturingSystem)、企业资源计划ERP(EnterpriseResourcePlanning)及商业智能BI(BusinessIntelligence)等大型的复杂软件更是综合了管理科学、计算机科学、通信技术以及数学等各方面的知识,需要各类人员的协调工作才能完成。因此也就有必要从项目管理的角度去管理软件的开发和运行。从用户的角度来看,软件项目的生命周期应该包括项目前期的论证工作、项目计划、软件开发、运行、维护以及项目后评价。由此可见软件项目管理的范围不仅包括传统的软件开发过程,还应该包括开发之前的准备工作以及运行中的维护工作和对项目的总结工作。同时,在软件项目生命周期中存在着许多活动。根据活动之间的相关性,可以将软件项目的各种活动分为九大类。

(1)战略管理。根据用户的经营目标制定软件项目的策略,以便为其他各方面的活动提供指导。在制定项目策略的时候应该充分考虑用户和其他利益相关者的实际需求和市场因素。另外创造和谐的项目环境和连续改进也是战略管理的重要任务

(2)范围管理。其目的是控制软件项目的全部活动过程都在需求范围内,以确保项目各种资源的高效利用。成功的项目管理离不开用户、软件开发队伍和项目经理的一致理解和协调配合

(3)成本管理。软件项目的成本不仅包括开发成本,也包括开发之前立项阶段以及软件在运行中的费用。操作者的培训费用和项所使用的各种硬件设施费用也都是整个项目成本的一部分。这些成本都需要很好地计划和控制。

(4)时间管理。其内容有确定各项活动之间的时间相关性;估计各项活动的持续时间,跟踪各项活动的进展情况,动态调筷各项活动之间在时间上的协调。本文由中国收集整理。

(5)人力资源管理。在软件项目中应该为软件开发人员和管理人员等各类项目人员创造一个和谐良好的工作氛围。使他们能感到项目成功的把握和积极的工作心态,确保项目队伍的稳定性和连续性。

(6)沟通管理。沟通管理是一个收集、存储、配置和项目生命周期内所形成的各种信息的过程为了让每个项目相关人员及时得到所需的信息,需要很好地解决“什么时候、向什么人礼报什么的”的问题,此外软件开发队伍和用户之间的沟通也是沟通管理中的一项重要工作。

(7)风险管理。由于软件项目中存在着很多的不确定因索,也就必然存在着各种风险而且风险有可能造成不良的结果,对风险进行分析和监控贯穿于整个软件项目生命周期。

(8)质量管理。目前软件的质量还是一个模糊的概念并且难以衡量由于软件质量主要是在开发阶段形成的,因此软件项目质量管理的重点应放在系统分析、系统设计和编码阶段,走查、评审、调试和测试是保证软件质量的重要手段软件工程能力成熟度模型CMM(CapabilityMaturityModel)较好地解决了软件开发过程中的质量管理问题。

综合管理。综合管理的任务是对前面讨论的各类管理活动进行协调和控制,使这些活动相互配合。其核心任务是对各种方案进行评价,协调各方面的利益冲突确保项目总体标的最终实现。

三、软件项目管理的核心是全面客户满意

当前,不少软件业管理人上认为,软件开发的问题主要在软件开发的工程化、规范化和软件开发管理体制。他们按照CMM(CapabilityMaturityModel),IS09002的标准来建立他们的管理体系。这里有商业竞争的因素在起作用。但是,他们忽略了商业竞争中取胜最重要的因素—客户满意。他们没有考虑到他们的管理方法能否满足客户不断变化的需求。从长远来看,软件项目真正的成功是客户的全面满意。以客户满意为中心的质量是必需的。漠视质量或只关心产品/服务是否符合需要的方法再也不足以留住和获得客户。因此,软件开发项目组织必须先确定什么产品/服务可以让顾客满意,然后再努力满足客户的需求和期望。要实现此目标,组织必须识别对软件产品的各种特性中哪些是对客户的满意起决定作用的要素。例如,服务器操作系统软件,需要长时间稳定连续工作。稳定性则是该软件产品的关键要素。因此系统的开发管理围绕着这一关键要素来展开。尽管不少的组织明白没有客户一个组织就不能生存和发展,或者说没有客户就没有组织,但在项目实施过程中,仍然存在着客户满意的障碍:

(1)项目管理组织没有发展和完善对客户不断变化的需求和期望作出快速响应的能力。

(2)项目管理组织没有听取客户意见和建议的能力。

软件管理论文篇8

一、引言 随着信息技术的飞速发展,软件产品的规模也越来越庞大,个人单打独斗的作坊式开发方式已经越来越不适应发展的需要。各软件企业都在积极将软件项目管理引入开发活动中,对开发实行有效的管理。我公司是西安一家中型软件企业,在公司中已经实行了项目管理制度,软件项目管理是整个项目管理中的一个重要组成部分。 从概念上讲,软件项目管理是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的活动。实际上,软件项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,企业越能够稳定发展(即减小开发风险)。 软件开发不同于其他产品的制造,软件的整个过程都是设计过程(没有制造过程);另外,软件开发不需要使用大量的物质资源,而主要是人力资源;并且,软件开发的产品只是程序代码和技术文件,并没有其他的物质结果。基于上述特点,软件项目管理与其他项目管理相比,有很大的独特性。 二、软件项目管理的组织模式 软件项目可以是一个单独的开发项目,也可以与产品项目组成一个完整的软件产品项目。如果是订单开发,则成立软件项目组即可;如果是产品开发,需成立软件项目组和产品项目(负责市场调研和销售),组成软件产品项目组。 公司实行项目管理时,首先要成立项目管理委员会,项目管理委员会下设项目管理小组、项目评审小组和软件产品项目组。 1、项目管理委员会 项目管理委员会是公司项目管理的最高决策机构,一般由公司总经理、副总经理组成。主要职责如下: (1)依照项目管理相关制度,管理项目; (2)监督项目管理相关制度的执行; (3)对项目立项、项目撤消进行决策; (4)任命项目管理小组组长、项目评审委员会主任、项目组组长. 2、项目管理小组 项目管理小组对项目管理委员会负责,一般由公司管理人员组成。主要职责如下: (1)草拟项目管理的各项制度; (2)组织项目阶段评审; (3)保存项目过程中的相关文件和数据; (4)为优化项目管理提出建议。 3、项目评审小组 项目评审小组对项目管理委员会负责,可下设开发评审小组和产品评审小组,一般由公司技术专家和市场专家组成。主要职责如下: (1)对项目可行性报告进行评审; (2)对市场计划和阶段报告进行评审; (3)对开发计划和阶段报告进行评审; (4)项目结束时,对项目总结报告进行评审。 4、软件产品项目组 软件产品项目组对项目管理委员会负责,可下设软件项目组和产品项目组。软件项目组和产品项目组分别设开发经理和产品经理。成员一般由公司技术人员和市场人员构成。主要职责是:根据项目管理委员会的安排具体负责项目的软件开发和市场调研及销售工作。 三、软件项目管理的内容 从软件工程的角度讲,软件开发主要分为六个阶段:需求分析阶段、概要设计阶段、详细设计阶段、编码阶段、测试阶段、安装及维护阶段。不论是作坊式开发,还是团队协作开发,这六个阶段都是不可缺少的。 根据公司实际情况,公司在进行软件项目管理时,重点将软件配置管理、软件质量管理、软件风险管理及开发人员管理四方面内容导入软件开发的整个阶段。 在八十年代初,著名软件工程专家B.W.Boehm总结出了软件开发时需遵循的七条基本原则,同样,我们在进行软件项目管理时,也应该遵循这七条原则。它们是: (1)用分阶段的生命周期计划严格管理

软件管理论文篇9

1.1软件项目的特点软件项目是以软件为产品的项目。软件产品的特质决定了软件项目的管理和其他领域的项目管理有着截然的不同之处。

1.1.1抽象性软件是脑力劳动的结果,是一种逻辑实体,具有抽象性。在软件项目的开发过程中没有具体的物理制造过程,因而不受物理制造过程的限制,其结束以软件产品交付用户为标志。软件一旦研制成功,就可以大量复制,因此软件产品需要进行知识产权的保护。

1.1.2缺陷检测的困难性在软件的生产过程中,检测和预防缺陷是很难的,需要进行一系列的软件测试活动以降低软件的错误率。即使如此,软件缺陷也是难以杜绝的。这就像一些试验科学中的系统误差,只能尽量避免,但不能够完全根除。

1.1.3高度的复杂性软件的复杂性可以很高。有人甚至认为,软件是目前为止人类所遇到的最为复杂的事物。软件的复杂性可能来自实际问题的复杂性,也可能来自软件自身逻辑的复杂性。

1.2我国软件行业软件项目现存问题

1.2.1项目管理人才匮乏分析我国的软件产品,可以发现我国真正生存期比较长的成功产品为数不多,很多开发人员甚至项目管理人员多年下来,也没有参与过一次真正意义上成功产品的项目运作。这种现状反过来又导致我国软件企业项目管理缺乏项目经验积累,产业项目运作长期无法规范化。造成我国虽然有大批具有优秀基础的软件工程师人才,却开发不出高质量的产品,大批软件人才外流的现实情况。

1.2.2管理制度不健全随着我国软件行业的日益发展和不断进步,企业开始陆续引进并实施了“事业部制/项目制”等专业划分,即:按照其所负责行业或业务系统的不同,成立多个事业部,各个事业部只负责其所属行业内的项目和工程。每个事业部内部按照不同的产品和项目划分产品线和项目组,并且会确定相应的产品经理、项目经理,以对其所负责的整个项目的全过程负责。但实际情况是,由于大型软件系统项目过大,开发时间过长,参与单位和人员过多,最终出现以下问题:

(1)组织构架不合理,项目管理、质量管理、职能管理划分混乱。项目经理与项目严重脱节,导致项目实施失控,项目经理、质量经理等众多头衔,职责不清甚至很多项目经理都成了虚设的行政头衔,管理协调行政事物,脱离项目。

(2)项目管理和质量保证体系使用棍乱,项目组无统一目标、方针、流程,导致项目工作效率低下。多套项目流程混杂不清,实施人员面对多种要求和多种流程疲于奔命,多个部门无法按照规范协同合作,项目经理和实施人员陷入混乱的流程漩涡,导致项目停工或工期延误等后果。(3)项目团队尤其是项目经理的责权不清,授权不合理,导致其工作无法开展。尤其是一些规模较大的企业多个项目存在耦合,项目内又划分子项目的情况下,项目经理的责权划分经常很难清晰。

2项目管理和大型软件系统项目管理

2.1主流管理体系

2.1.1项目管理所谓项目管理,就是项目的管理者在有限的资源约束下,运用系统的观点、方法和理论,对项目涉及的全部工作进行有效地管理。即从项目的决策开始到项目结束的全过程进行计划、组织、指挥、协调、控制和评价,以实现项目的目标。

2.1.2项目管理的基本内容划分(1)项目质量管理。项目质量管理包括保证项目满足其需求所需要的过程。包括确定质量方针、目标和职责并在质量体系中通过诸如质量计划、质量控制、质量保证和质量改进使其实施的全面管理职能的所有活动。(2)项目时间管理。项目时间管理包括为确保项目按时完成所必要的过程。包括工序定义、工序排序、工序工期估计、制定进度计划、进度控制等。(3)项目成本管理。项目成本管理包括确保在批准的预算内完成项目所需要的诸过程。包括成本管理主要过程:资源规划、费用估算、费用预算、费用控制等。(4)项目采购管理。项目采购管理包括需要从执行组织以外获得货物和服务的过程。包括采购计划编制、招标计划编制、招标、选择来源、合同管理等。(5)项目人力资源管理。项目人力资源管理包括需要最有效地利用涉及项目人员的过程。包括所有项目受益者、组织的计划编制、人员招聘、队伍开发等。(6)项目沟通管理。项目沟通管理包括保证及时、适当地产生、收集、、储存和最终处理项目信息所需的过程。以下为主要过程:信息计划编制,信息,执行情况汇报,行政收尾。(7)项目风险管理。项目风险管理包括对项目风险的识别、分析和应对过程。包括风险识别、风险量化、风险应对措施开发、风险应对控制。

2.1.3大型软件系统项目管理阶段划分大型软件系统项目管理阶段按照定义项目分为以下六大阶段:项目需求阶段;项目选择阶段;项目计划阶段;项目执行阶段;项目控制阶段;项目收尾阶段。

2.1.2大型软件系统项目管理

2.2.1大型软件系统项目概念大型软件系统是指基于大中型计算机、通信网络等现代化的工具和手段,收集、储存、处理和输出信息,以提供信息服务为主要目的的数据密集型、人机交互的计算机应用系统。

2.2.2大型软件系统项目的特点(1)项目持续时间较长和阶段交叉性相结(2)项目成员复杂。参与项目实施的成员虽然主要来自承包商的多个职能部门的人员,还包括来自用户不同部门或下属结构的业务人员,还有一些分包商和供货商的人员参与。参与项目的人员通常要由计算机、网络、通信、电子、管理等不同专业背景的专家、工程技术等人员共同合作,才能保证项目的实施。由于大型软件系统牵涉范围广,所以参与项目的成员全部集中在某一地区不是很现实的事情,而是往往分布在全国各地,甚至需要在国外人员的合作参与。

2.3大型软件系统项目的管理问题

2.3.1项目责任范围界定不清一是项目初期客户对自身需求不清晰;二是项目实施过程中客户需求自身发生变动;三是需求分析人员和客户对需求的理解有误;四是缺少客户业务部门参与。

2.3.2项目团队缺少有效管理一是团队沟通意识差;二是团队欠缺分工合作;三是项目成员的流动频繁。

3提高大型软件系统项目质量的具体方法

3.1真实需求的获取最终用户真实需求的获取就是需求分析的过程,它是一个项目的基石。在以往信息系统集成项目失败的案例中,大部分是由于需求分析的不明确而造成的,因此对于一个信息系统集成项目成功的关键因素之一,就是对需求分析的把握程度。只有确确实实地把握客户的需求和方向,才能做好后续的工作,这也是项目范围管理的重点。需求分析需要安排专门的人员组成项目需求分析小组,这个小组员的组成除了要有专业的需求分析人员和系统设计人员外,还必须包括用户方代表。用户方代表应为用户各项业务的代表,他们能够提出用户的一些真实需求,或者通过他们能够了解到最终用户的真实需求。需求分析小组要制定详细的需求调研计划,确定需求调研的方法。为了便于需求调研双方的充分合作理解,在需求调研开始前进行一些培训工作是必要的,这些培训包括调研方法的培训、用户业务流程的培训等。

3.2利用WBS分解项目工作分解结构(WorkBreakdownStructure,WBS),是一种面向可交付成果的项目元素分组,这个分组组织并定义了全部的项目工作范围;每下降一级都表示一个更加详细的项目工作的定义。分解是指把主要可交付成果分成较小的、便于管理的组成部分,直到可交付成果定义明晰到足以支持各项项目活动(计划、实施、控制和收尾)的制定。使用WBS的最大优点是可以监控以及预测成本、进度等不同的项目信息,并且给所有的项目参与者员提供了一个均可与之作对比的一致基准。

3.3范围的验证项目范围验证不应该仅仅发生在项目结项的时候,这样做往往会流于形式。比较理想的做法是在项目各个阶段,至少是里程碑的阶段,由项目需求分析小组的成员(特别是用户方代表)、项目经理、该阶段可交付成果的负责人组成评估小组,由阶段工作成果的负责人进行宣讲,评估小组一起进行评审和验证。

3.4项目团队管理对于大型信息系统集成项目而言,项目团队组建是由项目主要干系人采用协商方式来完成,而不是由单方指定的;而项目的管理采用的是项目管理委员会领导下的项目经理负责制,而不是项目经理个人责任制。项目管理委员会一般是由项目各主要干系方指派的项目负责人组成,项目经理由项目管理委员会成员通过充分的沟通协商指定。这样做的主要目的是平衡项目干系方的满意度,保证项目目标的实现。

3.5项目团队的成长项目团队要建立起整体形象,需要明确方向,并且试图对要完成的工作明确划分和制订计划。项目经理对于项目成员要采取预期激励、信息激励和参与激励的激励方式。项目团队成长与激励关系示意图3.6软件项目的估算在项目计划阶段或项目进度调整时,对项目的规模、工作量、进度和费用进行估算,便于掌握项目的进度,控制项目的成本。而且这些估算的数据可作为其他项目估算的参考,同时也将作为项目跟踪与监控的度量基准。估算主要包括规模和工作量的估算。首先要进行的就是规模估算,规模估算应该与项目需求一致,以便确定该项目的工作量、成本和进度。每个规模属性应附上有关的难度和复杂度,然后结合项目成员的平均生产性,进行工作量估算,进而安排任务的时间进度。超级秘书网

4结语

当今我国软件企业实施软件项目管理的许多技术还不成熟,软件项目延期、超出预算、品质低劣甚至项目失败等现象十分严重。在大型软件系统开发过程中,做好项目管理是软件开发能否成功的核心问题之一。笔者希望通过对大型软件系统项目的项目管理进行的研究,为项目管理者对项目的评估、计划、控制提供一套标准化、系统化、定量化和切实可行的方法体系,为国内软件企业的软件项目管理在实际中的应用提供参考。

参考文献

[1]美国项目管理协会.项目管理知识体系指南[M].2版.卢有杰,王永,译.北京:电子工业出版社,2005.

软件管理论文篇10

第一,我国软件业属内向型,主要是国内市场,而国外市场份额较小,且是先国内后国外。《2002年中国软件产业发展公报》调查结果显示,2002年全国软件企业行业共完成软件及系统集成收入1100亿元,出口创汇仅15亿美元,占总额的十分之一左右。

第二,我国软件企业缺少核心技术。主要产品是各行业在信息化建设中基于系统平台的各种应用系统和对于系统网络与信息安全方面防范病毒、黑客攻击的查/杀工具软件,而像操作系统、数据库管理系统等系统软件则极少。如Linux,虽然已进入企业级应用,但也只是在服务器领域里取得了进步。

第三,软件企业规模较小。《2002年中国软件产业发展公报》调查结果显示,我国共有4700家各类软件公司,其中,50人以下的企业占67%左右,50~200人的占26%左右,1000人以上的软件企业则非常少。

第四,软件企业正规化程度差距较大。我国具有CMM认证的企业为数极少,且通过CMM认证的最高级别仅为四级,如深圳华为公司。而全印度取得软件CMM5级认证的软件企业有40余家,有的企业还同时拥有ISO9000、希格玛等国际认证。

第五,软件企业的产业化程度较低。我国的大多数软件公司还处于“手工作坊”阶段,尚未形成规模化生产,缺少较规范的软件过程监控、质量管理、文档管理等。

这其中影响的因素很多,有内部因素,也有外部因素,有经济体制问题,也有企业内部管理问题,如政府对软件企业的投入、指导和各种优惠政策,教育体制和社会教育机构对软件从业人员的教育、培训,软件企业内部的资金和人力资源管理等等。笔者认为,制约我国软件行业发展的一个重要因素就是软件人才问题,以下将着重讨论企业的人力资源管理问题。

一、构建软件企业合理的人才结构

2002年,全国软件产业从业人员59万人,其中高学历人才的比重较大,研究生共43208人,占全部从业人员的7%;本科生共196151人,占全部从业人员的33%;大专生共99431人,占全部从业人员的17%。

现阶段我国软件人才结构呈现为“抛物线型”,说明软件人才结构极不合理。一方面是对技术水平要求较高的系统分析员和有丰富经验与行业背景的项目策划、管理人员较少;另一方面则是从事软件编程等基础工作的软件程序员、软件配置员和软件操作员即“软件蓝领”严重缺乏。目前,我国软件企业竞争能力差的一个因素是产品成本太高,质量欠佳,这也是软件企业难以形成产业化的重要原因。现在一个学软件的研究生月薪在1万元以上,一个大学本科生月薪在2000~6000元之间,这样高的代价必然给软件企业带来产品的高成本,使企业的产品无法与其他国家竞争。所以,降低软件企业劳动力的成本是提高企业竞争能力和把企业办大办强的当务之急。

由于软件企业规模都非常小,因此分工不可能特别细。然而软件产业规模化是一个必然的趋势,软件产业发展到一定程度的时候,就会形成规模,软件人才分工也会细化。细化便于科学化管理及降低成本,即便于利用不同层次的人才结构,有效合理安排使用人才,实现人力资源优势最大限度地发挥,进而降低劳动力成本。

在我国软件企业中,处于中间层次的本科程序员数量居多,他们从事简单的编码工作,一方面使得软件的人力资源成本居高不下,直接影响软件产品的竞争力,另一方面又造成人力资源的浪费。而他们作为系统分析员,管理经验和知识技能还有欠缺,不能够胜任项目的规划设计工作,从而影响软件企业本身的发展。一些软件企业提出“非研究生不进”,对低层次“软件蓝领”人才不屑一顾,这实际上造成了人才的一种极大浪费,因为分工细化后的软件产业恰恰需要大量从事一线编码工作的软件工人。

理想的软件人才结构构成应该是“金字塔”型。处于顶层的、具有国际战略眼光的项目高级管理人才以及能够进行软件整体开发设计的系统分析员,这部分人将决定我国软件产业发展的方向和水平,决定我国将来在国际软件产业链中的地位。处于“金字塔”中间的“中端”软件人才是高级程序员,他们是我国当前软件人才存量的主体。最后,我国还需要大量处于“金字塔”底层的从事软件编码等初级工作的程序员,这是我国软件产业发展实现产业化的基础所在。不同层次的人才可以完成不同层次的工作任务,合理科学的人才匹配既可以做到人尽其用,又能使高级软件设计人员得到解脱,投身到更多的软件开发、设计工作之中,从而为公司创造更多更大的利润。

二、加强软件从业人员职业培训的必要性

软件企业中软件从业人员的职业培训是不可或缺的,它的必要性表现在以下几个方面:

1.软件科学技术不断发展的需要

在微电子性价比18个月、软件9个月就要更新换代的今天,软件企业必须与院校和其他社会培训机构建立紧密合作关系,及时获取最新、最实用和最前沿的软件动态信息,与时俱进,让企业员工掌握最新的软件行业发展动态,以利于企业的健康发展。

2.企业不同时期完成软件工程项目的需要

基础编程人员的工作任务是完成一个个基础程序模块的编制,而不同软件公司在不同时期,软件产品也不一样,每个基础程序模块所需要的知识和编程语言也不尽相同。软件企业中的程序员在企业工作一段时间后,还必须进行培训,补充新知识,以适应IT行业的发展。

3.软件企业人才培养和人才结构调整的需要

软件企业人才的成长和培养过程都基本遵循这样一个模式:学习实践再学习再实践。通过学历教育或职业培训,学员掌握了软件编程的基本知识和技能,进入软件企业,在初级的职位上工作;通过一段时间的工作实践和在职短期培训,逐步提高自身的技术水平,成为中高级软件工程师;通过参加更高级的培训,进一步提高自身的水平,承担更为重要的工作。

软件企业为确保自身处于质量——成本坐标系上的最佳位置,就必须形成“项目经理系统分析员高级程序员基础程序员”的合理化人才结构。只有通过各种方式培训,才能建立起一支适应企业发展的职工队伍。

三、软件从业人员职业培训的方式和途径

目前社会上存在的软件人才培训方式有学历教育和非学历教育两种。正规院校的学历教育是我国目前软件人才培养的主要途径;而社会上各种非学历软件人才培训项目则是层出不穷,对传统软件人才培养起到了很好的补充作用。它们差异较大,各有优点和不足,适用于不同层次的软件人才培训需求。

1.高级软件人才培训有多种不同的培养模式,如工程硕士方式、第二学士学位方式和其他专业学生转向软件专业方式,其培养对象主要是一些有软件开发经验、需要继续深造的软件人才。定位于技术教育的学历教育,主要依托高等院校对学生进行系统全面的培养,有着良好的基础教育和理论教育,但周期较长,费用较大。

2.中层软件开发骨干培训主要依靠社会培训机构进行在职培训。规范的社会培训机构的在职培训,由于和软件企业有着良好的沟通,所以能够制定合理的人才培养体系,可根据软件企业的实际需求制定培养方向,周期较短,费用较低。

3.低层软件技术工人培训主要培养软件技术工人,可以通过社会培训和中等职业教育两种途径进行。由于基础的软件开发和编程是实践性和规范性很强的工作,注重于动手能力,需要在实际软件工程项目实践中得以锻炼,所以通过有针对性的在职培训可以大量培养低层软件技术工人。

软件管理论文篇11

软件工程管理目前还没有引起人们的足够重视。究其原因:首先是人的传统观念,工程管理不为人们所重视;另一方面软件工程是一个新兴的学科领域,软件工程管理的问题也是刚被提出的。同时,由于软件产品的特殊性,使软件工程管理涉及到很多学科。因此。对软件工程管理,人们还缺乏经验和技术。但事实证明,由管理失误造成的后果要比程序错误造成的后果更为严重。很少有软件项目的实施进程能准确地符合预定目标、进度和预算的,这也就足以说明软件工程管理的重要。

二、软件工租,理的内容

目前软件生产自动化程度很低,在开发过程中人是起决定性的因素,因此,软件工程管理很大程度上是对人的管理。我们可根据软件产品的特点。分析软件下程管理的具体内容,它包括对开发人员、组织机构、用户、文档资料等方而的管理。

(一)开发人员

软件开发人员一般分为:项目负责人、系统分析员、高级程序员、初级程序员、资料员和其他辅助人员。根据项目的规模人小,有可能一人身兼数职,但职责必须明确。不同职责的人,要求的素质不同。如项目负责人需要有组织能力、判断能力和对重大问题能做出决策的能力;系统分析员则要有概括能力、分析能力和社交活动能力;程序员需要有熟练的编程能力等。人员要少而精,选人要慎重。软件生命期各个价段的活动有分工又互相联系。因此,要求选择各类人员既能胜任工作,又要能相互很好地配合。没有一个和谐的工作气氛很难完成个复杂的软件项目。

(二)组织机构

组织机构不等于开发人员的简单集合。这里的组织机构要求:好的组织结构、合理的人员分工和有效的通讯。软件开发的组织机构没有统一的模式。下面简单介绍三种组织机构。

1、主程序员组织机。IBM公司提出的主程序员组是软件系统结构化思想在组织上的体现。它的目的是为了保证全组的协调和统一。一位高级工程师(主程序员)主持计划、协调和复审组的全部技术活动。技术人员(一般25人)负责分析和开发活动,一位后援工程师支持高级工程师的工作,并且在该项目继续进行时,可以代替高级工程师工作,以减少可能的损失。

2、专家组。专家组强调每个人的才能,把每个人都看作是某一方面的专家,由这些专家组成一个开发机构。这种组织结构虽然能发挥所有工作人员的积极性,但往往有可能出现协调上的困难,选择这种方式要慎重。

3、民主组织。民主组织由从事各方面工作的人员轮流担任组长。很显然,这种组织结构对调动积极性和个人的创造性是很值得称道的。但是由于过多地进行组长信息“转移”不符合软件工程化的方向。

(三)用户

我们是为用户开发软件的,在开发过程中自始至终必须得到用户的密切合作和支持。作为项目负责人,要特别注意与用户保持联系,掌握用户的心理和动态。防止来自用户的各种干找和阻力。

1、用户不积极,不配合。这种表现通常来自对采用先进技术持怀疑态度的用户,他们心理上的抵触情绪会在行动上表现为消极、漠不关心。在需求阶段,做好这部分人的工作很重要,通过他们中的业务骨千,才能真正了解到用户的要求。要使他们认识到:计算机的发展和应用是现代化的必然趋势,使用计算机将会带来巨大的经济效益:让他们掌握新的技术和方法去取代某些可能过时的或淘汰的专长。

2、用户求快求全。这种表现来自对使用计算机持积极态度的人。他们中一部分人希望一个早上就能用上计算机,并且全能用上计算机。要他们认识到;开发一个软件项目不是一朝一夕就能完成的,软件工程不是靠人海战术就能加快的工期。另外,即使计算机能够处理的事情,系统也不能下于包罗万象,贪大求全。要根据现有的条件量力而行。如果系统大而全,必然会很复杂,开发时间就拖得很长,因此可能会导致一个系统的失败或性能太差。

3、用户需求变化。在软件开发过程中,用户可能会不断提出新的要求和修改以前提出的要求。从软件工程的角度不希望有这种变化。但实际上,不允许用户提出变动的要求是不可能的。因为一方面每个人对新事物有一个认识过程,不可能一下子提出全面的、准确的要求:另一方而还要考虑到与用户的关系。对来自用户的这种变化要正确对待:要向用户解释软件工程的规律,并在可能的条件下部分或有条件地满足用户的合理要求。例如:软件需求分析阶段结束后软件的设计口标已经确定,这时用户要求的重大变化要导致设计目标的变化,特别是到软件开发的后期,一般不可能满足这种变化的要求。要向用户解释清楚工程的内在规律,但对用户提出的如性能等局部方而的要求,只要是合理的,就要加以考虑。

4、控制。人员控制是对开发组织内部人员控制。就是要保证开发人员的积极性和稳定性。人员的频繁更换或流动将会大大增加软件出错误的机会。至少要保证软件项目每一期工程或软件生命期每一阶段中人员的相对稳定性。同时注意发挥每个开发人员的积极性和创造性。经费控制要编制详细的经费预算。并在各阶段进行经费的核算。在经费上失去控制,软件项目就没有经济保证。质量控制与各阶段的复审在意义和作用上是一致的,在此不再叙述。

软件管理论文篇12

二、目前在软件项目管理中存在的误区

现在大多数企业都认识到了在项目中进行管理的重要性,但是仍然有许多企业在实施项目管理的过程中存在着这样那样的误区,主要表现在:

1.项目经理不够专业。在软件企业中,缺乏专业的项目管理人员来实施项目管理及担任项目经理,通常被任命的项目经理主要是因为他们能够在技术上独当一面,但是他们在管理方面特别是项目管理方面的知识比较缺乏。

2.项目计划缺乏纲领性。项目经理对总体计划、阶段计划的作用认识不足,因此制定总体计划时比较随意,不少事情没有仔细考虑;阶段计划因工作忙等理由经常拖延,造成计划与控制管理脱节,无法进行有效的进度控制管理。

3.缺乏有效的管理意识。部分项目经理不能从总体上把握整个项目,而是埋头于具体的技术工作,造成项目组成人员之间忙的忙、闲的闲,计划不周、任务不均、资源浪费。有些项目经理没有很好的管理方法,不好安排的工作只好自己做,使项目任务无法有效、合理地分配给相关成员,以达到“负载均衡”。

4.缺乏有效的沟通制度和机制。在项目中一些重要信息没有进行充分和有效的沟通。在制定计划、意见反馈、情况通报、技术问题或成果等方面与相关人员的沟通不足,造成各做各事、重复劳动,甚至造成不必要的损失;有些人没有每天定时收邮件的习惯,以至于无法及时接收最新的信息。

5.风险管理意识淡泊。有些项目经理没有充分意识到风险管理的重要性,对计划书中风险管理的章节简单应付了事,随便列出几个风险,随便地写一些简单的对策,对于后面的风险防范起不到什么指导作用。

6.项目干系人的不确定性。在范围识别阶段,项目组对客户的整体组织结构、有关人员及其关系、工作职责等没有足够了解以至于无法得到完整需求或最终经权威用户代表确认的需求;或者是多个用户代表各说各话、昨是今非,但同时又要求项目尽早交付;项目后期需求变化随意,造成项目范围的蔓延,进度的拖延,成本的扩大。

7.缺乏项目团队的合理分工。项目团队内部有时由于各阶段不同角色或同阶段不同角色之间的责任分工不够清晰而造成工作互相推诿、责任互相推卸的现象;有时各阶段不同角色或同阶段不同角色之间的责任分工比较清晰,但是各项目成员只顾完成自己那部分任务,不愿意与他人协作。这些现象都将造成项目组内部资源的损耗,从而影响项目进展。

三、解决软件项目管理中存在的误区的有效策略

要想解决上面描述的误区,归根到底还是要从管理学的角度入手,即在软件项目的开发过程中加入过程管理的内容,这样我们可以在软件开发中对各个过程的质量加以控制,从而达到保证软件产品质量的目的。为了有效提高管理水平,我们应该努力做到:

1.项目经理接受系统的项目管理知识培训是非常必要的,有了专业领域的知识与实践,再加上项目管理知识与实践和一般管理的知识和经验的有机结合,必能大大提高项目经理的项目管理水平。

2.计划的制定需要在一定条件的限制和假设之下采用渐近明细的方式进行不断完善。提高项目经理的计划意识,采用项目计划制定相关知识、技术、工具,加强对开发计划、阶段计划的有效性进行事前事后的评估。

3.加强项目管理方面的培训,并通过对考核指标的合理设定和宣传引导项目经理更好地做好项目管理工作。技术骨干在担任项目经理之前,最好能经过系统的项目管理知识,特别是其中的人力资源管理、沟通管理的学习,并且在实际工作中不断提高自己的管理素质,丰富项目管理经验,提高项目管理意识。

4.制定有效的沟通制度和沟通机制,提高沟通意识;采取多种沟通方式,提高沟通的有效性。通过制度规定对由于未及时收取邮件而造成损失的责任归属;对于特别重要的(下转第198页)(上接第196页)内容要采用多种方式进行有效沟通以确保传达到位,例如:除发送邮件外还要电话提醒、回执等,重要的内容还要通过举行各种会议进行传达。

5.通过学习项目管理知识掌握风险识别、量化、对策研究、反应控制的工具和方法,掌握项目风险管理所必备的知识。通过加强对项目规划中风险管理计划的审核提高项目组的风险管理意识。总结本行业项目中常见的风险及其对策作为风险管理计划中必要的风险内容,并切实评估相应对策的有效性和可行性。

6.项目的目的就是实现项目干系人的需求和愿望。项目干系人管理应当从项目的启动开始,项目经理及其项目成员就要分清项目干系人包含哪些人和组织,通过沟通协调对他们施加影响,驱动他们对项目的支持,调查并明确他们的需求和愿望,减小其对项目的阻力,以确保项目获得成功。

7.项目经理应当对项目成员的责任进行合理的分配并清楚地说明,同时应强调不同分工、不同环节的成员应当相互协作,共同完善。

实施有效的项目管理绝非易事,对于软件企业而言,这不是一个小的改变,而是一种变革,企业需要为此付出艰苦的努力,同时,成熟有效的项目管理无疑将对企业起着至关重要的作用,项目管理的水平将是企业核心竞争力之一。

【参考文献】

[1]郭研.软件项目管理[J].物流科技,2005,(2).

[2]何国伟.论软件项目管理的质量(上)[J].质量与可靠性,2003,(6).

[3]何国伟.论软件项目管理的质量(下)[J].质量与可靠性,2004,(2).

软件管理论文篇13

主要是公用房信息系统的建立。本论文设立了对应数据的关联。通过分析,将数据分为18项数据信息表。房屋基本信息表主要包括房屋的物理属性如房屋ID、房屋名称、房屋面积、方位等,通过房屋的ID,能唯一确定一间用房。房屋分配信息表主要包括房屋的分配属性如分配信息ID、房屋ID、分配时间、分配状态、所属团队等,通过房屋分配ID、房屋ID能够查到相关用房的分配情况。房屋类型信息表提供了房屋的使用类型ID、类型名称和房屋的描述属性,以此作为选用用房的参考。学院信息表提供了学院的一些基本信息如学院ID,作为主键用于学院的信息查找;学院的名称、专业类别系数、院办电话等。通过学院的基本信息表,能够申请学院的指定用房。除此之外,还设定了其他多项表信息,具体如图1。

1.2功能模块的设计

根据需求分析的结果,按照“低耦合、高内聚”的原则,本系统的可视化部分将划分为以下主要功能模块:登录模块、密码修改模块、管理员模块、用户模块、用户注册模块、用户用房申请模块。各模块图如图2所示,主要分为管理员管理系统和用户查询系统,管理系统包括对用户的管理、公用房信息的管理(如住房面积、位置、布局等信息)及更新信息管理等。用户查询系统主要包括查询公用房信息(实现对公用房的各种信息查询)和申请公用房两大部分。

2软件设计

软件设计也分为前端和后端的设计,前端设计采用delphi软件和C++语言编写实现,后端采用SQLServer软件实现。

2.1数据库的设计概念

结构设计是数据库设计的核心。概念结构设计是将系统需求分析得到的用户需求抽象为信息结构的过程,它是用实体-联系(Entity-RelationShip,简称E-R)图进行描述的。根据公用房数据信息表之间的关系建立完整的数据库,实现信息表的相连。图3为房屋基本信息表_房间分配信息表外键关联图。

2.2可视化部分的设计

根据需求分析的结果,按照“低耦合、高内聚”的原则,本系统将划分为以下主要功能模块:登录模块、用户操作信息模块、管理员操作信息模块、公用房申请模块等。其中的管理员操作界面如图4所示。1)登录模块:在此模块中用户可以根据用户名、密码和自己的身份来登录到相应的主界面。其中可以选择用户类别:①管理员②申请用户。它可以链接到用户注册模块(在此模块中,用户填写相应的信息来注册。用户注册信息的录入,包括用户名、密码等信息)。2)用户操作信息模块:本模块是面向对象是用户,其主要用来查询公用房信息,同时可链接到公用房申请模块。具体功能为:用户可以根据公用房的不同的字段对某个特定的表进行查询,通过检索得到所需全部信息。用户操作模块只对信息有查询操作,其他的如修改、删除等功能不存在,及设置了权限。在此模块中,又包含了两个模块:密码修改模块和房屋申请模块;3)管理员操作信息模块:管理员操作界面主要实现对公用房和用户的信息管理功能。例如,当用户进行公用房申请后,管理员根据用户提供的信息对用户进行审核,审核通过后通过相关人员实现该用户公用房的分配。其具体功能为:程序运行时,管理员可以分别根据不同的字段来查询所对应的信息表,也可以实现修改、删除、录入等功能。程序运行后,管理员点击登录则进入的界面如图所示。在管理员操作模块里,管理员可以根据自己得需要对数据进行查询、修改、删除、录入等操作,也可以调用所有的信息。4)公用房申请模块本模块是用户申请公用房的界面,用户在对公用房的申请条件了解清楚后,提出公用房申请,由管理员考核是否通过。

在线咨询
了解我们
获奖信息
挂牌上市
版权说明
在线咨询
杂志之家服务支持
发表咨询:400-888-7501
订阅咨询:400-888-7502
期刊咨询服务
服务流程
网站特色
常见问题
工作日 8:00-24:00
7x16小时支持
经营许可
出版物经营许可证
企业营业执照
银行开户许可证
增值电信业务经营许可证
其它
公文范文
期刊知识
期刊咨询
杂志订阅
支付方式
手机阅读