期刊大全 杂志订阅 SCI期刊 投稿指导 期刊服务 文秘服务 出版社 登录/注册 购物车(0)

首页 > 精品范文 > 软件工程

软件工程精品(七篇)

时间:2022-10-08 05:59:29

序论:写作是一种深度的自我表达。它要求我们深入探索自己的思想和情感,挖掘那些隐藏在内心深处的真相,好投稿为您带来了七篇软件工程范文,愿它们成为您写作过程中的灵感催化剂,助力您的创作。

软件工程

篇(1)

关键词:软件工程;课程群;课程设计

中图分类号:G642 文献标识码:B

文章编号:1672-5913 (2007) 20-0005-03

软件工程是计算机学科的重要学科分支,在本科计算机类各专业中都开设一些软件工程的课程,在研究生教学中,无论是硕士还是博士,都设置软件工程的研究方向,开设高一级的软件工程课程。本文中,软件工程课程群是指包括各层次的软件工程类课程。另外,软件工程又是一门发展非常迅速的学科,早年在研究生中讲述的内容现在放在本科中讲。因此,这些课程存在定位不明确,课程间内容交叉重复等问题。本文根据本科生和研究生两个层次对软件工程类课程的教学要求,阐述软件工程课程群的定位、课程设置、主要课程的知识单元和知识点。

1定位

首先分析社会对各层次计算机专业学生在软件工程方面的知识和能力要求。我们认为计算机类本科学生毕业后,主要从事计算机软件的开发工作,他们应掌握软件工程的基本概念、基本原理和基本方法,并能运用这些概念、方法、原理,参与和/或从事软件开发的某些活动(如分析、设计、编码、测试等)。软件工程方向的研究生主要着重研究能力的培养,毕业后主要承担系统分析员和/或系统设计员角色,甚至承担项目经理的角色,他们应掌握软件工程的研究动态,了解软件工程最新的研究成果,具备有关软件的系统分析、构架设计和软件项目管理的知识和能力。

根据以上分析,我们认为,本科生软件工程课程群应以软件工程的基本概念、基本原理和基本方法为主线,使学生具备扎实的软件工程基本理论知识、熟练的编程能力、较好的团队合作能力和实验能力,同时具备一定的分析与解决问题能力和创新能力。研究生软件工程课程群应以研究课题为主线,使学生掌握软件工程最新的研究动态,对其中若干个研究方向有深入的了解,具备较强的分析与解决问题能力和创新能力,以及基本的软件项目组

织和管理能力。

2课程设置

软件工程课程群按学生的层次可分为本科生软件工程课程群和研究生软件工程课程群,按课程类别可分为必修课和选修课。

根据上述定位,本科生软件工程课程群的必修课包括软件工程和软件实践,有些学校在软件工程课中包括足够的实践时间,可将它们合并成一门软件工程课。选修课可根据各校的特点开设不同的课程,如面向对象的分析与设计、软件体系结构、基于构件的软件开发、软件测试等,也可将研究生的某些课程作为本科高年级学生的选修课。

研究生软件工程课程群的必修课可包括高级软件工程、软件项目管理和专题讨论,其中专题讨论没有固定的教材,它以若干专题(如软件复用技术、模型驱动体系结构、软件产品线等)的最新论文为主,以报告和讨论的形式进行。选修课可根据导师的研究方向选择合适的课程,如需求工程、软件过程、形式方法等。

3教学内容

本节参照国外相关的资料,结合我们多年的教学实践,给出软件工程课程群中各必修课的知识单元。

3.1软件工程(本科生)

本科软件工程课程的内容应覆盖教育部计算机科学与技术教学指导委员会制订的计算机科学与技术本科专业规范(计算机科学方向)中有关软件工程的主要知识单元,该课程以软件工程的基本概念、基本原理和基本方法为主,着重国内比较流行的结构化分析与设计方法、面向对象分析与设计方法和常规的软件测试方法。同时对一些较新的软件开发模型、方法和技术(如基于构件的软件开发模型和方法、敏捷开发方法、CMM&CMMI、Web工程等)做简单的介绍,以便学生今后自学。

3.2软件实践(本科生)

该课程是本科软件工程课程的一门后继实验课,以某种软件开发方法(如面向对象方法)和软件过程(如统一软件过程RUP)为基础,引导学生完成一个完整的软件项目开发全过程,包括需求获取、需求分析、系统设计、实现以及测试等基本步骤。该课程主要培养学生的分析与解决问题能力、团队合作能力、实验能力和创新能力

3.3高级软件工程(研究生)

该课程选择当今软件工程研究的热点课题作为主要内容,其知识单元可包括:基于构件的软件工程、软件产品线、软件体系结构、模型驱动体系结构(MDA)、面向方面程序设计(AOP)、需求工程、面向对象测试技术、逆向工程和再工程、Agent技术、形式方法、高可信软件,开源软件等。值得注意的是,在一门高级软件工程课程中很难详细介绍上述所有的内容,各校可根据自己的特点和研究方向,选择几个(以3~5个为宜)知识单元作重点介绍,对其他知识单元可只做简单的介绍。

下面给出几个知识单元所包含的知识点。

