软件开发人员管理研究结论(软件开发人员管理研究结论范文)

软件开发 1689
今天给各位分享软件开发人员管理研究结论的知识,其中也会对软件开发人员管理研究结论范文进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、软件项目工作总结报告

今天给各位分享软件开发人员管理研究结论的知识,其中也会对软件开发人员管理研究结论范文进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

软件项目工作总结报告

在目前的中国软件行业中,由于软件市场的不规范操作,大中型软件项目的开发面临着用户需求、时间、成本和人力的制约。今天我给大家找来了软件项目工作总结报告,供大家参考和阅读。

软件项目工作总结报告篇一

2010年10月9日,我怀着对提高并实现自我价值的心态,跨进西安三茗科技有限责任公司的大门,开始了自己大学里兼职实习工作。转眼间,断断续续的三个星期的实习时间就过去了。回想起这段时间的工作过程,我深深的认识到在三茗实习的选择是绝对正确的,三茗公司和同事们对我个人产生的积极影响也是超越我的料想之中的。现将这段时间的工作进行如下总结。

一.软件测试部见证三茗的强硬实力

这段实习时间完全是在软件测试部度过,亲自体验感受离了三茗科技的主要软件产品。包括数据快速恢复平台v3.0,系统快速恢复平台v1.o,闪电恢复,三合一数据宝,一键恢复,联想onekey等等。并且协助同事完成对netguard,hd-shield以及联想网络控制工具等软件的测试工作。

1.三茗的产品名不虚传。

通过对软件的实际测试,彻底从思想上改变了自己对数据备份保护的概念。三茗的硬盘动态备份技术,能够在不占用固定硬盘空间(非用户使用空间),实现数据的快速备份与恢复,堪称典范,不愧是行业的创新者和领导者。

2.友善同事关系给人温暖和关怀。

在实习期间,自己的对计算机硬件系统比较陌生,特别是对频繁的更换操作系统等,多亏蓝朝霏等多位同事的热情帮助和指导,让我顺利完成软件测试。在软件测试过程中,同事们一丝不苟的精神对我影响很是深刻。这种良好的工作环境给我振奋,给我力量,给我信心!

3.软件的瑕疵在所难免。

在软件测试过程中,也发现了部分让人不是很满意的地方。主要表现在下列方面:

a. 软件对中英文操作系统不能完全兼容。

建议:在软件安装入口处对中英文操作系统进行路径选择。

b.软件对不同主板的识别bios差异大。

具体是在hd-shield软件测试中,不同主板性能差异大。

c.软件密码在重新登录后有残存现象。

已经通过金党锋学长反馈到研发部。

d.软件的不稳定性。

本人联想昭阳e660因为测试三合一数据宝中的闪电恢复软件在重启中黑屏,在维修过程中彻底报废。

在软件测试中部分软件在不同机器环境中测试性能有差异。

还有其他问题在测试过程中已经汇报相关人员并得到满意解决。

总而言之,我们三茗科技的产品还是值得信赖的。作为销售人员,我们需要对产品树立强大的信心!即使我们产品存在瑕疵,我坚信,我们勤奋团结的同事,一定会创造出更优秀的产品。

二.产品市场简单调查分析

1.同行业产品简单调查

通过在baidu,google搜素引擎检索“数据快速恢复”,“系统快速回复”,“快速还原”等关键词,发现南京生产的“雨过天晴”软件,和本公司产品具有很强的相似性。(测试报告详见附件内容)

通过在西安赛格,百脑汇电脑城的电脑diy市场及软件销售市场简单走访,暂时未发现“雨过天晴”系列软件的经销商。

2.网络调查简单分析

作为数据快速恢复领域的创新者和领导者,本公司的核心关键词语“数据快速恢复”,“系统快速回复”,“电脑系统快速还原”等在baidu,google等知名搜索引擎没有很好的被索引。

或许是公司产品发展定位因素,在网络推广方面有再提高的空间。

对于此,本人有信心有能力,在非工作实践,提高三茗产品关键词语在上述搜索引擎的排行。

3.电脑城市场调查简单分析

前期,和赛格电脑城的三叶网络(网络及电脑外设集成批发全国连锁经营),高鸿it(品牌笔记本零售商),陕西天惠(电脑diy集成)等公司的店长简单交流对此类软件的看法。整体反映效果较好。

在11月份,在进一步熟悉公司产品和销售流程同时,将安排时间继续跟进,推荐试用三茗产品。

三.个人整体认知

准确的说,三茗是一面镜子,照出了自己的不足和缺点,为自己的成长和提高创造了机会。

1.计算机硬件知识欠缺。

自认为是it专业本科生,熟悉专业去做销售更好些。其实不然,自己还是一粒沙子。在软件测试部,学会了计算机硬件的线路连接,知道了用u盘可以ghost快速做系统等等。或许可笑,但是对我而言,很严肃的现实证实:自己还不会是一个合格的大学生。需要虚心的向同事们请教!

2.英语知识的欠缺。

自认为立志做好国内销售,带领团队创作“农村信息化”创业计划书,立志为西部农村的it发展贡献一份力量。看到了vista,win 7的英文操作系统,就基本灰心。但是我坚信,我会在短期内,在专业英语方面有所突破,因为自己还是对专业英语有浓厚兴趣的。

3.对销售的错误认识。

两年多的校园代理销售经历,误打误撞,取得了一定的成绩。尽管在实习期间,没有亲自体验到去向大客户推销产品的经历,但是通过李经理推荐的《大客户销售十八招》一书,发现自己还有很多的东西要认真的学,认真的领会,并在实际推销中灵活应用。庆幸的是,对于销售的做起码准则还是在坚守:诚实信用,对客户负责!用好的人品去赢得客户关注!面对拒绝,保持良好的心态!

4.自己还有在三茗存在的价值。

三茗和自己理想中的还有很大的差距,但是这种差距,或许就是我存在的价值!

主动向同事请教问题,积极虚心的向同事学习,这是我实习过程中一直在践行的!

下阶段,将积极贯彻李总经理的指示“加强个人管理,提高业务的能力”,从严要求自己,做好各项工作,提高个人存在贡献值。

“与三茗共创业”,是我在三茗实习的基本心态:认同公司发展愿景,服从公司安排,任劳任怨,积极负责,务实创新,把三茗的事业看成自己的事业去拼搏!

四.下阶段工作计划

在11月份,认真贯彻落实“加强个人管理,提高业务能力!”的三茗员工作风,具体落实到:

1.服从公司的工作安排,保质保量完成任务;

2.进一步熟悉公司产品(硬件产品),熟悉公司环境(认识研发部同事)

3.熟悉学习公司的销售制度和流程;

4.提高公司关键字网络检索排行,并提交一份营销计划书;

5.继续学习销售知识及应用技术,提高处理实际问题的能力;

6.申请参加公司的综合业务能力考核。

十月份,自己的收获是丰硕的:最起码从意识上,发现自己的不足,并寻求到合适的解决途径。非常感谢测试部的同事,感谢所有三茗的同事,因为你们的帮助,我顺利的走过在三茗科技的适应期。我坚信:在你们的帮助下,我会持续努力,不断反省,总结提高,快速度过在三茗的成长期,早日跨进发展期,创造期。

软件项目工作总结报告篇二

