软件工程管理与应用探究
2016-03-14孙正扬
孙正扬
(天津理工大学,天津 300100)
软件工程管理与应用探究
孙正扬
(天津理工大学,天津 300100)
软件工程是一门新兴交叉的学科,随着信息社会的发展,它的发展也越来越迅速和广泛。目前,随着科学技术的迅猛发展,信息化进程的不断进步,计算机与软件行业已覆盖了社会的各个领域,面对庞大的软件市场,软件工程的管理与维护尤为重要。如何根据用户的需求进行软件开发,保证软件的高效使用与功能完善是软件工程管理必须解决的问题。使用户的投资利益得到一个很好的保证。本文结合软件的开发、使用、维护与管理等方面进行理解与思考,并作了阐述,以此促进软件工程的管理与应用发展。还要不断完善我们的工作理念、工作作风、工作方法,才能更好地适应信息时代发展的需要。
软件工程;模块化;开放计算;协作交付;网络化
1 软件工程的理解
通过大学四年的学习和毕业前的实践活动加深了笔者对软件工程这门学科的认识,开发一个软件项目靠单打独斗式的编代码是不能很好解决问题的,必须经过扎实地学习专业理论知识,实际操作水平,一个小团队的精诚协作,以前总认为编好代码就万事大吉,其实不然,编代码只是一个很小的环节,而对项目的需求分析和架构能力才是最重要的。在实训活动中,让我们受益匪浅,从最初的软件项目的提出、设计标准以及开发流程,我们团队都作了详细的分析,最后就用户的需求分析、详细设计步骤、代码编写等环节作了明确分工,这样使得我们对软件的开发流程和对项目实施的工作环境有了明确的了解。
2 软件工程的实质
软件工程是一门新兴交叉的学科,随着信息社会的发展,它的发展也越来越迅速和广泛。一方面它运用自己固有的计算机学科、程序设计语言、开发工具等进行高效的工程化的方法管理软件。另一方面,它涵盖了多门学科(如数学、工程学等)的协调与管理,是一个实践性非常强的学科,它的学习必须使理论和实践结合起来,不仅要有良好的设计能力,更要有整体架构、布局的能力,中科院一位计算机导师曾说:“我们从来不缺优秀的程序员,而我们缺少的是优秀的架构员”。在信息时代飞速发展的今天,软件工程作为一门制定计算机软件开发和维护,保证系统规范便捷地去使用软件起到了至关重要的作用。所以这门学科有着广阔的发展前景,同时又面临严峻的考验。只有不断完善我们的工作理念、工作作风、工作方法,才能更好地适应信息时代发展的需要。
3 软件工程的发展趋势
3.1 分工明确化、模块化
分工明确化、模块化的设计理念可以让我们把一些复杂的信息分解成规模较小、功能比较单一的小模块,这些小模块之间是互相独立的但同时又有一定的联系。这样我们可以对各种复杂需求进行分解、打包,对现有的资源进行很好地整合和利用,提高我们对各种复杂业务有着灵活的应对能力。
3.2 资源共享
软件工程方法、技术和工具的发展虽然层出不穷,但谈到它的发展,我们必须确定属于它自身行业的一个基础框架。那就是用来指导行业和技术快速健康发展的“开放式计算”,其中“开放式标准”、“开放式架构”、“开源软件”是它的最基本的三个方面。“开放式架构”通过开放的总体标准和技术,很好地解决了商品社会下的商业模式的灵活与软件工程创新之间的矛盾,使得应用与被应用合理能健康地发展下去。“开放式标准”可以使不同企业、不同地域文化和不同国家开发的软件进行互连互通、合作交流,这样使用户的投资利益得到了很好的保证。“开源软件”的使用,使我们通过一个开放标准的平台进行开放的交流、开放的发展,进而实现资源共享,共同创新、共同进步。
3.3 网络化
随着信息社会的发展,网络技术也随之迅猛发展,而开放化、分布化、互联化、成了网络化的重要表现形式,网络化的发展引起了“以机器为中心”向“网络为中心”的重要改变,不仅需要我们将可行的软件和网络连接,还需要进行宏观调控,进行合作、交流,对于以网络为中心的全球软件协作交付能力起到了很好的作用,给软件工程带来了更大的发展空间,进而提升了整个全球的信息文化发展。
3.4 软件工程面临的困惑
随着信息社会的迅速发展,软件也会受到许多因素的困扰。首先软件工程的专业分工不明确,造成了软件设计质量不高,时间延误,预算超支等情况;其次程序员团队与业务组专家的协作、沟通问题也直接影响了软件开发的质量和效率;最后软件工程要对软件项目的各个环节进行评判,从软件的需求性分析到软件的使用和维护,都与各种市场活动密切相关,而与之相关联的软件销售、软件维护、软件安装与检测得不到很好的支持,软件的使用也就脱离了软件的需求、设计与客户的利益。所以,为了解决这些矛盾和困扰,我们还应该不断总结经验教训,提高工作效率,完善软件开发与应用。
5 软件工程的学习过程
5.1 对软件工程学科的学习要有浓厚的兴趣
要对软件工程学科的学习具有一定的兴趣,浓厚的兴趣才是我们学习的动力。软件工程学科涉及了计算机、数学、逻辑学等学科的知识,要想学好它,必须掌握科学的学习方法,首先注重基础理论的学习,对于数学中的算法学习更要熟练掌握,通过训练与学习,我们才能拥有严谨的数学思维模式,进而减少我们编程时的失误与漏洞,提高我们对基础学科学习的能力。
5.2 培养自己的实际操作能力
在学习软件的过程中,要进行持之以恒的学习,培养自己实践操作能力。在学习的时候,一定要多上机操作、多编程序,在实践课上老师曾讲到如果在大学期间能编上万条代码,最起码毕业后找工作不成问题,这就告诉我们实践才能出真知。通过实践学习我们才能不断发现问题,改正自己的不足和缺点。为此我们不仅把课内的专业知识学好,还应该学习一些其他软件和编程语言,为以后的学习、工作打下一个坚实的基础。
5.3 要与同行共同协作学习
在软件学习与开发的过程中,我们还应该与同行进行交流、沟通、互相学习,软件的开发离不开一个团队的协作,一个好的软件开发工程师也不应当脱离团队而进行开发设计。我们应该在学习中不断充实自己,使自己不仅有扎实的理论知识水平,还具有良好的信息素养和技术过硬的实践操作水平,做一个适应信息社会发展与市场经济发展的计算机软件开发与维护方面的高级专业技术人才。
6 结语
综上所述,软件工程在计算机应用技术的发展过程中具有特别重要的意义,它的设计和研发是一项系统性、长期性的工作,随着计算机软件技术的日臻完善、功能逐步完善,在人们的生活、工作中得到了迅速的普及,人类的发展离不开软件技术的推动作用。我国拥有强大的软件应用市场,但是由于在软件技术上起步较晚,今后的发展还需经历一个漫长的过程。
[1] 本刊编辑部.武汉大学计算机软件工程实验室[J].实验室研究与探索;1991(3).
[2] “计算机软件工程中人的因素的研究”通过专家评审[J].西安电子科技大学学报;1991(3).
[3] 张震.高校计算机教学中软件工程课程改革[J].佳木斯教育学院学报;2011(4).
[4] 2011年上海大学计算机学院招聘信息[J].计算机教育; 2011(11).
[5] 叶颖.浅谈计算机软件工程管理与应用[J].华章;2010(34).
[6] 瓮正科.软件设计表现法—PAD[J].计算机应用研究;1986(3).
[7] 田爱景.论结构化范型到面向对象范型的转变[J].湖北大学学报(自然科学版);2001(4).
[8] 黄卓.计算机软件工程的管理[J].沈阳工业大学学报;1996(1).
TP311.5