HI,欢迎来到学术之家股权代码  102064
0
首页 精品范文 软件工程论文

软件工程论文

时间:2022-07-16 12:26:00

开篇:写作不仅是一种记录,更是一种创造,它让我们能够捕捉那些稍纵即逝的灵感,将它们永久地定格在纸上。下面是小编精心整理的12篇软件工程论文,希望这些内容能成为您创作过程中的良师益友,陪伴您不断探索和进步。

软件工程论文

第1篇

1.1专业定位不适应社会需求

专业人才培养不具有明确针对性,人才培养结构合理性欠缺,专业人才培养层次相对单一。造成这一问题根源是地方院校对行业企业实际需求不明,导致专业人才培养定位不清。毕业生虽然专业知识结构比较全面,但实际工作能力不强,无法满足企业实际需求。

1.2专业课程设置不合理

课程体系建设是地方高校软件工程未来走内涵发展道路的核心。从调研地方本科学校现有软件工程课程体系实情来看,传统“学术型”课程体系架构占据主导,“应用型”与“学术型”课程体系架构区分度不明显。

1.3教师队伍应用型能力欠缺

地方高校软件工程现有师资队伍的实践能力不足,专业教师参与企业生产科研活动的力度不够。双师型结构教师比例低于30%。

1.4专业人才就业率低与企业“无人可用”矛盾冲突明显

软件工程专业高层次应用技术和技能人才数量严重不足,同时应用技术和技能人才培养的学历层次不高不能满足企业实际需求。地方高校软件工程专业定位和人才培养目标不明确、教学方式方法缺乏科学性、系统性,实践教学体系不完善,没有与行业就业有效对接,导致培养的人才无法满足社会生产实际需求,导致“软件工程专业毕业生无职可就,软件开发行业以及相关软件应用单位招不到满意的员工”现状普遍存在。

2软件工程专业课程体系理论设计

以行业、企业实际对人才需求为引导,软件工程专业毕业生真实就业情况调查为依托,地方高校软件工程专业课程一线教师众多教学研究成果为参考,专业教师在企业挂职学习经验体会为借鉴,围绕地方高校软件工程专业课程教学体系存在事实问题,来对地方本科院校软件工程课程体系建设进行设计建设。设计建议如下:

2.1学科建设

以专业相关的行业、企业人才的实际需求和当前使用的主流开发工具或技术为依托来不断调整专业架构,优化专业人才培养方案,完善人才培养目标,对专业进行合理定位,系统性调整教学方式方法,从而实现以行业、企业对人才的需求来引导地方本科院校软件工程专业的学科建设。

2.2校企办学

学科建设以输出满足行业、企业需求合格的应用型人才为目标,通过校企联合办学,对学生进行定向培养、训练,专业课程体系嵌入资格认证课程模块,实训课程以企业开发项目方式贯穿培养环节以达到提高专业人才的实际动手能力。

2.3师资建设

采取教师企业挂职锻炼参与企业项目研究开发,共同承接开发项目等方式锻炼提高师资队伍实战能力。教师在企业实战经历和相关经验成果带入到日常的教学环节,不仅能促进专业教师学术、科研能力提升,还能够最大程度丰富、提高专业学科建设。

3三层结构课程体系建设

软件工程专业课程体系建设以工程教育理念为指导,项目实战为背景,社会需求为导向,提高学生专业素养、理论知识体系以及实践能力为宗旨。学生完整地专业培养环节结束后具有程序设计,系统分析,软件设计、开发,项目管理,网络和移动通信终端应用开发能力。

3.1基础理论

由公共基础课程和专业基础课程构成:

①公共基础课程主要涵括地方高校各现行必修公共课程,

②专业基础课程是专业课程坚实的理论基础,专业必修前导课程,是对软件工程专业基本“计算”概念理解、掌握,问题计算求解能力和构建中小规模软件系统综合能力的初步培养。

3.2专业理论

以市场对人才需求为导向、行业最新前沿技术为引领、专业骨干课程为核心、专业素质全面拓展和综合素养整体提高为目标来对专业主干课程进行建设,主要包括以下几类课程:

3.2.1面向行业认知能力培养课程主要包括对行业、企业认知学习以及计算机专业知识学习等专业认知方面课程。一般包括行业相关法律、法规,从业道德规范,行为准则,经营管理常规模式,软件项目开发流程等认知类课程。

3.2.2计算机编程与算法设计能力课程算法设计类课程主要包含离散数学、数据结构、算法分析以及数据结构课程设计等方面的课程;编程课程主要包含C语言程序设计、面向对象程序设计等传统程序设计语言课,还包括当下企业应用最为广泛的,最流行的技术前沿课程。

3.2.3软件工程专业系统分析课程系统分析能力课程主要包括操作系统、计算机网络,软件工程、数据库原理等系统类课程。

3.2.4系统实现与集成能力课程系统实现与集成能力方面课程主要包括网络编程、移动互联开发编程、编译技术、软件开发以及软件测试等课程。

3.3实践

以校企联合培养为手段,一至两学年时长为周期,贴近企业实际需求为指导,综合技能全面提高为目的来对专业学生进行实践能力培养,方式如下:

3.3.1校企共同建设实训课程以项目介入为主线,企业实际效益项目和高校产学研项目为实际授课主体。引进企业优秀项目人才或具有企业项目实战经验的教师来对专业人才展开课程实训,全面提高学生专业技能水平,综合素养。校企共同培养模式不但能够提高学生工程实践能力,知识转化生产实际速度,同时反向激发学生探究、学习知识的热情,最终提高就业竞争力。

3.3.2合作企业岗位实训针对毕业学生和部分专业老师做岗位综合实训:

①学生岗位实训:让学生真实参与企业项目实战,充分消化吸收前期所学理论和技能知识,进一步提升学生综合能力,为就业夯实基础。

②老师岗位实训:专业老师参与企业项目研发,并将企业项目开发经验和技术进行梳理总结、编纂成册,运用到实际日常教学环节,促进教学质量提高,有利于缩短理论转化实际成果周期。

3.3.3校企合作运用项目方式指导学生做毕业论文(设计)毕业论文(设计)是对学生的专业知识掌握程度与提升高度的一次全面的考核,同时也是培养学生综合运用所学知识,独立地分析问题和解决问题的能力的一次全面的实训。但是传统的教育模式导致大多地方院校工科专业学生毕业论文流于形式,与实际脱节。通过与企业合作运用项目方式指导学生做毕业论文(设计)弱化学生对毕业论文(设计)的抵触情绪,可以进一步让学生了解行业企业实际运作规范及最新技术,进一步加强对学生实践和技能能力的培养,为毕业后从容就业夯实基础。

4结语

第2篇

1.1教学目标不明确

“C”是很多高校普遍开设的一门课程,大部分学校教学方法大同小异:课堂讲授+上机实验,教学目标也集中于让学生掌握C的各种重难点,比如数组、函数、指针等。其实不同专业人才培养目标中本课程的作用差异较大,采用模式化的教学方法和雷同的教学目标是不合理的。此外很多教学方法忽略了编程思想锻炼,局限于讲授语言本身,变成了教“语言”而不是“程序设计”。

1.2学生动手应用能力较弱

多年来,大部分学生学习完本课程后,仍难以针对一个简单应用编制程序,此问题十分普遍。一般C语言教材,都是先介绍程序设计基础知识,然后介绍各种数据类型和输入输出等语句,由于内容枯燥,因此学生逐渐丧失了学习兴趣,甚至不愿上机,浪费了宝贵的实验机会。此外各种例题、习题也是数学性较强或者演示性质较强,比如牛顿迭代、水仙花数、10整数排序等,这些内容和实际应用关系相去甚远。

1.3未体现卓越工程师培养特色

如前所述,卓越工程师培养的不仅是一个程序员,更重要的是培养学生具有扎实的理论基础和创新能力,为进一步从事设计、架构规划打基础。由于课时所限,计算机专业的一些理论课程如自动机、组合数学等一般未纳入软件工程的培养方案,但对于卓越工程师而言,初步学习这些内容是必要的。此时如果在相关课程中融合部分上述知识将大有益处。

1.4没有为后续课程打下良好基础

一方面由于例题和习题所限,在学习“C语言”时学生未能充分理解软件工程的一些重要思想如模块化等,导致编程时思路混乱、僵硬。另外由于课时所限,结构、文件等章节经常被略讲甚至不讲,导致学生在后续课程学习时基础薄弱。

2教学改革措施

针对上述问题,结合软件工程卓越工程师培养目标,在近年来的教学实践中我们采取了如下教学改革措施:

2.1实验室授课

对于程序设计课程,学生在课堂听讲时,是一种静态的信息接收过程。当讲到各种知识点时,如果能够即时编程验证,将成倍地提高学生对信息的吸收消化效果。基于此,近年来我们努力实现了全程在实验室机房授课,学生可以实时动手分析,教师也可以从讲台主机远程指导、控制学生设备,效果良好。

2.2采用国外教材及引入软件工程思想