一、分享第一条经验:“学历代表过去、能力代表现在、学习力代表未来。”其实这是一个来自国外教育领域的一个研究结果。相信工作过几年、十几年的朋友对这个道理有些体会吧。但我相信这一点也很重要:“重要的道理明白太晚将抱憾终生!”所以放在每一条,让刚刚毕业的朋友们早点看到哈!-

二、一定要确定自己的发展方向,并为此目的制定可行的计划。不要说什么,“我刚毕业,还不知道将来可能做什么?”,“跟着感觉走,先做做看”。因为,这样的观点会通过你的潜意识去暗示你的行为无所事事、碌碌无为。一直做技术,将来成为专家级人物?向管理方向走,成为职业经理人?先熟悉行业和领域,将来自立门户?还是先在行业里面混混,过几年转行做点别的?这很重要,它将决定你近几年、十年内“做什么事情才是在做正确的事情!”。-

三、软件开发团队中,技术不是万能的,但没有技术是万万不能的!在技术型团队中,技术与人品同等重要,当然长相也比较重要哈,尤其在mm比较多的团队中。在软件项目团队中,技术水平是受人重视和尊重的重要砝码。无论你是做管理、系统分析、设计、编码,还是产品管理、测试、文档、实施、维护,多少你都要有技术基础。

算我孤陋寡闻,我还真没有亲眼看到过一个外行带领一个软件开发团队成功地完成过软件开发项目,哪怕就一个,也没有看到。倒是曾经看到过一个“高学历的牛人”(非技术型)带一堆人做完过一个项目,项目交付的第二天,项目组成员扔下一句“再也受不了啦!”四分五裂、各奔东西。那个项目的“成功度”大家可想而知了。-

四、详细制定自己软件开发专业知识学习计划,并注意及时修正和调整(软件开发技术变化实在太快)。请牢记:“如果一个软件开发人员在1、2年内都没有更新过自己的知识,那么,其实他已经不再属于这个行业了。”不要告诉自己没有时间。来自时间管理领域的著名的“三八原则”告诫我们:另外的那8小时如何使用将决定你的人生成败!本人自毕业以来,平均每天实际学习时间超过2小时。-

五、书籍是人类进步的阶梯,对软件开发人员尤其如此。书籍是学习知识的最有效途径,不要过多地指望在工作中能遇到“世外高人”,并不厌其烦地教你。对于花钱买书,我个人经验是:千万别买国内那帮人出的书!我买的那些家伙出的书,!00%全部后悔了,无一本例外。更气愤的是,这些书在二手市场的地摊上都很难卖掉。“拥有书籍并不表示拥有知识;拥有知识并不表示拥有技能;拥有技能并不表示拥有文化;拥有文化并不表示拥有智慧。”只有将书本变成的自己智慧,才算是真正拥有了它。-

六、不要仅局限于对某项技术的表面使用上,哪怕你只是偶尔用一、二次。“对任何事物不究就里”是任何行业的工程师所不应该具备的素质。开发windows应用程序,看看windows程序的设计、加载、执行原理,分析一下 pe文件格式,试试用sdk开发从头开发一个windows应用程序;用vc++、 delphi、java、开发应用程序,花时间去研究一下mfc、vcl、j2ee、。

它们框架设计或者源码;除了会用j2ee、 jboss、spring、hibernate等等优秀的开源产品或者框架,抽空看看大师们是如何抽象、分析、设计和实现那些类似问题的通用解决方案的。试着这样做做,你以后的工作将会少遇到一些让你不明就里、一头雾水的问题,因为,很多东西你“知其然且知其所以然”。

软件项目工作总结报告篇三

作为刚从学校出来的应届毕业生,第一份工作就落在智通,来到智通,深深地被这个企业的文化所感染,我很认同智通的企业文化,智通的企业精神“统一,专一,事业第一”体现出了这一行业优秀企业文化的特点。在这三个月的学习与亲身感受之下,我更加坚定地要使自己成为一名合格并争取优秀的智通人,我对自己有信心,对智通更有信心。

作为一名在技术岗位的职员,要具备一定的专业知识,不断地充实自己,在不断的工作学习与研究中成长,要有很好的团队协作精神,有很强的执行力,能真正为企业做实事。在智通上班的三个月里,我主要完成了以下工作项目:

一、 刚来的两个星期,由于目前网站工作的需要,师傅指导一边熟悉工作职位环境一边学习asp,用了两个星期系统地学习了这门从未接触过的asp语言,为接下来一个月的工作打了坚实的基础。

二、 接下来的时间,主要配合网站先前asp的后台管理系统进行某些功能优化与系统维护工作。先后完成了销售管理模块的最新注册企业查询、职业推荐给求职者、把求职者推荐给企业、会员职位刷新、职位刷新统计等几个模块的功能修改与优化,解决了业务员带权限控制的查询、推荐时间的控制与查询速度优化、企业职位刷新时的权限控制与企业职位时效性的控制以及完成对各销售组成员的职位数统计,职位刷新数统计的功能设计。在完成这些各种功能需求的时候,对后台管理系统进行了深入的分析研究,因此对销售管理模块非常熟悉,给目前网站新版开发的后台设计提了不少建设性的想法。之后还完成了logo管理模块中的投票项目添加优化与投票结果统计查询修正、logo、banner的管理与文本文件的生成。还完成了客服管理模块中后台开通资料查询的改进,企业管理、个人管理模块查询功能的改进。期间还完成了部分功能错误的修正,如校园招聘管理图片不能上传、文章类别不能修改、文章不能删除等。

三、 目前新版是用jsp开发的,在这三个月里,我进一步对java,jsp的深入学习,了解了mvc模式开发,在这阶段的学习期间,我以一个小商务系统的开发作为学习任务。还对当前流行的jive代码与开发思想进行了初步的学习研究。

四、 作为一名系统开发与维护工作者,当然不能忽视对数据库知识的学习,在这段时间我也进一步对sql语句进行了深入的学习,对sql语句的查询进行了分析,比较重视数据库性能分析与调整这方面的知识学习。通过这阶段的学习,把这些知识与方法运用到了对后台管理系统会员查询的速度优化功能上,在实际工作中得以实践运用。

五、 网站新版开发方面,主要还为新版做了几个数据库对照表。

六、 还参加了网站新版的第二轮测试工作,主要以后台管理系统为主做测试,还参与了前台个人管理与企业管理的流程测试,测出了不少关键性的bug。

七、 入职以来,还担任了网站部群发邮件的工作。三个月内完成了好几批邮件群发的工作,每天定时定量地给在无忧无虑网站上注册的企业或会员群发几十万封邮件。还配合客服部群发了两批特殊活动的邮件,配合网站营销活动群发了两批群件,每天坚持固定给注册会员群发。

在网站技术部工作的三个月里,自己感受非常多。首先,作为刚从学校出来的毕业生,在实际开发中的经验尚不够成熟,还需要在工作中不断的提升自己。其次,要进一步提高自己的开发技能,使自己的技能满足今后的需求,主动获取并学习当今最新技术信息,平衡自己的知识结构,在不断的学习中提高自己。然后,要加强与同事们的沟通,融入团队,互相学习、相互提高,在团队中不断完善自己。

