软件管理论文范例6篇

前言:中文期刊网精心挑选了软件管理论文范文供你参考和学习,希望我们的参考范文能激发你的文章创作灵感,欢迎阅读。

软件管理论文

软件管理论文范文1

在实际的项目质量管理中,质量管理总是围绕着质量保证(QualityAssurance)过程和质量控制(QualityControl)过程两方面。这两个过程相互作用,在实际应用中还可能会发生交叉。正如引言所述,关于软件的质量,很难下一个非常明确的定义。本文主要针对软件工程中的质量管理来进行讨论。

做软件“大餐”的工序

软件质量保证(SoftwareQualityAssurance,以下简称SQA)的目的是验证在软件开发过程中是否遵循了合适的过程和标准。软件质量保证过程一般包含以下几项活动:

首先是建立SQA组;其次是选择和确定SQA活动,即选择SQA组所要进行的质量保证活动,这些SQA活动将作为SQA计划的输入;然后是制定和维护SQA计划,这个计划明确了SQA活动与整个软件开发生命周期中各个阶段的关系;还有执行SQA计划、对相关人员进行培训、选择与整个软件工程环境相适应的质量保证工具;最后是不断完善质量保证过程活动中存在的不足,改进项目的质量保证过程。

独立的SQA组是衡量软件开发活动优劣与否的尺度之一。SQA组的这一独立性,使其享有一项关键权利??“越级上报”。当SQA组发现产品质量出现危机时,它有权向项目组的上级机构直接报告这一危机。这无疑对项目组起到相当的“威慑”作用,也可以看成是促使项目组重视软件开发质量的一种激励。这一形式使许多问题在组内得以解决,提高了软件开发的质量和效率。

选择和确定SQA活动这一过程的目的是策划在整个项目开发过程中所需要进行的质量保证活动。质量保证活动应与整个项目的开发计划和配置管理计划相一致。一般把该活动分为以下五类:

1)评审软件产品、工具与设施

软件产品常被称为“无形”的产品。评审时难度更大。在此要注意的一点是:在评审时不能只对最终的软件代码进行评审,还要对软件开发计划、标准、过程、软件需求、软件设计、数据库、手册以及测试信息等进行评审。评估软件工具主要是为了保证项目组采用合适的技术和工具。评估项目设施的目的是保证项目组有充足设备和资源进行软件开发工作。这也为规划今后软件项目的设备购置、资源扩充、资源共享等提供依据。

2)SQA活动审查的软件开发过程

SQA活动审查的软件开发过程主要有:软件产品的评审过程、项目的计划和跟踪过程、软件需求分析过程、软件设计过程、软件实现和单元测试过程、集成和系统测试过程、项目交付过程、子承包商控制过程、配置管理过程。特别要强调的是,为保证软件质量,应赋予SQA阻止交付某些不符合项目需求和标准产品的权利。

3)参与技术和管理评审

参与技术和管理评审的目的是为了保证此类评审满足项目要求,便于监督问题的解决。

4)做SQA报告

SQA活动的一个重要内容就是报告对软件产品或软件过程评估的结果,并提出改进建议。SQA应将其评估的结果文档化

5)做SQA度量

SQA度量是记录花费在SQA活动上时间、人力等数据。通过大量数据的积累、分析,可以使企业领导对质量管理的重要性有定量的认识,利于质量管理活动的进一步开展。

要说明的是,并不是每个项目的质量保证过程都必须包含上述这些活动或仅限于这些活动,要根据项目的具体情况来定。

SQA计划中必须明确定义在软件开发的各个阶段是如何进行质量保证活动的。它通常包含以下内容:质量目标;定义每个开发阶段的开始和结束边界;详细策划要进行的质量保证活动;明确质量活动的职责;SQA组的职责和权限;SQA组的资源需求,包括人员、工具和设施;定义由SQA组执行的评估;定义由SQA组负责组织的评审;SQA组进行评审和检查时所参见的项目标准和过程;需由SQA组产生的文档。

选择合适的SQA工具并不是试图通过选择SQA工具来保证软件产品的质量,而是用以支持SQA的活动。选定SQA工具时,首先需要明确质量保证目标。根据目标制定选择SQA工具的需求并文档化,包括对平台、操作系统以及SQA工具与软件工程平台接口的要求等。

如何使白壁“无瑕”

按工序去做也不一定能得到一盘完美的“大餐”,因为火侯等因素实在很难掌握。万一掌握不好怎么办?软件质量控制主要就是发现和消除软件产品的缺陷。对于高质量的软件来讲,最终产品应该尽可能达到零缺陷。而软件开发是一个以人为中心的活动,所以出现缺陷是不可避免的。因此,要想交付一个高质量的软件,消除缺陷的活动就变得很重要。缺陷消除是通过“评审”和“测试”这类质量控制活动来实现的。

缺陷在软件开发的任何阶段都可能会被引入。项目质量管理过程包含了许多可以识别缺陷、消除缺陷的过程。“识别缺陷”和“消除缺陷”本来是两个不同的过程,但在这里为了简便统一用“消除”来代表它们。潜在的缺陷越大,用来消除它所花的费用越高。因此成熟的软件开发过程在每一个可能会引入潜在缺陷的阶段完成之后都会开展质量控制活动。这些为了消除缺陷的活动包括:需求评审、设计评审、代码走查、单元测试、集成测试、系统测试以及验收测试等。