基于构件的软件工程(CBSE)主要包括:CBSE基本概念,软件构件规格说明,构件模型,基于构件的开发过程,基于构件开发的语义完整性,构件组装和集成,预测系统的可信度,软件产品线体系结构中的构件,商用第三方构件(COTS)及构件获取技术,基于构件的软件体系结构,基于构件软件的测试与质量保证,构件的可变性机制,软件构件库,构件交易,构件描述与检索等。

软件产品线(SPL)主要包括:软件产品线的基本概念,软件产品线的基本活动(核心资产开发,产品开发,管理),领域工程与应用系统工程,SPL经济学,软件产品线实践域,软件产品线实践模式,产品线组装,基于产品线的应用系统开发技术等。

软件体系结构主要包括:软件体系结构的原则和实践,体系结构框架/方法,体系结构模型与MDA,集成框架,软件体系结构设计与分析,体系结构风格,软件体系结构文档,软件体系结构评估与确认,面向服务体系结构(SOA),体系结构模式,企业体系结构等。

模型驱动体系结构(MDA)主要包括:MDA基本概念,MDA规格说明,MDA模型(CIM,PIM,PSM),模型转换,模型语言(如可执行的UML,对象约束语言OCL等),元建模,MDA过程,领域建模,系统模型,平台无关建模,平台特定的实现等。

3.4软件项目管理(研究生)

该课程的知识单元包括:综合管理,范围管理,时间管理,成本管理,质量管理,人力资源管理,沟通管理,风险管理,采购管理,敏捷项目管理,外包管理,软技能等。下面给出其中若干个知识单元所包含的知识点。

综合管理:项目,项目范围陈述,项目管理计划(编制过程,内容),项目执行的管理,项目评价,项目的监督和控制,集成的变更控制,实施报告,配置管理,关闭项目。

范围管理:启动过程,项目选择方法,项目合同,范围管理计划(编制过程,范围陈述,范围定义),创建WBS,范围验证过程,范围蔓延,范围变更控制过程,目标管理(MBO),影响曲线。

时间管理:活动定义过程,活动排序过程,图示方法(优先图示方法(PDM),箭头图示方法(ADM),条件图示方法,图形评价和评审技术(GERT), 项目网络图,关键路径方法(CPM),计划评价和评审技术(PERT)等),PERT对CPM的估算,活动资源估算,活动持续时间估算,估算工具,进度表开发过程,进度控制过程,净价值术语和公式。

成本管理:资源计划编制过程,成本估算(术语,过程,COCOMO模型,工具),成本管理计划,成本预算过程,成本基线,项目投资需求,成本控制过程,实施度量,预测完成,净价值术语和公式。

质量管理:质量计划编制过程,质量保证计划,过程改进计划,质量保证过程,质量控制过程,统计质量控制(SQC),质量改进过程。

人力资源管理:人力资源计划编制,组织计划编制,项目管理中人的因素,责任委派矩阵,获取项目组,员工获取过程,项目管理者的角色和责任,项目组(建造过程),小组动力,管理项目组,角色与责任,领导风格,能力类型,冲突管理,6动机理论,小组性能估算,管理知识员工。

沟通管理:沟通计划编制,沟通管理计划,信息分发,沟通模型,沟通风格,沟通方法,沟通链接规则,沟通障碍,沟通技巧,绩效报告,管理涉众,管理收尾。

风险管理:风险管理计划编制,实用方法,风险标识,风险分析(定性分析,可能性与风险影响,定量分析,灵敏性分析,决策树分析,预期货币价值,概率方法),风险响应(计划编制,工具与技术),可保险风险,风险监督与控制过程,影响曲线。

采购管理:采购计划编制,购买和获取计划,合同计划,成本补偿合同,固定价格合同,工作陈述,申请计划编制过程,请求供方响应,申请过程,供方选择,源选择过程,谈判,合同,合同管理,合同变更控制,合同收尾。

敏捷项目管理:Agile宣言和原则,迭代与演化开发,产品业主,敏捷管理需求,敏捷估算与计划编制,敏捷设计,敏捷文档,敏捷软件构造,敏捷编程,人员管理问题,敏捷质量保证,敏捷项目管理,项目评审,敏捷度量。

外包管理:识别全球业务机遇,组织模型与商业策略,全球项目的特征和挑战,全球项目经理的技能,国际及多种文化的交融,IP保护与其他法律方面,采购道德规范,道德规范法规,试验计划,风险管理,软件过程与实践的改进,建立团队,需求管理及客户/供应商关系,开发方法学,全球软件开发(GSD)与全球软件工程(GSE),沟通、协调和协作,离岸项目的管理,克服距离和时间,文化交叉的处理,全球项目的安全问题,全球项目收尾,从业人员教育培训及知识管理。

软技能:领导能力,批判性思考,职业道德规范,自我激励,诚实,小组工作,风险捕获,适应性,人际关系,工作压力承受、压力管理,创造性,影响力,研究能力,问题解决能力,组织能力,多文化处理能力,学习能力,时间管理,口头沟通,文字沟通,细心周到。

4小结

本文介绍了软件工程课程群的设计,在具体实施时,可根据各校的特点,对上述课程设置、知识单元、知识点进行裁剪。下一步将继续完善各课程的知识单元和知识点,为软件工程课程群建设打好基础。

参考文献

[1] 教育部高等学校计算机科学与技术教学指导委员会. 计算机科学与技术本科专业规范[M]. 北京:高等教育出版社,2006 .

作者简介