“C”的国内教材大都偏向初学者,存在细节被过度简化的问题,不利于实现培养面向实践的工程师的目标。为此我们采用国外知名教材进行授课。该教材的最大特色是面向应用,对C语言的应用特征、程序设计的特色描述详尽,例题及习题应用性很强,并且可结合软件工程的基本思想进行讲解,例如商品条码校验位计算、扑克牌发放及手牌比较、零件数据管理等。学生学习后,在后续应用性课程中能够很快上手并进行拓展。

2.3编程思维训练

我院“C”课程开设在大一上期,其目的是引导学生进入编程领域。因此在教学时,我们避免拘泥于C本身的语法细节,而是淡化其语言色彩,偏重讲述如何利用程序语言来处理问题。在此列举一例:很多C课程都会讲授如何编程打印一个由星号组成的菱形。某些教材上给出的解法是将菱形分为上半部和下半部分,用两个循环来打印,这种方法对学生思维训练无太大帮助。笔者在授课时,采用了如下思路:将菱形放入一个二维坐标系(原点在左上角),画出菱形所在区域边界,由此写出区域的解析表达式|x-3|+|y+3|≤3,从而得到程序循环中的核心判断语句.

2.4有机引入计算机理论课程知识

如前所述,软件工程专业一般不开设有限状态机等理论课程,但是作为卓越工程师,掌握这些知识是必要的。为此我们在课程中有意识地引入了这方面的知识,给学生提供初步认知,为有意自学者提供基础。例如,一直以来学生在学习“计算一个句子中单词个数”这一经典程序时,总是不明所以。为此我们另辟蹊径,采用如下方法讲授。首先抽取问题核心:把句子看成是由字母序列和空格序列(单词间可能有多个空格)交替组成的一个字符串。程序处理的方式,是对句子中的所有字符进行逐一扫描,然后在这个过程中判定单词的出现,如出现则把计数变量加1。其次将问题抽象化:用有限状态机来描述上述过程。其中“1”代表当前扫描字符“位于字母串中”这一状态,“0”代表当前扫描字符“位于空格串中”这一状态。当“扫描到字母”事件或者“扫描到空格”事件发生时,扫描器的状会被改变,如图箭头所示。我们关心的是当处于状态0时,“扫描到字母”事件发生的情况。此时意味着之前扫描到的是空格,现在是字母,即到了一个单词起始处,故此时计数变量加1。然后引导学生将问题转化为表格描述,(第一行表示事件,第一列表示状态,中间单元格表示某事件发生后,应进行的状态转换及其他操作),进一步地可以精炼为(b)。由此可得到示流程图。在此基础上学生很容易写出程序。这种教学法十分透彻,为学生今后自学相关知识打开了一扇大门。

2.5作业批改及考试规范化

为了避免传统教学中学生作业及考试批改过程低效,分析困难,且难以发现问题的缺陷的情况,我们开发了一套C语言作业及考试批改系统,该系统通过代码分析及用例执行等方式,客观地对学生程序进行判定,一方面提高了教学效率,另一方面更重要的是促使学生养成良好的编程习惯,改变了以往在纸面上写代码的随意性,从而培养起作为一个软件工程卓越工程师必备的素质。

3结语

第3篇

一、软件工程教学方法

为了实现教学目标,提高教学质量,我们可采用以下行之有效的教学方法。1.理论与实践相结合软件工程课程的理论性与实践性都很强。教师课堂上利用多媒体讲解理论知识中的重、难点,学生通过网上课件浏览、自行查阅资料等方式学习其余内容。没有扎实的理论做指导,在今后很难成为一个有创新思想的人才。当然,要很好地理解软件工程的理论知识体系是离不开实践教学的,在教学过程中,可设计一个贯穿整个教学过程的、完整的、易于理解的、实际的软件项目案例,在教学中结合该案例讲授每个知识点。该案例最好来源于授课教师参与过的项目,授课教师对项目的整个开发过程比较了解。讲解项目的每个知识点后,再布置一些让学生做的案例,学生在做的过程中能加深他们对理论知识的理解。这样可以激发学生的学习热情,培养学生分析问题、解决问题的能力,训练学生从事科学研究的基本技能和素养。2.在教学中充分运用“反思性实践”“反思性实践”注重学习中人的因素,采用反思思维方式可以提高学生自主学习的能力。美国教育家DonaldSchon在他的《反思性实践者》中指出,作为一个实践者,要不断地在行动中对行动进行反思,并不断地从自己的实践中学习。在学生的课程设计或实际的软件开发过程中,学生从软件系统的开发开始,反思自己和他人如何开发和使用算法。然后,再进一步反思与开发和各步骤相关的策略、规则和理论等。教师也可以将自己在课堂上的体验、教学心得、教学方法和教学过程的反思以随笔的形式记录在自己的博客上,学生通过阅读,将这些言传性知识内化为个人的实际能力。同时通过阅读,可以进行经验交流。在不断的自我反思和不停的相互追问中,教师可以不断地丰富和完善自我。3.注重课程设计在课程设计中布置大型项目,将学生划分为6~10人的小组,每个小组就是一个团队,团队成员分工合作,分别担任项目经理、客户、系统分析员、程序员和测试人员等角色,小组成员角色可以互换,让每个学生都能体验不同阶段的任务。教师、助教可以扮演用户的角色,帮助学生提高在需求分析中的谈判与沟通技巧。最后,学生分组上台,讲述本组对项目的理解、分析、论证和决策过程。教师和学生可以进行提问,对每个小组的工作进行指导和提出意见。通过合作和交流,学生间不仅能实现信息与资源的共享、整合,拓展并完善自己,还可以从中学会交往、学会倾听、学会尊重、学会合作、学会负责。经过课程设计,学生的创造性、应用能力、综合能力和团队合作能力以及与人沟通交流的能力都得到充分的锻炼和发展。

二、构建多元化教学辅助平台

1.建立网络学习平台可以设立软件工程学习网站,将要补充介绍的一些先进技术放在网上供学生自行阅读,拓展学生的知识面。学生可以通过网络交流学习经验,随时和教师在网上进行交流和答疑。2.加强实验室建设实验室是软件工程课程实践环节的主要场所,软件工程的课程设计要求实验室配备合适的硬件设施和软件工程工具软件,以便为教学研究和学生实践创造必要的环境和条件。3.加强校企合作,建立实习基地学校应该与管理规范的软件企业建立长期的实习合作伙伴关系,及时了解行业发展动态,并且经常请企业里有丰富开发经验的软件工程师为学生作软件工程技术和管理规范方面的专题报告。学生能够及时了解软件开发的实际问题、行业现状以及发展趋势,确定自己今后的专业研究方向。更为重要的是,让企业成为学生的实习基地,使学生就业时具有明显的竞争优势。

三、综合考评方式

软件工程课程的考试方式要注重学生综合知识和应用能力方面的考核,期末理论考试不是考核的重点,应该采用结构合理的考核方式,为此,我们建立了一个由课堂表现、课后作业、课程设计、期末笔试组成的综合评价学生的考核体系。我们的考核方案为:作业、课堂表现占20%,课程设计(小组为单位)占40%,笔试占40%。计算机领域的发展日新月异,教师一定要不断提高自己的理论水平和科研水平,密切注意软件工程技术的发展趋势,根据软件行业需求的变化更新教学内容,设计合理的教学模式,采用有效的教学方法,为学生搭建良好的教学平台。培养学生的综合应用能力,造就具有国际市场竞争力和软件行业急需的实用性人才。

作者:欧阳秀军

第4篇

1软件工程项目自动化的开发

软件工程师应当对所需开发的软件本身以及计算机系统有一定的了解深度。首先,软件工程师要明确相应用户的需求问题,并针对这些问题给出相应的解决方法来满足这些需求,这个过程主要考虑以下问题:①准备做什么?即软件工程项目的功能是什么?②I/O分别需要哪些数据?如何处理?③用什么样的平台来进行开发?这些问题将和用户进行共同协商,最后由开发者的团队以及厂商共同拟定所开发软件的规格参数。软件工程项目的系统设计应从硬件和软件两方面着手。硬件方面,需明确整个开发与维护环境的硬件框架,包括机房的大小、机箱的配置、服务器的架设、电缆与通信设施的完整性、控制台的规格等;软件方面,需要把待烧写芯片的程序规模、程序处理规格、操作系统规格、I/O数据信号的定义、I/O来源与接口等条件明确清楚。除此之外,还需要定制计算机处理程序的算法,规定程序与硬件之间的相互关系、维护处理的时钟周期,软硬件的可扩充性等。所有有关程序方面、接口方面、硬件方面、数据库方面的各种条件参数都要在系统设计的初级阶段规划好,软件工程项目的设计就像一个金字塔,而地基就是这些条件参数,只有打好了地基,才能保证接下来的工作顺利进行。

2软件工程项目自动化管理