软件管理论文范文2

1.1优化模型计算工具的选取

本模型主要由三部分软件工具搭建而成,下面分别对各个工具进行描述:

1.1.1LINGO是LinearInteractiveandGeneralOptimizer的缩写,即“交互式的线性和通用优化求解器”,由美国LINGO系统公司推出的,可以用于求解线性规划,也可以用于一些线性和非线性方程组的求解,功能十分强大,是求解优化模型的最佳选择。其特色在于内置建模语言,提供十几个内部函数,可以允许决策变量是整数(即整数规划,包括0-1整数规划),方便灵活,而且执行速度非常快。1.1.2VisualBasic是一种由微软公司开发的包含协助开发环境的事件驱动编程语言。从任何标准来说,VB都是世界上使用人数最多的语言———不仅是盛赞VB的开发者还是抱怨VB的开发者的数量。它源自于BASIC编程语言。VB拥有图形用户界面(GUI)和快速应用程序开发(RAD)系统,可以轻易的使用DAO、RDO、ADO连接数据库,或者轻松的创建ActiveX控件。程序员可以轻松的使用VB提供的组件快速建立一个应用程序。VB的中心思想就是要便于程序员使用,无论是新手或者专家。VB使用了可以简单建立应用程序的GUI系统,但是又可以开发相当复杂的程序。1.1.3MicrosoftOfficeAccess是微软把数据库引擎的图形用户界面和软件开发工具结合在一起的一个数据库管理系统。它还可以直接导入或者链接数据(这些数据存储在其他应用程序和数据库)。软件开发人员和数据架构师可以使用MicrosoftAccess开发应用软件“,高级用户”可以使用它来构建软件应用程序。和其他办公应用程序一样,ACCESS支持VisualBasic宏语言,它是一个面向对象的编程语言,可以引用各种对象,包括DAO(数据访问对象),ActiveX数据对象,以及许多其他的ActiveX组件。本优化配矿软件利用了三个软件的强大功能,将三款软件完美的结合在一起,实现了有效地将原始数据(原燃料品种、化学成分及价格)、目标函数、政策变量及约束条件输入软件中,进行求解。

1.2优化配矿软件制作

1.2.1数据计算原料录入的所有化学成分均是在外水和烧损前测定的数据,必须提前进行处理,才能保证数据预测更接近烧结矿的特性,软件后台就需要对外水与烧损的折算。也就是说混匀料的化学成分就是模拟烧完后的残存含量。通常EXCEL的线性规划求解计算的过程属于正向推算,也就是说现输入配比然后再计算生成烧结矿的化学成分,这样的弊端就是需要尝试一些配比量,而非系统选择的最优结果。而此软件是根据化学成分的需要,反向推出配比量的优化值。所以,该系统计算出的数据更具有代表性。1.2.2软件之间的接口(1)VB与ACCESS的连接,VB负责录入数据,数据录入后存储在ACCESS中,通过脚本语言利用数据库游标指针调出需要使用的数据,具体实现代码为:DimrecoAsNewADODB.RecordsetDimconnAsNewADODB.ConnectionDimbAsDoubleDimmAsIntegerconn.CursorLocation=adUseClientconn.Open“provider=microsoft.jet.oledb.4.0;datasource=配料表最终.mdb;persistsecurityinfo=false”reco.Open“select*fromuser1”,conn,1,1(2)VB与LINGO的连接,LINGO软件在该系统中主要作用是计算线性规划方程的工具,编程过程中需要将数据采集到LINGO中进行计算,然后再将计算结果返回至VB中进行处理并在前台进行显示。(3)输出结果文本文件的建立当优化配矿软件所计算出来的配比结果满足使用者的使用条件时,需要生成一张配比表格,该表格下发至生产车间,车间便可以按照配比数据组织生产,此软件实现的方式为TXT文本文件。

1.3软件的使用

优化配矿软件的使用上仅需将各个限制条件逐一输入,这些限制条件诸如除尘灰、返矿、石灰、燃料等的含量不能随意配加,有的矿粉的库存有限,配比量也要有所控制等因素,此外根据所需烧结矿的化学特性,将碱度、全铁、二氧化硅、氧化镁、氧化钙等含量都进行约束,在实际生产中这种约束条件都是在一定的范围,因此在软件中条件限制可以标定出上限和下限,当所有限定条件完成以后单击“求解”按钮,界面上即可显示出符合条件的配比结果以及优化后的成本也将计算出来,将计算的配比量进行命名后,单击“导出”按钮可以将配比结果的相关信息导出到配比表单。当然,如果输入的限制条件过于苛刻,所列矿粉无法满足要求系统将给予提示信息,并将错误结果以红色字体标注出来。除此之外,该系统还能够计算单一矿粉的单烧值,所谓矿粉的单烧值即单独以某一种矿石进行烧结生产时,在一定的碱度条件下,生产出的烧结矿含铁量的百分数称为单烧值。单烧值的大小,表示用这种矿石生产出来的烧结矿的品位高低,这样不仅能够在生产前了解单一矿粉的性能,同时也可以指导采购计划中对某一矿粉的性价比定位。由于该优化配矿模型包含的原料种类多,计算指标罗列齐全、约束比较完备,如果稍加修改就可以用于其他配料车间(如竖炉车间,原料车间等)但需要强调的是,此软件求解结果的可靠性还取决于原料的原始化学分析数据是否能够真实准确的反映原料的特性,只有以比较准确和具有代表性的原始数据求出的结果才更具有指导性和可信性,因此采样化验工作的严谨是支持该软件数据的前提。