钱乐秋(1942-),男,复旦大学计算机科学与工程系教授,博士生导师,主要研究方向为软件工程。

篇(2)

关键词:软件工程;哲学;思想方法论

中图分类号:TP311.52 文献标识码:A文章编号:1007-9599 (2011) 15-0000-01

Software Engineering and Philosophy

Song Lianpeng

(Cangzhou Medical Insurance Management Center,Cangzhou061001,China)

Abstract:Although software engineering software to solve the crisis,Moreover,nearly three decades of development,software engineering has accumulated a considerable number of methods and experience,but these methods are not static and experience a panacea,only a constant practice of software engineers to choose the right method in order to develop good software.How to choose the appropriate method to do,important way is to use philosophy to software engineers through the whole process of software engineering development.

Keywords:Software engineering;Philosophy;Thinking methodology

软件工程是软件生产和软件管理的工程科学。是应用计算机科学、数学及管理科学原理来开发软件工程。发展到今天,软件智能程度越来越高,系统越来越复杂,怎样才能开发出好的软件工程?有些人可能认为只要学好计算机科学、数学等理工学科,就能做好软件开发。其实不然。笔者认为,用好哲学思想才是开发出高水平软件工程的关键。哲学对软件工程的开发具有指导作用。

一、软件工程分析中哲学思想

如果从哲学的角度去审视一个事物,那么就应该本着“跳出画外看画”的原则去把握它,真正的分析方法应该是从整体上去把握它,绝对不能形而上学。当拿到一项软件开发的任务时,首先,应该站在整体的角度,分清楚软件工程中的“元素”都有什么:比如从人的角度划分有业务方、实施方和监理方等,从流程的角度划分有立项、需求、设计、实现、确认和支持等。然后,你一定要本着辩证唯物主义的基本原则,来对这些元素进行分析,再结合一个特定的历史背景,得出一套整体的软件工程规划蓝图来。如果你仅仅从站在自己团队的角度去思考问题,那是不行的,真正的软件工程的哲学应该是把尽量多的系统以及客户需求等“元素”结合起来,运用辩证唯物主义方法进行分析,得出一个整体的、最优的软件系统结构模型。即“整体规划、分步实施”。

二、软件工程设计中哲学思想

在设计方案时,我们绝对不能用静止的眼光来看待客户需求,因为客户需求是变化的,不是一成不变的。一旦需求变更,就会导致大量的开发返工,所以说静止的方案绝对不是一个好方案。我们应该遵循一个前瞻性原则,那就是尽量考虑将来都会发生哪些事情,即遵循“架构设计可扩展”的原则,为许许多多将来可能的发生变化的需求或是新技术预留出接口来。当然,这种方案设计的思路会大大增加设计的难度和开发的工作量,但这是必须要做的事情,因为我们应该从整个软件工程发展的角度去思考问题,与时俱进,即我们经常说的“用户的需求总是在变化,做方案应该多为用户考虑,尽量降低需求变更对方案的冲击”。绝对不能用静止的眼光去看待用户的需求。

三、在软件测试中哲学思想

软件测试工作也是软件工程开发中比较重要的工作,虽然软件测试处于起步阶段。软件测试需要什么样的专业基础还没有定论,但哲学思想应该贯穿整个测试工作中,测试的目的是为了发现软件中尽可能多的缺陷,这里缺陷是一种泛称,它可能是功能的错误、性能低下、易用性差等等。测试总是先假设程序中存在缺陷,再通过执行程序来发现并最终改正缺陷。理解测试的目的是个很重要的意识问题,而这种意识恰恰是哲学思想。

四、开发团队中哲学思想

工作在第一线的软件开发人员是程序员和项目经理,他们决定着软件的命运。良好的程序员队伍和出色的管理是软件项目成功的必要条件。管理不是管制。管理的目的是让大家一起把工作做好,并且让各人获得各自的快乐和满足。在项目完成时,他们会自豪地说:“看看我们通过努力取得的成绩吧”。所以管理者不能老惦记着自己是一个官,而应时刻意识到自己是责任的主要承担者。作为软件工程的项目经理,让大家都能够有一个更高的站位,调动团队每个人的积极性,发挥每个人的想象力,不去计较某个项目组多做一点还是少做一点,。用历史唯物主义观点来发现软件开发中的矛盾点,用辩证唯物主义观点来解觉这些矛盾点。其实就这样做过一段时间之后,你会发现,遵循了这个原则的人,恰恰就是这个原则的最大受益者。

参考文献:

[1]林锐.软件工程思想[J].奇书网,2002

篇(3)

【 关键词 】 软件工程;升级;策略

The Discussion of the Software Engineering Upgrades Policy

Chuai Zheng

(Tianjin Youth Vocational College Tianjin 300000)

【 Abstract 】 Firstly, from the analysis of the drawbacks of traditional computer software, the paper makes the interpretation of the value to start upgrading computer software engineering, and proposes the upgrade of software engineering goals. Then, the paper will propose the software engineering upgrade strategy to explore several considerations.

【 Keywords 】 software engineering; upgrades; policy

1 引言

计算机是硬件和软件的有机组合,二者缺一不可。其中硬件是软件的物理基础,偏向于现实的可触及的物理设备互连互通。软件是硬件的智能指挥中心,是自动与智能的体现者,更注重系统内部结构的组织应用。通过对传统软件使用情况的调查分析,存在多数用户反映传统计算机软件性能存在不能满足需要的缺点,主要体现在几个方面。

