首页

> 期刊论文知识库

首页 期刊论文知识库 问题

软件工程概论论文

发布时间:

软件工程概论论文

不是课程设计啊

软件工程毕业设计论文

大学生涯就要结束,大家是不是都在忙着自己的毕业论文呢?软件工程专业的同学们,我为大家整理了该专业相关的论文,供大家参考!

一、软件工程专业毕业设计存在的主要问题

(一)毕业设计题目设置与选题方面

题目设置不合理,类别与层次不清晰,选题匹配效果差[2]。学生的毕业设计课题一般都按照指导老师的研究方向和实际工程项目提供,但每年真正来源于工程实践题目比例较少。部分题目理论性强,学生根据所学知识不能很好理解;部分题目开发工具复杂,占用了毕业设计的大部分时间。在选题时可能导致学生想选的题目选不上,能力差的学生所选题目难度大,影响学生的积极性,导致选题效果差,造成毕业设计很难完成。

(二)毕业设计过程监控方面

毕业设计监控工作实施困难,效果较差。软件工程专业毕业设计一般包含选题、开题、中期检查、程序测试、撰写毕业论文、答辩、成绩评定。但对这些环节的监控有时候会形成空白带,毕业设计不在实验室进行,有的学生在实习单位实习,有的学生在外地找工作,老师不能定时与学生见面,老师无法了解学生的具体情况,且学生提交的各阶段文档流于形式,只有指导教师在进行监控,未形成完善的监控体系,导致监控不到位,监控效果较差[3]。

(三)毕业设计论文答辩方面

答辩考核方法单一,答辩仅由学生的讲解和老师的提问两个环节组成,考核准确度低。答辩通过门槛较低,答辩只对学生的毕业设计进行排名,一般排名在最后的学生才可能不及格,不利于提高学生毕业设计积极性,造成大部分同学仅以答辩及格为目标,思想上不重视,答辩准备工作不扎实。再由于软件工程专业特点,毕业设计软件作品评分标准难于量化,考核具有一定难度,也造成答辩效果不好。同时为了提高学生毕业率和就业率,毕业答辩的质量控制有所放松,直接导致了软件工程专业毕业设计质量难以保障。

二、软件工程专业毕业设计的教学改革

针对上述各项实际问题,主要进行的相关工作具体如下:

(一)合理设置毕业设计题目,动态选题

依照软件工程专业的以市场需求为导向,培养应用型软件工程人才的培养目标,在毕业设计题目设置环节,紧紧围绕工程实际型、创新项目型、竞赛题目型、科研项目型等类型进行题目设置,以适应市场动态需求。同时着力避免在毕业设计题目中设置虚拟型题目、理论研究型题目、综述型题目、分析设计型题目等。在选题过程中,通过毕业设计管理系统(如图1所示)进行多轮双向动态选择,动态调整题目各项技术参数以保证学生能选择一个适合自己能力且能有利于自己以后工作的题目[4]。这样,在选题之后,每个指导老师就可以根据学生不同能力进行分别指导,使不同能力的学生都能够运用其所学知识解决工程实际问题,都能够通过毕业设计增强工程实践能力、工程设计能力与创新能力。近四学年软件工程专业毕业设计各类题目汇总。

(二)毕业设计过程实行三级监控管理机制

