软件项目管理论文是考评学生对所学专业知识综合掌握水平的一种有效方式,但毕业论文的撰写与指导环节存在各种各样的问题,////如果有一篇毕业论文的例文,那就容易多了。下面是小编为大家精心挑选的,希望大家喜欢!
2017年软件项目管理论文篇1
1 项目背景及要求
随着计算机技术和互联网的快速发展,人类已经进入了信息时代,也有人称为数字化时代。在数字化的网络环境下,学生希望得到个性化的满足,根据自己的情况进行学习,同时也希望能够得到科学的评价,老师希望有效改进现有的考试模式,提高考试的效率;教育机构也希望给网上的学生提供更全面、灵活的服务,全面准确地对学生进行跟踪和评论。网络考试系统正是迎合这一时代需求而开发的,它旨在探索一种以互联网为基础的考试模式。通过这种新的模式,为学校创造一种新的考试环境,提高考试工作效率和标准化水平,使学校管理者、教师和学生可以随时随地通过网络进行考试。
在线考试系统与传统的考试相比,由于传统的考试相比涉及到组织命题、试卷印刷、考场安排、组织阅卷等诸多环节,考试试卷周期长、效率下;同时人工批卷等主观因素也影响到考试的公正性。随着网络技术在教育领域应用的普及,应用现代信息技术构架的网络在线考试系统展现出了越来越多的优越性。
在线考试系统利用网络手段将考试资源整合,实现了一定程度的无纸化考试,从而使考试这项常规而繁琐的任务变得更加方便,避免了以往学校里考试纸张、笔、监考和巡考等各种资源的浪费,并且后台管理是管理员单一的管理,确保了程序的安全性。在线考试系统管理员登录后,对考试内容、专业、科目和考试题目等都作了详细的分类,只要考生通过自己的学生编号和密码进入前台,按步骤依次进行选题和答题,答题完毕后系统会自动判断考卷,并核对出最后考卷的分数,解决了在学校考试后等待考卷分数通知的问题。
基本要求: 1. 设计严谨、功能完备。2. 系统自动交卷、自动判卷,保证成绩真实、准确。3.界面美观大方。
该系统计划研制时间为2017年4月1日到2017年4月30日。
2 项目开发内容
1.考生在线考试模块
考生通过主界面输入学号、姓名,选择所在的院系及需要考试的科目等。从题库中随机抽取生成试卷让考生开始考试,考生的答题信息通过选择答案来反映,主观题由考生自己答。考试结束采取自主交卷和到了规定的时间自动提示有机结合的方式予以实现。考试过程中设有时钟,用以提醒考生。提交试卷后自动生成成绩,选择题和判断题的自动阅卷比较简单,只需与标准答案进行比较即可。而填空题和简答题的阅卷,由于主观性、答案个数的不确定性和判卷的尺度等等因素,要实现计算机自动阅卷相对比较困难。该子模块采取在多个答案之间设置特定分隔符并搜索关键字的办法实现了填空题和简答题的自动阅卷。
2.教师管理模块
教师根据登录账号和密码进行登录后,首先选择一个题库作为考试组卷的依据:然后根据考试科目的考试要求设置组卷参数并保存,考生在考试时,将按照该组卷参数从题库中随机抽取试题组成试卷进行考试;考试结束后,保存考生考试结果,系统会自动评卷得出成绩,教师还可以通过人工阅卷接口对系统自动评卷的结果进行检查,最终得出考生的成绩并保存;教师可以通过信息查询模块查询、下载考生的成绩,还可以通过成绩管理模块对成绩进行分析和对比。
3.管理员模块
管理员可以对整个学校年级信息进行操作,包括年级信息的录入、每个年级课程的录入、还可以对每条年级信息进行修改,以及对学生信息进行录入和操作。在“学生信息”这一项中,逐一输入每个学生的姓名、学号、年级等信息,这时系统就会根据学生的年级,从库中取出这个年级所有的科目信息,在登录权限表中生成一条记录,记录着这个学生每一门科目考试是否已经登录过和提交过的信息,作为判别学生是否已经参加过此门考试的依据,管理员可以通过“学生权限查看”这一项,查询每个学生的信息,如果学生信息不正确,可以修改学生的信息。此外,管理员可以对教师信息进行录入和操作。在“教师信息”这一项中,输入教师的名字和号码,系统会将输入的数据保存在数据库的教师表里。
3 系统目标及系统描述
3.1 系统目标
(1)提高教师工作效率和减轻教师工作量。
(2)具有严肃性和公正性,系统自动交卷。
(3)系统自动阅卷加上人工阅卷,保证成绩真实、准确。
(4)考生可随时查看考试成绩。
(5)对考生、教师信息进行管理。
3.2 在线考试系统主框架及系统描述
3.2.1 系统总体结构
(1)网络结构
(2)系统平台
(3)软件结构
3.2.2 功能描述
1.考生信息管理:学号、学生姓名、密码、所属专业、班级。考生不需要注册直接登录本系统,其操作权限仅为参加考试和查询考试成绩。不允许两台或两台以上计算机用同一用户ID同时登陆;
2.科目信息管理:管理员对考试科目的增加、删除和修改操作。
3.试题信息管理:教师可以对各科目的各种类型的试题进行添加、编辑修改、删除和查询等操作。添加考试题目信息时,需要选择所属的专业、科目,然后再进行添加。
4.试卷信息管理
(1)试题录入,首先教师选择试题所属科目。若没有该科目,则可以新增加一个。添加的科目基本信息有科目名称、题型、题量和考试总时间等,对于用户输入的不符合系统要求的数据,系统仍旧给出提示或警告。返回、刷新一次页面,即可看到新增的科目名称。而且,在本系统中其它需要选择科目的地方也会自动更新。其次,每道试题有类型、试题内容、选项和答案等栏目。教师输入完毕后
即可预览。如果输入不合法,或者该科题库中已有该试题编号和内容等,则系统会给出相应的提示或警告,以待更正。
(2)试题修改:教师还可以对试题进行修改。
(3)试题删除:管理员可以删除不再需要的试题。当然如果一个科目不需要,可以将整个科目删除。
5.主观题批改:系统对客观题自动评分,并为教师提供主观题的批阅界面,并统计最终得分。
6.考试成绩信息管理:管理员和考生均可以通过该模块查询某科目考生的考试成绩。另外,管理员还可以查询考试记录,来查看考生是否参加了考试。对一些历史上的考试结果和成绩库进行删除和清理工作。考生可以用自己的帐号和密码登录并查阅成绩。
7.教师信息管理:需要注册,并要得到系统管理员的审批确认。该角色具有考生所没有的权限,即具有考生信息管理、考试题库管理以及试卷信息管理等操作权限;
8.管理员信息:为系统的维护用户,管理员除了拥有教师管理员的所有操作权限外,还可以对教师、学生信息进行管理。
4 项目组织管理
4.1 组织结构
该项目要求多个人员同时参与,通力合作,才能确保任务的完成。根据项目的这个特点,指定一名项目经理全权负责项目的执行,以及需求分析员、系统配置员、数据库设计员、编码员、界面设计员、测试人员组成项目小组。项目管理的组织结构如图4.1所示。
图4.1 项目组织结构
5 项目管理的应用
5.1 项目里程碑计划
根据软件工程的要求,将该软件开发过程分为几个重要阶段,对这几个阶段的关键事件设立里程碑进行管理。本软件项目的主要里程碑事件有:需求分析完成、系统设计完成、程序编码完成、软件测试完成。该项目的里程碑计划如表5.1所示。
表5.1 项目里程碑计划
5.2 项目的工作分解结构
将一个项目分解为若干个较为独立的子项目有利于对项目的管理。项目的工作分解结构包含了项目实施过程中的全部工作,在线考试系统项目的主要工作如图5.2所示。
图5.2 项目的工作分解结构
5.3 项目的责任分配矩阵
为了加强对项目的管理,必须对项目实施责任制管理。参与项目各方的责任一般通过责任分配矩阵的形式标明。责任分配矩阵直观地将项目责任方的责任和权力完整地表达出来,便于项目参与者之间进行有效的协调,对项目管理及项目成功的实施起到了非常关键的作用。根据在线考试系统开发项目的组织结构确定的项目分配矩阵如表5.2所示。
表5.2 项目的责任分配矩阵
负责
辅助
5.4 项目的进度安排
项目的进度安排参见项目甘特图(图5.3)。
图5.2 “在线考试系统”项目甘特图
5.5 项目风险分析
在一个项目的进行过程中总会遇到一些意想不到的事情,为了更好地适应对一些意外发生的事情,我们应对在项目中存在的风险进行分析。
1.可能遇到的风险。在在线考试系统开发项目中可能遇到的风险有以下几方面:
(1)在进度、需求等方面的风险。 (2)网络不稳定,导致断线,数据丢失。
(3)恶意攻击系统,修改系统信息。 2.应对计划(措施)。
(1)再分解工作之后,尽可能准确评估每项工作,准确估计进度。 (2)及时做好信息备份。
(3)加强系统的稳定性,不断修补系统漏洞.
2017年软件项目管理论文篇2
—浅谈大学生如何创业
[摘要]当前大学生普遍心怀创业梦想,但是对于如何进行创业,如何回避创业风险,如何规划创业活动以及如何进行创业项目管理却知之甚少。如此造成当前大学生创业活动的普遍失败。本文引入软件工程学的相关方法对大学生创业项目进行规划,同时借鉴软件项目管理的手段对大学生创业项目进行管理,有效地规范了大学生的创业项目,提高创业成功率。
[关键词]软件工程;创业;管理
一、 引言
当前大学生普遍胸怀创业梦想,这种梦想憧憬着一个美好的创业未来,但是就目前情况看来大学生的创业活动多数或者说绝大多数还是以失败而告终,甚至于背负沉重的经济负担。到底如何帮助大学生规划好自己的创业项目,如何提高大学生创业项目的成功性,一个合理的规范的专业性的项目规划尤为重要。当前大学生的众多创业项目都普遍缺乏可行性研究,单凭激情和勇气或者加上良好的创意以及苦干的决心去进行创业是远远不够的,他们普遍需要一份完整的专业的可行性研究,但是如何进行可行性研究确实一个复杂而缺乏实例的工作,可以借鉴的或者说可以引用的是软件工程项目的可行性研究以及软件工程项目的可行性研究的木本设计出创业项目的可行性研究规范。
二、软件工程项目与大学生创业项目的类似性研究
1.背景类似
软件工程的产生背景是由于软件危机的存在,而在六十年代末期,工业发达国家就已经意识到了这种软件危机,表现在软件成本的急剧增长成为计算机系统最大开支项目,软件开发周期长,进度很难控制,质量也难以保证,管理更不上。而当前混乱的大学生创业规划也是严重阻碍大学生创业成功的主要问题,其主要问题包括:项目选择太盲目、缺乏创业技能、融资渠道单一、社会资源贫乏、管理过于
随意。二者的这些问题看似差别很到但却始终围绕这“效率”“成本”“管理”三方面上,也就是说软件危机面临的问题在当前大学生创业活动中同样遇到。如此由软件危机引出来的软件工程学就可以通过比拟用到大学生的创业活动中来。
2.生命周期类似
软件生命周期经历了6个阶段分别是:
①问题提出;②可行性研究;③需求分析;④总体设计;⑤详细设计;⑥测试。而创业项目的 生命周期也是从①创业项目定义;②可行性研究;③成本/效益分析;④总体项目规划设计;⑤具体实施;⑥实施评估。
创业项目生命周期整个过程和软件生命周期同样满足瀑布模型。
三、基于软件工程学的大学生创业项目管理
1.软件项目管理
1.1软件项目管理的概念
从概念上讲,软件项目管理是根据管理科学的理论,结合软件产品开发的实际,保证工程化系统开发方法顺利实施的管理实践,为了使软件项目能够按照预定的成本、进度、质量顺利完成,从而对成本、人员、进度、质量、风险、文档等进行分析、管理和控制的一系列活动。实际上,软件项目管理的意义不仅仅如此,进行软件项目管理有利于将开发人员的个人开发能力转化成企业的开发能力,企业的软件开发能力越高,表明这个企业的软件生产越趋向于成熟,企业越能够稳定发展(即减小开发风险)。
软件项目的开发不同于其他产品的制造,软件开发的整个过程都是以设计过程为主(几乎没有制造过程);另外,软件开发不需要使用大量的物质资源,而主要使用的是人力资源;并且,软件项目开发的产品大多数是程序代码和技术文档,并没有其他的物质结果。基于上述特点,软件项目管理与其他项目管理相比,具有很大的独特性。
1.2软件项目管理的目的
随着信息技术的飞速发展,计算机软件产品的规模和复杂度也随之增加。个人单打独斗的作坊式开发方式已经越来越不适应发展的需要。与此同时,软件项目中“项目黑洞”也应运而生:项目无法按期完成、项目合作方的工作难以协调、用户需求经常变动、工作质量难
以保证,给企业带来为了愈来愈多的损失。这种情况说明了软件项目开发及管理过程中,存在着许多的问题,需要更多的重视和研究。 没有运用软件项目管理是面临如此众多问题主要原因之一。软件项目管理作为一种科学的管理手段,是为了使软件项目能够按照预定的成本、进度、质量顺利完成,而对成本、人员、进度、质量、风险等进行分析和管理的一系列活动。因此,对于以“项目”为基本运作单位的各软件开发企业,都在积极地将软件项目管理引人开发活动中,对软件开发实行有效的管理。因此,决定一个软件项目实施成功与否,软件项目管理无疑起着举足轻重的作用,软件项目管理已经是公认的软件开发企业的核心竞争力之一。
1.3、软件项目管理的原则
(1)平衡原则
在我们讨论软件项目为什么会失败时可以列出很多的原因,如管理问题、技术问题、人员问题等等,但是有一个根本的思想问题是最容易忽视的,也是软件系统的用户、软件开发商、销售代理商最不想正视的,那就是:需求、资源、工期、质量这四个要素之间的平衡关系问题。需求定义了“做什么”,定义了系统的范围与规模,资源决定了项目的投人(人、财、物),工期定义了项目的交付日期,质量定义了做出的系统好到什么程度,这四个要素之间是有制约平衡关系的。如果需求范围很大,要在较少的资源投人下,很短的工期内,很高的质量要求来完成某个项目,那是不现实的,要么需要增加投资,要么工程延期;如果需求界定清楚了,资源固定了,对系统的质量要求很高,则可能需求延长工期。对于上述四个要素之间的平衡关系最容易犯的一个错误,就是鼓吹“多快好省”四个字。正视这四个要素之间的平衡关系是软件用户、开发商、代理商成熟理智的表现,否则系统的成功就失去了一块最坚实的理念基础。
(2)高效原则
在需求、资源、工期、质量四个要素中,很多的项目决策者是将进度放在首位的,现在市场的竞争越来越激烈,“产品早上市一天,就早挣一天钱,挣的就比花的多,所以一定要多挣”,基于这样一个理念,软件开发越来越追求开发效率,大家从技术、工具、管理上寻求更多更好的解决之道。基于高效的原则,对项目的管理需要从几个方面来考虑:要选择精英成员;目标要明确,范围要清楚;沟通要及时、充分;要在激励成员上下工夫。
(3)分解原则
“化繁为简,各个击破”是自古以来解决复杂问题的不二法门,对于软件项目来讲,可以将大的项目划分成几个小项目来做,将周期长的项目化分成几个明确的阶段。项目越大对项目组的管理人员、开发人员的要求越高,参与的人员越多,需要协调沟通的渠道越多,周期越长,开发人员也容易疲劳,将大项目拆分成几个小项目,可以降低对项目管理人员的要求,减少项目的管理风险,而且能够充分地将项目管理的权力下放,充分调动人员的积极性,目标会比较具体明确,易于取得阶段性的成果,使开发人员有成就感。
(4)实时控制原则
实时控制项目进度的机制,依靠一套规范的过程来保证实时监控项目的进度,以实现实时控制项目的进展,将项目的进展情况完全的实时的置于你的控制之下。实时控制确保项目经理能够及时发现问题、解决问题,保证项目具有很高的可见度,保证项目的正常进展。
(5)分类管理原则
对于不同的软件项目其项目目标差别很大,项目规模也是不同的,应用领域是不同的,采用的技术路线差别也很大,因而,针对每个项目的不同特点,其管理的方法、管理的侧重点应该是不同的。就像古人讲的,“因材施教”,“对症下药”。项目经理需要根据项目的特点,制订不同的项目管理的方针政策。
(6)简单有效原则
项目经理在进行项目管理的过程中,往往会得到开发人员这样的抱怨“太麻烦了,浪费时间,没有用处”,这是很普遍的一种现象。当然这样的抱怨要从两个方面来分析,一方面从开发人员本身可能存在不理解,或者逆反心理的情况,另一方面,项目经理也要反思:我所采取的管理措施是否简单有效?搞管理不是搞学术研究,没有完美的管理,只有有效的管理,而项目经理往往试图堵住所有的漏洞,解决所有的问题,恰恰是这种理想,会使项目的管理陷人一个误区,作茧自缚,最后无法实施有效的管理,导致项目的失败。
(7)规模控制原则
该原则是和上面提到的其他原则相配合使用的,即要控制项目组的规模,不要人数太多,人数多了,进行沟通的渠道就多了,管理的复杂度就高了,对项目经理的要求也就高了。在微软的MSF中,有一个很明确的原则就是要控制项目组的人数不要超过10人,当然这不是绝对的,也和项目经理的水平有很大关系。但是人员“贵精而不
贵多”,这是一个基本的原则,这和我们上面提到的高效原则、分解原则是相辅相成的。
(8)组织的知识积累原则
有效的积累知识的方法是:人员专业化培养,知识与载体分离。具体的做法是,把需要度量的知识实体分为固定知识(项目成果)和流动知识(参与人员),再把知识实体的价值体现划分成不同的度量平面。根据所有知识实体在不同度量平面上的知识度量值,可以形成不同的知识平面指数和公司知识指数,并可根据此知识指数体系来全面分析公司的知识积累状况,并迅速做出恰当的反应。知识与载体分离体现的是,在组织中人力资本与组织资本是有区别的,简单地说,人力资本属于员工个人,企业只可租借使用;而组织资本就是8小时以外员工带不回家的企业资产,它为公司所有。对企业来说,相比于人力资本,组织资本更为重要。一个管理者(领导者)必须知道如何容纳和积累知识,使之为公司所有。软件项目管理是在经历了若干个大型软件工程项目的失败之后,人们才逐渐认识到软件项目管理的重要性和特殊性。事实上,这些项目的失败并不是由于从事软件开发工作的软件工程师的无能,正相反,他们之中的绝大多数是当时杰出的技术专家。这些工程项目的失败主要是因为管理不善。所谓管理就是通过计划、组织和控制等一系列活动,合理地配置和使用各种资源,已达到既定目标的过程。软件项目管理先于任何技术活动之前开始,并且贯穿于软件的整个生命周期中。软件项目管理过程从一组项目计划活动开始,而制定计划的基础是工作量估算和完成期限估算。为了估算项目的工作量和完成期限,首先需要估算软件的规模、工作量估算,然后是进度计划,人员组织,质量保证。
2.基于软件项目管理的大学生创业项目管理
大学生的一个创业项目是一项独特而现实性很强的工作,这个工作往往是需要遵从一定的规范和标准去生产某种新产品或提供某种服务的工作。这种工作应在限定的时间、成本费用、人力资源及资财等项目参数内完成。这与软件工程的三要素:成本、效率,质量及其类似。项目有三个要素,即技术目标、完成期限和预算。项目的成功实现通常受四个因素的制约,即工作范围、成本、进度计划和客户满意度。首先明确了大学生创业项目的工作范围,在确定整个项目的工作范围的时候必须充分考虑到自身的技术和服务优势。项目的工作范围如果设定得比较大那么在项目的推动过程中就要密切关注成本是否超过承受值。
2.1 成本估算
在软件工程学中涉及到的成本估算方法有:代码行技术、任务分解技术、自动估计成本技术、任务分解法WBS。这些方法中只有人物分解法适合大学生创业项目的成本估算。WBS:任务分解法(Work Breakdown Structure)即利用WBS方法,先把项目任务进行合理的细分,分到可以确认的程度,如某种材料,某种设备,某一活动单元等。然后估算每个WBS要素的费用。
采用这一方法的前提条件或先决步骤是:
①对项目需求作出一个完整的限定;②制定完成任务所必需的逻辑步骤;③编制WBS表。
在进度表和WBS表完成之后,开始进行创业项目成本估算。创业项目成本估算的结果报告需要包括一下要点:
①每个WBS要素的详细费用估算;②每个部门的计划工时曲线图;③每月的工时费用总结;④每年费用分配表;⑤硬件支出预算。
这种方法的准确度较高,用这种方法作出的这些报表不仅仅是成本估算的表述,还可以用来作为项目控制的依据。最高管理层则可以用这些报表来选择和批准项目,评定项目的优先性。
2.2 人员组织
通常创业项目要成功,很重要的一项工作是成立创业项目组。挑选到合适的项目组成员并让他们来项目组任职,是项目成功的关键。 大学生创业项目要获得成功,同样离不开一个好的创业团队。创业成功需要具备多方面的综合知识和经验,如管理知识、营销知识、财务知识、法律知识,甚至产品技术知识。而大部分青年大学生没有这方面的实践,经验更是匮乏,很难做到全才。因此懂技术的有必要找一个懂管理的的做搭档,懂管理的也有必要找懂技术的做搭档。创业者在组建团队的时候必须选择志同道合而且能独当一面的精兵强将加入团队,明确团队成员职责。作为团队的领导者——创业者还必须掌握沟通技巧,学会倾听、感化和商谈,来保持与巩固整个团队的战斗力和工作效率。
2.3 创业项目管理
创业项目的管理,就是首先制定创业项目计划,然后按计划一步
一步执行。由于环境的变化、可能出现的进度延时、认识的偏差、能力的不足等原因,造成了实际状况与计划的偏离。而要保证项目围绕预选制定的计划开展,就得用到项目进度管理的适度调整。项目管理以一定的标准为依据,定期或不定期地监控项目,发现项目活动与标准以及进度之间的偏差,并采取必要措施进行处理。要对创业项目进展、费用、质量、风险等都进行监控和管理。
大学生在创业的活动过程中应经常检查和评估自己的计划执行情况,是否按计划推进,进展比预想的快还是慢了,比如时间过去1/3的计划时间了,而市场拓展才1/5;或者费用过半了,而业务量才做到1/3等,这些也进度严重违背的问题都需要及时发现,及时检讨,以求迅速提出解决办法加以纠正。
四、以“高校实验教学管理系统”为例的项目管理模型及实践
信息系统以及相关软件项目的设计开发已经不是企业运作管理中的一部分了,各软件企业都在积极地将软件项目管理引人开发活动中,对软件项目开发实行有效的管理。
目前,中国的软件企业正处于高速发展、急需规范管理并以项目为主导的环境中。企业每天所面对的不仅仅是几个越来越大的大型项目,而将是成百上千不断发生和进行的项目。产生这种变化的因素是多方面的,这包括客户需求的不断提高导致产品生命周期缩短;产品开发项目数量大增;新技术导致了对研究和开发项目需求的增加;为了提高业务赢利能力,改进业务模式的项目需求大增等。在这种多项目并发、技术含量高、变化速度快、资源有限的环境下,如何对企业、项目、资源实施科学的管理,加强团队能力,实现软件企业的生产规模化、规范化、国际化,是当前我国软件业面临的最大挑战。
中国目前软件业的落后状况,实际已经不是技术本身的问题,而是科学管理的问题,软件工程理论与软件项目管理的实际应用与经验,是我国软件企业急待学习与渴求的。中国软件业各个层次上的管理问题,目前可以说已经制约了中国软件业走向国际化的进程。
1,大中型软件开发的主要难题不是技术而是管理。
有了科学严谨而行之有效的管理,才能让先进的技术方法和开发
工具真正发挥出作用,生产出优秀的软件作品。在软件项目管理知识软件项目与工程管理论文的基础上,论文结合目标系统的特点,给出了一种更加灵活的项目管理方法,阐述了质量、进度两个方面的管理理念和方法,特别是如何对该项目进行跟踪、监控和度量,以保证系统按进度高质量地完成、交付、使用。
实验教学是高校教学的重要环节,然而目前高校实验教学方面普遍使用的是各实验室彼此独立的实验信息管理系统,这给学校的实验监督工作带来了很大的困难。目前国内尚未出现面向全校所有实验室的类似系统,究其原因,最重要的一点就是项目管理难度大。仅从需求而言,实验室多而且各具特点,导致需求难以全面覆盖和深入挖掘,这样就很难梳理出一套标准和科学的管理模型,且系统开发极具不可预知性。
系统共分为四个平台:教务处、实验室、教师和学生,利用科学有效的数据库设计技术和长期服务高校教育教学的经验技巧、以动态定制方式解决实验室(中心)个性化需求问题。本系统的特点可以概括为以下三点:
(1)该系统有多种用户,多种管理员;对于每个实验室,该系统都是一个小型的实验教学管理系统;(2)各个实验室运行模式差异性大,需求多样化;(3)用户群体庞大,对于系统数据的及时准确性要求较高。
上述特点决定了本系统项目管理工作的难度必定很大。从项目管理的角度来说,开发模型体现了软件开发管理者在管理模式上的变化,目前也存在多种开发模型。然而,传统的项目管理是选择一种软件开发模型,在开发的各个阶段实施管理。另外,考虑到开发模型越简化,管理工作就会越容易,大多数管理者会采用传统的瀑布模型。瀑布式生命周期的开发过程是顺序行进的;活动流向基本是单向的;这种模型的缺点也是很明显的,各个阶段的划分完全固定,早期的错误可能要等到开发后期的测试阶段才能发现,进而带来严重的后果。 那么,本系统将会不拘泥于现有的开发模型,针对系统的特点,采用一套行之有效的开发管理方法,合理有效的推动项目的研发进程。
2“高校实验教学管理系统”项目管理模型
该系统是在传统瀑布模型的基础上加以修改,添加原型和迭代。
即首先做出原型,向用户展示,然后根据用户提出的修改意见,不断改善系统,直到用户满意。
采用这种管理方式的优点:可强迫开发人员采用规范的方法;原型系统已经通过与用户交互,在一定程度上可以减少开发过程中的返工;开发人员通过建立原型已经学到了很多东西,在设计和编码阶段发生错误的可能性降低;每个阶段交出的所有产品都经过负责人的仔细验证,可保证符合文档的要求;依据采用的开发模型,将该系统的开发阶段分为需求分析、系统设计、编码实施、测试、系统试运行,在每个开发阶段中进行质量、团队和进度管理,主要从文档、工具、沟通、制度、合作四个角度进行。
3“高校实验教学管理系统”项目管理实践
3.1制定团队规范
团队开发,永远不是一个人在行动,因此需要制定团队规范,来约束大家的行为,以保证进度和质量,团队规范的内容主要包括:每个开发人员每天晚上汇报当天工作进度;每周末总结本周工作,制定下周进度计划;遇到问题及时沟通,充分利用团队优势;不能完成任务或提前完成任务及时告知负责人;个人独立解决一个问题的时间不能超过半小时,半小时之后未解决应及时与其他成员商讨;阶段性的技术总结、团队内部技术、经验交流;保证充分可靠的文档;周期执行检查工作。
3.2需求获取
全面的需求获取是保证系统开发少走弯路的前提。该系统采用多种方法从不同角度获取每个平台的不同需求。比如:方法调查表、定期召开研讨会、原型展示。对于每一次的调查和会议,都要有专门人员做好全程记录,会后及时做好应对策略。
3.3开发过程管理
采用Microsoft Project制定项目管理计划。在制定计划时要注意保证计划的可行性,明确责任划分。项目管理计划随着系统的进行不断细化,不断调整。对于影响系统整体进度的调整,要召开小组会议并和老师交流商量。
3.4系统设计和编码
在系统设计阶段,给出详细设计文档和界面原型,阶段性地将设计内容反馈给用户。在充分理解需求文档的基础上,每个开发成员给出详细设计和界面原型。并在阶段性的时间点以研讨会的形式展示界面原型,根据用户要求完善系统设计。
对于四个平台的功能模块,根据功能难度、开发成员的编程能力和项目经验进行划分。比如排实验,由于功能复杂,要考虑和验证的情况很多,这块功能分配给编程老练、心思缜密的开发成员完成。 在编码实施阶段,采用源代码管理工具VSS,制定统一编码规范文档,统一编码风格,降低开发和维护的风险及难度。
3.5测试和试运行
测试阶段:制定好测试计划、编写测试用例,测试过程做好测试报告,收集测试结果。测试时测试人员要认真细致,对测试中发现的问题做好记录。测试用例设计要基于需求,避免测试自己编写的模块,输入数据包括合理的和不合理的,测试数据具有代表性。试运行阶段:首先在小范围内试运行,根据反馈完善系统;然后大范围试用。试运行之前准备数据,要求数据能够尽可能的展示各个实验室的情况;制作培训PPT;对于操作较复杂的界面录制视频;召开用户培训会,使实验室负责人熟悉该系统,同时发现潜在的问题;公布用户反馈方式,及时、最大限度的获取用户反馈意见。在多个学院试运行期间,准备两套系统,一套试运行数据,一套正式运行数据。学生和教师的培训工作由实验室负责。
根据系统的特点灵活使用传统的管理模型,采取用原型去引导用户,通过实践来了解目标系统的概貌,从而不断获知和细化用户的真正需求,明白系统应该做什么,不应该做什么。在项目实现过程中,制定合理规范的管理制度,不仅保证项目按质向前推进,同时使团队每位成员在项目开发的整个过程中都切实负起责任,增强团队合作意识,保证用户的真实需求得到满足。通过近一年时间的开发,目前本系统已经开始在几个学院展开使用,且取得较好的反响,证明该系统采取的管理方法是合理有效的,其开发模型和管理模式是值得借鉴的。
五、从管理和技术两方面来保证软件工程的实施
软件规模的不断扩大引发了“软件危机”,使得人们对软件的发展提出了置疑,怎样才能有效的控制软件的开发过程,怎样才能设计出
高质量的软件而不是无法预知的去依赖开发人员的个人经验和努力。为了解决上述问题,人们提出了软件能力成熟度模型(CMM)和净室软件工程,能力成熟度模型注重于软件生产的管理和组织,定义了5个软件成熟度级别,而净室软件工程则侧重于技术和实践,从工程的角度将软件生产过程化,从而实现对软件生产进行可预期的控制和管理。软件能力成熟度模型和净室软件工程是互相支持的,从管理和技术两个方面来保证软件工程的成功实施。本文将针对净室软件工程谈谈自己的认识。
1 软件开发的工程化
在传统的软件开发模式下无法对软件开发的过程进行有效的控制和管理,所有的工作处于一种无序状态,程序经常需要返工,开发效率低下,无法保证软件的预期产出,尤其在大型的软件生产中更为突出。这些问题的解决均需要有一套系统的适合于软件生产的工程方法来保证。而净室软件工程的目标之一就是实现软件开发的工程化,通过工程化的软件开发过程,有效的控制软件开发中的任何一个步骤,从而实现可预期的软件产出。
2 软件失效控制
怎样控制软件的失效,减少程序的返工是软件工程中的重要主题。净室软件工程的目标即是改变以往在软件开发后期来改正失效的做法,通过增量开发、严格的开发规范及设计和基于统计学的可靠性测量来达到软件零失效的目标。
3 管理过程
在项目规划过程中,依据项目要求裁剪净室过程,制定和维护软件开发计划。在项目管理过程中,管理和控制增量开发和认证,定义净室质量目标。在性能改进过程中,从开发计划、过程控制等方面来评估项目性能,并提交改进办法。在工程变化过程中,为工程实施中可能的出现的变化制定相应的策略和记录,并评价其影响大小。
4 规范过程
能规范过程中,基于需求定义软件功能的外部规范。在使用规范过程中,定义软件用户对软件的使用方式及使用环境。在结构规范过程中,明确软件的系统结构,并分析所用系统结构怎样在本次软件计划中体现其优越性。在增量计划过程中,建立软件的增量式开发和认证计划,以组件的方式逐步实现用户功能,对软件质量实现分步控制,
最终形成目标系统。
5 开发过程
在软件再工程过程中,实现软件的重用,避免同一功能重复开发从而增加软件失效的概率。在增量设计过程中,为特定的软件功能分配一系列增量,并根据整个项目结构和进度来安排这些增量的开发。在正确性验证过程中,初步找出在增量开发中出现的软件失效并加以改正。
6 认证过程
在建模测试计划过程中,建立模型用于软件的测试和认证,并使用模型来产生测试用例。在统计测试和认证过程中,将测试纳入软件开发的全过程,并认证软件的正确性,评价其性能。
六、总结
大学生创业是大学生自主解决就业问题的一个值得鼓励的尝试,当前的在校的大学生普遍怀揣创业梦想,但有志于创业的大学生必须清醒地认识到创业是有风险的。成功创业需要详细的规划的细致的调研,成功创业必须要有一定的财力和创业能力做保障。成功创业还需要完整的项目管理的全程的项目控制并及时做纠正偏差。借鉴软件工程学的相关理论和方法来规划和管理创业项目可以明显高大学生创业成功率,最大限度地避免盲目和盲从。
[1]琼•努特森艾拉•比茨:怎样当好项目经理[M].上海人民出版社,1995.11
[2]李连弟:从项目管理观点工程管理论文润色出发谈大学生成功创业[J].科技创业月刊,2006.10
[3]张海藩:软件工程导论[M].清华大学出版社,2009.4
[4]周宁谢晓霞:项目成本管理[M].机械工业出版社,2010.1
[5]覃征.软件项目管理[M].北京:清华大学出版社,2009:40-44.
[6]施平安.软件项目管理实践[M].北京:清华大学出版社,2008:73-81.
[7]孙延靖,杨功元.项目管理技术在软件开发过程中的若干问题探讨[J].硅谷,2009(17).
[8]陈丹.基于形式化方法的软件开发技术[J].软件工程师.2009(9).
[9]赵彬.全面质量管理在软件工程中的应用[R].北京:北京航空工程技术研究中心,2009:2-4