2.1数据管理软件工程项目的自动化管理人员需要定期对自动化操作设备各项指数进行严格的校验,按照相应的标准规范对设备数据进行抽样采集与处理,通过人工的校验计算或者其他可用的软件工具来对数据进行比对与调试,调试后根据结果来判断设备是否运行有误。经过一系列校验之后若确定了设备可以正常运行,则将本次校验过程与数据记录在数据库中,然后开始启动设备使其开始运转。软件工程项目自动化运行中产生的数据非常重要,这些数据对于整个系统的扩展与改进都是至关重要的,所以需要做到实时的、多重的备份,避免一台存储设备故障后造成不可避免的数据丢失,可以使用类似企业内部的具有云存储功能的软件进行备份。云存储具有如下优点:①可扩展性。云存储往往具有无限扩展能力。按照目前的云存储技术来说,存储空间已经彻底不是瓶颈了,企业及个人不再需要担心空间不足而增加投资;②效率高。云存储的存储技术是非常先进的,比如多重备份、压缩备份、加密备份、重复数据筛选、虚拟化服务器、虚拟化存储、数据优化等,为企业和个人提供了各种高效的存储方案;③可恢复性高。本地磁盘中的数据被误删之后,恢复工作往往非常耗时。从云存储中的数据恢复则非常快捷,只需找到删除时间点然后通过广域网进行传输即可,既省去了本地设备控件,又节约了时间;④可复用性。建立本地磁盘存储需要大量的资金支持,而一旦出现灾难性事故,则所有数据不可避免遭受损坏。对于无力负担灾难恢复或者想降低成本的企业来说,通过云存储离线备份将是最佳选择。

2.2环境与设备管理软件工程项目自动化运行过程中,环境因素对硬件设备的影响是至关重要的,环境要保持干燥,避免尘土、烟雾以及磁场干扰,尽量消除噪音以及避免温度过高或者过低等等。在软件工程项目的扩展过程中,需要对第三方硬件设备进行仔细的考察,确定其是否能够和当前的系统以及项目兼容,并且应用了第三方硬件之后应当在一定时间内记录数据变化,以及时发现是否存在问题,若存在问题,要及时向有关职能部门汇报。若有必要将硬件设备进行调整更换,也必须在经过了严密的数据与逻辑分析之后,确定所需要更换的设备可行,向有关职能部门汇报后进行更换。除此之外,企业员工还应当遵循如下规定:①每个人对所分配的设备必须爱护与定期维护;②每个人只能使用本部门的设备,未经同意禁止跨部门使用;③所有设备未经授权时,不得自行拆、改、换任何配件;④未经同意不得擅自加入外来设备。

2.3软件测试管理软件测试管理是软件工程项目的结晶,是软件工程中的一个重要组成部分,对于整个系统都具有重要的意义,软件测试管理不仅仅能够拣选系统中出现的漏洞与错误,更是体现了在经过各种技术方法测试之后,对于软件工程项目质量提高的信心所在。但是个人的智慧总是有限的,开发者无法预先知道所开发的软件中有多少漏洞和错误存在,所以即便经过了测试阶段,依然不能保证软件中不再存在问题。不过,在通过了数次的软件测试之后,可以对软件系统中存在的一些问题以及可能出现的后果进行定性地评估,将出现错误的几率控制在可以接受的范围之内,这些都可以大大提高软件系统的可靠性,尤其对于医疗监控、航空航天系统来说,软件测试更是必不可少的环节。软件工程项目自动化测试相对于传统测试来说具有很多优势。自动化测试由一套逻辑缜密的测试标准组成,具有一套完整的自我测试过程,它可以在很大程度上避免个人习惯性思维所造成的疏忽,也可以减少传统测试中重复工作所带来的误差。同时,自动化测试是具有缜密逻辑的一套测试步骤,能够追踪到错误信息出现的时间与位置,并且进行场景再现。由此可见,自动化测试将给测试人员带来很大的方便,所以自动化测试也成为了提高测试效率与确保测试成功率的重点研究对象。常见的软件测试模型有CMM模型、TMM模型等。

2.4安全管理通常情况下,企业或公司内部所进行的软件工程项目自动化开发的数据都是属于该公司的内部保密数据,所以从开发人员到管理维护人员来说人人都必须遵守公司的内部保密规章制度,在未取得权限之前不得向外界任何关于保密数据的信息。在保密措施方面,可以在计算机设备中使用暗码,阻止不相干人员接触到核心数据,并且这种暗码的特性决定了它是很难被破解的;含有保密数据信息的工作间须安装监控摄像头,随时记录各个员工对于计算机的使用情况;计算机内部安装记录软件,使其保留每个员工的操作记录;含有敏感数据的计算机不得连接公共网络,需做到只连接内网或彻底断网运行。各种保密措施应用到位之后,基本上就可以杜绝因个人原因而导致的敏感信息外泄的可能性。例如国内著名的奇瑞汽车集团,其内网安全体现在“4个管理”上,即为外设安全管理、核心数据管理、互联网应用管理与应用程序管理。这4个管理关系着奇瑞内部员工工作的方方面面,能够有效阻止内部敏感数据信息泄露。数据信息在存储和传输过程中也面临着一些安全风险。通常来说,存储介质必须符合以下规定:包含敏感信息的移动设备必须由专人保管与看守;删除存储介质上的敏感信息后,必须对存储介质进行彻底格式化并且在存储区域填入无用信息对存储区域进行覆盖;存储媒介出入库的情况必须通过安全系统授权并保留记录;对数据信息的传输过程应采取对应安全级别的加密技术(对称加密与不对称加密等);敏感数据信息在传输过程中必须使用数字签名,这样可以使信息具备不可否认性。除此之外,还应当保证系统中计算机密码的安全性,密码安全应当遵循如下原则:采用大脑记忆密码,不得在书面媒介上出现密码,更不能出现在电子邮件中;不采用缺省密码;密码由专人设置记忆,不与其他人分享;若密码泄露,必须第一时间修改;密码强度要足够高;强制指定密码的有效期;禁止交互式登录;每周检查一次口令强度。

3总结

计算机软件工程项目自动化管理是一门学问。从宏观上来说,合理的硬件布局是整个管理体系的骨架,包括了机房的环境、计算机设备状况、网络状况等;从微观上来说,软件中的程序与算法是整个管理体系的心脏,程序与算法的优劣直接决定了自动化管理的效率。此外,测试环节必不可少,通过测试可以大大降低系统运行出错的概率。从进一步管理的角度来说,整个系统的安全性也是不容忽视的,需要从多个角度来考虑系统中的数据是否安全,并运用各种方法阻止数据的丢失或泄露。

作者:揣铮单位:天津青年职业学院

第5篇

A类学生集中表现是计算机专业素养强,其实践开发能力往往高于在校学生,甚至相当出色;B类学生具备计算机专业课程的理论基础,但由于从事非计算机技术类工作,实践能力相比A类学生较弱,同时因为各种原因(如:希望将来能有机会在信息技术领域或信息技术相关的市场销售服务发展职业生涯、实现专科到本科层次学历的提升等)选择继续学习计算机专业;C类学生从事计算机技术工作,但由于受以往专科学习知识结构限制,希望在继续教育学习过程中提高自己的理论知识水平,进而拓宽自己在信息技术领域的职业发展空间;D类学生对计算机专业的理论与实践水平相比前三类学生均处于弱势地位,但该类学生抱有希望将来能够从事计算机技术或服务类的职业发展设想,同时也希望通过继续教育学习过程来深入理解计算机专业理论和方法。E类学生学习目的最为盲目,往往是因为种种原因(提升学历、对目前职业不满意、对未来职业发展不明确)抱着尝试的态度而在继续教育中选修了计算机专业。通过上述分析,我们发现一个显然的事实:成人计算机专业教学,相比从普通高考直接进入高校学习计算机专业学生而言,成人学生对象对我们的教学的接受要求、接受能力、接受方法等都不一样。因此,我们有必要在充分考虑上述因素的基础上,结合我们在对高校在校生理论与实践的教学方法,针对成人继续教育特色对软件工程开展教学创新。

二、差异化的实践教学

(一)实践教学主要内容

针对学生的学习基础、职业背景与发展等特点,本文主要通过情景教学模式、以项目实践为载体引导学生自主探究性学习,提高学生分析和解决实际问题的能力。运用当前软件企业开发实践中流行的建模工具搭建软件工程环境,调动学生积极性,寓教于乐,加快对软件工程理论和方法的理解。具体实践教学内容包括:1.掌握软件工程中的统一开发过程、面向对象等思想、方法;2.以UML语言为核心,要求学生掌握用例图、时序图、协作图、活动图、状态图、类图等模型,尤其是掌握由用例图开始逐步建立类图模型的过程;3.软件的编程实现与测试。以教师引导、学生自学为主让学生复习程序设计课程,掌握NET、PHP、数据库编程、软件测试工具Nunit等,在UML模型基础对软件原型进行代码实现。

(二)分组实践