学校成立以主管副校长为组长的毕业设计工作领导小组以加强毕业设计宏观调控,学院成立以教学副院长为组长的`毕业设计工作领导小组以加强毕业设计协调与监控工作,软件工程专业成立以专业负责人为组长的毕业设计工作小组落实并实施毕业设计各环节具体工作[2]。具体参见下图2。在实现毕业设计过程管理的三级管理机制的同时,为保障毕业设计工作质量,软件工程专业要求所有指导教师必须具有中级以上技术职称或硕士以上学位且有一定工程实践经验,具有较高教学、科研水平和创新能力,师德良好,工作态度认真负责。在每年的毕业设计指导工作开始前都对指导教师进行资格审查,择优任用,且每位教师指导的学生不超过6人,以保证指导教师对学生的充分指导[5]。

(三)毕业设计过程量化考核

以往软件工程专业毕业设计成绩通常由三部分组成:一是学生的平时表现由指导老师把握;二是学生的毕业论文成绩。由专业其他指导老师进行评阅;三是现场答辩成绩。由所在组的指导教师按照相关评分标准打分并取平均分。这样基本能够保证毕业设计成绩的公正,但是由于只有毕业答辩环节具有约束力即答辩未通过则总成绩不及格,其他环节不具约束力,因此造成毕业设计前期、中期工作流于形式,前期、中期阶段提交的文档趋于应付、质量不高,最终导致毕业论文质量较低[6,7]。为此,软件工程专业经过几年的探索与实践,实施了毕业设计各阶段的软件工程生命周期量化考核法即各个阶段量化考核,且考核成绩不合格者不能进行下阶段毕业设计工作,必须加以整改,整改通过后才能进入下一阶段毕业设计工作。经过几年的实践证明该考核方法切实可行,能够保证毕业设计各个环节的质量,最终提高毕业设计总体质量。

(四)在毕业设计过程中进一步提高学生工程能力与创新能力

辽宁工业大学于2011年制定并实施了大学生创新团队机制,建立了大学生创新项目申报机制引导大学生开展创新活动;引导学生每年都参加校级、省级、国家级软件设计大赛等各类各级比赛[8]。随着学校和学院创新教育活动多年持续深入开展,软件工程专业学生的创新与创业活动取得了显著成果。超过1/4的软件工程专业学生能够独立主持创新性项目,并以该项目为原型申报毕业设计题目[9],同时参加省级、国家级计算机竞赛并获得奖项。通过主持校级及省级创新项目既毕业设计题目,学生工程能力、创新能力得到极大锻炼与提高,本专业毕业生就业率与就业质量明显提高。软件工程专业学生主持参加创新项目既毕业设计题目情况见表3。

三、结束语

软件工程专业毕业设计是一个极具综合性、实践性的重要环节,是对学生大学四年学习后面向社会与企业前的有且仅有的一次大检验,它不仅检验了学生所学知识、能力与综合素质,还检验了软件工程专业的培养目标、培养模式、课程体系、实践体系、创新体系等相关环节[10]。经过几年的探索与实践证明,软件工程专业所做的系列教学改革工作中的毕业设计教学改革工作有利于进一步增强学生的工程实践能力和创新能力,有利于提高软件工程专业毕业设计质量,有利于提高软件工程专业学生就业率与就业质量。虽然软件工程专业毕业设计教学改革工作取得了一定的成绩,社会认可度逐年稳步提高,但如何动态调整教学计划以跟进市场需求变化;如何深入开展大学生创新创业教育活动以进一步增强更多软件工程专业学生的实践能力及创新能力;如何进一步加强专业教师工程实践能力、工程设计能力与工程创新能力以提高毕业设计指导效力;如何提高毕业设计过程管理效率等问题仍然是软件工程专业所面临的严肃课题[11]。因此,软件工程专业的毕业设计教学改革工作也一定会紧跟时代变化,与时俱进。

[编辑本段]基本信息软件工程一直以来都缺乏一个统一的定义,很多学者、组织机构都分别给出了自己的定义: 软件工程(1)、BarryBoehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。 (2)、IEEE在软件工程术语汇编中的定义:软件工程是:1.将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件;2.在1中所述方法的研究 (3)、FritzBauer在NATO会议上给出的定义:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。 目前比较认可的一种定义认为:软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。 (4)、《计算机科学技术百科全书》中的定义:软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本。其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型(paradigm)、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。[编辑本段]目标软件工程的目标是:在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用软件工程性、可适应性、可移植性、可追踪性和可互操作性并且满足用户需求的软件产品。追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。下面分别介绍这些概念。 (1)可修改性(modifiablity)。容许对系统进行修改而不增加原系统的复杂性。它支持软件的调试与维护,是一个难以达到的目标。 (2)有效性(efficiency)。软件系统能最有效地利用计算机的时间资源和空间资源。各种计算机软件无不将系统的时/空开销作为衡量软件质量的一项重要技术指标。很多场合,在追求时间有效性和空间有效性方面会发生矛盾,这时不得不牺牲时间效率换取空间有效性或牺牲空间效率换取时间有效性。时/空折衷是经常出现的。有经验的软件设计人员会巧妙地利用折衷概念,在具体的物理环境中实现用户的需求和自己的设计。 (3)可靠性(reliability)。能防止因概念、设计和结构等方面的不完善造成的软件系统失效,具有挽回因操作不当造成软件系统失效的能力。对于实时嵌入式计算机系统,可靠性是一个非常重要的目标。因为软件要实时地控制一个物理过程,如宇宙飞船的导航、核电站的运行,等等。如果可靠性得不到保证,一旦出现问题可能是灾难性的,后果将不堪设想。因此在软件开发、编码和测试过程中,必须将可靠性放在重要地位。 (4)可理解性(understandability)。系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植或重用。 (5)可维护性(maintainability)。软件产品交付用户使用后,能够对它进行修改,以便改正潜伏的错误,改进性能和其他属性,使软件产品适应环境的变化,等等。由于软件是逻辑产品,只要用户需要,它可以无限期的使用下去,因此软件维护是不可避免的。软件维护费用在软件开发费用中占有很大的比重。可维护性是软件工程中一项十分重要的目标。软件的可理解性和可修改性有利于软件的可维护性。 (6)可重用性(reusebility)。概念或功能相对独立的一个或一组相关模块定义为一个软部件。软部件可以在多种场合应用的程度称为部件的可重用性。可重用的软部件有的可以不加修改直接使用,有的需要修改后再用。可重用软部件应具有清晰的结构和注解,应具有正确的编码和较低的时/空开销。各种可重用软部件还可以按照某种规则存放在软部件库中,供软件工程师选用。可重用性有助于提高软件产品的质量和开发效率、有助于降低软件的开发和维护费用。从更广泛的意义上理解,软件工程的可重用性还应该包括:应用项目的重用,规格说明(也称为规约)的重用,设计的重用,概念和方法的重用,等等。一般来说,重用的层次越高,带来的效益也就越大。 (7)可适应性(adaptability)。软件在不同的系统约束条件下,使用户需求得到满足的难易程度。适应性强的软件应采用广为流行的程序设计语言编码,在广为流行的操作系统环境中运行,采用标准的术语和格式书写文档。适应性强的软件较容易推广使用。 (8)可移植性(portability)。软件从一个计算机系统或环境搬到另一个计算机系统或环境的难易程度。为了获得比较高的可移植性,在软件设计过程中通常采用通用的程序设计语言和运行环境支撑。对依赖于计算机系统的低级(物理)特征部分,如编译系统的目标代码生成,应相对独立、集中。这样,与处理机无关的部分就可以移植到其他系统上使用。可移植性支持软件的课重用性和课适应性。 (9)可追踪性(tracebility)。根据软件需求对软件设计、程序进行正向追踪,或根据程序、软件设计对软件需求进行逆向追踪的能力。软件可追踪性依赖于软件开发各个阶段文档和程序的完整性、一致性和可理解性。降低系统的复杂性会提高软件的可追踪性。软件在测试或维护过程中或程序在执行期间出现问题时,应记录程序事件或有关模块中的全部或部分指令现场,以便分析、追踪产生问题的因果关系。 (10)可互操作性(interoperability)。多个软件元素相互通信并协同完成任务的能力。为了实现可互操作性,软件开发通常要遵循某种标准,支持折衷标准的环境将为软件元素之间的可互操作提供便利。可互操作性在分布计算环境下尤为重要。 软件工程活动是“生产一个最终满足需求且达到工程目标的软件产品所需要的步骤”。主要包括需求、设计、实现、确认以及支持等活动。需求活动包括问题分析和需求分析。问题分析获取需求定义,又称软件需求规约。需求分析生成功能规约。设计活动一般包括概要设计和详细设计。概要设计建立整个软件体系结构,包括子系统、模块以及相关层次的说明、每一模块接口定义。详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。实现活动把设计结果转换为可执行的程序代码。确认活动贯穿于整个开发过程,实现完成后的确认,保证最终产品满足用户的要求。支持活动包括修改和完善。伴随以上活动,还有管理过程、支持过程、培训过程等。[编辑本段]过程生产一个最终能满足需求且达到工程目标的软件产品所需要的步骤。软件工程过程主要包括开发过程、运作过程、维护过程。它们覆盖了需求、设计、实现、确认以及维护等活动。需求活动包括问题分析和需求分析。问题分析获取需求定义,又称软件需求规约。需求分析生成功能规约。设计活动一般包括概要设计和详细设计。概要设计建立整个软件系统结构,包括子系统、模块以及相关层次的说明、每一模块的接口定义。详细设计产生程序员可用的模块说明,包括每一模块中数据结构说明及加工描述。实现活动把设计结果转换为可执行的程序代码。确认活动贯穿于整个开发过程,实现完成后的确认,保证最终产品满足用户的要求。维护活动包括使用过程中的扩充、修改与完善。伴随以上过程,还有管理过程、支持过程、培训过程等。[编辑本段]原则软件工程的原则是指围绕工程设计、工程支持以及工程管理在软件开发过程中必须遵循的原则。软件工程的原则有以下四项软件工程师基本原则:1)选取适宜开发范型该原则与系统设计有关。在系统设计中,软件需求、硬件需求以及其他因素之间是相互制约、相互影响的,经常需要权衡。因此,必须认识需求定义的易变性,采用适宜的开发范型予以控制,以保证软件产品满足用户的要求。2)采用合适的设计方法在软件设计中,通常要考虑软件的模块化、抽象与信息隐蔽、局部化、一致性以及适应性等特征。合适的设计方法有助于这些特征的实现,以达到软件工程的目标。3)提供高质量的工程支持“工欲善其事,必先利其器”。 在软件工程中,软件工具与环境对软件过程的支持颇为重要。软件工程项目的质量与开销直接取决于对软件工程所提供的支撑质量和效用。4)重视开发过程的管理软件工程的管理,直接影响可用资源的有效利用,生产满足目标的软件产品,提高软件组织的生产能力等问题。因此,仅当软件过程得以有效管理时,才能实现有效的软件工程。 这一软件工程框架告诉我们,软件工程的目标是可用性、正确性和合算性;实施一个软件工程要选取适宜的开发范型,要采用合适的设计方法,要提供高质量的工程支撑,要实行开发过程的有效管理;软件工程活动主要包括需求、设计、实现、确认和支持等活动,每一活动可根据特定的软件工程,采用合适的开发范型、设计方法、支持过程以及过程管理。根据软件工程这一框架,软件工程学科的研究内容主要包括:软件开发范型、软件开发方法、软件过程、软件工具、软件开发环境、计算机辅助软件工程(CASE) 及软件经济学等。[编辑本段]基本原理自从1968年提出“软件工程”这一术语以来,研究软件工程的专家学者们陆续提出了100多条关于软件工程的准则或信条。美国著名的软件工程专家巴利·玻姆(Barry Boehm)综合这些专家的意见,并总结了美国天合公司(TRW)多年的开发软件的经验,于1983年提出了软件工程的七条基本原理。 玻姆认为,这七条原理是确保软件产品质量和开发效率的原理的最小集合。它们是相互独立的,是缺一不可的最小集合;同时,它们又是相当完备的。 人们当然不能用数学方法严格证明它们是一个完备的集合,但是可以证明,在此之前已经提出的100多条软件工程准则都可以有这七条原理的任意组合蕴含或派生。下面简要介绍软件工程的七条原理:1、用分阶段的生命周期计划严格管理这一条是吸取前人的教训而提出来的。统计表明,50%以上的失败项目是由于计划不周而造成的。在软件开发与维护的漫长生命周期中,需要完成许多性质各异的工作。这条原理意味着,应该把软件生命周期分成若干阶段,并相应制定出切实可行的计划,然后严格按照计划对软件的开发和维护进行管理。 玻姆认为,在整个软件生命周期中应指定并严格执行6类计划:项目概要计划、里程碑计划、项目控制计划、产品控制计划、验证计划、运行维护计划。2、坚持进行阶段评审统计结果显示: 大部分错误是在编码之前造成的,大约占63%错误发现的越晚,改正它要付出的代价就越大,要差2到3个数量级。 因此,软件的质量保证工作不能等到编码结束之后再进行,应坚持进行严格的阶段评审,以便尽早发现错误。3、实行严格的产品控制开发人员最痛恨的事情之一就是改动需求。但是实践告诉我们,需求的改动往往是不可避免的。这就要求我们要采用科学的产品控制技术来顺应这种要求。也就是要采用变动控制,又叫基准配置管理。当需求变动时,其它各个阶段的文档或代码随之相应变动,以保证软件的一致性。4、采纳现代程序设计技术从六、七时年代的结构化软件开发技术,到最近的面向对象技术,从第一、第二代语言,到第四代语言,人们已经充分认识到:方法大似气力。采用先进的技术即可以提高软件开发的效率,又可以减少软件维护的成本。5、结果应能清楚地审查软件是一种看不见、摸不着的逻辑产品。软件开发小组的工作进展情况可见性差,难于评价和管理。为更好地进行管理,应根据软件开发的总目标及完成期限, 尽量明确地规定开发小组的责任和产品标准,从而使所得到的标准能清楚地审查。6、开发小组的人员应少而精开发人员的素质和数量是影响软件质量和开发效率的重要因素,应该少而精。 这一条基于两点原因:高素质开发人员的效率比低素质开发人员的效率要高几倍到几十倍,开发工作中犯的错误也要少的多; 当开发小组为N人时,可能的通讯信道为N(N-1)/2, 可见随着人数N的增大,通讯开销将急剧增大。7、承认不断改进软件工程实践的必要性遵从上述六条基本原理,就能够较好地实现软件的工程化生产。但是,它们只是对现有的经验的总结和归纳,并不能保证赶上技术不断前进发展的步伐。因此,玻姆提出应把承认不断改进软件工程实践的必要性作为软件工程的第七条原理。根据这条原理,不仅要积极采纳新的软件开发技术,还要注意不断总结经验,收集进度和消耗等数据,进行出错类型和问题报告统计。这些数据既可以用来评估新的 软件技术的效果,也可以用来指明必须着重注意的问题和应该优先进行研究的工具和技术。[编辑本段]方法学软体工程的方法有很多方面的意义。包括专案管理,分析,设计,程序的编写,测试和质量控制。 软件工程师软体设计方法可以区别为重量级的方法和轻量级的方法。重量级的方法中产生大量的正式文档。 著名的重量级开发方法包括ISO9000,CMM,和统一软体开发过程(RUP)。 轻量级的开发过过程没有对大量正式文档的要求。着名的轻量级开发方法包括极限编程(XP)和敏捷流程(AgileProcesses)。 根据《新方法学》这篇文章的说法,重量级方法呈现的是一种防御型的姿态。在应用重量级方法的软体组织中,由于软体项目经理不参与或者很少参与程序设计,无法从细节上把握项目进度,因而会对项目产生恐惧感,不得不要求程式设计师不断撰写很多“软体开发文档”。而轻量级方法则呈现“进攻型”的姿态,这一点从XP方法特别强调的四个准则—“沟通、简单、反馈和勇气上有所体现。目前有一些人认为,重量级方法合于大型的软体团队(数十人以上)使用,而“轻量级方法”适合小型的软体团队(几人、十几人)使用。当然,关于重量级方法和轻量级方法的优劣存在很多争论,而各种方法也在不断进化中。 一些方法论者认为人们在开发中应当严格遵循并且实施这些方法。但是一些人并不具有实施这些方法的条件。实际上,采用何种方法开发软体取决于很多因素,同时受到环境的制约。[编辑本段]主要课程外语、高等数学、线性代数、高等代数、电子技术基础、离散数学、计算机引论(C语言)、数据结构、C++程序设计、JAVA程序设计、Delphi程序设计、汇编语言程序设计、算法设计与分析、计算机组成原理与体系结构、数据库系统、计算机网络、软件工程、软件测试技术、软件需求与项目管理、软件设计实例分析、CMM/ISO9000等。 另外,还包括操作系统、软件体系结构概论、设计模式、多媒体技术基础、UML建模、概率论、大学英语等,部分院校还会包括大学物理,工程制图,数值分析等。[编辑本段]发展方向敏捷开发(Agile Development)被认为是软体工程的一个重要的发展。它强调软体开发应当是能够对未来可能出现的变化和不确定性作出全面反应的。 敏捷开发被认为是一种“轻量级”的方法。在轻量级方法中最负盛名的应该是“极限编程”(Extreme Programming,简称为XP)。而与轻量级方法相对应的是“重量级方法”的存在。重量级方法强调以开发过程为中心,而不是以人为中心。重量级方法的例子比如CMM/PSP/TSP。 面向侧面的程序设计(Aspect Oriented Programming,简称AOP)被认为是近年来软体工程的另外一个重要发展。这里的方面指的是完成一个功能的对象和函数的集合。在这一方面相关的内容有泛型编程(Generic Programming)和模板。[编辑本段]需求分析软件工程中包含需求、设计、编码和测试四个阶段,其中需求工程是软件工程第一个也是很重要的一个阶段,本文以医院管软件工程需求分析理系统为例详细介绍了需求工程的构成和进行方法。 首先人们必须了解需求工程和其他项目过程的关系: 图1需求与其他项目过程的关系 软件需求包括三个不同的层次-业务需求、用户需求和功能需求-也包括非功能需求:业务需说明了提供给客户和产品开发商的新系统的最初利益,反映了组织机构或客户对系统、产品高层次的目标要求,它们在项目视图与范围文档中予以说明;用户需求文档描述了用户使用产品必须要完成的任务,这在使用实例文档或方案脚本说明中予以说明;功能需求定义了开发人员必须实现的软件功能,使得用户能完成他们的任务,从而满足了业务需求。 需求工程分为了需求开发和需求管理两个阶段:下面就以这两个阶段说明: 一,需求开发 需求开发又分为需求获取、需求分析、编写规格说明书和需求验证。以下列出和讲解分析常规的步骤,当然应按照项目的大小和特点等实际情况我们应该自己确定合适的步骤。 1.需求获取: 1)确定需求开发过程:确定需求开发过程确定如何组织需求的收集、分析、细化并核实的步骤,并将它编写成文档。对重要的步骤要给予一定指导,这将有助于分析人员的工作,而且也使收集需求活动的安排和进度计划更容易进行。 2)编写项目视图和范围文档:项目视图和范围文档应该包括高层的产品业务目标,所有的使用实例和功能需求都必须遵从能达到的业务需求。项目视图说明使所有项目参与者对项目的目标能达成共识。而范围则是作为评估需求或潜在特性的参考。 表1项目视图和范围文档的模板 a、1背景在这一部分,总结新产品的理论基础,并提供关于产品开发的历史背景或形势的一般性描述。 a、2业务机遇描述现存的市场机遇或正在解决的业务问题。描述商品竞争的市场和信息系统将运用的环境。包括对现存产品的一个简要的相对评价和解决方案,并指出所建议的产品为什么具有吸引力和它们所能带来的竞争优势。 a、3业务目标用一个定量和可测量的合理方法总结产品所带来的重要商业利润,把重点放在给业务的价值上。 a、4客户或市场需求描述一些典型客户的需求,包括不满足现有市场上的产品或信息系统的需求。提出客户目前所遇到的问题在新产品中将可能(或不可能)出现的阐述,提供客户怎样使用产品的例子。确定了产品所能运行的软、硬件平台。 a、5提供给客户的价值确定产品给客户带来的价值,并指明产品怎样满足客户的需要。 a、6业务风险总结开发(或不开发)该产品有关的主要业务风险,例如市场竞争、时间问题、用户的接受能力、实现的问题或对业务可能带来的消极影响。预测风险的严重性,指明你所能采取的减轻风险的措施。 项目视图陈述编写一个总结长远目标和有关开发新产品目的的简要项目视图陈述。项目视图陈述将考虑权衡有不同需求客户的看法。它可能有点理想化,但必须以现有的或所期待的客户市场、企业框架、组织的战略方向和资源局限性为基础。 主要特性包括新产品将提供的主要特性和用户性能的列表。强调的是区别于以往产品和竞争产品的特性。可以从用户需求和功能需求中得到这些特性。 假设和依赖环境在构思项目和编写项目视图和范围文档时,要记录所作出的任何假设。通常一方所持的假设应与另一方不同。 首次发行的范围总结首次发行的产品所具有的性能。描述了产品的质量特性,这些特性使产品可以为不同的客户群提供预期的成果。随后发行的范围如果你想象一个周期性的产品演变过程,就要指明哪一个主要特性的开发将被延期,并期待随后版本发行的日期。 局限性和专用性明确定义包括和不包括的特性和功能的界线是处理范围设定和客户期望的一个途径。列出风险承担者们期望的而你却不打算把它包括到产品中的特性和功能。 客户概貌客户概述明确了这一产品的不同类型客户的一些本质的特点,以及目标市场部门和在这些部门中的不同客户的特征。 项目的优先级一旦明确建立项目的优先级,风险承担者和项目的参与者就能把精力集中在一系列共同的目标上。达到这一目的的一个途径是考虑软件项目的五个方面:性能、质量、计划、成本和人员。e.产品成功的因素明确产品的成功是如何定义和测量的,并指明对产品的成功有巨大影响的几个因素。不仅要包括组织直接控制的范围内的事务,还要包括外部因素。如果可能,可建立测量的标准用于评价是否达到业务目标. 3)用户群分类:产品的用户在很多方面存在着差异,例如:用户使用产品的频度、他们的应用领域和计算机系统知识、他们所使用的产品特性、他们所进行的业务过程、他们在地理上的布局以及他们的访问优先级。根据这些差异,你可以把这些不同的用户分成小组。用户类不一定都指人,你可以把其它应用程序或系统接口所用的硬件组件也看成是附加用户类的成员。以这种方式来看待应用程序接口,可以帮助你确定产品中那些与外部应用程序或组件有关的需求。将用户群分类并归纳各自特点为避免出现疏忽某一用户群需求的情况,要将可能使都有所差异。详细描述出它们的个性特点及任务状况,将有助于产品设计。 4)选择产品代表:择每类用户的产品代表为每类用户至少选择一位能真正代表他们需求的人作为那一类用户的代表并能作出决策。这对于内部信息系统的开发是最易实现的,因为此时,用户就是身边的职员。而对于商业开发,就得在主要的客户或测试者中建立起良好的合作关系,并确定合适的产品代表。他们必须一直参与项目的开发而且有权作出决策。每一个产品代表者代表了一个特定的用户类,并在那个用户类和开发者之间充当主要的接口。 5)建立核心队伍:建立起典型用户的核心队伍把同类产品或产品的先前版本用户代表召集起来,从他们那里收集目前产品的功能需求和非功能需求。这样的核心队伍对于商业开发尤为有用,因为你拥有一个庞大且多样的客户基础。与产品代表的区别在于,核心队伍成员通常没有决定权。 6)确定使用实例:让用户代表确定使用实例从用户代表处收集他们使用软件完成所需任务的描述-使用实例,讨论用户与系统间的交互方式和对话要求。在编写使用实例的文档时可采用标准模版,在使用实例基础上可得到功能需求。 一个单一的使用实例可能包括完成某项任务的许多逻辑相关任务和交互顺序。因此,一个使用实例是相关的用法说明的集合,并且一个说明是使用实例的例子。在描述时列出执行者和系统之间相互交互或对话的顺序。当这种对话结束时,执行者也达到了预期的目的。 对于一些复杂的使用实例,画出图形分析模型是有益的,这些模型包括数据流程图、实体关系图、状态转化图、对象类和联系图。 使用实例的描述并不向开发者提供他们所要开发的功能的细节。为了减少这种不确定性,需要把每一个使用实例叙述成详细的功能需求。每一个使用实例可引伸出多个功能需求,这将使执行者可以执行相关的任务;并且多个使用实例可能需要相同的功能需求。使用实例方法给需求获取带来的好处来自于该方法是以任务为中心和以用户为中心的观点。比起使用以功能为中心的方法,使用实例方法可以使用户更清楚地认识到新系统允许他们做什么。 每一个使用实例都描述了一个方法,用户可以利用这个方法与系统进行交互,从而达到特定的目标。使用实例可有效地捕捉大多数所期望的系统行为,但是你可能有一些需求,这些需求与用户任务或其他执行者之间的交互没有特定的关系。这时你就需要一个独立的需求规格说明。 7)召开应用程序开发联系会议:召开应用程序开发联系会议应用程序开发联系会议是范围广的、简便的专题讨论会,也是分析人员与客户代表之间一种很好的合作办法,并能由此拟出需求文档的底稿。该会议通过紧密而集中的讨论得以将客户与开发人员间的合作伙伴关系付诸于实践。 8)分析用户工作流程:分析用户工作流程观察用户执行业务任务的过程。画一张简单的示意图(最好用数据流图)来描绘出用户什么时候获得什么数据,并怎样使用这些数据。编制业务过程流程文档将有助于明确产品的使用实例和功能需求。你甚至可能发现客户并不真地需要一个全新的软件系统就能达到他们的业务目标。 9)确定质量属性:确定质量属性和其它非功能需求在功能需求之外再考虑一下非功能的质量特点,这会使你的产品达到并超过客户的期望。对系统如何能很好地执行某些行为或让用户采取某一措施的陈述就是质量属性,这是一种非功能需求。听取那些描述合理特性的意见:快捷、简易、直觉性、用户友好、健壮性、可靠性、安全性和高效性。你将要和用户一起商讨精确定义他们模糊的和主观言辞的真正含义。 10)检查问题报告:通过检查当前系统的问题报告来进一步完善需求客户的问题报告及补充需求为新产品或新版本提供了大量丰富的改进及增加特性的想法,负责提供用户支持及帮助的人能为收集需求过程提供极有价值的信息。 11)需求重用:跨项目重用需求如果客户要求的功能与已有的产品很相似,则可查看需求是否有足够的灵活性以允许重用一些已有的软件组件。

这事还是得靠自己。。

软件工程期刊

软件工程与应用,可以参考,权威的算不上

推荐《软件工程》杂志,以下是该杂志的简介和投稿须知,希望有所帮助:

《软件工程》(原刊名:《软件工程师》)创刊于1998年,由东北大学主办,辽宁省教育厅主管,月刊,国家首批认定的学术期刊。国内出版物号:CN 21-1603/TP;国际出版物号:ISSN 2096-1472;CODEN:RGUOAX。中国知网数据库(CNKI)全文收录万方数据—数字化期刊全文收录中国期刊全文数据库(CJFD)全文收录中国学术期刊综合评价数据库(CAJCED)统计源栏目设置:1 综述 2 方法与技术 3 工具与环境 4 过程与模型 5 人工智能 6 互联网计算 7 信息系统与数据处理 8 信息安全与安全软件 9 嵌入式系统 10 教育教学

软件工程和应用期刊是scd。根据查询相关信息显示,软件工程与应用SoftwareEngineeringandApplications是汉斯出版社发行的一本关注计算机领域最新进展的国际中文期刊,本刊支持思想创新、学术创新,倡导科学,繁荣学术,集学术性、思想性为一体,旨在为了给世界范围内的科学家、学者、科研人员提供一个传播、分享和讨论计算机领域内不同方向问题与发展的交流平台。

软件工程毕业论文按软工写

[编辑本段]基本信息 软件工程一直以来都缺乏一个统一的定义,很多学者、组织机构都分别给出了自己的定义: 软件工程(1)、BarryBoehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。

(2)、IEEE在软件工程术语汇编中的定义:软件工程是:1.将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件;2.在1中所述方法的研究 (3)、FritzBauer在NATO会议上给出的定义:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。 目前比较认可的一种定义认为:软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。

(4)、《计算机科学技术百科全书》中的定义:软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本。

其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型(paradigm)、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。 [编辑本段]目标 软件工程的目标是:在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用软件工程性、可适应性、可移植性、可追踪性和可互操作性并且满足用户需求的软件产品。

追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。下面分别介绍这些概念。

(1)可修改性(modifiablity)。容许对系统进行修改而不增加原系统的复杂性。

它支持软件的调试与维护,是一个难以达到的目标。 (2)有效性(efficiency)。

软件系统能最有效地利用计算机的时间资源和空间资源。各种计算机软件无不将系统的时/空开销作为衡量软件质量的一项重要技术指标。

很多场合,在追求时间有效性和空间有效性方面会发生矛盾,这时不得不牺牲时间效率换取空间有效性或牺牲空间效率换取时间有效性。时/空折衷是经常出现的。

有经验的软件设计人员会巧妙地利用折衷概念,在具体的物理环境中实现用户的需求和自己的设计。 (3)可靠性(reliability)。

能防止因概念、设计和结构等方面的不完善造成的软件系统失效,具有挽回因操作不当造成软件系统失效的能力。对于实时嵌入式计算机系统,可靠性是一个非常重要的目标。

因为软件要实时地控制一个物理过程,如宇宙飞船的导航、核电站的运行,等等。如果可靠性得不到保证,一旦出现问题可能是灾难性的,后果将不堪设想。

因此在软件开发、编码和测试过程中,必须将可靠性放在重要地位。 (4)可理解性(understandability)。

系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植或重用。

(5)可维护性(maintainability)。软件产品交付用户使用后,能够对它进行修改,以便改正潜伏的错误,改进性能和其他属性,使软件产品适应环境的变化,等等。

由于软件是逻辑产品,只要用户需要,它可以无限期的使用下去,因此软件维护是不可避免的。软件维护费用在软件开发费用中占有很大的比重。

可维护性是软件工程中一项十分重要的目标。软件的可理解性和可修改性有利于软件的可维护性。

(6)可重用性(reusebility)。概念或功能相对独立的一个或一组相关模块定义为一个软部件。

软部件可以在多种场合应用的程度称为部件的可重用性。可重用的软部件有的可以不加修改直接使用,有的需要修改后再用。

可重用软部件应具有清晰的结构和注解,应具有正确的编码和较低的时/空开销。各种可重用软部件还可以按照某种规则存放在软部件库中,供软件工程师选用。

可重用性有助于提高软件产品的质量和开发效率、有助于降低软件的开发和维护费用。从更广泛的意义上理解,软件工程的可重用性还应该包括:应用项目的重用,规格说明(也称为规约)的重用,设计的重用,概念和方法的重用,等等。

一般来说,重用的层次越高,带来的效益也就越大。 (7)可适应性(adaptability)。

软件在不同的系统约束条件下,使用户需求得到满足的难易程度。适应性强的软件应采用广为流行的程序设计语言编码,在广为流行的操作系统环境中运行,采用标准的术语和格式书写文档。

适应性强的软件较容易推广使用。 (8)可移植性(portability)。

软件从一个计算机系统或环境搬到另一个计算机系统或环境的难易程度。为了获得比较高的可移植性,在软件设计过程中通常采用通用的程序设计语言和运行环境支撑。

对依赖于计算机系统的低级(物理)特征部分,如编译系统的目标代码生成,应相对独立、集中。这样,与处理机无关的部分就可以移植到其他系统上使用。

可移植性支持软件的课重用性和课适应性。 (9)可追踪性(tracebility)。

根据软件需求对软件设计、程序进行正向追踪,或根据程序、软件设计对软件需求进行逆向追踪的能力。软件可追踪性依赖于软。

软件工程可以写的题目多啊。开始也不怎么懂,还是学姐给的文方网,写的《基于Windows平台的HIPS系统设计与实现》,靠谱的说

研究生教育网络管理系统的设计与实现

WMS-2000A轮机模拟器数据通信系统设计与实现

洗衣机模拟运行控制系统的设计与实现

机车信号记录器数据分析处理系统的设计与实现

分布式自动检测系统RS485通信网络的设计与实现

计划生育管理信息系统的设计与实现

医院“一卡通”系统的设计与实现

列车三维驾驶仿真系统的设计与实现

一种图书外采查重系统的设计与实现

基于C/S模式的网络文件管理系统的设计与实现

自动化仓库管理系统的设计与实现

四川省卫生统计数据采集与决策支持系统设计与实现

ATM应用系统EMV迁移的设计与实现

基于B/S模式的药品信息咨询系统的设计与实现

基于LFAP的网络流量统计分析系统的设计与实现

传真管理信息系统的设计与实现

工业机器人三维仿真系统的设计与实现

单位网络设备环境智能监控系统设计与实现

基于CC1020芯片无线传输系统的设计与实现

公安派出所综合信息管理系统设计与实现

基于WEB的库存管理系统设计与实现

基于工作流的AUTOBANK管理系统设计与实现

具有主动功能的连锁经营企业配送中心管理信息系统的设计与实现

基于JavaEE技术的在线考试系统的设计与实现

学生评教系统的设计与实现

微小型电动无人机动力系统试验台的设计与实现

基于F1103 GPRS MODEM的家校通系统设计与实现

基于嵌入式Linux的远程家庭医疗监护系统设计与实现

基于Windows操作系统的智能建筑物综合布线管理系统的设计与实现

基于.NET技术的网上购物管理系统的设计与实现

变电检修管理信息系统设计与实现

天津地铁1号线车站乘客向导系统的设计与实现

基于B/S结构的电路分析网上答疑系统的设计与实现

应用PDA组建无线IC卡表抄收系统的设计与实现

非计算机专业计算机课程考试系统设计与实现

基于GPRS网络的煤矿瓦斯监控系统的设计与实现

惯性组合导航系统接口子系统的设计与实现

人寿保险老业务综合处理系统的设计与实现

FORTRAN语言题库管理系统的设计与实现

楼宇信息系统的设计与实现

倒闸实训系统无线遥控的设计与实现

C/S模式下的电子邮件系统设计与实现

基于LINQ三层架构仓库管理系统的设计与实现

一种宽带无线移动视频调度系统的设计与实现

浅谈远程监控机房温湿度报警系统的设计与实现

学术论文共词分析系统的设计与实现

基于Web的SQLServer远程备份管理系统的设计与实现

基于Spring框架的北京林业大学图书馆门户系统设计与实现

基于XML的研究生网络选课系统设计与实现

最低元开通文库会员,查看完整内容> 原发布者:北大青鸟广安门校区 软件工程师应该具备的技能有哪些 软件工程师应该具备的技能有哪些?我认为,软件工程师用该具备的技能主要为以下几点: 1.编程语言能力 作为一名专业的软件工程师,应该能够熟练掌握JAVA语言,并且能够深入理解OOP、OOA、OOD等编程思想。

精通一门编程语言能为以后的软件开发打下坚实的基础。 2.编码能力 这里说的编码可不是照着书本敲代码,而是能够独立的运用代码,编写一个程序出来。

有很多软件工程师,他们都是随意堆砌网上搜来的代码,根本不管可读性和可维护性,只要能实现功能就行了,缺乏最基本的职责素养。 我认为,对于软件工程师或程序员来说,代码就像自己的孩子一样,一定要付出感情,这样才能编写出好的程序。

3.学习能力 IT技术可谓是更新换代最快的了,从市面上的电脑和手机就可以看出来。所以,只依靠自己之前学到的知识,很快就会被这个时代所淘汰,软件工程师应具备的技能里很重要的一点就是学习能力。

因为只有具备了学习能力,才能在离开学校之后仍然能够独立地学习最新的技术,同时能够自主的发现现在有什么新技术,市场上流行的技术元素与市场需求的变化。 4.设计能力 一个优秀的软件工程师不仅仅具备扎实的专业知识与技能,而且还要具备一定的设计能力。

因为只有这样,才能使一个软件或者应用更加完美,更加容易受到人们的欢迎,从而获得更广阔的市场。 5.团队协作能力 软件开发并不是孤军奋战,很多时候一个软件需要几个人。

当今中国软件工程一直以来都缺乏一个统一的定义,很多学者、组织机构都分别给出了自己的定义: 软件工程(1)、BarryBoehm:运用现代科学技术知识来设计并构造计算机程序及为开发、运行和维护这些程序所必需的相关文件资料。

(2)、IEEE在软件工程术语汇编中的定义:软件工程是:1.将系统化的、严格约束的、可量化的方法应用于软件的开发、运行和维护,即将工程化应用于软件;2.在1中所述方法的研究 (3)、FritzBauer在NATO会议上给出的定义:建立并使用完善的工程化原则,以较经济的手段获得能在实际机器上有效运行的可靠软件的一系列方法。 目前比较认可的一种定义认为:软件工程是研究和应用如何以系统性的、规范化的、可定量的过程化方法去开发和维护软件,以及如何把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法结合起来。

(4)、《计算机科学技术百科全书》中的定义:软件工程是应用计算机科学、数学及管理科学等原理,开发软件的工程。软件工程借鉴传统工程的原则、方法,以提高质量、降低成本。

其中,计算机科学、数学用于构建模型与算法,工程科学用于制定规范、设计范型(paradigm)、评估成本及确定权衡,管理科学用于计划、资源、质量、成本等管理。[编辑本段]目标 软件工程的目标是:在给定成本、进度的前提下,开发出具有可修改性、有效性、可靠性、可理解性、可维护性、可重用软件工程性、可适应性、可移植性、可追踪性和可互操作性并且满足用户需求的软件产品。

追求这些目标有助于提高软件产品的质量和开发效率,减少维护的困难。下面分别介绍这些概念。

(1)可修改性(modifiablity)。容许对系统进行修改而不增加原系统的复杂性。

它支持软件的调试与维护,是一个难以达到的目标。 (2)有效性(efficiency)。

软件系统能最有效地利用计算机的时间资源和空间资源。各种计算机软件无不将系统的时/空开销作为衡量软件质量的一项重要技术指标。

很多场合,在追求时间有效性和空间有效性方面会发生矛盾,这时不得不牺牲时间效率换取空间有效性或牺牲空间效率换取时间有效性。时/空折衷是经常出现的。

有经验的软件设计人员会巧妙地利用折衷概念,在具体的物理环境中实现用户的需求和自己的设计。 (3)可靠性(reliability)。

能防止因概念、设计和结构等方面的不完善造成的软件系统失效,具有挽回因操作不当造成软件系统失效的能力。对于实时嵌入式计算机系统,可靠性是一个非常重要的目标。

因为软件要实时地控制一个物理过程,如宇宙飞船的导航、核电站的运行,等等。如果可靠性得不到保证,一旦出现问题可能是灾难性的,后果将不堪设想。

因此在软件开发、编码和测试过程中,必须将可靠性放在重要地位。 (4)可理解性(understandability)。

系统具有清晰的结构,能直接反映问题的需求。可理解性有助于控制软件系统的复杂性,并支持软件的维护、移植或重用。

(5)可维护性(maintainability)。软件产品交付用户使用后,能够对它进行修改,以便改正潜伏的错误,改进性能和其他属性,使软件产品适应环境的变化,等等。

由于软件是逻辑产品,只要用户需要,它可以无限期的使用下去,因此软件维护是不可避免的。软件维护费用在软件开发费用中占有很大的比重。

可维护性是软件工程中一项十分重要的目标。软件的可理解性和可修改性有利于软件的可维护性。

(6)可重用性(reusebility)。概念或功能相对独立的一个或一组相关模块定义为一个软部件。

软部件可以在多种场合应用的程度称为部件的可重用性。可重用的软部件有的可以不加修改直接使用,有的需要修改后再用。

可重用软部件应具有清晰的结构和注解,应具有正确的编码和较低的时/空开销。各种可重用软部件还可以按照某种规则存放在软部件库中,供软件工程师选用。

可重用性有助于提高软件产品的质量和开发效率、有助于降低软件的开发和维护费用。从更广泛的意义上理解,软件工程的可重用性还应该包括:应用项目的重用,规格说明(也称为规约)的重用,设计的重用,概念和方法的重用,等等。

一般来说,重用的层次越高,带来的效益也就越大。 (7)可适应性(adaptability)。

软件在不同的系统约束条件下,使用户需求得到满足的难易程度。适应性强的软件应采用广为流行的程序设计语言编码,在广为流行的操作系统环境中运行,采用标准的术语和格式书写文档。

适应性强的软件较容易推广使用。 (8)可移植性(portability)。

软件从一个计算机系统或环境搬到另一个计算机系统或环境的难易程度。为了获得比较高的可移植性,在软件设计过程中通常采用通用的程序设计语言和运行环境支撑。

对依赖于计算机系统的低级(物理)特征部分,如编译系统的目标代码生成,应相对独立、集中。这样,与处理机无关的部分就可以移植到其他系统上使用。

可移植性支持软件的课重用性和课适应性。 (9)可追踪性(tracebility)。

根据软件需求对软件设计、程序进行正向追踪,或根据程序、软件设计对软件需求进行逆向追踪的能力。软件可追踪性依赖于软件开发各个阶段文档和程序的完整性、一致性和可理解性。

降低系统的复杂性会提。

01立项调查报告

02立项建议书

03立项评审报告

04项目设计开发任务书

05项目计划

06质量保证计划

07配置管理计划

08需求分析说明书

09概要设计说明书

10详细设计说明书

11数据库设计说明书

12数据库表详细设计

13单元测试计划

14测试脚本

15单元测试报告

16系统测试计划

17验收申请书

18验收评审报告

19客户验收报告

21审核反馈表

22软件评审报告

23变更需求报告

24设计变更报告

26项目管理报告

27项目总结报告

一共这么多,三大报告是

需求分析说明书

概要设计说明书

详细设计说明书

1、论文题目:要求准确、简练、醒目、新颖。

2、目录:目录是论文中主要段落的简表。(短篇论文不必列目录) 3、提要:是文章主要内容的摘录,要求短、精、完整。

字数少可几十字,多不超过三百字为宜。 4、关键词或主题词:关键词是从论文的题名、提要和正文中选取出来的,是对表述论文的中心内容有实质意义的词汇。

关键词是用作机系统标引论文内容特征的词语,便于信息系统汇集,以供读者检索。 每篇论文一般选取3-8个词汇作为关键词,另起一行,排在“提要”的左下方。

主题词是经过规范化的词,在确定主题词时,要对论文进行主题,依照标引和组配规则转换成主题词表中的规范词语。 5、论文正文: (1)引言:引言又称前言、序言和导言,用在论文的开头。

引言一般要概括地写出作者意图,说明选题的目的和意义, 并指出论文写作的范围。引言要短小精悍、紧扣主题。

〈2)论文正文:正文是论文的主体,正文应包括论点、论据、论证过程和结论。主体部分包括以下内容: a.提出-论点; b.分析问题-论据和论证; c.解决问题-论证与步骤; d.结论。

6、一篇论文的参考文献是将论文在和写作中可参考或引证的主要文献资料,列于论文的末尾。参考文献应另起一页,标注方式按《GB7714-87文后参考文献著录规则》进行。

中文:标题--作者--出版物信息(版地、版者、版期):作者--标题--出版物信息所列参考文献的要求是: (1)所列参考文献应是正式出版物,以便读者考证。 (2)所列举的参考文献要标明序号、著作或文章的标题、作者、出版物信息。

需要掌握以下的知识 : (一).NET方面的开发⒈熟悉开发体系,熟悉C# ASP .NET;⒉熟悉SQLServer,Oracle数据库开发;⒊具有企业管理系统项目经验;4.了解企业ERP及财务管理软件(用友,金蝶)者优先;5.善于沟通,能独立撰写方案。

为人诚实,善于学习,做事认真负责,积极主动,具有敬业精神,有团队精神。(二)JAVA应用程序开发1.熟练使用Struts2+Spring+Hibernate2.掌握Jquery3.掌握Java4.熟悉Oracle5.掌握xml/webservice6.掌握OOD、OOP7.基本文档写作能力(三)web、数据库方面的开发⒈练掌握ASP,NET;等编程语言,熟悉.Net开发环境,理解.Net Framework,理解并能熟练使用WebService、O/R mapping、Remoting、多线程等技术;2.热衷于互联网WEB开发,热衷于钻研最新的前沿技术,精通XML,Javascript,CSS,AJAX等WEB前端技术;3.熟练的技术文档编写能力,熟练使用Rose,Power Design,Visio等建模和设计软件,有一定的架构设计能力;4.精通SQL server数据库技术,了解数据库性能调优者优先.(四)php项目开发⒈使用PHP语言开发互联网应用程序;⒉网站产品和网站功能模块的开发与维护;⒊与页面设计师协调沟通,编写部分Javascript和HTML;⒋参与底层MVC框架的编写与维护。

软件工程师一般指从事软件开发职业的人。软件工程师是一个认证考试,具体地说是从事软件职业的人员的一种职业能力的认证,通过它说明具备了工程师的资格。

软件工程师的技术要求是比较全面的,除了最基础的编程语言(C语言/C++/JAVA等)、数据库技术(SQL/ORACLE/DB2等)等,还有诸多如JAVA SCRIPT、AJAX、HIBERNATE、SPRING等前沿技术。此外,关于网络工程和软件测试的其他技术也要有所涉猎。

对于软件工程师,不太重视学历,但并不是对学历没有要求,重点关注项目的经验和学习知识的能力,能否利用软件工程专业知识来解决问题,根据岗位不同,对软件工程师的要求也有所不同。具体能力要根据岗位和自己的兴趣爱好选定自己的职业规划方向,一方面要详细了解软件工程师的要求,可以关注企业的招聘信息;一方面自己要贮备通用的知识技能,广泛阅读相关的计算机材料对自己以后的发展大有帮助。

可以确定的是软件工程师的前途在未来的发展依然是不断升温的职业,比较需要有技术和良好前景的专业之一。工作内容:1、指导程序员的工作;2、参与软件工程系统的设计、开发、测试等过程;3 、协助工程管理人保证项目的质量;4 、负责工程中主要功能的代码实现;5 、解决工程中的关键问题和技术难题;6 、协调各个程序员的工作,并能与其它软件工程师协作工作;7、还要编写各种各样的软件说明书,如:需求说明书,概要说明书等考试科目。

工程师是中级职称,考试的题目包括了计算机体系结构、软件工程、数据库、数据结构、编译原理等计算机学科的基础课程。

软件工程毕业论文相对来说还是比较好写的,你们老师可能是让你想写一些跟大学生接触比较多的课题,所以选择了软件工程在手机游戏中运用的这个题目。你要找资料的话,上知网、维普或者万方都可以,他们的数据库很全,相关资料很多,不过下载文章需要收费(除非学校购买了相应的文献库)。如果你实在找不到资料,又没有时间写,那么我建议你找家可靠的论文机构,不过最好能找像论文时代网这样的大网站,这样不怕文章出了问题找不到人,祝你好运。

软件工程论文研究

软件技术是一个发展变化非常快的行业,软件人才要按照企业和领域需求来确定培养的方向。下面是由我整理的软件技术论文范文,谢谢你的阅读。

浅谈软件项目估算技术

摘 要:由于软件产品自身的特殊性,导致软件项目的估算工作进行困难,估算结果准确性差。为了解决这一问题,产生了很多不同的软件项目估算技术,本文对各种估算技术的主要思想及其优缺点进行简单的阐述。尤其是对功能点估算技术,本文做了详细的介绍,并通过实例加以说明其应用方法。

关键词:规模估算;成本估算;实例应用

中图分类号:

软件项目的估算历来是比较复杂的事,因为软件本身的复杂性、历史经验的缺乏、估算工具缺乏以及一些人为错误,导致软件项目的估算往往和实际情况相差甚远。因此,估算错误已被列入软件项目失败的四大原因之一。由此,也证明了正确对软件项目进行估算是何等重要。

在软件项目管理中,估算就是对项目将持续多长时间或花费多少成本的预测。所以说,估算正是一种对未来的预测。从这里也看以看出估算的重点就在“工作量估算”或“成本估算”,而在对这两者进行估算的过程中大多数情况下都少不了“软件规模”这个条件,所以本文将软件估算分为两种类型,第一个种是软件项目规模的估算,第二种是将估算得出的规模转换为工作量的估算或成本的估算。目前使用比较广泛的规模估算技术,如:代码行估算技术、功能点估算技术;而使用比较广泛的成本估算技术,如:COCOMO算法模型估算技术。

除了上述所列举的几种技术外,还有几种估算技术既可以用于估算规模,也可直接应用与估算工作量或估算成本,如:Delphi估算法、类比估算技术、PERT估算技术。这几种估算技术不似前面所列的技术,比较有针对行,且有具体的计算过程、计算公式。这几种技术只是一种思想,依据某个选定的科目进行估算。下面本文将简单介绍上述提到的几种估算技术,并通过具体的实例重点阐述功能点估算技术。

1 估算技术简介

代码行估算技术。代码行(LOC)指所有的可执行的源代码行数,包括可交付的工作控制语言(JCL:Job Control Language)语句、数据定义、数据类型声明、等价声明、输入/输出格式声明等[1]。代码行估算技术主要是估算软件的规模,即通过该技术估算待研发软件项目有多少行代码。一般为了方便表示,使用较大的单位千代码行(KLOC)来表示待研发软件项目的规模大小。这种方法比较适用于有经验积累和开发模式稳定的公司。如果是新成立公司,使用这种估算技术则会存在很大误差,加大项目失败的风险。

功能点估算技术。功能点法是一种经过实践验证的方法,但应用成本很高,估算的工作量投入也较大。功能点估算技术最终结果是规模,仍然需要知道项目的生产率数据才能得出实际的工作量。功能点估算技术将系统功能分为输入、输出、查询、外部文件和内部文件5种类型。其中,输入是一个数据跨越系统边界,从外部到内部的基本数据处理过程。数据的来源可以是人机输入界面/接口,或是另一个应用系统;输出是一个衍生数据跨越系统边界,从内部到外部的基本数据处理过程。这些输出的数据可能会产生报表,或发到其他外部系统的输出文件;查询是一个不包含衍生数据和数据维护的基本数据处理过程,包括输入和输出两部分;内部文件存在于系统边界之内,用户可识别的一组逻辑上相互关联的数据;外部文件存在于系统边界之外,用户可识别的一组逻辑上相互关联的数据。使用功能点估算技术估算的大概步骤为:

(1)通过需求分析将系统功能按照上述5种类型进行分类。

(2)分析每个功能项的复杂程度,大致分为一般、简单、复杂三种类型,每一种类型都对应一个权重值,具体如表1。

(3)根据每个功能项的复杂权重值,求出功能项的加权和,即为未调整功能点数(UFC)。

(4)分析该系统的技术复杂度,功能点估算将与系统相关的技术影响因素分为14组(用Ai表示),每个分为6个级别,权重分别从0至5。根据分析结果及公式计算技术复杂度因子(TCF),即TCF=(SUM(Ai))。

(5)将UFC与TCF相乘即为功能点数。

COCOMO算法模型。Cocomo模像是一个分层次的系列软件成本估算模型,包括基本模型、中级模型和详细模型3个子模型。3个模型采用同一个计算公式,即E=asb×EAF[2]。其中,E是以人月为单位的工作量;S是以KLOC为单位的程序规模;EAF是一个工作量调整因子,在基本模型中该项值为1,中级模型和详细模型中根据成本驱动因素确定;a和b是随开发模式而变化的因子,这里开发模式被分为3中类型,即有机式、半分离式和嵌入式。

Cocomo算法模型是一种精确易用的估算方法,如果项目没有足够多的历史数据,会使得各调整因子和系数很难确定,进而使得估算比较困难。但是一旦项目建立起这种模型,则通过Cocomo模型得出的项目工作量和项目周期具有更高的准确度。

Delphi估算技术。Delphi估算技术又被成为专家估算技术,它是由一个被认为是该任务专家的人来进行估算,且估算过程很大一部分是基于不清晰,不可重复的推理过程,也就是直觉。所以该技术中专家“专”的程度及对项目的理解程度是该技术的重点,也是难点,它的好坏直接影响估算结果的准确程度。

Delphi估算技术估算过程并不像功能点估算技术或COCOMO算法模型那样,有明确的计算方法或计算公式。它是将待估算的项目的相关信息发给专家,专家估算后由专门的负责人进行汇总,然后再发给专家估算,反复几次后得到一个估算结果,可见只是一种思想,所以它除了用来估算规模,也可以用来估算成本、风险等,即对选定的某个科目进行估算。

类比估算技术。“类比估算”,顾名思义是通过同以往类似项目(如应用领域、环境和复杂程度等)相比较得出估算结果。类比估算技术是一种粗略的估算方法,它估算结果的精确度取决于历史项目数据的完整性和准确度。类比估算技术与Delphi估算技术类似,它的用途不仅仅用在规模估算上,也可以估算成本、工作量等。 PERT估算技术。PERT估算技术,又称为计划评审估算技术,它对需要估算的科目(如规模、成本、工期等)按三种不同情况估算:一个乐观估算结果,一个最可能估算结果,一个悲观估算结果。再通过这三个结果计算得到一个期望规模和标准偏差。这种估算技术可以用于估算规模,同样也可以用于估算工期,相比较来说PERT技术估算的结果比类比估算技术的结果要更准确。

2 功能点估算技术应用实例

假设某员工管理系统,经过需求分析得知,该系统所包含功能如下:

(1)员工信息维护:添加员工、修改员工信息、查询员工信息;

(2)部门信息维护:添加部门、修改部门信息;

(3)工资统计:统计员工年薪,并打印输出。

其中,在该系统中添加一个员工资料,会使用到员工的基本信息:员工ID(标签控件)、姓名、性别、年龄、婚否、部门ID;教育情况:学校名称、所学专业、学历。对部门的维护会使用到部门的信息:部门ID(标签控件)、部门名称。员工工资信息由另外一个财务系统提供,工资表信息有员工的基本信息:员工ID(标签控件)、姓名、部门名称;工资信息:工资级别、工资金额。

根据功能点估算技术估算步骤,首先计算未调整功能点数,即各种类型功能项的加权和,分析该系统6个功能项所属类型及其复杂权重值如表2:

假设该项目的14个技术复杂度因子均为“有一定影响”,即权重值均为2,则该项目功能点数为:FP=45×(×14×2)=。如果知道该项目使用何种语言,可以将功能点数转换为代码行数。

3 结语

本文对目前比较流行的几种软件项目估算技术做了简单介绍。重点讲述了功能点估算技术,并通过一个实例演示了功能点估算技术的应用方法。通过本文描述可以看出每种项目估算技术都有其自己的优缺点,如果想要得到比较准确的估算结果,不能仅靠一种估算技术,而应该综合运用各种估算技术,才能得到比较全面的信息和比较准确的结果。目前,也有一些基于这些估算技术的思想的自动化估算工具产生,相信通过不断的发展,将解决软件项目成本估算难的问题。

参考文献:

[1]朱少民.软件项目管理[M].北京:清华大学出版社,2009-11.

[2]覃征等.软件项目管理[M].北京:清华大学出版社,2004.

[3]李明树,何梅,杨达,舒风笛,王青.软件成本估算方法及应用[J].Journal of Software,, , April 2007,775-795.

[4]The David Consulting Group ,Function Point Counting Practices Manual Release ,January 2005,

[5]刘谦.软件项目估算方法在敏捷开发中的实践.中国管理网,2010-06-18.

作者简介:王颖,女,研究生,软件工程专业;江文焱,男,研究生,软件工程专业。

点击下页还有更多>>>软件技术论文范文

软件工程毕业设计论文

大学生涯就要结束,大家是不是都在忙着自己的毕业论文呢?软件工程专业的同学们,我为大家整理了该专业相关的论文,供大家参考!

一、软件工程专业毕业设计存在的主要问题

(一)毕业设计题目设置与选题方面

题目设置不合理,类别与层次不清晰,选题匹配效果差[2]。学生的毕业设计课题一般都按照指导老师的研究方向和实际工程项目提供,但每年真正来源于工程实践题目比例较少。部分题目理论性强,学生根据所学知识不能很好理解;部分题目开发工具复杂,占用了毕业设计的大部分时间。在选题时可能导致学生想选的题目选不上,能力差的学生所选题目难度大,影响学生的积极性,导致选题效果差,造成毕业设计很难完成。

(二)毕业设计过程监控方面

毕业设计监控工作实施困难,效果较差。软件工程专业毕业设计一般包含选题、开题、中期检查、程序测试、撰写毕业论文、答辩、成绩评定。但对这些环节的监控有时候会形成空白带,毕业设计不在实验室进行,有的学生在实习单位实习,有的学生在外地找工作,老师不能定时与学生见面,老师无法了解学生的具体情况,且学生提交的各阶段文档流于形式,只有指导教师在进行监控,未形成完善的监控体系,导致监控不到位,监控效果较差[3]。

(三)毕业设计论文答辩方面

答辩考核方法单一,答辩仅由学生的讲解和老师的提问两个环节组成,考核准确度低。答辩通过门槛较低,答辩只对学生的毕业设计进行排名,一般排名在最后的学生才可能不及格,不利于提高学生毕业设计积极性,造成大部分同学仅以答辩及格为目标,思想上不重视,答辩准备工作不扎实。再由于软件工程专业特点,毕业设计软件作品评分标准难于量化,考核具有一定难度,也造成答辩效果不好。同时为了提高学生毕业率和就业率,毕业答辩的质量控制有所放松,直接导致了软件工程专业毕业设计质量难以保障。

二、软件工程专业毕业设计的教学改革

针对上述各项实际问题,主要进行的相关工作具体如下:

(一)合理设置毕业设计题目,动态选题

依照软件工程专业的以市场需求为导向,培养应用型软件工程人才的培养目标,在毕业设计题目设置环节,紧紧围绕工程实际型、创新项目型、竞赛题目型、科研项目型等类型进行题目设置,以适应市场动态需求。同时着力避免在毕业设计题目中设置虚拟型题目、理论研究型题目、综述型题目、分析设计型题目等。在选题过程中,通过毕业设计管理系统(如图1所示)进行多轮双向动态选择,动态调整题目各项技术参数以保证学生能选择一个适合自己能力且能有利于自己以后工作的题目[4]。这样,在选题之后,每个指导老师就可以根据学生不同能力进行分别指导,使不同能力的学生都能够运用其所学知识解决工程实际问题,都能够通过毕业设计增强工程实践能力、工程设计能力与创新能力。近四学年软件工程专业毕业设计各类题目汇总。

(二)毕业设计过程实行三级监控管理机制

学校成立以主管副校长为组长的毕业设计工作领导小组以加强毕业设计宏观调控,学院成立以教学副院长为组长的`毕业设计工作领导小组以加强毕业设计协调与监控工作,软件工程专业成立以专业负责人为组长的毕业设计工作小组落实并实施毕业设计各环节具体工作[2]。具体参见下图2。在实现毕业设计过程管理的三级管理机制的同时,为保障毕业设计工作质量,软件工程专业要求所有指导教师必须具有中级以上技术职称或硕士以上学位且有一定工程实践经验,具有较高教学、科研水平和创新能力,师德良好,工作态度认真负责。在每年的毕业设计指导工作开始前都对指导教师进行资格审查,择优任用,且每位教师指导的学生不超过6人,以保证指导教师对学生的充分指导[5]。