我相信,通过我的努力,一定能成为智通的优秀员工,一定会在优秀成绩之上提升自己。同时我希望公司能根据情况给我培训深造的机会,也希望部门内能有经常性的专业技术学习。

软件开发企业质量管理

软件开发企业质量管理

摘 要:为了提升信息产业的竞争力,我国软件企业应参照标准化质量体系认证ISO9000系列标准进行规范化管理并与国际接轨,以提高软件开发企业的质量管理水平。

通过对软件开发过程及软件质量实质的分析,提出加强软件企业质量管理的方法与途径。

关键词:软件工程;软件质量;质量管理

作者简介:金铁(1969-),男,军事经济学院襄阳士官学校计算机教研室副教授,研究方向为计算机与多媒体教学;唐晓军(1971-),女,航天42所化学源部工程师,研究方向为企业管理;张勇(1982-),男,军事经济学院襄阳士官学校计算机教研室讲师,研究方向为网络通信。

0 引言

随着软件业的高速发展,在软件开发史上出现了“软件危机”,由于对于软件开发中的成本控制、软件进度、软件的可维护性等问题缺乏有效的管理手段,导致软件质量无法得到保证。

因此,应与国际标准化质量体系认证体系ISO9000系列标准接轨,加强软件企业对项目开发的质量管理,全面提升软件企业的开发质量。

1 软件工程视角下的软件开发质量

1.1 软件开发方法与开发质量

软件的开发一般是由开发模式决定的,不同的开发模式决定了开发方法的不同,并最终影响到产品质量的高低。

软件质量管理所关心的问题正是规模化开发过程中对可重复性、可复用性、可维护代码的可靠性和健壮性要求,最终的目标是适用于专业领域的应用需要,发挥软件应用功能提升专业领域的生产及工作效率。

在开发的各个环节实现以下目标,各个阶段易于实现而不是使用高深的技术,各阶段平滑过渡而不是另起炉灶,整个系统结构易于理解也便于维护,已实现的成熟开发过程能够重用,根据现实生活中的实体形成系统模型,整合多个开发团队协同工作。

目前,面向对象的技术是反映现实世界为主导的建模技术,它可以最大限度地模仿现实世界,并可以最大程度地重用现有的软件产品。

1.2 代码重用与开发质量

面向对象的技术核心就是重用,开发者要在各个环节贯彻这种思想。

重用是解决软件工程中诸多问题的一个重要手段,代码重用的好处很多,表现在提高代码开发生产力的作用是十分明显的,而且在提高软件开发质量方面的作用更是表现得十分深远。

开发人员往往比较熟悉“自己的”代码,自己编写的更为熟悉,也感觉更可靠,但是软件的工业化生产是不允许每次开发都要从空白状态为起点,要能够运用过去开发成果、运用相关企业的开发成果,这都需要开发团队从代码重用中找到解决方案,以代码重用为基础,合理规划人员组织分工、收益分配、责权利等管理环节,才能使开发过程中的质量管理渗透到软件企业的血液之中。

2 软件质量模型与改进方法

现代质量管理理论的思想应用于软件的开发质量管理,目前国际上流行的ISO9000系列标准和CMM模型已受到软件企业的重视,它可以有效地指导软件企业建立适合自身发展的质量管理体系。

在此基础上基于我国中小型软件企业的质量管理需求,在软件开发行业中,产生了基于过程改进的软件质量管理模型,具有较强的现实意义。

2.1 基于过程改进的软件质量模型

企业在软件开发中需要关注顾客满意、目标管理、过程管理等问题,如何形成一种机制,使企业迅速建立起自己的质量管理体系,并且在生产实践中逐步完善和升级。

软件开发的过程模型很多,有瀑布开发模型、原型法模型、螺旋模型、迭代式过程模型等。

它们对软件生命周期的划分都有所不同,但是为了便于实际工作中的应用,质量控制模型还是依据软件开发中的“策划、控制、改进”三个环节来分,用这三个过程对软件开发质量管理过程进行划分,也分为软件质量策划、软件质量控制和软件质量改进三个阶段,对每个阶段分别进行过程改进,提升质量管理水平,使软件企业和相关人员能够在软件开发过程中便于实施,保证企业能够达到质量管理的目标。

2.2 基于过程改进的软件质量管理

基于过程改进的质量管理主要包括软件过程成熟度、合理的软件质量目标确立、软件测试与维护能力的提高等。

对于多数软件企业来说,由于软件人才不足,许多必须的过程改进无法实施,开发人员处于绝对的'主导地位。

人们在软件生产全过程中,不愿提出过多的质量要求,结果使开发质量无法保证,多数情况下,在开发初始阶段,这些质量要求是被完全忽视的。

软件过程成熟度是衡量软件企业质量水平和开发能力的重要指标,对于软件企业的核心竞争力来说,不是掌握了多少先进的技术,而是多少技术能够用于成功的开发,也就是常说的不在于会而在于精,精通成熟技术的能力才具有商业价值,也才能够实现用户的质量要求。

为此,需要围绕这个中心进行软件企业的能力建设,也要时刻清楚企业自身的能力水平,在开发中合理确立质量目标,与用户充分沟通,防止好大喜功及盲目夸大自身能力,使企业陷入软件危机。

软件测试与维护在软件生命周期中是一项重要工作,对于一个中小型软件企业来说,缺乏强有力的机构和人员来完成这项工作,使一些很容易解决的问题难以及时发现和解决,最终严重影响了软件的质量,教训是十分深刻的。

3 软件企业加强质量管理的途径

3.1 质量管理的关键

质量的提高如果没有人的参与是不可能实现的,人们在软件开发质量管理中的任务就是消除软件的缺陷,达到用户满意目标。

软件的缺陷主要有两种:技术方面和管理方面。

技术方面的软件缺陷,需要从技术方面去解决,主要手段是让软件开发人员学习和创新,从技术上探索和总结,找到解决此类问题的方法。

要经常召开技术方面的会议,通过对产品中的各种错误和缺陷进行研究,就可以最终找到解决的办法,并通过技术培训等形式进行推广,解决此类技术问题。

而管理方面的缺陷,需要从管理方面去解决,由于企业管理水平低下,在软件开发中会产生责任与职能上交叠或空缺的领域,当软件开发出现质量问题时,大家都知道问题所在,但谁都不愿管,谁都不负责。

软件开发是一个充满挑战的工作,很难一开始就把需求和解决方案完全描述清楚,随着开发工作的不断深入,那些视而不见的“小问题”会变成阻碍产品质量的大问题。

因此,需要加强各类人员的交流,要充分发挥开发人员的主观能动性和质量意识,才能不断突破管理缺陷带来的质量问题。

3.2 质量管理的完善

质量的提高更需要一套强有力的管理机构,实施一套有效的管理程序来不断地消灭产品的质量缺陷,质量的提高必然需要人的参与,更需要有效组织下的人的参与。

质量管理要在质量管理部门的有效组织下有序进行,质量部门主导的质量工作应渗透到企业各个部门的开发工作之中,质量管理不是产品生产完成后的检验工作,也不是最后判断合理与否的橡皮图章,而是渗透到每个员工血液中的、融入每个开发环节中无形的而又真正存在的东西,不应仅仅地把它看成是一个思想认识问题,而应该由质量管理部门拿出行之有效的具体办法、现实可行的考评指标,以及最终产品检验标准,才能实现质量管理的目标。