软件工程课程实践一般采用如下形式:学生以开发团队的方式协作开发一个具有一定规模的软件系统,运用软件工程理论和软件建模技术解决软件开发问题。和以往计算机专业课程实践有所不同,软件工程实践中不仅仅要训练、考查学生对软件开发中分析、设计、编码、测试等的实践能力,而且要注重学生团队合作共同完成软件项目的思想、能力的提高。所以,课程实践分组进行尤为必要。本文通过让学生填写课程实践情况调查表的方式,让学生对自己、学生与学生之间的专长、特点进行清楚认识,然后在教师的协调下进行实践小组的组队。在成立小组之初则明确成员在实践中所扮演的角色:分析、设计、编码、测试等,或者将项目进行功能模块划分,学生在不同模块的开发工作扮演不同的角色。

(三)实施步骤

本文按照软件生命周期、瀑布模型进行,以学生自主实践,教师全程参与指导的方式开展小组分组实践。具体实施步骤如图2。其中:分析、设计、编码、测试等角色由每个小组成员进行分担;组内评审由小组成员共同完成;组际评审由各个小组派出代表联合完成;教师的在每个步骤中给予小组成员理论、方法的指导,及在每个阶段工作的提交结点上和小组成员共同对阶段工作进行考核、小结。

(四)实施结果

我们选取40个学生作为教学实验样本,分为10个项目实践小组,每组4人。首先,通过学生填写分组情况调查表来了解学生的以往专业背景、当前从事工作类别、未来职业发展意向等信息。在这一过程中,让学生联系自己的课程学习情况对未来的职业发展进行了思考,促进了参与课程实践的热情。

1.大专阶段学习专业对实践内容选择意向分析

对大专阶段学习专业对实践角色选择意向的影响统计分析如图3。统计分析表明:大专所学专业为计算机专业的学生侧重于选择承担编码、设计工作,但选择意愿仍是比较均衡;大专所学专业为信息技术类的学生则偏重于选择测试、设计工作;大专所学专业为非信息类专业学生则偏重于选择分析、测试工作。进一步分析可知:以往的知识背景、专业对学生选择实践角色有着重要影响,计算机专业毕业的学生对实践角色所承担的工作认识较为全面,侧重于选择技术程度高的编码工作。

2.目前从事工作类别对实践内容选择分析

我们将学生目前从事的工作分类为:计算机类(软件开发、项目管理、测试)、信息类、非信息类。学生工作背景对选择角色的意向统计分析如图4。统计分析表明:从事软件开发工作的学生侧重于选择承担设计、编码角色;从事项目管理工作的学生偏向于选择承担需求分析角色;从事软件测试工作的学生偏向于选择承担软件测试工作;从事其他类别工作的学生(信息、非信息类)学生选择偏向于分析、设计、测试工作。

3.职业发展意向对实践内容选择分析

我们将学生职业发展意向分类为:计算机类(编码、分析、设计、测试、项目管理)、信息类、非信息类。学生职业发展意向对选择承担角色的统计分析如图5。统计分析表明:职业发展意向为编码(软件工程师、高级程序员)的学生侧重于选择承担编码、测试角色;职业发展意向为软件需求分析、设计、测试、项目管理的学生偏向于选择承担分析、设计、测试角色;职业发展意向为信息类、非信息类的学生偏向于选择承担分析、设计角色。

4.分组实践比较分析

第6篇

(一)模式创新要与专业特点相结合

软件专业学生的课程量非常大,平均每学期要选近十门课,周学时在30小时以上,并且要完成多个程序设计项目,因此,他们无法将太多的时间花在英语口语课堂上。面对这一专业特点,传统的英语教学法在提高非英语专业学生口语能力上虽取得了一定成效,但未能对症下药,因而也就无法从根本上扭转学生在口语学习上的被动局面。因此,进行英语口语教学模式创新,就要针对软件专业课程设计的特点,利用有限的学时,强调系统性和高效率,排除软件工程专业学生英语交流的障碍,从而提高学生的口语能力。

(二)教的创新性要与学的积极性相结合

课堂教学方法对语言教学效果的影响至关重要。由于认识到语法翻译法(theGrammar-TranslationMethod)、自然教学法(theNaturalApproach)[1]、情景教学法(theSituationalTeachingApproach)、交际法(theCommunicativeApproach)以及认知法(theCognitiveApproach)[5]等流派的主张虽各有可取之处,却都有某些缺欠和局限,一些学者和教师采用了兼收并蓄法(theElectiveTeachingMethod)作为外语教学法。清华大学罗立胜教授为大学英语设计了综合教学模式(aComprehensiveTeachingModel),季佩英教授探讨了如何用兼收并蓄法来实施《综合教程》的课堂教学[7,8]。但无论何种方式,其“教”的创新性必须要以学习者为中心,教师的角色必须从知识输出者转化为学生自主学习的引导者。教师首先应充分展示自己的激情,才能激发学生的学习热情;教师只有发挥自己的模式创新能力,才能真正调动学生积极有效地自主学习。

(三)教学手段的立体化要与规范化相结合

模式创新鼓励教学手段的多样化、立体化,但创新并不等于不要规范。模式创新不是信马由缰,不是脚踩西瓜皮滑到哪算哪,而是要积极探寻有效教学的基本规律,并遵循这一规律。尽管英语口语教学的方式方法因情境而变,因专业学科不同而不同,但无论怎样多样化、立体化,都有同类事物所具有的基本属性和共同特征。所谓将立体化与规范化紧密结合,就是要处理好“突破”与“遵循”的辩证统一关系,既要突破传统的、旧有的教学思维与教学模式,也要遵循教学基本规律,有教学计划,有业务流程,有效果考核。

二、教学模式创新实践

同济大学软件学院是国家教育部首批成立的国家示范性软件学院。经过十余年的探索与实践,该学院提出了“工程化、前沿化、国际化,基础理论与工程实践相协调”的人才培养教育理念,突出“国际化”的办学特色。为了培养合格的国际化软件工程人才,学院为大二学生开设了一个学期《英语交流》课程。对此,学院围绕“如何利用有限资源、利用有限时间最有效地进行口语教学”开展了教学模式创新实践。

(一)主要特点

概括起来,同济大学软件学院《英语交流》教学模式有以下几个特点:

1.情景创造《英语交流》上课前,学生进入教室后禁止使用汉语,而是开始朗读英语材料,或用英语交谈。上课后,首先由两名学生用英语报告新闻,其他同学可以提问,从而营造了语言交流的氛围,使学生自然地进入学习状态。主讲教师随后引入当天的教学内容,介绍背景,或讲述情节,指出关键词汇和短语。通过师生问答,使学生了解当天要学习的文章内容(到此时学生手里还没有拿到学习材料)。这时教师开始逐句地讲述,学生则高声模仿。这一过程能有效帮助学生自行矫正语音语调,并且形成新的语言习惯。经过三到四遍的“学说话”,多数学生已能借助屏幕上的提示语完整地复述整篇短文,从而增大了其语言内存。接下来强调输出,主要采取有学生积极参与的课堂活动的方式,如复述故事(要求变换人称等)、就故事内容互相问答、扮演事件中角色或展开辩论等,以提高学生口语交流能力。每篇短文还附有十个相关的句子,其中很多句子都是有用的句型可供替换使用。此种方法设计融合了几种传统教学法的优点,通过学生严格地复述,将正确的语言材料输入记忆库,再活用这些语言素材,尽量正确而地道地表达思想。这是一种从极端操控(manipulation)到完全自主交流(communication)的过程。我们鼓励学生通过想象“创造”情景自由地表述,将所学融会贯通。

2.无书教学,增加内存以保证输出《英语交流》设计了一种独创的无书教学法(theBooklessApproach),上课时不发教材,学生犹如儿童学话,跟着老师逐句模仿,直到基本记住。这种做法的好处是一方面能有效校正学生的语言语调,另一方面迫使学生全神贯注,积极参与。它能最大限度地调动学生的视、听、说、想等各种官能,经高强度的反复操练,通过记忆短文及相关句子,以及与场景相关联的语汇,来增加学生的内存储量,从而保证其有效的输出,即口头的顺畅表达。扩大内存、强化记忆的必要性早已在学术界得到专家的认同[10]。在教学中强调,英语句子往往是表达语义的最基本单位,所以这些句子也同短文一样,要求学生全部记住。为了更好地巩固所学,每次下课前预留几分钟,随机抽取学生就指定话题作简短发言,由教师点评,并计入平时成绩。此时,教师才发下当天所学的材料,供学生复习、熟记,并有专门老师负责检查学生的背诵情况。

3.交互协作《英语交流》课堂特别强调互动,因为语言课堂上的一切教学活动都应是通过人际互动发生的。互动包含了培养交际能力的一切要素[12]。教师应采取尽可能多的手段创造仿真情景使学生参与互动,用标准的英语进行表达。在这点上有很多学者提出过很好的建议。《英语交流》课堂采用的问答、复述、辩论、角色扮演等方式占比很大,使学生有更多的时间来参与实践,学以致用,不断提高。