不能满足负载需求:在计算机越来越多的应用于各种生活环境下,某些领域需要计算机完成的任务越来越重,数据量呈现指数级增长。虽然硬件的发展使得在理论上问题具有可解决性,但传统的软件工程不能很好的利用硬件资源,适应新工作负荷的需要。严重影响工作的效率和质量。

不能满足效率需求:早期的软件无论功能还是组织结构都存在严重缺陷和不足,特别是用户操作的标准未与软件产品的质量相符合,这就为后来软件应付更大处理挑战埋下危机,使得日后效率提升空间大幅减小。另外,由于软件存在漏洞,使得用户所存储的重要信息易被窃取,导致更大经济损失,为无论是个人还是企业都带来了不必要的麻烦。

不能满足成本的需求:传统的软件组装和设计并没有先进的科学指导为基础,使得在这方面资本消耗过大,同时软件后期的改造或者升级成本也很高。对软件投入的过多就相应的减少了企业其它投资的减少,降低了其它工作方向的质量。

2 软件升级必须达到的目标

近几年,计算机软件工程的应用领域日益广泛,具体包括各种程序设计语言、数据库技术、软件设计模式、操作和数据指令的标准、应用系统平台和软件开发工具。鉴于传统软件工程存在的诸多缺限,还有功能对象的转变和应用范围的扩大。无论是作为软件研发的开发商还是作为软件直接应用的用户都要进行软件的升级。软件升级需要达到几点要求,包括要有非常高的工作效率,靠的住的安全性,增加软件的应用寿命和能够进行方便的修改重生成特性。

2.1 软件要具有高的工作效率

软件升级几乎涵盖了所有软件相关组成结构,要充分审核任何一个重要结构,做必要的改造。升级后软件要明显优于未升级前,对任务的处理时间要有较大的提升。具体来说就是,要对空间、时间等资源进行充分高效的利用,例如对计算机数据库技术一定要充分挖掘数据的可利用价值。同时,始终保持用户至上的理念,不断提高用户操作的便捷性是软件升级最重要的目标。应该在原有的基础上增加修改程序、组装软件和调整指令等必要的新功能。

2.2 软件要安全可靠

互联网的广泛应用方便了人们的工作生活,对计算机的广泛应用起到了不可忽视的推动作用。但由于它的开放性也给黑客提供了作案方便。黑客善于利用应用软件对计算机系统实施攻击,通过对软件代码的反编译,植入和修改破坏软件安全性以达到个人的目的,使得用户蒙受巨大的精神或经济损失。所以软件升级改造必须要考虑软件的安全防御功能。

2.3 尽量延长软件的使用寿命

软件开发设计前期调查,需求分析,开发,维护等多个阶段,其过程复杂,需要投入大量的人力、物力和财力。所以从成本消耗的调度看,新软件要尽量延长使用寿命,缩短产品更新换代的周期。就拿杀毒软件而言,每年市场上销售的杀毒软件数量巨大,对就的软件增加和完善功能必须要确保其在规定的时间内无需更换。同时,为了创造良好的经济效益,使用周期也应该得到延长。

2.4 方便修改重新生成

为了减少软件开发的投入,还可从软件后期维护着手。对于软件后期维护也是软件周期中花费最大的,只要设法减少这一阶段的投入,就会大大减少软件的成本。因此,开发软件时考虑留有修改余地,使得软件便于修改重新生成就显得尤为有意义,另外也会有效的减少设计工程师的操作难度。

3 计算机软件工程升级策略考虑

3.1 软件工程设计要有科学性

软件开发的第一阶段就是设计,软件工程的升级设计一定要以科学为指导。例如,对于研发程序代码要考虑软件模块化。对外要考虑软件的抽象和信息隐蔽特性,以及软件的局部化、一致性原则和适应性等特征。选择恰当的科学的设计方法,能够为这些特征的实现提供方便,达到科学性设计这一目标,突出升级软件后的优势特征。

3.2 要全面兼顾市场需求

软件开发的直接目的就是服务于市场需求,一个脱离市场需求的软件产品是对经济资源的浪费。同样,软件的升级也要有市场需求为支持,在满足市场基本需求的前提下,进行相关的研究和开发,才会使工作有价值,避免由于开发设计不当造成资源浪费。另外,作为计算机组成的两大部分,软件和硬件一直都存在计算机产品开发不可兼得的问题,无时无刻不逼迫使得软件开发单位考虑两者互相的影响与制约的关系,做出权衡。如此一来,面对具有多变性的市场,在采取有效控制之前,必须对市场有全面的掌握和理解,才能开发出更加满足社会需要的软件产品。

3.3 把握智多种发展趋势

3.3.1智能化

智能化不仅出现在计算机科学领域,它是现代通信与信息技术、行业技术、计算机网络技术和智能化控制技术综合到一起针对某一方面的应用。在人工智能化应用与计算机领域的今天,这个趋势必然会与现代通信技术、计算机网络技术与现场总线的控制技术飞速发展,一起给人们的生产生活带来巨大的变革。

3.3.2服务化