2软件的应用

软件管理论文范文3

关键词:软件公司;成本控制;探索

1经营决策阶段的成本及其控制

经营决策阶段成本是指公司经营方向的选择,这是成本管理的第一个也是最为核心的环节。不过对于大多数IT软件业公司而言,这个阶段往往是最大的问题之所在,有时经常凭一个觉得是灵感的想法或者对市场初步的直观层面的调研就进行的决策。而这样的结果是往往没有摸透市场的真实情况,轻率上马项目,造成方向性错误,以至于导致企业的危机。

该阶段的成本控制,关键在于经营决策前科学而深入的市场调研及准确分析,目前很多中小型IT软件企业,其经营部的职员大多都并不是社会调查专业的,因而他们做市场调查的过程中所采用的方法不太科学,如在样本选取及抽样过程不合理,没有按照严格的社会调查方法进行调查和数据分析,甚至问卷设计都存在倾向性导致调查数据信度偏低。此外,大量的公司自我宣传的各种形式的软文和竞争对手有意的攻击性文章夹杂在其中,并不是很容易的进行分辨,更何况数据的随意性,来源的不可追溯性各种情况,所以只能作为参考。

2需求整理及分析确认阶段的成本及其控制

需求整理指市场经营人员根据高管对于市场方向的决策,而提出的具体的产品或者项目的原始需求,需求分析是指技术员对市场部门的需求进行分析,评估其可实现性以及实现难度,大致工时等,提交相关需求分析报告,最后市场经营部门进行确认这个阶段。

该阶段的成本控制,首先需要搞清这种沟通过程中产生偏差的原因,最为主要的往往并不是技术语言和市场语言的差异,或者市场人员和技术人员之间的思维定势的差异,而在于两者缺乏确定的科学的流程和在交流之前的准备以及相关概念约定俗成的定义造成的问题,同时还由于沟通和确认环节由于其特殊性,经常难以被有效的纳入进度管理程序流程当中。而提高该阶段的成本控制效率,必须逐一针对性的解决以上问题,首先要清晰的确定并严格执行市场和技术沟通的流程,尤其是要明确每个环节的控制点,也就是双方交付给对方的关键交付物,一定要有清晰的共同确认的模板,同时每次沟通前必须对于一些概念有着清晰的界定,然后公布这些信息,并在沟通前做好充足的准备,明确每次沟通前要沟通什么,要解决哪些问题,沟通结束后要交付哪些文档让双方进行确认等,同时一定要通过线上或者线下的管理模式,讲所有沟通环节全盘把握,并纳入进度管理。

3规划阶段成本及其控制

规划阶段成本是指在需求已经得到确认后,进入技术规划阶段的相关成本控制,该阶段有些软件开发公司常常出现的问题是对于规划予以过度的期望和过于沉重的内涵,在实际项目操作过程中,这个规划实际上包含着技术规划和非技术规划两个部分,因为对这两个部分的混淆,导致一些技术层面和市场层面的东西不必要的纠缠在一起,并且直接导致项目进度的拖欠,而且会导致由于非技术规划的不清晰,直接影响技术规划层面的实施。

该阶段的成本控制,必须清晰的区分非技术规划和技术规划,尤其在公司内部技术部门和市场经营部门之间的职责,需要设立一个在提出需求到技术规划之间过渡的位置,即对于需求具体细节的整理,要对于交付物有着清晰的确定,尤其是在不同时期交付不同的关键文档,如除了上面说的那六个文档外,技术部项目组长在需求分析的时候,还应该明确提交功能模块分析,开发代价,功能流程图,功能关联性图,可维护性及可拓展性分析等六个文档,此外在项目开发规划阶段,还要对于控制点的一些要素进行详细的规划用来提交给市场部门,如详细页面元素,页面元素价值度分析,表现形式,页面结构,页面效果等。

4开发阶段的成本及其控制

开发阶段的成本指需求确定并且规划清晰后的具体开发过程的成本管理问题,该阶段相对其他阶段来说比较清晰,但这里笔者认为需要关注的是,如何使得人力资源得到最大程度的利用,它是指公司第一线技术人员的能力最大程度发挥的状态,包含几个层次,(1)全部时间利用,(2)最大效率利用,(3)最大潜力激励利用,这三步需要逐步递进实现。这个需要一种完善的内部管理制度,以及公平公正的价值认定模式和绩效制度,从而一方面促进员工本身的发展,一方面增加对人才的吸引力。

该阶段的成本控制,可以引入最大可控制成本的概念,这里是指人力资源最大程度发挥后所能控制的成本,是公司在一定投入前提下,最大的可能的减少因管理导致人力发挥不足够而造成的成本,该成本为人力资源的极致成本,无法再进一步降低,此成本状态下的仍然出现效益不佳情况,则可说明在经营定位和经营方向上的问题,而非内部问题。促使人力资源得到最大利用度和发挥度,在此基础上的成本,为最大可控制成本,以上可以通过内部的管理系统来很好的实现。5需求变更成本及其控制

需求变更成本指在开发过程中,由于市场部门的需求改变导致的成本增加而实施的控制,对于项目开发的过程中,需求的频繁变更就成本控制而言是致命的,很多项目由于需求的变更而导致破产。