3.3 质量认证的实施

质量认证是一种对企业质量管理水平的评估,ISO9000系列标准化质量体系认证是一种外部认证,通过了认证,就可以获得国际上的质量认可,是产品质量达到形式上的也是本质上的目标。

但外部认证往往是被动的,具有一定的功利色彩,在认证过程中也会产生一定偏差,有的会因为获得认证而放松管理,有的会为了实现认证指标而加强管理,而忽视软件产品质量的本质内容,这都违背了质量认证目标。

实际上,企业内部质量活动也是一种认证,它是一种主动的认证行为,企业要走“向质量要生存、向质量要效益”的发展之路,就要认真做好企业内部认证,实事求是地解决内部的质量问题。

参考文献:

[1]许育诚.软件测试与质量管理[M].北京:电子工业出版社,2004.

[2]李志伟.军用软件开发工程化质量管理研究[J].制造业自动化,2011(5).

软件开发管理如何风险管理

风险管理的达成必须包括三个要素:

首先,在项目开发计划中必须制定风险管理计划;

第二,在项目预算中必须包含解决风险所需的经费;

第三,评估风险时,风险的影响也必须纳入项目计划中。

下面就软件开发过程中经常发生的风险,谈谈我们采取的预防措施。

1、需求不明确

需求不明确是软件开发过程中经常可能遇到的问题,这类问题往往表现在需求范围未界定、需求未细化、需求描述不清楚、需求遗漏、需求互相矛盾等多个方面。在软件开发过程的生命周期各阶段中,需求不明确所造成的浪费是最大的,必须尽早尽可能解决。确定用户需求是件非常困难的事情,我们常常从以下几个方面着手处理需求不明确问题:

(1) 让用户参与开发

提供一个协作开发环境,让用户参与开发过程。如果条件不允许,至少应该在每次迭代的需求分析和系统测试阶段,让客户能够参与开发。

在选择参与开发过程的用户时,一方面,要尽可能争取精通业务或计算机技术的用户参与。另一方面,如果开发的产品要在不同规模、不同类型的企业应用,应该选择具有代表性的用户参与。

仅仅让用户参与是不够的,应该采取一定的激励措施,提高用户参与的积极性。

(2) 开发用户界面原型

用户通常不善于精确描述自己的业务需求,系统分析员需要借助白板、白纸等沟通方式,帮助用户清楚表述需求。然后,开发一个用户界面原型,以便用户确认需求。用户界面原型的作用仅仅是收集用户需求,不应该再作它用,也不要给用户造成系统快要实现的错觉。

(3) 需求讨论会议

对于用户分布广、用户量大的项目,要全面收集用户需求,往往很困难,通常采取需求研计会议方式进行需求确认。通过在会议前几周调查各地、各部门用户需求意见,然后集中各地或各部门的用户代表,举办一次需求研讨会,通过会议方式收集需求。本方法适合于具有一定信息系统使用经验的用户。

(4) 强化需求分析与评审

首先,需求分析是项目成功的基础,需要引起足够的重视,并分配充足的时间和人力,要让有经验的系统分析员负责,切忌让项目新手或程序员负责。其次,要进行需求评审,尽可能让用户参与需求评审,不要让需求评审流于行式。第三,也是最重要的一点,通过评审的需求规格说明书,要让用户方签字,并作为项目合同的附件,对双方都具有约束力。在公司内部要将通过评审的需求规格说明书,纳入配置管理。

2、项目缺少可见性

当一个项目经理或一名开发者说已经完成了80%的任务,您必须保持审慎的态度。因为剩下的20%可能还需要80%的时间,甚至永远都不能完成[1]。软件开发项目,往往在项目进度和软件质量方面缺少可见性,项目越缺少可见性,项目就越难以控制,项目就越有可能失败。我们可以通过迭代开发、技术评审、持续集成来增强项目的可见性。

(1) 迭代开发

采用迭代的开发模型,将产品的交付过程分为多个阶段,按照功能递增式交付。以下是一些典型的迭代:

一次简短的先期迭代,以建立规模和前景并确定商业理由;

一次精化迭代,其间将为稳定的构架划定基线;

一次构建迭代,其间将实现用例并充实构架;

几次产品化迭代,将产品转移到用户群。

每次迭代,都要充分接收用户的评审意见,以便为自我纠正。渐近式的功能交付,有利于降低开发人员的压力,增加用户的满意度,有利于增强项目的可见性,是最好的进展报告。

(2) 技术评审

技术评审是确保软件质量的重要环节,技术评审包括代码走查、会议评审和同行专家评审。代码走审可以是开发人员之间的交叉审查,或者是高级开发人员对普通开发人员的审查;会议评审一般应至少每两周进行一次,每次评审时间不宜太长;同行专家评审包括技术和业务两个方面的专家,经常性地让精通业务的用户专家参与项目评审,是项目成功的重要保证。

另外,充分利用质量审查的工具软件,也有利于提高代码质量。例如:在Eclipse开发环境中,可以集成Findbug、Checkstyle、PMD插件检查代码编写质量。

(3) 持续集成

持续集成能够把最终的一次大规模的集成调试过程分散到项目开发时间表的每一周、每一天、甚至每个小时。让项目中的各个人员都能够随时掌握当前的整体进度,并迅速发现集成过程中出现的问题并进行解决[1]。

开发小组应制定持续集成的制度,一般情况下每日构建一次,可以利用Ant等构建工具进行Java应用程序的构建。小组成员应在每个功能开发完成后,及时向版本控制系统(如CVS)提交代码,而且不应该向版本控制系统提交有问题(编译通不过)的代码。

每日构建、持续集成,让项目进度跟踪工作更加容易。当项目小组每天重新编译系统时,已完成与未完成的功能清楚可见,小组成员能够简单地从软件的表现知道距离整体完成还有多远。

3、新技术引入

技术创新是一种具有探索性、创造性的技术经济活动。在开发过程中引入新技术,不可避免地要遇到各种风险。通过T形软件开发、充分论证、多阶段评审、同行经验等措施可降低新技术风险。

(1) T形软件开发

在项目开发早期,开发小组应该建立系统的架构,解决关键技术难题、开发系统的基础构件,并对系统所需要应用的技术做深度探索。例如:基于JavaEE5构建全国联网售票系统,涉及到分布式事务处理、海量数据存储、异构平台互连等关键问题,应该优先处理这些问题;对开发所涉及到的EJB3、JSF、 JBoss Seam、Eclipse RCP等技术,要做深度探索。

越是技术复杂度高的项目,就越应该早地处理技术难题。如果在项目开发的中期或后期才发现架构有问题或是关键技术难题不能解决,则为时已晚。

(2) 充分论证

新技术开发是探索性很强的工作,潜在着许多失败的风险。在可行性分析阶段,要广泛搜集相关信息,设计多种可行方案,进行充分论证。在制定决策时,情报的数量和质量致关重要。掌握的信息越多、越准确,才能作出正确的的决策,项目失败的风险也就相对减少;反之,承担的风险就会增大。

(3) 同行经验