随着计算机软件技术的发展和应用软件的广泛普及,计算机软件技术及产品的服务化将成为一种大趋势。未来,软件开发商会以一种服务的形式提供软件,利用网络提供方式,将各种软件放在服务器的主机上,客户可根据选择下载安装某种应用软件。当然客户也可以与软件开发商联系,提出自己的要求,订购软件服务。通过网络享受软件和硬件资源,软件维护升级等,使软件真正的服务于人民。

3.3.3融合

我国对工业发展策略调整以及传统工业的升级,必然会加快电气化、机械化和自动化这些硬设备向信息化、数字化和网络化等软设备转变。计算机软件技术的融合化是我国信息化和工业化融合的一支重要力量。随着工业化不断推进和传统产业升级加快,工业软件的需求会进一步加大,我国计算机软件软件产业会不断发展壮大,推动计算机软件技术融合,以适应发展需要。

3.3.4开放化

随着软件工程的蓬勃发展,早期封闭性强的收费性软件发展模式以慢慢不再适应大的形式。为了给提高计算机软件质量的提高创建机遇,逐步打破软件技术和知识产权的垄断,开发化已变成不可阻挡的趋势。计算机软件源代码的开放,将意味着软件产品逐步标准化,这将有利于我国计算机软件产业的更新换代和全面升级。在这种趋势下,也势必会使我国计算机软件开发效率得到较大提高。

3.4 提供工程化支持,强化升级管理

新软件必须大幅增强软件的使用价值,具有很强的软件工程使用多用性,这些就需要软件工程的支持。主要包括软件工具和环境要对软件工程有足够的支持,以及充分保障软件工程项目的质量、技术和开销。这些都由对软件工程所提供的支撑质量和效用所决定。软件工程的管理作为另外一项比较重要的方面直接影响了对可用资源的有效利用,大幅提高软件组织的生产单位产出率,生产出合格的软件产品等问题。在参照市场需求下,提前做好准备,制定软件工程的管理制度,加强新旧产品升级空隙的质量监督和管理是电子产品研发企业必须做好的工作。

4 结束语

总体来说,计算机软件升级是一项繁杂并且有着众多考虑因素的任务。为了实现改进的目的,要在原有的基础上不断的修改,尝试提高软件质量,对软件进行重组。对计算机软件升级策略的研究也是一门多融合的课题,具有推动计算机科学不断优化进步的重要意义。我们应该全面增强对次课题的深入研究,结合现实的发展策略,确保高效的软件升级工作,以创造出更大的价值。

参考文献

[1] 戴云松.浅析计算机软件工程升级的策略性[J].电子技术与软件工程,2014(03).

[2] 王钟庄.谈计算机软件工程升级的策略性[J].煤炭技术,2013(06).

[3] 余明毅.探究计算机软件工程升级的策略性[J].无线互连科技, 2014(07).

篇(4)

[关键词]GIS系统 需求变更 模块化

GIS即地理信息系统(Geographic Information System),经过了40年的发展,到今天已经逐渐成为一门相当成熟的技术,并且得到了极广泛的应用。从应用的角度,GIS系统由硬件、软件、数据、人员和方法五部分组成。硬件和软件为地理信息系统建设提供环境;数据是GIS的重要内容;方法为GIS建设提供解决方案;人员是系统建设中的关键和能动性因素,直接影响和协调其它几个组成部分。

一、GIS系统的发展现状

由于各个部门对GIS的应用有不同的需求,目前没有一个GIS软件可以同时满足各个行业的需要,所以在实际工作中对于特定行业的GIS应用,一般都需要进行或多或少的软件开发工作。但无论是GIS基础软件的开发还是在基础软件基础之上的应用开发,无论是大至几百上千万的项目还是几万的小项目,GIS的开发目前在我国都存在一些问题。最主要的原因就是没有遵循软件工程学的科学方法,如:没有足够的分析和设计、代码不规范和文档不完备等。

二、GIS系统存在的问题

人们的生产和生活中百分之八十以上的信息和地理空间位置有关。GIS系统作为获取、整理、分析和管理地理空间数据的重要工具、技术和学科,近年来得到了广泛关注和迅猛发展。由于信息技术的发展,数字时代的来临,理论上来说,GIS可以运用于现阶段任何行业。

由于GIS工程项目的专业性和复杂性,用户的需求在系统开发的整个过程中都在不断变更。如果没有一个完整的需求变更管理方案就贸然进入设计和开发阶段,所埋下的隐患是:一旦用户的需求发生较大变化,对开发中的系统将可能是毁灭性的打击。这种情况在实践中屡见不鲜。软件项目的目标超出原始计划,业界通常称为项目目标范围蔓延.这是软件开发中的固有矛盾。GIS项目目标定义困难,而且由于开发周期内项目必然会面临改进,这就极易导致项目目标的蔓延。如果处理不当将成为项目失败的主要原因。因此,必须采取一些措施控制对项目目标的蔓延,并确保开发者们不会受到这些改进带来的负面影响。

近些年,GIS更以其强大的地理信息空间分析功能,在GPS及路径优化中发挥着越来越重要的作用。GIS地理信息系统是以地理空间数据库为基础,在计算机软硬件的支持下,运用系统工程和信息科学的理论,科学管理和综合分析具有空间内涵的地理数据,以提供管理、决策等所需信息的技术系统。简单的说,地理信息系统就是综合处理和分析地理空间数据的一种技术系统。

三、GIS 系统的应用领域