(三)毕业设计过程量化考核

以往软件工程专业毕业设计成绩通常由三部分组成:一是学生的平时表现由指导老师把握;二是学生的毕业论文成绩。由专业其他指导老师进行评阅;三是现场答辩成绩。由所在组的指导教师按照相关评分标准打分并取平均分。这样基本能够保证毕业设计成绩的公正,但是由于只有毕业答辩环节具有约束力即答辩未通过则总成绩不及格,其他环节不具约束力,因此造成毕业设计前期、中期工作流于形式,前期、中期阶段提交的文档趋于应付、质量不高,最终导致毕业论文质量较低[6,7]。为此,软件工程专业经过几年的探索与实践,实施了毕业设计各阶段的软件工程生命周期量化考核法即各个阶段量化考核,且考核成绩不合格者不能进行下阶段毕业设计工作,必须加以整改,整改通过后才能进入下一阶段毕业设计工作。经过几年的实践证明该考核方法切实可行,能够保证毕业设计各个环节的质量,最终提高毕业设计总体质量。

(四)在毕业设计过程中进一步提高学生工程能力与创新能力

辽宁工业大学于2011年制定并实施了大学生创新团队机制,建立了大学生创新项目申报机制引导大学生开展创新活动;引导学生每年都参加校级、省级、国家级软件设计大赛等各类各级比赛[8]。随着学校和学院创新教育活动多年持续深入开展,软件工程专业学生的创新与创业活动取得了显著成果。超过1/4的软件工程专业学生能够独立主持创新性项目,并以该项目为原型申报毕业设计题目[9],同时参加省级、国家级计算机竞赛并获得奖项。通过主持校级及省级创新项目既毕业设计题目,学生工程能力、创新能力得到极大锻炼与提高,本专业毕业生就业率与就业质量明显提高。软件工程专业学生主持参加创新项目既毕业设计题目情况见表3。