针对新技术,由于没有经验可借鉴,因此在探索过程中要充分利用互联网,通过搜索同行经验,往往事半功倍。要充分利用世界日益平坦化的优势,对于不能尽快解决的问题,可以先放一放,可能过不了几天,网上就有相类似问题的解决方案了。

4、技术兼容性风险

硬件产品之间、系统软件(操作系统、中间件、数据库管理系统)与主机设备之间、系统软件之间、应用软件与系统软件之间以及应用软件之间,都可能存在兼容性问题。往往系统集成的项目越复杂,兼容性问题就越有可能存在。

(1) 设计先行

在做系统的总体设计方案时,务必把好相关产品的选型关,确保网络、主机、系统软件与应用软件之间不要存在较大的技术兼容性问题。在网络平台建设方案中,明确相关设备的技术参数和配置要求。

(2) 售前产品测试

在做项目招投标工作时,要求投标方在售前提供产品兼容性测试,以避免在项目实施过程中才暴露技术兼容性问题。涉及应用软件开发的集成项目,要在开发工作的早期,做技术兼容性测试,以避免在项目开发后期才暴露技术兼容性问题。

例如,我们在开发深圳市汽车客运站售票及站务联网调度系统时,为了确保技术兼容,在做硬件招标时要求小型机设备厂商提供售前技术兼容性测试工作,并将测试结果做为评标指标。在深圳市软件测试中心对IBM、SUN、HP三家公司提供的小型机进行测试时,暴露了许多应用软件、应用服务器、数据库和操作系统之间的技术兼容性问题,如果这些问题在系统实施时才暴露或处理,势必会拖延项目进度。

5、性能问题

由于先期设计不足,性能问题往往在系统切换或新系统使用一段时间后暴露。出现性能问题往往要进行大量的优化工作,甚至局部的或全面的重新设计。无论是用户还是开发者,谁都不希望出现性能问题。

(1) 性能规划

在系统设计时,应做好前期做性能规划,对可能出现性能问题的环节做到充足的估计。在做数据库设计时,应争取DBA参与。

另外,在技术方法方面,尽可能采取一些性能优化模式,如DTO、AJAX、延迟加载等,尽可能在开发过程中解决了性能问题。不至于到了项目后期才解决性能问题,既费钱又费时。

(2) 性能测试

在开发过程中,要重视性能测试和压力测试,尽可能模拟现实使用环境,搭建测试平台。另外,由于开发环境的计算机往往比生产环境的计算机配置高,在做测试时应尽量找一些配置低的机器、较小的网络带宽进行测试。

(3) 充足的调试时间

在项目开发计划中,为后期性能优化留有余地。在对系统进行性能优化后,要进行性能测试和压力测试,可能还要做几次回归测试。因此,应该留有充足的时间和人力。

6、仓促上线

在项目实施过程中,系统切换上线环节最容易出纰漏。项目好不容易开发完成了,却在最后最后时刻功溃一匮。如果项目小,影响面窄倒不怎么重要;如果是影响面大的项目,则千万不可出现问题。在系统切换前,应充分考虑各种可能出现的问题,做好风险对策。

(1) 应急预案

面对各种不可预知的风险,要做好应急预案。正常运行的车站售票系统在春运、旅游黄金周,都会做好应急预案。新系统切换时,更应该做好应急预案。应急预案中应做好最坏的打算,售票系统不能正常工作时,准备手工票就是最坏的打算。

(2) 分步切换

为了减少风险的影响,可以做系统分步切换的方案。例如:售票系统在切换时,往往用新系统售预售票,或者是用新系统售长途车站,用旧系统暂时售短程票。待新系统运行稳定后,再全面切换到新系统。针对多个用户单位的系统切换,也可分单位进行。

(3) 交叉培训

新旧系统切换过程中,用户都存在适应过程。除了在切换前做好操作培训外,还要在新旧系统切换过程中做好交叉培训。让用户提前一些时间上班,让早班的用户在交班时培训中班的用户,中班的用户培训晚班的用户。做好交叉培训能够让系统平衡过渡。

7、可用性问题

软件的可用性包括软件的使用是不是高效、是否容易学习、是否容易记忆、是否令人愉快、是否不易出错等诸多因素。往往由于软件的可用性差,导致用户不满意,甚至被市场淘汰。在项目开发中应注意可用性问题,避免软件出现可用性方面的风险。

(1) 了解用户

到用户工作现场,了解目标用户使用软件的真实目的,从用户的角度、从用户的立场出发,了解如何通过软件系统替代用户的业务处理流程中,最繁琐、最容易出问题、或者是大量重复劳动的环节,让软件提高用户的工作效能和效率。例如:售票系统中,使用频度最高的界面是售票界面,售票员最关心的是钱不要出错(多了没收、少了要赔),因此,应收款和找余字体的显示应该突出、醒目;同样,票价和到达站也应该较为突出显示。通过快捷键、一键复位、数字小键盘等设计,尽量减少售票员敲击键盘的次数。否则,在日发旅客流量达七、八万人次的大型客运站,如果用户界面设计得不好,售票员一天工作下来,手指都会敲麻木。

(2) 参与型设计

与用户协作,让用户参与用户界面的设计、评审与测试,确保用户能够全面地、及早地发现可用性等方面的问题,并及时纠正。

让客户参与设计,而不要让客户设计,项目经理或高级设计人员应该主导设计。

(3) 竞争性分析

通过对市场上同类竞争性产品进行分析,或者对这些产品进行实验性测试,了解这些产品的用户界面问题,从而对新系统的开发提供启发。竞争性分析并不意味着可以剽窃别人的设计,而是通过分析竞争产品的优势和弱点,能够比以前的设计做得更好[5]。

(4) 一致性

如果用户知道同样的命令或同样的操作总会产生同样的效果,那么他们在使用系统时就会更加自信,同时也鼓励他们进行探索性学习,因为他们已经具备了使用系统新部分的基础知识[Lewis er al。1989]。

开发团队应遵循公司或小组制定的用户界面标准,就可以在很多方面保持一致性,切忌不要一个系统存在多种不同的界面风格。

郑州观致电子商务,拥有有效资源, 多起成功案例, 专业制作水平, 提供微期货平台搭建、分销系统开发、捕鱼游戏开发、第三方支付软件开发、商城网站建设、电商网站建设、网站定制开发、手机app软件开发、微信小程序开发、电商系统开发、办公系统软件开发一系列服务。精英团队为您以后保驾护航!

8、结论

在信息系统集成项目中,风险是多种多样的,是无处不在的。在项目管理活动中,要积极面对风险,要培养。越早识别风险、越早管理风险,就越有可能规避风险,或者在风险发生时能够降低风险带来的影响。特别是在项目参与方多、涉及面广、影响面大、技术含量高的复杂项目,应加强风险管理。如果不主动驾驭风险,就会面临风险。

我想做个产品的可行性报告,怎么写?应该写些什么?谢谢指导

小例子,仅供参考

小城镇家电售后查询可行性研究报告

1引言

现如今随着经济的不断发展,旅游出国等带来的酒店市场营业量大大增加。这样就存在客房管理和登记入住等一系列数据的导入和导出,大多数经销商只是用简单的Office Excel记录,这样在查询和记录方面都很不方便。如果设计一款专门为酒店管理人员和酒店员工查询本酒店信息,以及各种预订、入住、核账、结算、退房等的专业软件,将会大大减少销售商的工作并提高酒店营业额。

1.1编写目的

1.1.1 目的

该可行性研究报告是针对小城镇家电销售后查询管理系统作的可行性研究分析及指出存在的必要性。

1.1.2预期读者

软件管理人员,开发人员,维护人员。

1.2背景

1.2.1 工程的名称:酒店管理系统

1.2.2 工程产品的名称:酒店管理系统

1.2.3工程组织者:酒店管理系统开发小组

产品用户:酒店各个部门管理人员

产品设计者:酒店管理系统开发小组

产品生产者:酒店管理系统开发小组

1.2.4 产品所有权:酒店管理系统开发小组拥有

1.3参考资料

《软件工程》 ——邓良松 刘海岩 陆丽娜 编著

西安电子科技大学出版社

《Visual FoxPro数据库与程序设计》 ——刘淳 主编

中国水利水电出版社

2问题定义

2.1工程概述

2.1.1 开展工程的原因

由于现在酒店营业和酒店入住非常频繁,销售商也很多,为了在众商家中脱颖而出,而如只使用一般的表记录,查询,更改等都很不方便。为了让各销售商在销售时更方便快捷的查询,管理,决定开发查询管理系统软件。

2.1.2 该工程的基本目标

开发此软件,是为了让销售商在向用户介绍时,以利用本软件介绍用户的同乡以及认识的别的用户购买的产品的型号,款式,产品照片,购机日期,购机价格等,或者向用户推荐某种品牌或型号产品在本店过去N天或N个月的销售情况,或者售后多长时间的损坏率和维修情况。

2.2经济目标

通过使用本软件提高销售额,以及使购买家电用户购买放心产品。

2.3 社会目标

由于本软件在技术方面的完善性,促进性一旦推向社会将受到小城镇家电部门的关注及支持。

2.4 工程规模

2.4.1 该工程所需人力资源数为3人

程序员:金君 吴丹芬 沈雯洁

2.4.2该工程所需时间

预计时间一个月,实际时间14天

3可行性研究的方法及评价度

3.1可行性研究所采用的方法和步骤

通过调查分析开发小城镇家电售后查询管理系统所具备的能力及实现的方法。确定总体结构,利用编程及数据库所具有的能力,以最简洁最容易的方法,使其成为一个初级的查询管理系统软件。

3.2评价尺度

此软件由于只是一个初级产品,只要能构建一个结构,达到一定查询、浏览、 更新等基本功能和要求即可。

此软件由于只是一个初级产品,只要能构建一个结构,达到一定查询、浏览、 更新等基本功能和要求即可。

4 对现有产品的分析

4.1 相关关系

小城镇家电售后查询管理系统是利用数据库管理技术,建立在windowsXP操作系统中的web服务上的。

4.1.1 子集说明

在windowsXP系统的小城镇家电售后查询管理系统是小城镇家电售后管理系统的web查询子系统,最终的产品是帮助经销商查询售后情况以介绍给家电用户来提高销售额。

4.2 产品功能

帮助经销商查询售后情况以介绍给家电用户来提高销售额。

4.3 产品逻辑模块图

4.4 局限性

经销商需要掌握一些相关操作,对操作手册有点了解。

不能无限制的保存家电用户消费记录,当所购产品超过保修期或产品价格有大的变动时记录需删除。

5工作产品

5.1 设计目标

本软件的设计目标就是为了提高销售额,为用户带来方便。

5.2 设计及约束条件

1.软件系统的界面要美观,布局要合理,窗口的内容尽量简单明了的提供信息,语言要通俗易懂,有层次感,分类清晰明了。

2.根据现有条件和知识我们必须在技术方面,进行学习和提高。

5.3产品工作原理

1.先建立数据库,并需要导入售后信息数据。

2.使用时经销商根据用户所在村或组查询所有记录,以此推荐一些可行的品牌,型号。

3.将查到的项目显示到显示器上。

5.4产品系统流程图

5.5 数据流程图

5.6 产品的功能

1. 销售部可以通过查询对以销售产品进行查询并介绍给用户;

2. 管理用户可以对该系统的数据进行维护。

5.7 影响

5.7.1 对设备的影响

建议使用奔腾PⅣ2.0以上的高档PC机或服务器一台(有网络连接),内存需在256兆以上触摸屏查询机一台(可选)。

5.7.2对产品后继开发的影响

1.随着计算机的发展和实际的需要,所有的开发人员要随时发现此系统运行过程中出现的问题和不足,及时更新。

2.与此同时也要准备好人力和设备资源以备紧急事件的更新。

3.申请专利,使用法律的手段对本产品进行产权保护。

5.8局限性

目前本软件只适用与小的城镇的家电经销部,也就是只适用于农村市场,这是由于城市中人际关系比较陌生;且城市中比较注重隐私权,不愿意让别人知道自己的经济情况。所以本软件只适合农村的小型家电市场。还有本软件是我们的初次版本,如果要提高该软件版本,本软件需要大量的修改和更新。

5.9技术方面的可行性

系统现阶段的发展过程中,利用现有人力和物力是完全具备开发能力的,作为阶段性产品,中国有80%农村人口,该软件日后发展空间大,实现方法简单容易,所以小城镇家电售后查询管理系统在技术上是完全可行的。

6投资及收益分析

6.1 市场分析

小城镇家售后查询管理系统主要解决销售过程中的很多阻碍因素,减轻销售人员的工作量,并提高销售额。由于现在大多数软件开发公司都只开发大型的软件或只开发适合大企业的软件,而像这种只适合小型家电市场的软件很少有人开发。所以,我们生产出来的软件预计销售量应该不错,并占有一定的市场分额。

6.1.2 工程产品所追求的市场

本系统所占有的是小城镇家电销售部门,简单,易学,易用,能够减轻销售人员的工作量,提高销售额。

6.1.3市场现状

目前小城镇家电经销部门还没有完善的好的售后查询管理系统,只有简单的Office Exice表格记录,查询很不方便。我们的软件解决了很多问题,我们将将其推广向全国农村市场。

6.1.4 该产品的销售对购买方有影响

对于小城镇家电售后查询管理系统的管理用户——销售部门,可满足对销售部门的记录和查询需求,软件便可推广。

6.2投资估计

按照本软件开发方案,本系统软件投资方向,体现于软件开发,软件生产及软件测试。

6.2.1估算方案

本系统完全按开发计划进行估算,办公用品的消耗,办公设备的消耗,开发人员生活与维护(包括水、电、房、工作餐)等。

6.2.2具体项目总体估计

本系统大约总体耗费为4500元。(不含计算机等硬件)

6.2.3收益估计

本系统可使小城镇家电销售部门销售额增加,估计月收益为2000元

7社会因素方面的可行性

7.1技术

本系统为自主开发,由于系统较简单,所以具有开发研究条件。

7.2使用方面的可行性

预计小城镇家电销售部门销售人员对该产品的应用是可行的,有效的。

8 产品可检测性

8.1 检测标准

软件标准:软件规模、复杂程度、安全性、可操作性、可观察性、可控制性、冗余的大小。

8.2 检测的方法

通过软件测试:

黑盒测试:主要在软件界面上进行的测试,利用输入的时间和其他参数组合进行测试。