4.兴趣拓展《英语交流》的教材选用60篇短小简易的文章或故事,内容是人们常常谈及的话题,如工作,学习,家庭,情感,健康,治安,灾害,天气,环保,交通,传媒等,文风口语化,便于诵读与记忆。由于长篇大论引人生厌,而艰涩的文体学生无法上口,即使耗时费力地勉强背下来也难以应用,因而在选材时既要注意让学生感兴趣,还要给他们留下自主发挥的空间。同时,每篇配有10个相关句子,材料力求口语化,以便学生熟记句型,可以替换变通,灵活使用。每篇材料自成一页,便于课上分发。与此同时,还把短暂的课堂教学延伸到学生的各种文化和学习活动中,包括每学期组织学生举行英语演讲比赛、电影配音比赛或英语晚会、与国外留学生组队做专业项目开发等,以此校验教学效果,激发学习热情,营造语言应用环境。通过采用这些有效的手段,学生用英语进行交流的能力有了很大提升。5.360度考核教学评价及考核手段是教学设计的一个重要部分,其目的是促进“教”与“学”,保证教学的效果。《英语交流》课程的总成绩不由一次考试决定,而是由多项指标加权而得,包括出勤、平时成绩、背诵检查、期中考试、期末考试等。这些指标的设计核心是对英语交流能力的评价。学生报告新闻、演讲、课堂问答等均计入平时成绩,另外,课外活动的参加者和获奖者还可获得加分。在确定期中和期末考试的形式时也考虑到充分展示学生的英语表现力。期中考试一般要求学生就自选题目作三至四分钟的演讲;期末考试采用的是一对一面试,学生即席朗读抽中的文章,并就文章内容回答教师的问题。这样的考核形式在开学伊始即已向学生讲明,能够最大限度调动学生的学习积极性,使不同程度的学生受益。

(二)教学效果

《英语交流》课程开设至今,积累了十余年的教学经验,教学效果显著。尤其在双语专业课教学和学生参加国际交流项目方面,表现尤其明显。选修过《英语交流》课程的学生无论在英语交流能力上,还是在职业素养和学习能力上都显示了突出的优势。从近年学生《英语交流》课程的考核成绩统计情况来看,优良率稳步上升,中及率持续下降(详见图1),更多的学生用英语进行交流的能力有了大幅提升。有多名学生还考取了由上海高校继续教育中心和上海紧缺人才培训办公室颁发的英语中级口译证书和高级口译证书。一些学生参加重要赛事并取得优异成绩,并在全国大学生英语竞赛中荣获一等奖、特等奖等奖项。建院至今,同济大学软件学院与北欧、北美等十余所知名院校建立了广泛的国际合作伙伴关系,学院参与国际交换的学生达250人次之多。这些被派出的学生,对国外学习和生活环境适应得非常快,在项目沟通和团队协作方面受到对方高校和导师们的一致好评和广泛赞誉。在教学质量评价方面,2012年学院教学质量考核中,《英语交流》课程在春、秋季两学期分别取得了第4名和第1名的好成绩。据统计,2006年至今13个学期,除2个学期没有相关统计数据外,其余11个学期学生评教成绩全部为优秀,且分数均在9.4分以上,其中1次10分,8次9.7分以上,可见《英语交流》课程教学已得到全院师生的高度认可。教学教改研究四、几点启示

1.加强教学模式创新,不断增强创新意识。创新意识是指一个人根据社会和个体生活发展所需,引起某种创造动机,表现出创造的意向和愿望,是人们进行创造性活动的出发点和内在动力。增强创新意识,关键在于教者要深入了解教学实际,深入了解当前存在的问题,如软件工程学科的特点和学生的学习特点,并针对当前英语口语教学中存在的问题,积极开动脑筋,善于发现问题,破解难题,增强解决问题、有效教学的责任感、使命感和紧迫感。

2.加强教学模式创新,要不断培养创新思维。教育工作者要善于打破常规,突破传统观念和传统模式,使自己的思维具有独创性和前瞻性。如对于软件工程的英语口语教学模式,要克服封闭的、陈旧的学科观念与教学观念,围绕有利于激励学生学习兴趣,有利于促进英语能力提高,采取灵活多样的、立体式方法,从而促进教学向学生全方位开放,向未来开放。

第7篇

1.1构建迭代优化的教学模式

(1)更新教育理念,采用基于CDIO的软件工程教育模式。

参考当前国际工程教育改革的最新成果,按照构思(conceive)、设计(design)、实现(implement)和运作(operate)的流程将从研发设计到生产运行的完整生命周期作为实践教育的载体,让学生以主动的、实践的、课程之间有机联系的方式进行学习。浙江大学软件学院结合该教学模式和原有政产学研合作优势,注重培养学生的工程创新能力、职业技能和素质,探索出适合软件工程专业教育的新方法。

(2)紧跟行业动态,持续优化专业教学内容与课程教育体系。

学院持续不断地将最新技术引入课堂教学,每年都会根据当前热点技术调整教学计划,甚至设立新的专业方向,使得学生能够在第一时间掌握热门技术,从而在实习、就业中保持竞争优势。例如,为顺应移动互联网发展潮流,学院设立了移动互联网和游戏开发技术方向;近期为了将云计算、大数据等热门技术引入课堂,学院正在筹划设立云计算、大数据处理等方向。

(3)加强校企合作,建立以就业为导向的校企合作联动机制。

学院结合多方需求,将更多的企业力量引入到教学体系中,使他们参与到课堂教学、课后实验、项目实训、科研创新、实习创业等教学和实践环节中。为了增强企业参与教学的积极性,学院教师团队密切研究跟踪大型软件企业的发展方向,找到教学内容与企业发展方向的契合点,同时结合企业在用人方面的需求进行针对性培养,形成互惠共赢的局面,建立长效合作机制。

(4)提高教师素质,形成具有“双师型”教育能力的专业教师队伍。

学院青年教师均具有博士学位,多年学术研究的经历使他们具有扎实的理论功底,但工程实践能力比较欠缺。通过加强与社会及企业的合作,我们将更多的实际开发项目引入到实验室,同时也将部分教师安排到知名企业中进行交流,在实际项目中锻炼和提高教师的技术应用能力,逐步形成了一支理论知识丰富、应用技术过硬的“双师型”教学队伍,从而使得培养的学生具有理论功底扎实、动手能力强的特点。通过迭代优化,课程体系得到及时更新,教师项目经验得以不断增强,企业参与教学获得持续动力。教学内容变得全面而立体,理论与实践并重,动手与互动并行,形成了互动式立体化软件工程教学模式。在课堂教学、课后实验、项目实训、科研创新和实习创业5个重要教学环节中均以学院专职教师为主、企业兼职教师为辅,双方共同参与的形式进行。大量的互动交流增强了学生解决实际问题的能力,使学生在毕业时已具备参与实际项目开发的能力。互动式立体化教学过程如图2所示。

1.2主要创新点

1)基于迭代的方法对教学体系的主要环节进行持续优化,形成了软件工程教学的新模式。

根据技术发展趋势和市场人才需求,我们对教育模式、课程内容、实践教学、教学方法等方面进行改革,按照更新教育理念→优化课程体系→强化校企合作→提高教师素质的过程进行循环迭代,持续不断地改进每个环节中出现的问题。经过多年的探索实践,结合国际先进的工程教育经验和原有资源优势,最终提出了面向复合型应用人才培养的互动式立体化教学模式。

2)基于国内外最新科研成果和技术动态,及时融入前沿知识,形成立体化课程体系。

我们紧跟国内外技术前沿,动态调整专业方向,淘汰落后方向,设立新兴方向,采用系统科学的方法,按照自顶向下的方式对培养目标和课程内容进行设计和优化。将每个方向的教学课程分为公共基础课、专业基础课和专业提高课3个层次,分别注重拓宽基础知识领域、强化专业应用技能和普及前沿技术热点,形成分层次立体化的知识体系结构。

3)基于学校教育与企业利益的结合点克服校企合作困境,建立三方互动的教学机制。

我们结合知名企业发展方向和人才需求对部分课程内容进行调整,大大提高了企业参与教学的热情。我们对课堂教学、课后实验、项目实训、科研创新、实习创业等教学环节进行精心设计,安排学院专职教师和企业兼职教师共同参与,前者注重理论授课和过程管理,后者注重实践指导和经验分享,以此建立学院教师、企业工程师、学生三方互动的教学机制。

4)基于校企双向互动机制

提高学院教师工程实践能力,理论与实践并重,弥补课堂教学的短板。我们通过产学研平台的建设加强学院教师与企业工程师的互动交流,鼓励教师经常参加知名企业组织的技术研讨会,直接参与企业人才培训和工程项目开发,将更多的实际项目引入到学校实验室,带领学生一起完成开发任务;增加学院教师的实际项目经验,增强他们的“双师型”素质,使他们在教学过程中能够理论联系实际,培养学生动手解决实际问题的能力。

2互动式立体化软件工程教学模式的实施

互动式立体化软件工程教学模式在新专业方向建设的过程中取得了良好的实践效果。以下将以移动互联网与游戏开发技术方向的设立和教学实践为例介绍这种新型教学模式的具体实施过程。