地理信息系统在最近的30多年内取得了惊人的发展,广泛应用于资源调查、环境评估、灾害预测、国土管理、城市规划、邮电通讯、交通运输、军事公安、水利电力、公共设施管理、农林牧业、统计、商业金融等几乎所有领域。

在资源管理主要应用于农业和林业领域,解决农业和林业领域各种资源(如土地、森林、草场)分布、分级、统计、制图等问题。同时,GIS系统在城市中各种公用设施、救灾减灾中物资的分配、全国范围内能源保障、粮食供应等到机构的在各地的配置等都是资源配置问题。GIS在这类应用中的目标是保证资源的最合理配置和发挥最大效益。

近些年,GIS 系统也广泛地用在城市规划和管理方面。例如,在大规模城市基础设施建设中如何保证绿地的比例和合理分布、如何保证学校、公共设施、运动场所、服务设施等能够有最大的服务面(城市资源配置问题)等。商业与市场是一个全新的发展空间,商业设施的建立充分考虑其市场潜力。例如大型商场的建立如果不考虑其他商场的分布、待建区周围居民区的分布和人数,建成之后就可能无法达到预期的市场和服务面。有时甚至商场销售的品种和市场定位都必须与待建区的人口结构、消费水平等结合起来考虑。地理信息系统的空间分析和数据库功能可以解决这些问题。房地产开发和销售过程中也可以利用GIS功能进行决策和分析。

四、GIS系统的对策研究

GIS软件工程包括GIS工程规划、设计、实施、评价与维护技术,还包括工程的需求控制、质量控制、进度控制、风险控制等管理技术,另外,GIS数据生产的管理与质量控制体系也是GIS工程的重要组成部分。保证一个GIS工程的成功还涉及人员组织技术与成本控制技术,在一定的资金条件下最大限度地满足用户的需要,实现社会效益的同时,还能实现经济效益,也是GIS工程管理的重要任务。

首先:加强GIS软件工程的培训和管理。软件工程的概念还远没有在GIS工程的研究人员、开发人员、管理人员的头脑中扎下根来,软件工程的方法还远没有成为完成GIS工程的自觉行为。要提高GIS工程研究人员,开发人员和管理人员对软件工程的重视,首先就要加强GIS软件工程的教育工作。如在大学中开设GIS软件工程课程或在相关课程中将GIS软件工程作为重点章节进行讲授。加强GIS从业人员的继续教育,让GIS从业人员认识到在GIS工程中实施软件工程学方法是必然的。

其次:详细的系统分析和设计。由于用户需求涉及的因素较多,而用户与软件人员之间由于背景知识、看待问题的角度等的差异,对需求的描述和理解可能会不完备或存在不一致。在实际工作中,用户的需求还常常随外部条件或内在因素的变动而呈现易变的特点。充分地需求分析及系统分析可以最大限度地消除用户与软件人员之间的不一致,详细地系统设计和代码设计可以提高软件的质量,增强系统的可移植性,提高工作效率。

参考文献:

[1]张超等:地理信息系统[M],北京:高等教育出版社,2000

篇(5)

软件工程考研科目为:数学一、英语、政治、计算机专业基础综合。

其中计算机专业基础综合包括:数据结构、操作系统、计算机网络、计算机组成原理。

软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科,研究方向涉及到程序设计语言、数据库、软件开发工具、设计模式等方面。

(来源:文章屋网 )

篇(6)

随着社会科技的不断进步,软件的应用范围也正在不断的扩大,比如,商务领域、交通领域以及家电领域等,软件可以说是无处不在。而对于软件工程来说,软件工程是一类求解软件的工程,其用于构造模型和算法,用于计划、资源、质量和成本等的管理,用于指定规范、设计范型、评估成本、权衡结果,所以软件工程能够应用于计算机科学、数学和管理学等原理,通过借鉴传统工程的方法,创建软件以达到提高质量并且降低成本的目的。现如今,一些传统软件工程方逐渐被淘汰,现代软件工程的方法能够适应社会科学水平迅速提高的背景,所以现代软件工程受到大力推广以及广泛应用。但是由于科技和计算机技术的发展过快,导致了我国现代软件工程存在着较多的不足,所以需要对现代软件工程现存的问题进行研究分析,指定相应的现代软件工程在软件开发中合理应用的策略,进而促进我国科学技术水平的发展(吴文庆,修雅慧,基于软件工程方法在软件开发中的应用研究:科技资讯,2018)。

二、现代软件工程方法的内涵及其特征

通过对传统软件工程的借鉴,可以把现代软件工程的方法分为主要的五部分,其分别是:分析、设计、编码、测试以及维护。实际上,人们通过传统软件工程中比较有价值的方法和原则进行学习和采纳,进而加入到对现代软件工程方法的构建中,所以不论是现代软件工程还是传统软件工程,很多时候在方法的使用方面仍然有着较为相似的地方。对于现代软件工程来说,其最重要的优点彻底地打破传统软件工程的在部分方面的约束,使得多数软件的发展摆脱了传统软件工程的限制,促进了各个领域范围内软件的发展(巩敏,某部系列软件工程项目的质量成本控制研究:中国科学院大学(中国科学院工程管理与信息技术学院),2017)。并且,现代软件工程能够把传统软件工程的方法以及原理等作为大规模开发的基础,利用先进的科学技术优势不断地优化系统,使得现代软件工程更加全面和系统。在现代软件工程方法的五部分中,其中在分析阶段,现代软件工程面对的对象是现实生活中真实存在的那些事物,而不是虚拟的,所以通过对真实存在的事物的特征等方面进行分析,进而能够反映出事物的作用等。此外,在现代软件工程方法的设计阶段中,现代软件工程需要注重那些能够反映出具体的事物。对于现代软件工程较为突出的特点,便是现代软件工程能够进行修改,这不仅使得现代软件工程更加的规范系统,还使得现代软件工程更加安全可靠。