白盒测试:在重要逻辑路径进行测试,检测重要数据结构的有效性。

9生产的可生产性

9.1 生产标准

9.1.1 质量标准

正确性:程序是否按程序流程图及数据字典完成程度。

可靠性:安全运行时间越长越好。

可用性:是否能够解决实际的存在问题。

完整性:对未授权的人员访问此系统软件可控性强。

灵活性:修改一个程序的工作量。

9.1.2 生产工艺

一张软盘是可满足装载的。

10 可行性综合分析

10.1技术方面

本软件产品开发周期为一个月(实际为24天)在技术方面采用ASP编程与数据库结合方法来实现。要求所有数据信息的储存都由数据库来完成,而这些数据信息的调用必须有ASP编程设计完成。

10.2竞争者分析

目前市场上还没有面向小城镇家电市场的专用销售查询系统软件,所以本软件的开发很具潜力。

10.3可行性结论

综上所述,本软件的技术完善,测试手段可靠,有很高的利用价值,且由于市场上暂时没有这种软件,所以具有很高的可行性,因此本软件开发可立即开始。

2006年3月15日

浅谈软件开发中的人,过程与技术

无意间看到一篇 茹炳晟老师写的文章,受益很深。本文转载自:茹炳晟聊软件研发公众号。

核心观点

人是软件开发的执行者。过程是软件开发的体制。技术是软件开发的精髓。三者缺一不可,却是以人这个根本原动力为核心的。

在业界,一种普遍的看法是:人、过程和技术构成了软件开发的“铁三角”。然而,三者孰重孰轻,历来多有分歧。本文拟以此为论题,从科学技术哲学的角度谈一下我的看法。

三者中,过程与技术蕴意颇深,容后再述。我们先看看人:

人:软件开发的执行者

对于人在软件开发中的作用,我的第一印象是:人是软件开发的执行者。这一印象虽不为众多“人本位者”所乐见,在我看来却是中肯的。

“执行者”这个称谓,看似贬低了人的作用,实则不然。须知,执行者不仅包括被认为是业内蓝领的程序员和测试人员,还应该包括荣为白领的项目经理、系统分析师、系统架构师、系统设计师等等。君不见大大小小的各类公司站在前台的一号人物,名何?CEO是也。CEO即首席执行官,或称执行总裁。虽则首席,虽则总裁,也只是一个执行者而已。在公司中,大到CEO,小到普通职员,都是所谓的“劳方”,都是公司意志的执行者。(公司意志即是资本的意志,其间种种,不在本文论题之内,略过不言。)

同样的,当讨论领域是软件开发时,上述所有的开发人员都只是软件开发的执行者,执行的是软件项目的意志。何谓软件项目的意志?很简单的两个字——需求。这是有大背景的。目下的经济为市场经济,市场经济的特点就是以需求为中心。需求是生产之母,这是市场的铁律,也是市场化的软件开发的铁律。所以,软件项目的意志只能是需求,在此意志下的所有技术活动(即软件开发)只能是执行这一意志,那么软件开发人员就都是执行者了。

当然也有人会提出:“你太片面了,除了软件开发者,还有一类人——提出需求的利益关系人,不也是人吗?所以人不仅仅是执行者,更是主宰者!”遇到这个问题,我们首先要明确现在所论述的领域,是软件开发,而不是软件项目,两者有联系,但是也有区别。就软件开发而言,一切都是从需求开始的,至于提出需求的人,只是被看作需求的来源,是需求分析师们交流的对象,而非开发的一部分。换句话说,如果给软件开发划一条边界,需求提出人在边界之外,只有软件开发人员才在边界之内,也只有他们才是软件开发中的人!

作为执行者,人的作用是巨大的。所有的开发,没有了人都是空谈。人的素质如何、人的状态如何,人与人的关系如何,都直接决定了软件开发的成败。这样的例子比比皆是,就不一一道来了。这里就拿军队作为比喻。如果将软件开发比做打仗,那么开发者们就是军队中的军官和士兵,哪怕军纪再严明、武器再先进,只要军官差劲,士兵孱弱,那么这支军队就注定失败了。反之,游击队也能打败正规军,小米加步枪也能打败飞机大炮,人的作用可见一斑。

当然,人再重要,也只是“铁三角”的一个顶点。在软件开发中,过程同样不能忽视,这是因为:

过程:软件开发的体制

过程是软件开发的体制。此言一出,必遭不满。唯过程论者一定会跳出来痛批我的偏见。然而我仍不知悔改,自以为这种说法是最贴切的。

不满大多是冲着“体制”这两个字来的。在当今的中国大地上,“体制”这两个字带着浓厚的贬义色彩。政府部门腐败丛生,答曰:“这是体制问题”;造导弹的不及卖茶叶蛋的,答曰:“这是体制问题”;中超造反,世界杯淘汰,依旧答曰:“这是体制问题”。不管大事小事,难事易事,出了问题只要推给体制就万事大吉了。反正千错万错都是体制的错,因此你没错我也没错。体制不能改也改不了(真要改了谁做替罪羊啊?),所以错误的体制永远存在,属不可抗力,非人力所能及。

这里不讨论中国的国情,只是借此理解“体制”两字的分量。其实,说得通俗些,体制就是固化下来的行事规则与经验。因为曾经取得过成功,并且也吸取了一定的教训以规避失败,因此在相同的情况下,体制会带来更大的成功概率,并形成权威,使后来者减少扯皮,提高效率。

所以,体制不仅不是贬义词,相反蕴涵了大大的褒义(只是被用滥了,变成了大反派。)。现在看看软件开发中的过程,与体制的含义正是完全吻合。因此,合适的过程,指导人们正确地完成各种开发活动,一步步迈向成功的彼岸;而不合适的过程,则把软件开发推入无底深渊。

把过程看成软件开发的体制,不仅仅是因为两者在现象上是一致的,更重要的是在我们对待它的态度上也要有所借鉴。现在有不少开发人员,在遇到开发中的问题时,往往就会把责任推到过程上,然后感叹一句:“有CMM(一种软件过程改进的评价标准,其对应的方法论是RUP)就好了。”接着项目经理不厌其烦,桌子一拍,大叫:“要有CMM!”于是,便有了CMM。如此折腾一年后,终于通过了CMM认证,依旧遇到开发问题,开发人员仍有的说:“要填这么多表格,太费时间了;我们不该使用RUP,改XP(一种强调迅速应变的软件开发方法论,美其名曰极限编程)就好了。”然后项目经理晕头转向,闭目养神,道:“那就改XP吧。”于是,便改了XP。谁知还是出问题。这时开发人员倒不抱怨了,因为项目已经宣告失败,项目经理也被撤职了。这个不是笑话,而是笔者亲眼所见的。

由此可见,过程不能被神话,更不能被乱用。世界上不存在放之四海而皆准的过程,而只有因地制宜、因人制宜地选择合适的过程,并在执行过程中不断地改进该过程,才有可能取得成功;相反,则只能失败,不做他想。

体制二字,真实地体现了过程在软件开发中的地位。然而,光有人与过程还是不够的,最后一个关键的因素是:

技术:软件开发的精髓

要说明技术在软件开发中的作用,就得先说说为什么要有软件开发。软件开发,顾名思义,就是要开发软件。那软件是什么?可执行的程序?可带来利润的产品?都对,但都不够全面。从根本上而言,软件,是技术的载体,是被定制的技术,是技术针对某项特定需求的应用。

软件中沉淀着技术,这是显然的,否则别人为什么要买你的软件呢?当然软件中不仅仅沉淀着技术,还包括开发的人力成本、机械成本、时间成本等。但是技术是其中的精髓,也是此软件不同于彼软件的根本所在。

软件的竞争力,不在于它的规模,不在于它花费的各种成本,而在于它的功能及非功能特性,而在于这些功能及非功能特性之中蕴涵的技术。比如说,Microsoft为什么能统治PC机的操作系统市场?不是人,不是管理,而是技术,将图形用户界面与操作系统和二为一的Windows技术。在Microsoft之前,并非没有好的图形用户界面(Apple的Macintosh是这方面的先驱),也并非没有好的操作系统(DEC、IBM等的Unix异常强大)。

但是,只有Microsoft将图形用户界面技术与操作系统技术结合了起来,应用到Windows中,形成了其特有的Windows技术,从而异军突起,开创了Microsoft帝国。更有甚者,当Dos内核的Windows95/98无法完全满足市场需求时,Microsoft不惜撤换整个开发组,改用Unix技术重新开发Windows(Microsoft称其为NT,即新技术),于是WinNT、Win2000、WinXP等等在新千年中依旧辉煌。可见,Windows的发展史就是技术在软件过程中作用的最好诠释。

当然,软件开发中的技术不仅仅是指沉淀在软件中的技术,还包括开发技术本身。如开发环境、管理方式、过程工具等等,都是开发技术的应用领域。可以说,软件技术及开发技术,就是软件开发的精髓所在。

一言以蔽之,人、过程和技术在软件开发领域都是不可或缺的。“铁三角”三字正是名副其实,三者缺一不可。那么到底哪个最重要呢?如果仅仅从软件开发本身来考虑,恐怕难以给出合适的答案,因为厚此薄彼则必然误入歧途。那么似乎本文可以到此为止了。可字数仍然不够诶!(呵呵,开个玩笑)所以继续想——如果撇开软件开发这一具体领域,就一般意义而言,哪个更重要呢?然后再回到软件开发领域,就会发现:

再论人:根本原动力

人乃万物之灵。此话同样会引起诸多非议。但是,即使最激烈的批评家也不得不承认其中的合理部分:正是人的 情感 、认知和创造能力构建了我们所处的人类 社会 。撇开 情感 不谈,人的认知与创造能力也是软件开发的根本原动力。

在软件开发中,随处都是人的身影。软件开发的执行者是人,这是显然的了。那么软件开发的过程呢?过程是靠人来实施、来管理的,这无须说,这充其量只是执行的一部分而已。

这里想说的是过程本身,它是如何来的呢?过程不是凭空产生的,当过程成为一种体制时,它也是靠人通过不断的创造-使用-改进-再使用-再改进而来的。在过程改进的过程(套用现在的一句行话,这叫做meta-process,即元过程,过程的过程)中,需要的是人,是人在创造着新的过程,是人在推动着过程的改进,是人在使用过程的软件开发中取得了成功!

这里要说明一句的是,此人非彼人。此处的“人”不是指“铁三角”一端的人,那是作为一个项目的开发人员、作为软件开发执行者的人。而是所有致力于软件开发这一领域的所有人的总和。这个“人”并不处于一次软件开发的边界之内,而是在将软件开发作为整个领域,包含软件开发的过去、现在和未来,包含无数次软件开发及无数次对于软件开发的研究的前提下,处在这个领域中的一个概念,是 历史 上曾经出现的、现在正在进行着的、以及日后将会置身其中的所有的开发人员和研究人员的总和。人的认知与创造能力,在这个“人”上体现得淋漓尽致。

正是这个人,在最初混乱的软件开发实践中发觉了软件开发过程的重要性,从而逐步创造出各种软件开发过程,并使用之,从而使软件开发秩序化;

正是这个人,在使用软件开发过程的实践活动中发现了过程所存在的不足之处,于是吸取教训改进之,从而使软件开发过程更合理、更有效;

正是这个人,不局限于过去所创造的过程,怀着扬弃的态度不断地投身于软件开发中去,从而使不断进化的软件开发过程真正成为软件开发“铁三角”的一个顶点,为软件开发、为人类服务。

而我们每一个软件开发人员,每一个从事软件开发的研究人员,都是这个人的一部分,都通过自身的活动体现了这个人的作用。所以,我们的整体是具体化的他,而他则是抽象化的我们。

当然,不仅是过程,在技术方面,人所起的作用是类似的。技术作为科学与生产之间的桥梁,其产生、改进、普及直至消亡都离不开人的推动。因此,人是软件开发中当之无愧的根本原动力,软件开发的“铁三角”,包括作为软件开发执行者的人,作为软件开发体制的过程以及作为软件开发精髓的技术,都是以人这个根本原动力为核心的。概括地说,就是“一个核心,三个顶点,一个都不能少”。

那么,当我们认识到人在软件开发中的核心地位时,应该如何做呢?权以如下文字作为这个问题的答案,以及本文的结尾:

If A thru Z are scored 1 thru 26,

Your knowledge has a score of only 96 (11+14+15+23+12+5+4+7+5);

And your hardwork just scores 98 (8+1+18+4+23+15+18+11);

While your attitude is what determines everything of your life (1+20+20+9+20+21+4+5)。

软件开发人员的管理办法

进度怎么判断呢?其实,归根结底,开发的进度是由人来控制的。一方面可以根据客户的要求,在规定的时间内完成项目;另一方面根据费用来限定开发的时间。当然,这些需要一个项目的核心人物来全程协助完成。

对软件人员的考核,其实大部分都是与其他公司的考核制度是一样的。从在项目中所作的贡献,在一个项目中所发挥的作用,比如协调、组织等。不过,任何一个项目完成时,每一位参加项目的人员都是有精神方面和物质方面的奖励的。

关于开发软件时的加班,现在大部分公司都是实行调休制度。在一个项目完成后,作为软件开发人员,无论是从身体上还是从精神上,都需要经过一段时间的调整,所以公司可以组织软件人员开展活动,比如旅游。对于加班工资,可以每一季度发一次,美其名曰“季度奖金”。如果想将公司规模发展得更大、希望公司的明天更辉煌,从员工的角度出发,多为员工着想。这样,员工也会视公司的明天如自己的明天,公司也将越走越远。

对于控制软件人员编写的源代码外泄问题,如果公司对员工能够像上面所说的一样,然后保密意识再加强一些,应该就不会发生源代码外泄问题了。不过,安全起见,最好与软件人员签订相关的协议,倘若出现问题,可追究相关的法律责任。另外,加强每一个员工的保密意识也很重要。

软件人员的日常管理办法,与其他公司唯一不同的是,开发软件肯定会时常加班,所以在对员工上午上班时间可以适当放宽,要体现公司“以人为本”的原则。作为一个软件人员是辛苦的,作为软件人员的领导者,更应该体谅、关心他们。

软件开发人员管理研究结论的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于软件开发人员管理研究结论范文、软件开发人员管理研究结论的信息别忘了在本站进行查找喔。

扫码二维码