2.1移动互联网与游戏开发技术方向的设立

近年来,数字娱乐和移动互联网产业得到了各级政府部门的高度关注和支持,并成为目前市场投资和开发的热点方向。大量游戏和移动互联网公司的高速成长预示着市场对本方向人才的巨大需求。为顺应市场发展的需要,浙江大学软件学院成立了移动互联网与游戏开发技术方向,与微软、巨人网络等知名企业合作建立移动互联网应用研究中心,进行合作教学和实训、实习指导。在软件工程培养体系下,移动互联网与游戏开发技术方向通过课堂教学、项目实训和公司实习等方式,形成了鲜明的特色和技术优势,重点研究方向包括:移动互联网应用开发、游戏开发、数字娱乐、人机交互等。教学注重课堂、实验室与产业界的无缝结合,注重强化训练学生的动手能力、设计能力、沟通与整合能力、创新能力以及领导能力等,使之逐步具备国际化视野。本方向围绕移动互联网应用开发、游戏策划与开发、用户体验与交互设计等领域开设具有鲜明特色的课程。授课以开发技术为主,交互设计为辅,面向当前信息技术产业的热门领域进行有针对性的人才培养,为国内外知名的互联网公司和游戏公司培养高水平的骨干人才。

2.2教学与实验环境建设

浙江大学软件学院对移动互联网与游戏开发技术方向的建设给予了充分的支持,分配了专门的实验室和实训室,配备了数十台苹果一体机和图形工作站。实验室拥有可靠的Internet网络环境资源和丰富的电子资源,浙江大学图书馆提供了丰富的学术资源库,如ACM、IEEE、Springer、Elsevier、万方、维普、中国专利库、美国专利库、欧洲专利库等,为学生进行文献搜集、国内外研究进展跟踪等提供了便利条件。通过引入知名合作企业,学院先后成立了数字媒体技术实验室、微软移动互联网应用研究中心、巨人技术中心等联合实验室,并获得了合作企业的手机、图形工作站等硬件支持及Windows正版软件、游戏引擎等软件支持。实验室建设旨在基于与知名企业的教学互动,培养学生理论和实践相结合的能力。学生通过实验设备可熟悉Mac、Linux、Windows、iOS、Android等开发环境的建立和使用,使自身的开发能力得到良好的锻炼。

2.3课程体系建设

为了紧跟当前技术动态,学院主要专业课程的教学大纲每年都会跟合作企业商讨调整,使教学内容始终保持领先。移动互联网与游戏开发技术方向软件工程专业硕士的课程体系包括英语、自然辩证法等公共课,软件项目管理、系统分析与设计等基础专业课以及移动互联网应用开发、游戏开发等特色专业课。每门专业课的授课均强调理论与实践并重,教学过程分为课堂教学和课后实践。这里以游戏开发关键技术课程为例展示授课内容。

2.4校企合作的推动

通过校企合作的方式进行工程专业人才培养已经成为广大工科院校进行教学改革的重点内容,这种培养方式也得到了学生的热烈欢迎。然而,由于现行学校机制、教师观念、资金问题以及企业不愿意投入太多等原因导致目前校企合作教学面临困境。浙江大学软件学院经过多年探索,找到了一条产学研合作进行互动教学的道路,充分调动了企业参与教学的热情和积极性。这从上一节中移动互联网与游戏开发技术方向主要专业主要专业课程设置及教学内容就可以证明。之所以能做到这一点,主要原因包含两个方面:

(1)研究知名企业发展战略,将教学内容与企业技术发展推广方向相结合。

知名企业是行业技术的引领者,一些前沿、高端技术往往由这些企业提出,他们有推广自身新技术的需求,而高校是推广新技术的最佳场所,及时与这些企业取得联系就很容易将企业工程师请入课堂。例如,在移动互联网与游戏开发技术方向的教学中,微软不但提供了设备支持,还派出了数名资深工程师进行现场授课。

(2)了解中小企业的技术要求,将学生的实习就业与企业用人需求相结合。

中小企业是行业技术的追随者,他们不愿意也没精力去主动推动一些新技术的普及,但这些企业的发展需要大量人才。而高校是最大的人才聚集地,从满足企业用人需求的角度出发也很容易建立合作培养学生的关系。例如,在移动互联网与游戏开发技术方向的教学中,杭州无端科技、上海毅睿网络等公司通过设立实训项目的形式对教学进行了支持。

3教学模式应用效果

1)招生数量逐年增加。

移动互联网与游戏开发技术方向研究生招生数量近年来持续增加:第一年为33人,第二年为84人,第三年为91人。这说明新的教学模式对学生产生了持续的吸引力,相信该模式对其他院校软件工程人才培养也将产生良好的借鉴意义。

2)课堂教学成果更加丰富。

将知名企业引入到学院教学中,丰富了课堂教学内容,企业工程师与学生形成良好互动,学生也做出了更多有创意、有技术含量的作品。例如,学生学习WindowsPhone应用开发技术课程,完成数十款App的开发,并成功到了应用商店;游戏开发关键技术课程学生也分组完成了十余款跨平台游戏作品,并到了多个应用商店。

3)科研创新成果突出。

经过学院教师和企业工程师的联合授课,很多学生已经具备了参与实际项目开发的能力。一些合作企业会将合适的项目放到实验室由学院教师带领学生完成开发,这进一步促进了校企合作,形成良性循环。近年来,以学生为主力开发完成的项目包括:宁波团市委“最青春”、仁通科技牛扣网及客户端、兰州智慧旅游、智慧医疗手机客户端、宁波海关移动办公、机器零件互动展示等。

4)科技竞赛成绩显著。

学院鼓励学生积极参加各类科技竞赛和程序设计竞赛,使学生既锻炼了动手实践能力,又提高了创意设计能力,同时培养了团队合作精神。例如,软件学院有多支队伍报名参加一年一度的微软“创新杯”全球学生大赛,每年都有队伍晋级中国赛区半决赛,并多次获得了中国赛区三等奖等奖项。5)实习就业效果良好。学院通过互动式立体化软件工程教育模式进行专业学位研究生的培养,学生的实习就业质量得到明显提升。2012—2014年,学生实习率每年都达100%,进入一流IT企业实习的比例保持在70%左右。毕业生就业率每年都达100%,毕业生进入世界500强和重点企业的比例也在逐年上升。

6)地方人才教育和产业水平得以提升。

该专业方向有多门专业课程入选宁波市智慧产业人才基地核心引导课程和宁波市数字图书馆网络视频公开课,每年考核结果均为良好以上。学院教师还面向宁波其他高校和企业举办了移动互联网开发技术等专题培训,提升了宁波人才教育和产业水平。

4结语

第8篇

传统的软件工程方法一般都具有结构化样式,包含多个程序构件,需要将问题概括定义。然后对该问题的解决方法的工程实施过程进行必要性和可能性的综合分析,分析此工程方法所要满足的要求,在分析基础上对应用方法进行系统性建构。建构整体完成后,再分层次进行详细的内容建构,总体建构及层次建构完成后,就可编写软件代码,最后检测软件性能是否能够满足要求,以便对不合理之处与弊端进行修复以及维护。在这样一个复杂的过程中,需求分析是关键步骤,只有了解需求,将大众需求切实反映在软件中,才能开发出成功的产品。其次,系统建构也非常重要,从整体建构到层次建构,都应以需求为基准进行设计,再结合相关软件数据,具体问题具体分析。可供选择的建构方法有这样几种:数据流动图像、数据关系图、状态图等。结构图主要应用在建构程序中,是系统建构的常用方法,程序图表的编码方式则在层次建构中经常使用到。

2现代工程方法的内容与特点

现代软件工程方法之所以超出传统方法,主要是因为它针对的是具体对象,即面向的是具体存在的问题和弊端,这一点,完全克服了传统软件工程方法的缺点和不足。现代软件工程方法包含五部分,分别是分析、设计、编码、测试、维护。这几部分虽与传统工程方法大同小异,但细比较便可发现现代工程方法的优点。在分析部分,传统工程方法主要是笼统地分析,没有具体的面向对象,而现代工程方法则是分析现实事件的具体问题,因此,具体问题的性质可以更好地反映事件的性质。在设计部分,面向对象主要是系统中的具体时间。传统软件工程方法单一无序的状态使得设计的软件没有突破,没有适应发展的迁移性,现代软件开发方法摒弃这种自发式状态,采用更为先进的模块式开发方法,引进先进技术,维护系统正常运行,同时能及时对软件问题进行修复。模块式开发方法更适合现代经济的高速发展,更能适合大众需求的日新月异,更能满足不同群体的需求。这种方法具有超强的适应性,因此更具有稳定性,一旦软件出现问题,能及时修复,一旦有新的需求出现,也能及时优化性能更新换代,大大降低了软件开发失败的风险。富含高技术的方法还可以整合计算机资源实现资源共享,而且只要将模块定义,在系统允许下可以重复利用。