三、结束语

软件工程专业毕业设计是一个极具综合性、实践性的重要环节,是对学生大学四年学习后面向社会与企业前的有且仅有的一次大检验,它不仅检验了学生所学知识、能力与综合素质,还检验了软件工程专业的培养目标、培养模式、课程体系、实践体系、创新体系等相关环节[10]。经过几年的探索与实践证明,软件工程专业所做的系列教学改革工作中的毕业设计教学改革工作有利于进一步增强学生的工程实践能力和创新能力,有利于提高软件工程专业毕业设计质量,有利于提高软件工程专业学生就业率与就业质量。虽然软件工程专业毕业设计教学改革工作取得了一定的成绩,社会认可度逐年稳步提高,但如何动态调整教学计划以跟进市场需求变化;如何深入开展大学生创新创业教育活动以进一步增强更多软件工程专业学生的实践能力及创新能力;如何进一步加强专业教师工程实践能力、工程设计能力与工程创新能力以提高毕业设计指导效力;如何提高毕业设计过程管理效率等问题仍然是软件工程专业所面临的严肃课题[11]。因此,软件工程专业的毕业设计教学改革工作也一定会紧跟时代变化,与时俱进。

软件工程论文参考文献范文

在学习和工作中,大家或多或少都会接触过论文吧,通过论文写作可以培养我们的科学研究能力。相信写论文是一个让许多人都头痛的问题,以下是我帮大家整理的软件工程论文参考文献范文,欢迎阅读,希望大家能够喜欢。

[1]刘洪峰,陈江波.网络开发技术大全[M].人民邮电出版社,2005:119-143.

[2]程成,陈霞.软件工程[M].机械工业出版社,2003:46-80.

[3]舒红平.Web 数据库编程-Java[M].西安电子科技大学出版社,2005:97-143.

[4]徐拥军.从档案收集到知识积累[M].是由工业出版社,2008:6-24.

[5]纪新.转型期大型企业集团档案管理模式研究[D].天津师范大学,2008:46-57.

[6]周玉玲.纸质与电子档案共存及网络环境电子档案管理模式[J].中国科技博览,2009:44-46.

[7]张寅玮.甘肃省电子档案管理研究[D]. 兰州大学,2011:30-42

[8]惠宏伟.面向数字化校园的档案信息管理系统的研究与实现[D]. 电子科技大学,2006:19-33

[9]刘冬立.基于 Web 的企业档案管理系统的设计与实现[D].同济大学,2007:14-23

[10]钟瑛.浅议电子文件管理系统的功能要素[J]. 档案学通讯,2006:11-20

[11]杜献峰 . 基于三层 B/S 结构的`档案管理系统开发 [J]. 中原工学院学报,2009:19-25

[12]林鹏,李田养. 数字档案馆电子文件接收管理系统研究及建设[J].兰台世界,2008:23-25

[13]汤星群.基于数字档案馆建设的两点思考[J].档案时空,2005:23-28

[14]张华丽.基于 J2EE 的档案管理系统设计与实现[J].现代商贸工业. 2010:14-17

[15]Gary P Johnston,David V. benefits of electronic recordsmanagement systems: a general review of published and some unpublishedcases. RecordsManagement Journal,2005:44-52

[16]Keith an electronic records management system: Apublic sector case study. Records Management Journal,2005:17-21

[17]Duranti Methods for the Management of Electronic RecordsR[J].Information Society,2001:57-60.

[18]Lynn C value and thepermanent record the preservation conundrum[M].International digital library perspectives,2007:34-89.

[19]Aleksej Jerman trustedpreservation service using service interaction proto-col and evidence records[J].Computers and Standards,2007:23-29.

[20]Carmela Secure Long-Term Archival of Digitally Signed Documents[M].Proceedings of the4th ACM international workshop on Storage secu-rity and survivability,2008:102-134.

[1]Schiller J H, Voisard A. Location-Based Services [C]. San Francisco: Morgan Kaufmann,2004

[2]Jiang B, Yao X. Location-based services and GIS in perspective [C]. Computers,Environment and Urban System, 2006, 30(6): 712-725[3]王惠南编著.GPS导航原理与应用[M].科学出版社,2003

[3], and . Positioning GSM Telephones [J], IEEE , , 1998[4], and . Cellular Telephone Positioning Using GPS TimeSynchronization [C], GPS World, 1998

[4]Christie J, Fuller R, Nichols J. Development and deployment of GPS wireless devices forE911 and location based services. Position Location and Navigation Symposium [C], 2002, 60 - 65

[5]胡加艳,陈秀万,吴雨航,吴才聪.移动位置服务在应急救援中的应用[J].中国应急救援.2008(05)

[6]冯锦海,杨连贺,刘军发等.基于WLAN移动定位的个性化商品信总推荐平台[J].计算机工程与科学.2014(10)

[7]张寅宝,张威巍,孙卫新.面向位置服务的室内空间数据模型研宂[J].测绘与空间地理信息.2014(11)

[8]ZhongLiang Deng, Weizheng Ren, Lianming Xu. Localization Algorithm Based onDifference Estimation for Wireless Sensor Networks in Pervasive Computing Computing and Applications [C], 2008, .

[9]Stoyanova T, Kerasiotis F, Efstathiou K. Modeling of the RSS Uncertainty for RSS-BasedOutdoor Localization and Tracking Applications in Wireless Sensor Networks. Sensor Technologiesand Applications (SENSORCOMM) [C], 2010, 45 - 50

[10]Jun-yong Yoon, Jae-Wan Kim, Won-Hee Lee. A TDoA-Based Localization Using PreciseTime-Synchronization. Advanced Communication Technology (ICACT) [C]3

[11]韩霜,罗海勇,陈颖等.基于TDOA的超声波室内定位系统的设计与实现[J].传感技术学报.2010(03)

[12]Hee-Joong Kim, Jihong Lee. Stereo AoA system for indoor SLAM [C]. Control,Automation and Systems (TCCAS), 2013 13th, 1164-1169

[13]张明华.基于WLAN的室内定位技术研究[D],上海,上海交通大学,2009,36-38

[14]Weston J L, Titterton D H. Modern Tnertial Navigation Technology and Its Application [J].Electronics & Communication Engineering Journal, 2000, 12(2):49-64

[15] , , . Location Fingerprinting on Infrastructure Local Area Networks (WLANS) Using Locus [C], Local Computer Networks, 2004. 29thAnnual IEEE International Conference on. IEEE, 2004, pp. 676-683.

[16]王赛伟,徐玉滨,邓志安等.基于概率分布的室内定位算法研究[C].国际信息技与应用论坛文集,2009.

[17]宁静.采用红外织网的室内定位技术[J].激光与红外.2011(07)

[18]卜英勇,王纪婵,赵海鸣等.基于单片机的高精度超声波测距系统[J].仪表技术与传感器.2007(03)

[19]HyungSoo Lim, ByoungSuk Choi, JangMyung Lee. An Efficient Localization Algorithmfor Mobile Robots based on RFID System [C]. SICE-ICCAS,Oct. 2006 pp. 5945-5950

[20]N4air N, Mahmoud . A collaborative Bluetooth-Based Approach to Localization ofMobile Devices [C]. Collaborative Computing: Networking, Applications and Worksharing(CoIlaborateCom), 2012,363 - 371

[21]Si nan Gezici, Zhi Tian, Georgios B. Biannakis, et al. Localization via Ultra-WidebandRadios [C]. IEEE Signal Processing Magazine July 2005.

[22]陈文周.WiFi技术研究及应用[J].数据通信.2008(02)

[23]李红,郭大群.WiFi技术的优势与发展前景分析[J],电脑知识与技术,2013(5)

[24]石欣,印爱民,张琦.基于K最近邻分类的无线传感器网络定位算法[J].仪器仪表学报,2014(10)

[25]Christopher . Burges. A Tutorial on Support Vector Machines for Pattern Recognition[J]. Data Mining and Knowledge Discovery. 1998 (2)

[26]Asano S,Wakuda Y’ Koshizuka N. A robust Pedestrian Dead-Reckoning PositioningBased on Pedestrian Behavior and Sensor Validity [C]. PLANS’ 2012,328 - 333

[27]Alvarez D, Gonzalez , Alvarez . Comparison of Step Length Estimators fromWearable Accelerometer Devices [C]. EMBS, 2006:5964-5967.

[28]刘长征,李纬,丁辰等.多种定位技术融合构建LBS体系[J].地理信息世界.2003(03)

[29]张世.基于惯性传感器和WiFi的室内定位系统的设计与实现[D],北京,北京邮电大学,2012.

[30]周傲英,杨彬,金澈清等.基于位置的服务:架构与进展[J].计算机学报.2011(07)

[31 ] W3C, Scalable Vector Graphics (SVG) [OL],

[32] Eisa S, Peixoto J. Meneses F. Removing Useless APs and Fingerprints from WiFi IndoorPositioning Radio Maps [C]. Indoor Positioning and Indoor Navigation (IPIN), 2013, 1-7

软件工程论文8000字

软件工程毕业论文相对来说还是比较好写的,你们老师可能是让你想写一些跟大学生接触比较多的课题,所以选择了软件工程在手机游戏中运用的这个题目。你要找资料的话,上知网、维普或者万方都可以,他们的数据库很全,相关资料很多,不过下载文章需要收费(除非学校购买了相应的文献库)。如果你实在找不到资料,又没有时间写,那么我建议你找家可靠的论文机构,不过最好能找像论文时代网这样的大网站,这样不怕文章出了问题找不到人,祝你好运。

一、论题提出的背景和意义(即国内外现状) 随着我国加入WTO和我国工业的迅猛发展,为了抓住机遇,在竞争中占得先机,作为生产企业的一个必不可少的重要环节——库存管理的信息化、计算机化也就迫在眉睫了。开发库存管理信息系统既有宏观上的意义,那就是顺应时代信息化、现代化潮流,提高效益,促进国民经济结构优化;也有微观上的意义,那就是可以提高管理的现代化程序,加强管理的信息化手段,提高工作效率,增加单位效益。 库存管理的对象是很多的,广而言之,它可以包括:商业、企业库存的商品,图书馆库存的图书,博物馆库存的展品等。在这里本文仅涉及工业企业的产品库存。它主要包括下列三部分: 1.没有经过企业加工,而为企业生产或其他其他各方面所需要的原材料、燃料、半成品、部件等,如钢材、承轴、发动机、电动机等。 2.已经过企业加工,但尚未加工完毕的在制品。 3.企业已加工完毕,储而待销的成品与备件等。 库存管理系统按分类、分级的模式对仓库进行全面的管理和监控,缩短了库存信息流转时间,使企业的物料管理层次分明,井然有序,为采购、销售和生产提供依据;智能化的预警功能可自动提示存货的短缺、超储等异常状况;系统还可以材料库存ABC汇总,减少资金积压。完善的库存管理功能,可对企业的存货进行全面的控制和管理,降低库存成本,增加企业的失常竞争力。 库存管理信息系统研究的内容涉及库存管理的全过程,包括入库、出库、退货、订货、库存统计查询等。 下面介绍库存管理的工作流程: 1.入库 供货单位发货——运输——货物到达后测试检验——送货单——库存管理员查收入库——入库单 处理各种入库业务,如:工业企业的生产入库、委外加工入库、其他入库等入库业务;按出库类型可以分别在不同模块录入入库单据信息 2.出库 库存统计表——各使用单位——领料单——库管人员出库——出库单 处理各种出库业务,如:工业企业的生产领料、委外领料、其他出库等出库业务;按出库类型可以分别在不同模块录入出库单据信息。 3.退货 产品不合格通知书——各使用单位——领料单存根——库管人员退货——退货单 4.订货 库存管理部门向采购部门发出采购单——采购部门向供应单位传递订货单——供应单位组织发货——运输——货物到达后测试检验——入库 5.盘点 备份库存数据,打印盘点表,可按仓库、批次进行盘点,并根据盘点表生成盘盈,盘亏表,调整库存账。 盘点的功能是检查仓库现有库存量与帐面数量是否一致。若盘点结果是仓库现有库存量大于帐面数量,则盘盈;盘点结果是仓库现有库存量小于帐面数量,则盘亏;它们的差异量都记录在盘点调整单上。 二、目前工作中存在的主要问题 1.国内外现状研究: 计算机在方面管理中的应用开始于1954年,当时美国首先用计算机处理工资单。50多年来,计算机在处理管理信息方面发展迅速,例如:60年代美国计算机在管理中应用项目不到300项,到1975年达到2670项。而现在,美国财务会计上90%的工作由计算机来完成;物资管理中80—100%的信息处理由计算机完成;计划管理中是80—90%。据计算机应用方面发展较快的国家统计,计算机应用于经济管理的约占80%;用于科技运算的占8%;用于生产控制的占12%。)因此,经济管理是计算机应用的主要领域。当然,由于库存管理在经济管理中占重要地位,其计算机化在发达国家中也已经达到了相当高的水平。我国在全国范围内推广计算机在经济管理中的应用,是在70年代末开始的,虽然起步较晚,今几年发展却较快,特别是微型计算机的出现和普及,为信息处理提供了物美价帘的手段,对于推动我国管理信息处理的现代化起了重要的作用。 2.目前存在的问题: 库存管理对企业来说是一项繁琐复杂的工作,每天都要处理大量的单据数据。为及时结清没笔业务,盘点库存和和货物流通情况,保证企业生产用料以及货物安全,库管人员要花费大量的人力物力和时间来做数据记录统计工作。 在世界发达国家,库存管理的计算机水平已经很高了,尽管我国的生产企业在这方面也有了很强的意识和长足的进步,但仍存在这样那样的一些问题。 表现之一:有的企业单位的库存管理部分目前仍为手工半手工操作。从供应单位办理入库登记开始,到使用单位输领料出库手续为止,所有的操作基本上都是由仓库管理员笔写,手理,加上算盘或计算器来完成。这不仅繁琐效率低,而且缺乏库存管理的一些基本手段,如库存状况统计,查询经济订货量计算等,这给企业在一定程度上造成了管理上的落后,及经济利益上的损失。 表现之二:有的单位的库存管理部已上了微机,但对微机的利用效率极低,有的在用他打游戏,有的仅仅把它当作计算机或打字机来用。 表现之三:有的企业单位既有了微机的同时也有了库存管理软件,但硬件上去了,软件上不去。因为他门用的库存管理软件大多为自己的工作人员及其他的一些非专业人员所开发的简单的管理软件,很难称的上是“库存管理信息系统软件”这些程序的弱点大多表现为:1)系统开发时无科学的理论支持。2)开发过程的调研不全面。3)软件编写时的模型不清晰完整。4)所用的开发工具落后(如FOXBASE等) 三、统计与分析系统的必要性和可行性(研究解决方法及思路) 根据我国国内库存管理信息系统在企业中应用普及时出现的各种问题,我将用我所学的知识,利用当前的管理信息系统的理论,开发一套基于NET的库存管理系统,以求能对我国的库存管理现代化水平的提高贡献一份微薄力量。 具体的方法及计划如下: 全论文将分为三个部分。第一部分为引论,阐明所开发的项目要满足用户哪些要求,并给出全文的摘要。第二部分为实际开发过程,这将是论文的核心内容分为理论支持,系统分析,系统设计,软件编写,软件安装,系统维护七章。第三部分为结束语部分,分为经验教训和注意问题及作者的建议,参考资料二章。作为作者的心得体会与读者共享。

软件工程毕业设计论文

大学生涯就要结束,大家是不是都在忙着自己的毕业论文呢?软件工程专业的同学们,我为大家整理了该专业相关的论文,供大家参考!

一、软件工程专业毕业设计存在的主要问题

(一)毕业设计题目设置与选题方面

题目设置不合理,类别与层次不清晰,选题匹配效果差[2]。学生的毕业设计课题一般都按照指导老师的研究方向和实际工程项目提供,但每年真正来源于工程实践题目比例较少。部分题目理论性强,学生根据所学知识不能很好理解;部分题目开发工具复杂,占用了毕业设计的大部分时间。在选题时可能导致学生想选的题目选不上,能力差的学生所选题目难度大,影响学生的积极性,导致选题效果差,造成毕业设计很难完成。

(二)毕业设计过程监控方面

毕业设计监控工作实施困难,效果较差。软件工程专业毕业设计一般包含选题、开题、中期检查、程序测试、撰写毕业论文、答辩、成绩评定。但对这些环节的监控有时候会形成空白带,毕业设计不在实验室进行,有的学生在实习单位实习,有的学生在外地找工作,老师不能定时与学生见面,老师无法了解学生的具体情况,且学生提交的各阶段文档流于形式,只有指导教师在进行监控,未形成完善的监控体系,导致监控不到位,监控效果较差[3]。

(三)毕业设计论文答辩方面

答辩考核方法单一,答辩仅由学生的讲解和老师的提问两个环节组成,考核准确度低。答辩通过门槛较低,答辩只对学生的毕业设计进行排名,一般排名在最后的学生才可能不及格,不利于提高学生毕业设计积极性,造成大部分同学仅以答辩及格为目标,思想上不重视,答辩准备工作不扎实。再由于软件工程专业特点,毕业设计软件作品评分标准难于量化,考核具有一定难度,也造成答辩效果不好。同时为了提高学生毕业率和就业率,毕业答辩的质量控制有所放松,直接导致了软件工程专业毕业设计质量难以保障。

二、软件工程专业毕业设计的教学改革

针对上述各项实际问题,主要进行的相关工作具体如下:

(一)合理设置毕业设计题目,动态选题

依照软件工程专业的以市场需求为导向,培养应用型软件工程人才的培养目标,在毕业设计题目设置环节,紧紧围绕工程实际型、创新项目型、竞赛题目型、科研项目型等类型进行题目设置,以适应市场动态需求。同时着力避免在毕业设计题目中设置虚拟型题目、理论研究型题目、综述型题目、分析设计型题目等。在选题过程中,通过毕业设计管理系统(如图1所示)进行多轮双向动态选择,动态调整题目各项技术参数以保证学生能选择一个适合自己能力且能有利于自己以后工作的题目[4]。这样,在选题之后,每个指导老师就可以根据学生不同能力进行分别指导,使不同能力的学生都能够运用其所学知识解决工程实际问题,都能够通过毕业设计增强工程实践能力、工程设计能力与创新能力。近四学年软件工程专业毕业设计各类题目汇总。

(二)毕业设计过程实行三级监控管理机制

学校成立以主管副校长为组长的毕业设计工作领导小组以加强毕业设计宏观调控,学院成立以教学副院长为组长的`毕业设计工作领导小组以加强毕业设计协调与监控工作,软件工程专业成立以专业负责人为组长的毕业设计工作小组落实并实施毕业设计各环节具体工作[2]。具体参见下图2。在实现毕业设计过程管理的三级管理机制的同时,为保障毕业设计工作质量,软件工程专业要求所有指导教师必须具有中级以上技术职称或硕士以上学位且有一定工程实践经验,具有较高教学、科研水平和创新能力,师德良好,工作态度认真负责。在每年的毕业设计指导工作开始前都对指导教师进行资格审查,择优任用,且每位教师指导的学生不超过6人,以保证指导教师对学生的充分指导[5]。

(三)毕业设计过程量化考核

以往软件工程专业毕业设计成绩通常由三部分组成:一是学生的平时表现由指导老师把握;二是学生的毕业论文成绩。由专业其他指导老师进行评阅;三是现场答辩成绩。由所在组的指导教师按照相关评分标准打分并取平均分。这样基本能够保证毕业设计成绩的公正,但是由于只有毕业答辩环节具有约束力即答辩未通过则总成绩不及格,其他环节不具约束力,因此造成毕业设计前期、中期工作流于形式,前期、中期阶段提交的文档趋于应付、质量不高,最终导致毕业论文质量较低[6,7]。为此,软件工程专业经过几年的探索与实践,实施了毕业设计各阶段的软件工程生命周期量化考核法即各个阶段量化考核,且考核成绩不合格者不能进行下阶段毕业设计工作,必须加以整改,整改通过后才能进入下一阶段毕业设计工作。经过几年的实践证明该考核方法切实可行,能够保证毕业设计各个环节的质量,最终提高毕业设计总体质量。

(四)在毕业设计过程中进一步提高学生工程能力与创新能力

辽宁工业大学于2011年制定并实施了大学生创新团队机制,建立了大学生创新项目申报机制引导大学生开展创新活动;引导学生每年都参加校级、省级、国家级软件设计大赛等各类各级比赛[8]。随着学校和学院创新教育活动多年持续深入开展,软件工程专业学生的创新与创业活动取得了显著成果。超过1/4的软件工程专业学生能够独立主持创新性项目,并以该项目为原型申报毕业设计题目[9],同时参加省级、国家级计算机竞赛并获得奖项。通过主持校级及省级创新项目既毕业设计题目,学生工程能力、创新能力得到极大锻炼与提高,本专业毕业生就业率与就业质量明显提高。软件工程专业学生主持参加创新项目既毕业设计题目情况见表3。

三、结束语

软件工程专业毕业设计是一个极具综合性、实践性的重要环节,是对学生大学四年学习后面向社会与企业前的有且仅有的一次大检验,它不仅检验了学生所学知识、能力与综合素质,还检验了软件工程专业的培养目标、培养模式、课程体系、实践体系、创新体系等相关环节[10]。经过几年的探索与实践证明,软件工程专业所做的系列教学改革工作中的毕业设计教学改革工作有利于进一步增强学生的工程实践能力和创新能力,有利于提高软件工程专业毕业设计质量,有利于提高软件工程专业学生就业率与就业质量。虽然软件工程专业毕业设计教学改革工作取得了一定的成绩,社会认可度逐年稳步提高,但如何动态调整教学计划以跟进市场需求变化;如何深入开展大学生创新创业教育活动以进一步增强更多软件工程专业学生的实践能力及创新能力;如何进一步加强专业教师工程实践能力、工程设计能力与工程创新能力以提高毕业设计指导效力;如何提高毕业设计过程管理效率等问题仍然是软件工程专业所面临的严肃课题[11]。因此,软件工程专业的毕业设计教学改革工作也一定会紧跟时代变化,与时俱进。

相关百科

热门百科

首页
发表服务