该阶段的成本控制,最关键的是要对于需求变更过程进行严格的管理,要从需求变更的开始,对于整个变更的每个具体的步骤进行跟踪,并且严格核算每次变更所需要的工作时,从而做好评估。同时,务必要明晰需求变更的必要性和风险性,以及所带来的实际成本的增加,所以需求要尽量经过详细的论证。

6测试成本及其控制

测试成本指项目开发完成阶段,在交付验收前进行的测试过程中导致的成本及其控制,测试阶段对于一个项目的最终交付具有重大的意义,往往在测试阶段要才是使得项目真正完善的阶段,很多细节的修补都在测试阶段完成,正是测试使得一个项目成为一个可以交付,可以应用,可以产生效益的产品。但对于一些中小型软件开发公司而言,往往缺乏真正建制齐全的测试部门和专业测试人员,经常是技术人员进行兼任,这种方式相当普遍。但同时也导致了一些问题,主要是对于测试缺乏经验积累管理,或者说是错误管理,经常上次测试完出现的问题,过段时间又会出现,或者是开发下个项目的过程中又再次出现,增加不必要的成本。

该阶段的成本控制,笔者认为最关键的是对测试进行错误管理模式,采取“有错必改,凡错必究,错不再犯,预错于先”的管理办法,尽量在项目开发之前,就能整理出之前开发中出现过的所有问题,并用列表的方式进行技术会议,让所有开发人员进行错误共享,尽量把测试中可能出现的问题消灭再开发阶段,另外需要把测试过程化、即时化,每周甚至每天都要求每个开发人员在交付自己的子模块的之前就暗中预先准备的测试手册进行测试,通过后再提交,同时定时抽查某些核心功能模块,进行某个点的测试,这样全过程的控制,会最大程度的减少测试成本,同时要加快反应速度,一发现开发中,或者测试过程中的相关问题,必须跟进彻底解决,并纳入绩效考核中,杜绝再犯。

参考文献

[1]颉茂华,现代市场经济成本的成本控制新理念[J].财会月刊2002,(06).

软件管理论文范文4

关键词:DELPHI;充放电;软件;模块;SOC

1前言

镍氢电池是目前大容量电池的主要品种,已在通讯、交通、电力等部门得到广泛的应用,同时它也是其它智能仪表中最为常用的备用电池。但在实际使用中,由于充放电控制不合理而损坏的电池占大多数。实际上,若镍氢电池充放电适当,通常可以工作10年时间。为此,笔者研制了镍氢电池自动充放电控制系统。该系统由恒流源充电器和恒流源放电器对电池进行充放电因此电流、电压、温度控制是该电池控制系统的重要部分。为此,该系统在总体考虑电流、电压、温度控制系统的基础上,选用微机控制系统对电压、电流、温度进行控制及模拟曲线处理,用得出的数据库对数据进行研究,并对电池性能及SOC进行预测。应用软件可在Windows平台上用面向对象的DELPHI6编程软件编写这对整个系统控制软件的可靠性、易编制性大有益处。

2DELPHI软件介绍

采用PC机作为上位机对采集的数据进行分析处理,是实现这种小型系统实时数据采集和分析的有效方法。Borland公司的Delphi是当今最优秀的Windows开发工具之一,它的可视化开发环境和面向对象的快速应用程序开发工具RAD,可使程序开发人员在Windows平台上快速开发出32位的应用程序。由于它采用面向对象的编程语言,能嵌入汇编和实现多线程操作,且开发数据库功能强大,因而是控制工程师极好的编程工具。

3系统硬件设计

本文所设计的电池控制系统的硬件主要由工控机、PCL711BI/O接口板、光电隔离及采集板、恒流源充电器和恒流源放电器构成,其整体框图如图1所示,其各部分的硬件原理在此不再详述。

4系统软件设计

图2所示是该系统的软件模块图。其中程序初始化包括关闭所有继电器选择开关(充放电选择继电器,充放电使能继电器)、接收数据模块的图象处理初始化、数据库初始化、充放电条件的选择(包括充电电池容量选择、充放电切换选择以及是否按预定曲线充放电)等,同样,程序退出也需实现一系列清零操作。

4.1数据发送模块

数据发送模块用于完成电流信号的产生、调制以及通过对PCL711-B卡的编程操作来实现数据的发送和电流信号的形成。

由于充放电电流一般较大,考虑到安全问题,操作应严格按照操作规程来处理,本软件模拟了各项操作工序,并配以图文指示。

为了灵活地充放电,系统分为手动和自动充放电两种方式,如对电池有一定的了解,可以选择手动充电并通过一定的试验了解电池的性能,然后向数据库中或者预存曲线库中添加想要的充放电形式,从而实现充放电的智能控制。

若选择自动充电,可以选择不同情况下的充放电形式。电池充放电与许多因素有关,如夏天和冬天的情况不同,不同温度下充放电的要求也不一样,不同循环次数的电池充放电表现出来的SOC值也不一样,本系统在设计充放电预定库时都有基于此方面的考虑。一般电池充放电有2种主要形式:恒压充电和恒流充电,本系统选择的是恒流充电(恒流源自制,电路原理图可向作者索取),并通过软件和硬件相结合的方式实现电流的智能充电。