3现代工程方法的有效运用

3.1现代软件方法的适用局限性

软件体系结构决定着软件适用的工程方法,主要依靠数据库进行数据分析的软件体系结构是指软件的分层结构,比如C/S结构。现如今,传统的数据库管理系统还具有相当的适用性,其在现代数据管理系统还未成形的今天仍然发挥着举足轻重的作用。传统的数据管理系统在数据存储、数据共享、数据保障以及故障维护等方面都有着很好的效果。特别值得注意的是在结构化语言查询方面,其不但不会损害整体性查询,在高水平查询上同样能够完美实现,这是现代管理系统不占优势的地方。现代管理系统优势凸显于具体的数据储存与操作方面,比如表结构的处理方法,传统软件工程方法在运用时会有所扩展,导致表述模糊。

3.2现代软件开发的工程理念

软件应用脱离了早前的局限性,在各行各业都得到有效应用,餐饮业、服务业以至于医疗卫生业都能将软件运用发挥到极致,大大提高了行业的生产效率,取得了前所未有的效果。同时,利用软件的资源与信息共享功能可以在各行业建立标准的操作规范,统一行业的操作程序。只有在软件开发过程中树立现代软件开发的工程理念,才能顺利进行软件开发和应用。以医疗卫生业为例,通过大量引进现代软件进行信息管理和操作,不仅规范了医护人员的诊断操作行为和疾病检查,还可以对疾病及时有效地进行监督和管理。引进的软件不仅仅局限于资料信息的管理系统,还有与影像资料存储与共享、通信内容等相关的信息管理软件。以病理信息管理的软件开发为例,这种软件的主要作用就是将病理分析情况如实收入软件中,从而对该数据资料进行长期有效的存储。这种软件的操作简单易学、分工明确,是模块化处理方式的最简单应用。需求性直接决定软件实用与否,因此,在开发之前,必须对软件的需求性和实施的可能性进行详细的调查研究与分析。如果软件公司开发新产品之前没有进行需求和可行性分析,必然导致软件的适用性不足以应对大众需求,不能够很好地适应具体情况,给开发者造成不必要的损失。此外,在软件开发时,开发公司应该对整个工作进行协调一致的规划安排,各工作人员应明确分工,尽量规避工作中出现环节空缺或重复的情况,避免开发过程中出现混乱不堪的状况。

4结语

第9篇

学生可以在教师的帮助下在于同学的互动中主动学习,避免了传统课堂的单一教学形式对学生积极性的影响。寓教于乐的教学视频也可以提高学生在课下主动学习的积极性,为知识传授提供了新的形式。

2软件工程专业的翻转课堂教学模式

软件工程专业课程的特点是基础理论较为抽象、对学生的创新能力要求较高。目前各高校的软件工程专业课程都有专门的实践教学环节,但仍离不开理论知识的讲解和思维方式的训练,这些都导致学生积极性不高、教学质量下降。哈尔滨师范大学软件工程专业在研究翻转课堂教学模式和本专业课程特点的基础上,提出了一个适用于软件工程专业课程特点的翻转课堂教学模型。在软件工程专业的翻转课堂教学模式中,学生课前观看教学视频学习理论知识,通过和教师的即时交流完成知识学习;教师则根据学生的反馈统计课程的开展情况,酌情安排课上时间分配。在课上的教学环节中,教师首先集中讲解学生反馈的疑难知识点,对重点内容进行简要归纳,然后根据课程内容和教学统计结果提出实践学习内容。学生自由分组创建实践团队,按照软件开发过程的要求进行分工和调研,最终在教师的指导下完成一个具有项目特征的实训工作,提交相关的设计文档和研究成果。教师的课上任务就是点评提交的成果,总结学生的表现,解答学生实践过程中的问题等。

3软件工程翻转课堂云计算教学平台

翻转课堂教学模式需要一定的技术和资源支持,云计算环境无疑是最佳选择。经过不断的探索和研究,哈师大软件学院构建了一个基于云计算环境的翻转课堂教学平台,包括课堂软件开发、课前理论学习、运行管理和教学评价等模块。

3.1软件开发模块

软件开发模块体现了翻转课堂中实践教学的具体内容,是整个教学平台的核心功能模块。按照软件工程对软件开发生命周期的定义,软件开发模块分为项目规划、需求分析、系统设计、代码实现和系统测试等教学过程。在一个项目目标的规划内,每个教学过程都对应前后关联的任务、文档和成果。实际的教学过程是学生登录云计算平台进行实际的软件项目实训练习,以团队的方式完成项目,编写文档和提交成果报告。教师也要登录云计算平台全程监控和指导。云计算教学平台的教学资源库是通过深化校企合作得来的,所有的案例都来源于真实的软件开发项目,学生甚至可以在企业项目经理的指导下通过教学平台进行真实项目的开发。软件开发模块结合了翻转课堂、任务驱动和校企联合等面向应用的教学模式,体现了“工学结合、顶岗实习”的软件工程专业课程实践教学理念。

3.2理论学习模块

理论学习模块是体现翻转课堂模式课前学习的功能模块,该模块的主要功能包括教学视频、课前训练和课程统计等。教学视频功能的资源都来自国内知名高校的公开课,并且具有快进、回放、重放、暂停等播放功能,便于学生自定义课前学习。课程教学视频的内容、视觉效果、互动性和长短都要根据学生的学习效果定期调整,不仅要保证教学内容和课前学习的目标吻合,还要突出教学重点和难点,方便教师和学生的课前交流。课前训练功能是在每个教学视频播放前设置一些教学问题,让学生在观看视频时寻找答案,在视频结束后学生要根据提示进行简单的问题解答和知识训练。课程统计模块可以统计学生观看视频和回答问题的情况,有效提高教学的目的性。除了上述3个主要功能外,教学平台还提供了方便教师和学生交流的论坛,所有与课程相关的讨论和问题都可以在论坛上交流和解答。

3.3运行管理模块

运行管理模块是部署在软件工程翻转课堂云计算教学平台云端应用服务层中,将各种即时通讯、视频播放和在线论坛等应用集中封装的服务层次。具体的功能包括项目管理、学生管理、资源管理和师生沟通等。

1)项目管理子模块。

项目管理模块用来保存学生的实训成果和相关报告。该模块具有文档在线编辑和软件展示功能,可以根据课程类别和章节提供在线的实训环境和展示服务。学生在课程进行中提出的问题也可以在项目管理模块,由任课教师或企业专家在线解答。在实践教学中,教师可以通过项目管理模块掌握所有学生团队的项目进展情况,并通过在线成果交流来提高实践教学的教学质量。学生在项目管理模块中能够即时了解本队同学和其他团队学生的开发进度,这不仅有助于提高团队内部的沟通和协作,还可以通过比较和竞争提高团队凝聚力。

2)学生管理子模块。

学生管理模块用来监控学生的课前视频观看和课中实训练习状态。学生课前的视频教学是独自进行的,有效的教学监控是保证出勤率和质量的重要因素。学生管理功能不仅能监控学生是否观看了视频,还能知道他们观看了哪些视频,哪段视频的播发次数最多、时间最久。这些监控数据对教师掌握学生课前学习状态有至关重要的作用,教师可以通过在线统计获取课前学习数据,也可以在线设置各项参数自动获取指定人员和章节的统计数据。对于课中的实践教学,学生管理模块也可以获取学生团队的练习资料,比如项目进展情况、资料是否齐全等,这些数据可以为课后评估和项目管理等模块提供有效数据支持。在课程结束后,学生成绩也通过学生管理模块统计和查询。

3)资源管理子模块。

资源管理模块用来存储和维护云计算教学环境中教学资源。教学资源包括理论学习视频、课堂项目资料、软件开发资源和企业开发知识库等。这些资源的质量决定了教学的质量和效果,比如理论学习视频是否寓教于乐直接影响学生的学习积极性,课堂项目资料是否具有针对性直接影响教学的应用价值,企业开发库的资源是否有效直接影响学生的实际工作能力等。资源管理模块不同于传统的软件资源库,它具有在线文档编辑、视频制作、网络资源搜集等高级功能,可以实现对已有资源的改进和创新,也可以实现网络资源的汇总和摘选。另外,通过和一些国内知名云供应商的合作,我们还构建了包括软件开发云环境、企业软件项目库和软件开发技术资料库、软件开发文档模板库等在内的高级应用型软件开发资源平台。

3.4学生评价模块

学生评价模块对学生学习过程和教师教学过程的评估打分。其中学习过程根据翻转课堂教学模式的要求分为课前理论学习和软件开发实训两部分:课前理论学习主要包括视频观看、作业完成、课堂交流表现等方面的评估;软件开发实训则是通过对项目成果和研发报告的评估来获得分数。这两部分分数按照一定比例折算成学生专业课程的课程分数,和期末考试笔试成绩一起考核。对教师教学的评估则通过课程中的表现定性评价,评价的指标包括在线时间、操作频率、交流次数和学生打分等。

4实施效果