三、现代软件工程技术的发展趋势

随着经济全球化的发展,软件开发行业为了能够在全球化的发展中不被淘汰,因此进行了较大的改变。通过使用传统的软件工程已经无法满足全球化发展对软件开发行业的要求,必须要对软件进行创新,利用新型软件技术对软件开发行业带来的影响力,来促进软件行业的发展。其次,由于国内的软件开发技术相比国外的很多国家来说能力较差,所以很多软件工程项目的进展需要转移到国外进行。比如,将根据功能等方面将软件工程分为几大部分,然后将各个部分分配给较多国家的软件外包公司来完成,这样的方式,有效的表明了我国软件工程信息全球化发展的趋势。

四、现代软件工程存在的问题

(一)制定不合理的软件项目目标

在进行制定软件项目目标时,管理者没有更多的切合当前的实际情况,缺乏大局意识,在计算机项目管理中使用了错误的方式,进而未能提前制定好适合软件发展情况的项目目标,导致软件在进行开发的过程中开发成本、工作进程等方面产生了严重的偏差。

(二)设计的软件的质量不能够达到国际先进水平

实际上,现代软件工程所用到的技术已经到达了国际较为先进的水平,因而产生的软件在质量方面达到国际先进水平正常情况下是没有问题的。但是,由于在对软件进行开发的时候,主要项目的管理人员没有较强的管理意识,在制定管理制度存在漏洞,不仅导致了软件项目的开发成本逐渐增加,还使得软件的质量一定程度的降低。

(三)设计的软件功能实现和操作方式不够人性化

很多软件是依据用户的需求来设计的,在进行现代软件工程的时候,如果没有按照用户的要求以及实效切合实际的来对软件进行测试,就会使得软件工程的生产结果供大于求,对软件开发行业的经济效益带来严重的损失(邓学飞,现代软件工程在电力系统中的应用:电子技术与软件工程,2015)。

五、现代软件工程应用于软件开发中策略

(一)以切合实际情况为主,在现代软件开发中使用最合适的现代软件工程方法

软件体系结构是现代软件开发过程中的必经之路,因此软件体系结构对于现代软件工程来说是十分重要的。但是,软件体系结构的侧重点仍然在然间的分层法结构上,所以在软件开发的时候所得到的数据大多数仍然是从数据库中寻找到的。虽然我国现代软件工程作为新兴的软件工程,已经逐步取代了传统软件工程,但是我国的数据库管理系统仍然较为传统,没有得到明显的改善或者创新。较为传统的数据库在更新数据方面较慢,并且传统数据库管理系统的作用并未得到充分地发挥,仅仅只是在处理数据以及保证数据安全等方面发挥了重要作用。因此,在现代软件开发过程中,通过良好的现代科技坏境,将传统的软件工程方法与现代软件开发技术更好的结合起来,使得现代软件工程的储存数据的能力有了较大的提升,并且对软件开发的操作进行了规范化以及系统化的调整,有利于现代软件开发中对软件开发的应用。

(二)创新软件工程理念,把新型的软件工程理念加入到现代软件工程中

依据相关研究表明,现代软件开发在计算机领域、医疗卫生行业以及交通信息行业等较多行业中都得到了广泛的应用。通过现代软件工程设计的很多软件能够改变各行业工作人员的工作方式,不仅使得工作人员的工作效率有效的提高,还使得工作人员的工作积极性有了显著的提高。在实际生活中,很多软件开发公司由于没有做到对现代软件工程进行严格的规范化处理,导致软件的开发效率下降,并且使得软件所带来的效益与预计差别太大。比如,现代软件开发中的现代软件工程对进医疗卫生事业的起到了十分重要的作用。但是如果没有对所开发的软件进行规范,可能会导致开发的软件所带来的效果不符合医院工作的全部要求,对医院带来严重的损失。因此,必须要创新科学的软件工程理念,将新型的软件工程理念贯彻到现代软件工程中去,并将科学的软件理念作为基础,进而实现现代软件工程开发出来的软件的应用成果(苏警,刍议现代软件工程在现代软件开发中的有效运用:吉林工程技术师范学院学报,2015)。

篇(7)

近几年,计算机软件工程的应用领域日益广泛,具体包括各种程序设计语言、数据库技术、软件设计模式、操作和数据指令的标准、应用系统平台和软件开发工具。鉴于传统软件工程存在的诸多缺限,还有功能对象的转变和应用范围的扩大。无论是作为软件研发的开发商还是作为软件直接应用的用户都要进行软件的升级。软件升级需要达到几点要求,包括要有非常高的工作效率,靠的住的安全性,增加软件的应用寿命和能够进行方便的修改重生成特性。

1.1软件要具有高的工作效率

软件升级几乎涵盖了所有软件相关组成结构,要充分审核任何一个重要结构,做必要的改造。升级后软件要明显优于未升级前,对任务的处理时间要有较大的提升。具体来说就是,要对空间、时间等资源进行充分高效的利用,例如对计算机数据库技术一定要充分挖掘数据的可利用价值。同时,始终保持用户至上的理念,不断提高用户操作的便捷性是软件升级最重要的目标。应该在原有的基础上增加修改程序、组装软件和调整指令等必要的新功能。

1.2软件要安全可靠

互联网的广泛应用方便了人们的工作生活,对计算机的广泛应用起到了不可忽视的推动作用。但由于它的开放性也给黑客提供了作案方便。黑客善于利用应用软件对计算机系统实施攻击,通过对软件代码的反编译,植入和修改破坏软件安全性以达到个人的目的,使得用户蒙受巨大的精神或经济损失。所以软件升级改造必须要考虑软件的安全防御功能。

1.3尽量延长软件的使用寿命

软件开发设计前期调查,需求分析,开发,维护等多个阶段,其过程复杂,需要投入大量的人力、物力和财力。所以从成本消耗的调度看,新软件要尽量延长使用寿命,缩短产品更新换代的周期。就拿杀毒软件而言,每年市场上销售的杀毒软件数量巨大,对就的软件增加和完善功能必须要确保其在规定的时间内无需更换。同时,为了创造良好的经济效益,使用周期也应该得到延长。

1.4方便修改重新生成

为了减少软件开发的投入,还可从软件后期维护着手。对于软件后期维护也是软件周期中花费最大的,只要设法减少这一阶段的投入,就会大大减少软件的成本。因此,开发软件时考虑留有修改余地,使得软件便于修改重新生成就显得尤为有意义,另外也会有效的减少设计工程师的操作难度。

2计算机软件工程升级策略考虑

2.1软件工程设计要有科学性

软件开发的第一阶段就是设计,软件工程的升级设计一定要以科学为指导。例如,对于研发程序代码要考虑软件模块化。对外要考虑软件的抽象和信息隐蔽特性,以及软件的局部化、一致性原则和适应性等特征。选择恰当的科学的设计方法,能够为这些特征的实现提供方便,达到科学性设计这一目标,突出升级软件后的优势特征。

2.2要全面兼顾市场需求

软件开发的直接目的就是服务于市场需求,一个脱离市场需求的软件产品是对经济资源的浪费。同样,软件的升级也要有市场需求为支持,在满足市场基本需求的前提下,进行相关的研究和开发,才会使工作有价值,避免由于开发设计不当造成资源浪费。另外,作为计算机组成的两大部分,软件和硬件一直都存在计算机产品开发不可兼得的问题,无时无刻不逼迫使得软件开发单位考虑两者互相的影响与制约的关系,做出权衡。如此一来,面对具有多变性的市场,在采取有效控制之前,必须对市场有全面的掌握和理解,才能开发出更加满足社会需要的软件产品。

2.3把握智多种发展趋势

2.3.1智能化智能化不仅出现在计算机科学领域,它是现代通信与信息技术、行业技术、计算机网络技术和智能化控制技术综合到一起针对某一方面的应用。在人工智能化应用与计算机领域的今天,这个趋势必然会与现代通信技术、计算机网络技术与现场总线的控制技术飞速发展,一起给人们的生产生活带来巨大的变革。

2.3.2服务化随着计算机软件技术的发展和应用软件的广泛普及,计算机软件技术及产品的服务化将成为一种大趋势。未来,软件开发商会以一种服务的形式提供软件,利用网络提供方式,将各种软件放在服务器的主机上,客户可根据选择下载安装某种应用软件。当然客户也可以与软件开发商联系,提出自己的要求,订购软件服务。通过网络享受软件和硬件资源,软件维护升级等,使软件真正的服务于人民。

2.3.3融合我国对工业发展策略调整以及传统工业的升级,必然会加快电气化、机械化和自动化这些硬设备向信息化、数字化和网络化等软设备转变。计算机软件技术的融合化是我国信息化和工业化融合的一支重要力量。随着工业化不断推进和传统产业升级加快,工业软件的需求会进一步加大,我国计算机软件软件产业会不断发展壮大,推动计算机软件技术融合,以适应发展需要。

2.3.4开放化随着软件工程的蓬勃发展,早期封闭性强的收费性软件发展模式以慢慢不再适应大的形式。为了给提高计算机软件质量的提高创建机遇,逐步打破软件技术和知识产权的垄断,开发化已变成不可阻挡的趋势。计算机软件源代码的开放,将意味着软件产品逐步标准化,这将有利于我国计算机软件产业的更新换代和全面升级。在这种趋势下,也势必会使我国计算机软件开发效率得到较大提高。

2.4提供工程化支持,强化升级管理

新软件必须大幅增强软件的使用价值,具有很强的软件工程使用多用性,这些就需要软件工程的支持。主要包括软件工具和环境要对软件工程有足够的支持,以及充分保障软件工程项目的质量、技术和开销。这些都由对软件工程所提供的支撑质量和效用所决定。软件工程的管理作为另外一项比较重要的方面直接影响了对可用资源的有效利用,大幅提高软件组织的生产单位产出率,生产出合格的软件产品等问题。在参照市场需求下,提前做好准备,制定软件工程的管理制度,加强新旧产品升级空隙的质量监督和管理是电子产品研发企业必须做好的工作。

3结束语