电池充放电就充电来说主要表现为三个阶段:电池恢复阶段、大电流充电阶段、涓流补充充电阶段。刚开始充电由于电池内阻较大,故需要用小电流充电以恢复电池,充电电流不宜高于0.3C,大电流充电阶段控制到0.5C-2C之间,待到电池电压上升到预定充电电压时(预定额度时),可以改为小电流补充充电方式,从而使其能量SOCStateofcharge达到满额(90%以上)。

而当基于DELPHI设计软件时,要综合考虑以上要素,然后在预定曲线图和数据库中给出理想的充放电方案。

利用DELPHI软件实现D/A卡的定时发送时,可通过系统的中断来实现。

4.2数据采集模块

镍氢电池充放电系统一般需要采集4种数据:充放电电压、充放电电流、电池温度、充放电器温度。为了保证采样的准确性,可采用三次采样取平均值的算法来实现采样。

利用DLL提供的功能函数,再配以DELPHI软件,就能很容易地通过PCL911-B采集卡实现对设定通道内数据的采集。下面是其简单的例程:

{打开设备}

ErrCde:=DRV_DeviceOpen(dwDeviceNum,De-viceHandle);

{设置采集通道,采集开始}

AiVolIn1.chan:=ptAIConfig1.DasChan;

AiVolIn1.gain:=ptAIConfig1.DasGain;

AiVolIn1.TrigMode=AiCtrMode1;

AiVolIn1.voltage:=@Voltage1;

................

ErrCde1:=DRV_AIVoltageIn(DeviceHandle_AiVolIn1);

................

ErrCde:=ErrCde1*ErrCde2*ErrCde3*Er-rCde7*ErrCde8*ErrCde9;

{获取采集卡的数据}

Edit1.Text:=FloatToStrF(Voltage1/5,ffFixed6,4);

{采集结束,保存、退出}

lpDioWritePort.port:=lpDioPortMode.port;

lpDioWritePort.mask:=255;

lpDioWritePort.state:=0;

ErrCde:=DRV_DioWritePortByte(DeviceHandle,lpDioWritePort);

4.3数据处理模块

通过数据处理模块可以完成信号的存贮、显示、分析以及信号的调节、系统报警及紧急停止等功能。

信号的保存分为图象和数据库的保存,这些都可以利用DELPHI的SaveDialog对话框以及Pic-ture.SaveToFile事件来实现。

数据的显示可以利用DELPHI的Tcanvas对象,也可以用简单的绘图语句在图象框等控件中实时地复现出数据波形,还可以通过Teechart统计图表对采集数据进行波形复现和简单的分析。若要对其采集数据线性度以及信号的频率、幅度、变化率做进一步的分析,可以调用MATLAB进行高级处理。

有关数据库的操作可以围绕Table或者Query控件来完成,并通过ODBC数据源以及DELPHI的BDE数据管理器来进行连接。但Query控件需调用SQL语言来从事设计。

信号的分析主要包括通过采集的电流、电压、以及温度、循环次数来研究电池的能量-SOC(Stateofcharge),电池荷电状态可反映电池的剩余容量。其数值上定义为电池剩余容量占电池容量的比值。

SOC建模的正确与否关系到电池的工作效率、电池的寿命、电池所能释放的能量和继续充放电的时间,所以SOC建模是电池管理系统的重要一环。因篇幅有限,这里不作介绍。

本系统还可利用经典的PID调节方式,并通过DELPHI软件来保证输出的线性度和稳定性。由于充放电需要恒流源,并且充放电时间都较长,故可采用常见的PID调节(可消除偏差)方法来满足系统要求。

软件管理论文范文5

目前,三维算量软件已逐渐应用于工程管理、造价领域等,对该软件的使用者越来越多。但是在建筑方面的使用者却比较少,主要由以下几方面的原因造成现在的局面。首先,使用三维算量软件的话,都需要进行建模,而对图形的输入操作比较繁琐,这就在一定程度上要求使用者具有一定的计算机水平。而现在,我国大部分施工管理人员和造价工程师在计算机的使用方面还不能够达到上述要求。其次,由于设计图纸的不够规范,图层设计杂乱无章等方面的原因,大大降低了三维算量软件的自动识别率。再次,有一些工程人员或造价人员不能及时拿到电子图纸,导致建模工作变得复杂,加重了他们的工作量。另外,市场上三维算量软件的种类繁多,数据接口大不相同,导致软件在读图时出现错误,影响实际效果。最后是由于软件的开发成本过高,限制了软件的使用范围。

2三维算量软件在工程管理中的重要特性

传统的手工计算工程量的过程相当繁琐,如需要翻看图纸、列计算式、计算分项工程量等,恰恰相反的是,三维算量软件就是省去了这些繁琐的过程,能够实现快速三维图形建模等,直接通过计算机进行计算,精确度高且速度更快,完全实现工程量计算的自动化,规范化和智能化。因此,在工程管理过程中,三维算量软件扮演着重要作用,其特性主要体现以下几个方面:首先,操作简单且界面清晰,能够有效兼容现在常用的电子文档,同时能迅速识别出电子图纸的墙、梁等。其次,能够对计算过程和工程建模过程有一定监督作用,具有修改查询或控制模型的信息。而在建模和计算的过程中,一旦出现错误,操作者可以快速对计算环境进行检查并修改,节约时间,十分方便。另外,在工程统计过程中,对于重合的结构可进行删减,对于标准层计算可进行复制,使得计算效果得到进一步提升。而在核对成本方面,可采用自行套用定额锁对信息进行完整换算,有效提高精确度。接着在工程的设计中,借助几何尺寸的构建对工程量和钢筋数量进行核对,从而实现工程量的自动分类,计算和汇总过程。最后,根据工程构件的实际形状,利用软件的开发功能对其进行补充或修改,从而使造价得到有效控制,同时使工程量的计算更加精确。

3三维算量软件在工程管理中的实践应用

三维算量软件在工程管理中的应用很多,其主要体现在工程管理中的工程造价及施工过程等方面。首先,我们要对工程基本特征和性质进行定义设置。如对计量模式的设置,它就包括工程名称、需要采用哪种计算规则、套用什么类型的定额等,而楼层设置包括楼层的标高和层高、有多少楼层等,只有这样,才能使之后的图形绘制和工程量的计算的准确度得到保证,使工程费用得到合理利用,才能有效控制成本。其次,我们可以根据纵横轴网和施工图的点位信息,确认出柱的位置,然后根据柱之间的轴网生成梁,而在柱和梁围生成的空间范围生产相对的板,接着根据板的边线生成梁和墙,同时在墙上设置出门、窗等位置,这样建筑的基本框架就可以产生了。最后,我们根据框架结构对立体封闭的区域设置天棚、屋面、地面等建筑部位的工程量信息。最后,我们可以根据楼梯、建筑等其他构件对参数进行定义,待一切数据结束之后,三维算量软件系统便开始对工程进行自动统计分析,大概一分钟就可以完成成千上百的分部分项工程量的计算,从而获得我们所需要的各种数据,如砖砌体的体积、梁、板、柱的砼体积等数据。工程施工过程中,三维算量软件的应用范围则比较广泛,一般情况下,在进行施工阶段,三维算量软件一般具有以下功能。首先,三维算量软件可以对工程的施工量进行计算。在工程管理过程中,每一项工程完成后都需要对总体工程量进行分层和分段的计算,使工程资金运转、产品的采购和分配等要求得到满足。运用三维算量软件可以有效提高节点工程量统计精确度。其次,在工程的计划和监控阶段,三维算量软件可通过最简单的方式完成工程计划和工程量的结算,同时在计算机中通过模拟形态显示时间工程的效果得到全面呈现,一旦发现问题就可以立即进行修改。再次,三维算量软件应用与变更管理功能。在设计过程中,三维算量软件可根据实际情况直接对原图纸进行增加或删减构件,也就是说三维算量软件可以通过每次对变更图纸的信息输入自动的删减或增加相应的工程量。最后,使用三维算量软件可以提前对施工图纸进行审核,进而提前发现问题,从而保证施工技术的质量。总之,三维算量软件可以给施工管理阶段提供很多便利条件,然而,这一系统还处于发展阶段,若将图形软件的自动化程度进一步加强和提高,那么,三维算量软件将为工程管理带来重大变革。

4结束语

软件管理论文范文6

关键词:软件项目;软件过程;CMM;KPA

一、引言

项目管理(PM,projectmanagement)是指利用现有的知识、方法和技术手段,有效地计划、调度、控制和跟踪项目的开始、执行、直止终止的过程,是项目顺利实现的有效手段。软件项目管理则是在项目管理的基础上,结合软件产品的实际,利用工程的概念和方法来开发与维护软件,对成本、风险、时间、质量、过程、配置等进行分析、管理、控制,最终目的是为了让软件项目的整个生命周期都在管理者的控制范围内,以预定成本按期、按质完成软件的开发并交付用户使用。目前,软件产品已广泛应用于各个领域,但是很多软件项目的成功率并不高.虽然有些公司根据软件工程理论建立了一些软件开发管理规范.但并没有从根本上提高软件项目管理问题,这就导致软件产品质量不稳定甚至是项目的失败,同时也损害了用户的利益。本文结合我国软件项目管理的特点并经实践应用.以提高软件质量、降低成本、加强软件项目的可控性为目标,通过对CMM的研究和改进,给出了一个基于CMM加强软件项目管理的实践模式,在这个模式中对目前CMM中的KPA做适当的裁减,定义了6个关键过程域和3个工作组。

二、软件项目管理中目前存在的问题

影响软件项目成功率的因素主要是软件质量问题,而在整个软件项目的实施过程中需求不明确、跟踪和监督不力、缺乏客观的软件评审和软件配置以及风险管理意识不足等都阻碍着软件质量的提高。

2.1需求不明确

需求管理是软件项目管理中非常关键的一个步骤.需求分析的完整与否可以降低软件质量、延长项目周期、加大成本。由于用户对计算机系统认识的不足,对于系统的需求往往比较模糊,遗漏甚至是错误的问题经常出现(包括管理流程、业务流程、数据或报表的分析处理等),但这些问题往往没有暴露给开发人员,而是随着项目的进展才逐渐明确。对于开发人员来说,需求的变更意味着软件产品的部分内容必须重新开发,而对于整个软件项目管理而言,势必要重新分配资源、调整计划、估算成本等等,导致软件产品质量下降。

2.2跟踪和监督不力

跟踪和监督主要针对过程而言,也是项目管理中最容易被忽视的环节。软件项目过程由多个任务构成,大部分任务都有前置任务和后置任务,这就要求项目管理者要严格跟踪和监督每一个任务。任务的完成主要从时间进度和质量两方面来衡量,还要充分考虑因客户方引起的一些客观因素(更改需求分析等)。项目管理者虽然制定了具体的项目进度内容,但如果缺乏有效的跟踪和监督机制,对于每一个阶段所要完成的任务疏于评价,就会影响下阶段软件产品的质量,有时甚至是软件产品的重新开发,最终影响整个软件项目。

2.3缺乏客观的软件评审

客观的软件评审是软件产品质量的直接保障,软件评审一直贯穿于整个软件项目的过程中,对软件产品的评审应有客户使用人员和软件业中的同行来进行。客户使用人员对软件产品做阶段性的评审可以及时发现软件产品功能方面的不足,同行评审可以从软件业的规范及标准去发现问题.软件评审可以降低软件开发的成本提高软件产品的质量。大多情况下项目管理者没有做任何阶段性的评审,通常只是在软件产品开发基本完成之后来组织评审,果发现了很多问题,但要修改已经非常困难.要花费很长的时间甚至从头再来。

2.4软件配置混乱

软件配置是指软件产品在各个阶段各种版本的文档、程序及数据的集合,贯穿于整个软件项目的始终。随着软件产品开发的进行,由于各种客观原因,其中的预算、设计方案、进度等内容都有可能需要大大小小的更改(这些改动可能是合理的),整个改变的过程对软件项目的参与人员来说必须是可视的,以便提高软件的可靠性和质量,而这一切都应该有正确的软件配置来控制如果失去正确的软件配置管理,那么针对软件产品发生的任何更改或者是维护都会给软件项目带来混乱甚至是失败。

2.5风险管理意识不足

风险管理是软件项目中防止失败的一种重要手段,软件项目不同的阶段存在着不同的风险,并且风险会随着项目的进展而变化,目前国内的软件企业大都不注意软件项目的风险管理。除了社会环境风险、商业风险等这些客观风险之外.可控的软件项目风险主要指技术风险。技术风险主要是指与软件项目本身相关的的技术因素变化带来的风险,如果在一定的条件下达不到技术条件能够实现的目标,不但延缓项目的进度而且会增加项目的成本.继而使整个项目受到影响。

三、通过过程管理加强软件项目管理的实践模式

利用cMMfCapabilityMaturityModeforSoftware)的核心思想把软件项目管理看作一个软件过程,并根据这一原则对整个软件项目的开发和管理进行过程监控,监督发现过程中影响项目的关键问题并予以解决。软件过程是指软件开发人员开发和维护软件及相关产品的一套行为、方法、实践及变换过程,包括软件开发过程和软件管理过程。CMM把软件开发机构按照不同开发水平划分为5个级别。每个等级被分解为几个KPA(关键过程域),KPA是指在某个成熟度等级应重点关注的区域,也是达到此成熟度等级必须解决的关键点。①初始级,无过程意义。软件过程是无序的、随机的、缺乏总计划,无预见性,大多数活动是应付危机,经常超期超支,成功取决于个人。②可重复级,具备基本的项目管理。KPA分别是:需求管理、软件项目计划、软件跟踪与监督、软件子合同管理、软件质量保证、软件配置管理;③已定义级,已定义软件过程。已将软件管理和软件工程两方面的过程文档化、标准化,并综合成该组织的标准软件过程。KPA分别是:组织过程焦点、组织过程定义、培训大纲、集成软件管理、软件产品工程、组间协调、同行评审;④可管理级,过程可度量。已收集了软件过程和产品质量的详细度量方法,软件过程和产品均可被定量地理解和控制。KPA分别是:定量过程管理、软件质量管理;⑤优化级,过程控制。通过过程的量化反馈以及新技术、新方法促使过程不断改进。KPA分别是:缺陷预防、技术更新预防、过程更改管理。

CMM只是一个过程改进的框架.并没有给出具体实施的办法。在该模式中对目前CMM中的KPA做适当裁减.定义了6个关键过程域:软件项目计划(SPP)、需求管理(RM)、软件项目跟踪和监督(SPTO)、软件质量保证(SQA)、软件配置(SCM)、同行评审(PR),设置了三个工作组:软件项目过程组(SPPG)、软件工程组(SEG)、软件质量保证组(SQAG)。通过工作组对关键过程域的操作来加强软件项目的管理。

3.1定义KPA

3.1.1软件项目计划(SPP)

软件项目计划是为要实施的软件项目编制软件过程活动的安排,包括进度控制、成本控制、质量控制、风险控制等,也是实施CMM2的核心此阶段在安排过程活动的同时开展项目设计的前期工作,设计和界定在整个项目中各阶段所需的开发、质量、跟踪、评审、风险、成本等工作。项目计划是指导项目过程的具体措施,要在有软件项目实施经验的人员领导下投人大量的时间和人力资源来完成。制定项目计划应注意7个问题。①在科学论证的基础上制定过程,充分调动人员积极性合理地确定项目组的参加人员;②对软件项目各程中的任务进行分解,明确项目的里程碑和检查点;③正确估计软件项目中的软件资源、硬件资源、人力资源及其它费用;④正确估计各方面因素带来的风险并制定应对措施;⑤制定项目实施过程中的跟踪和监督措施;⑥确定软件的评审和测试方法;⑦详细的文档资料。

3.1.2需求管理(RM)

需求分析主要包括面向用户的用户需求和面向开发人员的系统需求.是整个软件工程的第一步.也是非常关键的一个环节。需求分析主要针对用户的业务流程、系统功能、性能、数据分析进行严格的定义.是设计一个软件应用系统的起点与基本依据,通过它来评判软件产品是否能够解决用户问题,也是项目成功与否的标准。就目前国内现状来讲,一般签定软件项目合同的用户是主管信息技术的负责人,它所关心的可能是整个系统的目标需求,用户方中层管理人员关心的是业务流程需求.终端操作人员则注重软件本身的易操作性和功能特性,因此.面向用户的需求一定要和用户多方人员多沟通、交流.最终通过双方有关部门人员的论证以文档资料的形式确定下来。任何一个需求分析因客观原因可能存在着需求更改的现象,对于这种情况一定要注意需求更改的可控性.要建立需求的基准版本和更改版本控制文档资料.使受需求变化影响的产品与需求变更一致。但要注意在更改需求的同时要衡量需求的稳定性,如果一个需求的变更比较频繁,意味着本项目并没有真正了解用户想要解决的实际问题。可以说需求分析的完整性和变更可控性直接影响到软件过程的改进,它可以降低软件质量、加大软件开发的成本、甚至是导致项目的失败。软件工程组(SEG)中要明确定义一个需求管理员。

3.1.3软件项目跟踪和监督(SPTO)

软件项目的跟踪和监督始终贯穿于整个软件项目的过程中,是项目得以控制的前提和条件、是软件质量的根本保障,其目的是增加软件过程中进度、成本、工作量、质量、风险等内容的可视性,也是实施CMM2的核心。除去市场、法律等不可控制因素外,根据项目计划对项目进展的有关情况及影响项目实施的相关因素进行及时、客观、准确的信息采集,将采集到的需求、成本、进度、风险等内容形成文档并建立一个项目跟踪信息平台。项目负责人定期召集软件过程人员、开发人员、质量保证人员、用户方有关人员召开开放式的例会,例会的主要内容是检查项目进展、数据的分析、认识的偏差、资源的搭配、相关的风险等问题并讨论确切的解决办法,通过跟踪和监督使项目始终处于可视化的受控状态。

3.1.4软件质量保证(SQA)

软件质量保证是与软件产品满足规定的和隐含的需要能力有关的特征或特性的组合。对用户来讲主要体现在软件产品的有效性、一致性、完整性、可靠性和可操作性等方面,对于软件产品本身来讲体现在软件产品的可移植性、易维护性、健壮性、可重用性等方面。具体实践中.软件质量保证应在软件项目计划、需求分析、跟踪和监督、软件配置和软件评审的相互配合下完成.软件质量保证要做到以事先预防和跟踪为主,事后纠偏为辅。

3.1.5软件配置(SCM)

软件配置是针对软件产品的跟踪和控制活动.贯穿于整个软件项目的过程中.目的是建立和维护在整个生命周期内软件产品的完整性和一致性,使整个软件产品的演进过程处于可控的状态,继而提高软件的可靠性和质量。在实践应用中主要做到五个子项的配置①配置项的标识。标识做到唯一性。便于跟踪和管理。②版本管理。对整个软件过程中的文件和目录提供有效的跟踪手段。③变更控制。保持并传递修改信息。④配置审计。确定整个项目生产周期中产品在技术和管理上的完整性。⑤系统整合。把系统的不同部分集成后完成一组特定的功能。

3.1.6同行评审(PR)

同行评审是根据预定的规范和标准对软件产品进行评审。评审的结果是衡量软件产品质量的依据。在整个软件过程中对详细设计和软件综合测试作为两个关键评审点来进行评审,评审的过程中注意要结合本软件项目的具体要求和标准。

3.2组的定义

在具体的实践应用中设置了三个组,在降低了人员成本的同时提高了软件过程改进能力和软件质量。

软件项目过程组(SPPG)组织具体的项目实施活动,管理并协调整个软件项目的过程,主要完成SPP和SPTO。

软件工程组(SEG)负责软件工程的需求分析、概要设计、详细设计、编码、测试、维护工作。

软件质量保证组(SQAG)主要完成SPTO、SCM、PR、SQA等工作。

四、实践模式效率评估

4.1开发时间

软件开发由需求分析、概要设计、详细设计、编码、软件测试、项目维护和软件集成几部分内容组成,在需求分析和设计阶段采用CMM框架实施过程管理所花费的时间要多于没有实施过程管理花费的时间。首先对项目做大量分析,论证项目的可行性。然后在和用户做良好沟通、反复论证的基础上做需求分析,形成文档资料。这种模式下花费在需求分析和设计上的时间大约占项目总开发时间的40%,但这两个阶段完成了数据流程、算法描述、详细的规格说明等内容,为代码编写、软件测试、软件维护等后续内容的工作节省了时间,软件项目的开发周期大大缩短。经过评估,采用该实践模式实施软件过程管理的软件项目开发周期比没有实施软件过程管理的软件项目开发周期缩短20%。:

4.2开发质量

采用CMM标准通过软件过程管理加强软件项目管理的实践模式使软件质量明显提高、需求分析周密、代码错误率明显降低、软件产品完整性好、功能齐全、维护量下降,软件项目最终得以顺利实现。