基于云计算环境的软件工程专业翻转课堂教学经过4个月的试运行,取得了显著的教学成果。使用云计算平台的学生在知识认知和技能实践等方面的能力比往届学生有较大提升。学生可以通过线上交流和团队合作完成开发任务,教师可以通过在线审核完成教学任务,基本达到了云计算平台的设计目标。为了进一步掌握云计算平台的翻转课堂教学模式的实践效果,通过校内走访和问卷调查等方式深入了解学生的学习积极性、动手能力和计算思维意识。结果显示学生对这种寓教于乐的教学方式普遍认同,对自身知识掌握和动手能力的提升感到满意,教师则对系统带来的丰富教学资源和低成本办学模式感到满意。

5结语

第10篇

1数据挖掘技术

常见数据挖掘技术包括:分类树技术、关联发现技术、聚类技术、人工神经网络、最优集合规约技术以及可视数据挖掘技术等。软件度量数据往往具有多维度、高耦合性,软件工程数据挖掘中会采用一些特殊处理技术,包括统计分析、回归建模、分类树以及神经网络等。在具体软件工程实践中,选择何种挖掘技术,其决定性因素为想要达成的目标。

2数据挖掘实现过程

通常,数据挖掘过程包括4个步骤,即选择数据、预处理、实施挖掘以及吸收数据。数据挖掘整个过程具有交互性,有时数据需要重新选择,有时也要对数据预处理进行改进,也可能出现算法反复被调整现象,基于这种特征,数据挖掘时要设置反馈环。挖掘数据第1步是将管理和目标反映到1个(或多个)挖掘任务中,整个过程可主要划分成为六种:1)评估、预测。评估包括对软件产品、过程以及资源的属性进行相应检查就是整个评估过程,同时也需要根据这些属性,赋值给未知属性,当然这些未知属性需要进行量化。评估工作完成后,要对属性值进行预测。2)分类。检查1个特定实体属性,根据结果将其划分到另1个类别或范畴(事先定义好)中。3)关联发现。关联发现能够识别出特定内容中互相存在关联某些属性。如,可将找出在软件开发属性和产品属性相互关联的内容找出来。4)聚类。将1个结构不相同的群体划分到另1个具有相同结构的子群集合中,这个过程叫做聚类,它的划分依据是成员之间具有高度相似性。5)数据可视化。数据可视化是利用可视化描述方法来定义复杂信息。6)可视数据探察。可视化数据探察是对描述工作的相应拓展,可利用数据可视化交互控制来分析和检视海量数据[3]。它应用具有可视化功能和数据挖掘技术来对数据进行处理。

3挖掘技术在软件工程中应用

上文提及到软件工程度量,部分可利用信息已在海量数据中被提取出来,但普遍认为更为有效且数量众多的数据依然在软件工程相关数据库中隐藏,而没有被发现。实际上,数据挖掘就是1种被公认为提升软件工程度量的技术。图1为数据挖掘在软件工程中的应用。

3.1数据挖掘繁荣原因1)计算机硬件系统和软件系统的基础设施建立具备发现驱动、分析数据等功能;2)每种技术都在实际应用中不断得到改进,其使用能力不断提升。如,模式识别、神经网络等有明显进步趋势;3)数据存储、贮藏、集成成本不高,海量数据可轻松获得。数据挖掘技术被人们认识,并在实践中逐渐被重视,同时也给研究和进一步提高数据挖掘技术提供了便利条件。

3.2面临挑战软件工程自身存在很多数据上的特殊性,给数据挖掘领域研究工作带来制约和影响,主要表现在以下三个方面:1)数据复杂。软件工程数据主要分为两个组成部分,即结构化数据、非结构化数据。结构化数据主要包括缺陷报告、版本信息等内容,而非结构化数据则包含数据代码、相应注释以及文档等内容。结构化数据、非结构化数据并不能同时适用一种算法,而且两种数据间还存在对应联系。如,1个缺陷报告中往往包括缺陷代码段。而结构化数据里常常涵盖部分非结构化信息,非结构化数据中亦是如此,这也是今后工作中需要重点解决的问题之一。2)非传统分析存在局限。数据挖掘最终想实现的目标就是将转化而来的信息传达给用户,实现信息共享。传统数据挖掘技术在使用过程中,信息手段比较单一,如文字、图表等表达形式。其实,软件开发商对信息的要求很高,1个统计结果根本不能满足其工作需求。为促进软件开发不断向上发展,开发人员需要相关信息作为参考依据,包括开发实际案例、编程所需模板、系统缺陷定位以及软件结构设计等。研究数据挖掘技术,提升其实际使用功能,需要不断提交新信息、新知识,并改进相应手方法。3)挖掘结果评价标准不够具体。软件工程数据挖掘尚未形成完善的结果表示体系,其评价体系也有待加强。人员在软件开发过程中需要大量信心,这些信息非常具体且复杂,表示方法不尽相同,互相之间难以做出对比,也很难用定量方法去分析挖掘结果。

4结束语

“数据挖掘”是在发展过程中被人们定义的,但软件工程中对此类数据的研究早就存在。数据挖掘技术能够为研究软件工程数据提供方便,具有重要应用价值。因此,笔者认为将两者充分结合是计算机信息技术发展的必然趋势。若以过程角度来看,软件工程涉及到数据挖掘各个周期、阶段,甚至是具体实施步骤;以技术角度看,数据挖掘在软件工程中应用广泛。数据挖掘技术虽然在实践中取得一定应用效果,但还有更广阔的空间没有内充分挖掘出来,为广大从业人员提供创新空间。

作者:贺玮单位:同济大学软件学院

第11篇

1我国三维算量软件的应用现状

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

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

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

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

三维算量软件在工程管理中的应用很多,其主要体现在工程管理中的工程造价及施工过程等方面。首先,我们要对工程基本特征和性质进行定义设置。如对计量模式的设置,它就包括工程名称、需要采用哪种计算规则、套用什么类型的定额等,而楼层设置包括楼层的标高和层高、有多少楼层等,只有这样,才能使之后的图形绘制和工程量的计算的准确度得到保证,使工程费用得到合理利用,才能有效控制成本。其次,我们可以根据纵横轴网和施工图的点位信息,确认出柱的位置,然后根据柱之间的轴网生成梁,而在柱和梁围生成的空间范围生产相对的板,接着根据板的边线生成梁和墙,同时在墙上设置出门、窗等位置,这样建筑的基本框架就可以产生了。最后,我们根据框架结构对立体封闭的区域设置天棚、屋面、地面等建筑部位的工程量信息。最后,我们可以根据楼梯、建筑等其他构件对参数进行定义,待一切数据结束之后,三维算量软件系统便开始对工程进行自动统计分析,大概一分钟就可以完成成千上百的分部分项工程量的计算,从而获得我们所需要的各种数据,如砖砌体的体积、梁、板、柱的砼体积等数据。

工程施工过程中,三维算量软件的应用范围则比较广泛,一般情况下,在进行施工阶段。首先,三维算量软件可以对工程的施工量进行计算。在工程管理过程中,每一项工程完成后都需要对总体工程量进行分层和分段的计算,使工程资金运转、产品的采购和分配等要求得到满足。运用三维算量软件可以有效提高节点工程量统计精确度。其次,在工程的计划和监控阶段,三维算量软件可通过最简单的方式完成工程计划和工程量的结算,同时在计算机中通过模拟形态显示时间工程的效果得到全面呈现,一旦发现问题就可以立即进行修改。再次,三维算量软件应用与变更管理功能。在设计过程中,三维算量软件可根据实际情况直接对原图纸进行增加或删减构件,也就是说三维算量软件可以通过每次对变更图纸的信息输入自动的删减或增加相应的工程量。最后,使用三维算量软件可以提前对施工图纸进行审核,进而提前发现问题,从而保证施工技术的质量。总之,三维算量软件可以给施工管理阶段提供很多便利条件,然而,这一系统还处于发展阶段,若将图形软件的自动化程度进一步加强和提高,那么,三维算量软件将为工程管理带来重大变革。

4结束语

通过以上所述,三维算量软件在工程管理中具有重要作用和实践应用。在工程量的计算中,不仅可以工程的计算精度,还可以降低成本费用。而在施工管理中,还可以对成本、材料等方面进行调控。相信在未来的发展中,三维算量软件将会在工程管理中得到全面普及和应用,在保证工程质量的同时最大限度的提高经济效益。

作者:韩璐 单位:陕西职业技术学院

第12篇

关键词:软件工程管理开发人员组织结构用户

一、引言

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

二、软件工租,理的内容

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

(一)开发人员

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

(二)组织机构

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

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

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

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

(三)用户

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

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

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

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

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

5、文档资料。开发过程的各种活动后都要反映在文档资料上。每一个阶段的文档资料是以后各阶段工作的基础,又是对前面各阶段工作的复审。软件工程管理很大程度上是通过对文档资料管理来实现的。因此,要把开发过程中的初步设计、中间过程、最后结果等建立成一套完整的文档资料。文档标准化是文档管理的重要方面。: