软件工程管理

2024-08-23

软件工程管理(精选9篇)

软件工程管理 篇1

终端药店拜访业务员如何管理?

医药行业的主要销售渠道之一就是药店销售,由于药店在城市比较分散,甚至会分布在不同的城市,需要业务员定期的拜访,查看终端产品陈列情况以及缺货断货情况。企效通药店终端拜访管理软件,既是一款医药销售人员的办公助手,也是企业的“千里眼”,它可以帮助企业查看药店拜访人员是否真正去了指定地点,还可以及时了解真实的终端药品陈列情况。

【软件名称】医药行业销售管理软件医药行业药店管理软件医药行业终端陈列管理软件

【技术支持】北京万特锐科技、LBS基站定位技术

【软件功能】

位置服务:立即定位、定时定位、查看定时定位、轨迹回放、历史记录、导出数据 位置服务地图标注管理:现有标注、新增标注

远程签到:查看签到记录、导出签到记录

行程管理:查看行程

工作日志:拍照上传、查看日志、导出日志

移动办公通知公告:通知公告列表、发布通知公告

信件管理:信件列表、发送信件

网点拜访:查看拜访记录

查看客户列表

客户管理导出客户数据

转移客户

接管客户

软件工程管理 篇2

1.1 研究背景

随着软件工程的不断发展, 对软件工程的研究逐渐划分为两个方面:

(1) 软件工程技术。包括对工程化的开发方法, 软件开发工具与环境的研究。主要面对的技术有:适应需求分析的不确定性;软件的可靠性;软件度量;软件复用性等。

软件工程技术的发展非常迅速, 出现了许多优秀的软件开发方法和工具。比较熟悉的瀑布模型、快速原型法等方法在国内外都有过成熟和成功的应用范例。近几年随着新的软件开发技术的不断涌现, 一些先进的软件开发思想也不断渗透到软件工程技术的研究中, 出现了诸如面向对象的软件工程等新的软件工程开发技术, 给软件工程技术的研究带来了新的课题。

(2) 软件工程管理。包括质量管理, 费用管理, 配置管理, 项日管理等。主要面对的问题有:软件开发成本的控制;软件开发中的资源控制;软件质量的控制;开发进度的控制等。

人们最初认为软件工程的发展主要由软件工程技术决定, 而长期忽视软件工程与软件质量管理。对软件工程管理和软件质量保证的重视, 从而导致了对软件工程管理的研究长期滞后。

可喜的是随着国内众多工业企业掀起的与国际标准接轨, 进行国际标准化质量体系认证 (ISO 9000系列) 的热潮, 许多软件开发企业的有识之士已经开始关注软件质量的管理, 甚至开始准备或已经进行软件质量体系国际标准化认证的工作。

1.2 研究方向

随着国际计算机行业新思想, 新技术的不断涌现, 只有从一开始就站在一个较高的起点上研究和开发软件工程的技术和管理, 才能紧跟、赶上、甚至超过软件工程的国际先进水平。试图从软件工程学科的两个方面 (软件工程技术和软件工程管理) 对国际上的一些新的发展进行研究;而且希望结合具体的开发实例寻求一套比较实用和先进的软件系统开发和管理手段。

采用的方法主要来自于Elvar Jacobs等人的“面向对象的软件工程” (object-Oriented Software Engineering, OOSE) 这一方法, 略加修改以适应软件质量管理的需要。将在第二章详尽介绍这一方法, 并简要其它面向对象的开发方法。

2 软件质量体系参考模型

2.1 模型的建立

提出的软件质量参考模型是基于三个方面的考虑而形成的, 包括SQMP、OOSE和ISO9000-3。建立模型的基本指导思想是SQMP, 即软件质量管理的方法。SQMP首先要求对软件的质量要有一个目标 (即需求的建立) 。根本地、全面地满足用户的需要当然是任何体系模型最基础的目标。但是, 不同的体系模型由于存在不同的体系结构, 实现方法和着眼点, 必然在具体的功能和性能要求上有不同的追求。由前面对软件工程两个方面的讨论可知, 提出的模型希望使软件产品最大程度地具有可维护性、可重用性、可移植性, 更主要的是使软件开发过程更简单, 更易理解, 具有更高的灵活性、抗变化能力、可维护性和可追溯性。这些要求与体系模型建立的方法有很大关系, 即SQMP中的第二方面:设计、开发和维护的方法。这里采用的方法是OOSE法。面向对象的思想本身就具有许多优秀的品质, 而OOSE以维护为主要目的, 它的软件设计和开发过程能更充分地利用面向对象的思想的优势, 使模型的质量目标更易实现。

2.2 质量体系框架

本小节规定了质量体系框架建立的基本原则、基本步骤、基本要求和基本要素。主要包括七个方面:

(1) 确定质量方针和质量目标

质量方针体现了一个组织对质量的追求, 对顾客的承诺, 是职工质量行为的准则和质量工作的方向。质量方针中应包括质量目标, 质量目标是一个企业或组织对质量的具体要求。

(2) 确定组织机构

企业内部应对现有的组织机构进行调整以适应质量管理的要求, 对具体的项目而言应建立相应的责任小组。组织机构中应至少建立一个质量管理部门专门负责质量体系的建立, 质量控制的实施和与质量相关的其它活动。质量部门应具有较高的独立性, 一般只对最高领导或机构负责, 不受其它部门和项目的约束。它还应具有相当大的权利, 能够对在生产过程的各个环节, 产生的质量问题予以及时解决。

(3) 培训和教育

在质量体系实施之前, 应由最高领导者或机构负责, 由质量管理部门实施, 对全体员工进行质量管理的教育和培训, 以提高全员的质量意识, 熟悉质量管理的过程和方法, 明确责任和分工, 以确保高效快速的实施质量体系。首先由质量管理角色制定出质量管理培训计划, 并与规划角色协商, 然后, 依次对开发层和实现层进行质量概念的教育, 力求使每一个开发和管理人员明确自己的责任, 明确质量管理的重要性。最后, 将质量手册分发给每个人, 使每个人对自己的职责、行为规范和质量要求有明确的认识。

(4) 确定管理职责

在明确组织机构的同时, 质量体系应明确各个机构和人员的职责及他们之间的相互关系。这些责任应包括企业和项目管理者的责任, 各个机构的责任, 客户方责任, 工程需求分析、开发、实现和测试等各个环节管理者的软件工程与软件质量管理责任等, 以期达到产品开发的每个过程和质量控制的每个环节都有明确的分工负责, 既无重叠也无疏漏, 以防止质量因控制的原因产生缺陷。

(5) 评审

应组织专门人员和机构对建立起来的质量体系进行定期的审核, 以确保质量体系的不断改进。审核有内部审核和外部审核。内部审核是企业的主动行为, 应包括开发和管理的各个过程的主要负责人。在审核前应按照需要和重要性安排审核的顺序。审核结果要有书面记录, 发现问题应及时采取纠正措施。

(6) 质量体系文件

质量体系的所有要素和规定都应落实成文字, 要用系统有序的方法将所有质量体系要素、要求和预防措施清楚地写入文件。每个软件项目的开发和实施都应依据质量体系文件的规定制定相应的质量活动计划并形成文件, 以确保有关机构和人员能够理解并遵照执行。

(7) 纠正措施

应制定采取纠正措施的书面规定并贯彻执行。其内容应包括:调查产品不合格的原因并研究为防止再发生所需的纠正措施;对全部过程、操作、质量记录、服务报告和顾客投诉进行分析, 以查明不合格品的潜在原因;根据风险程度, 采取相应的预防措施;应对纠正措施的有效实施予以控制;执行由纠正措施引起的规程的更改并予以记录。

结束语

在对软件工程的发展现状进行分析后, 提出了对软件工程的一些基本认识和看法, 并以此为出发点, 希望结合最先进的软件工程开发技术和管理的成果, 探讨一种面向实用的、保证软件质量和提高软件生产效率的大型系统的开发方法, 并给出了一个质量体系框架模型。

以上观点还有许多值得推敲的地方, 由于知识的局限性, 致使很多问题未能进行深入的探讨。对于提出的模型, 还需要进行大量的实际应用才能积累度量本方法质量的数据和经验, 单纯从理论上考察这个模型是不够的。

参考文献

[1]中国认证人员国家注册委员会.质量体系内部审核员国家通教程[Z].[1]中国认证人员国家注册委员会.质量体系内部审核员国家通教程[Z].

[2]李友仁.软件工程与软件质量分析[Z].[2]李友仁.软件工程与软件质量分析[Z].

[3]朱兰.质量计划与分析[Z].[3]朱兰.质量计划与分析[Z].

计算机软件与软件工程 篇3

关键词:计算机软件;软件工程;开发软件;软件发展

中图分类号:TP311.5

随着软件产业的不断发展,计算机应用逐步渗透到社会的各个角落,使各行各业都发生了很大的变化。传统的计算机学科逐步上升到计算科学。这同时也促使人们对软件的品种、数量、功能和质量等提出了越来越高的要求。软件的规模越大、越复杂,软件开发越显得力不从心。于是,业绩开始重视软件开发过程、方法、工具和环境的研究,软件工程应用而生。20世纪90年代以来,软件重用和软件构件技术成为研究热点,面向对象方法和技术成为软件开发的主流技术。软件工程知识为开发高品质的产品提供了理论和科学支撑,强调采用工程化的方式开发软件。这些知识支持以精确地方式描述软件工程产品,为产品及其相互关系的建模和推理提供了基础,并为可预测的设计过程提供了依据。

1 计算机软件

“软件”这个词汇于20世纪60年代被首次提出。一个完整的计算机系统由软件和硬件组成。它们相互依存,缺一不可。IEEE给软件定义为是计算机程序、规划以及运行计算机系统可能需要的相关文档和数据。其概念是随着计算机的发展而得出进一步完善的,最先人们认为软件就是程序,到了20世紀70年代,人们认为软件不仅包括程序,还包括开发、使用、维护这些程序所需要的文档。到了80年代,较为全面的软件的定义才出现,包括计算机程序、实现程序所使用的方法、规则、相关联的文档、运行所需的数据等都是程序。

计算机的应用和功能的正常使用离不开硬件和软件,只有硬件和软件得到很好的组合,计算机才能正常工作,完成相应的任务。在计算机的资源配置上,既要考虑硬件资源又要考虑软件资源。就软件资源来看,它包括系统软件和应用软件。系统软件的主要目的是实现对计算机的管理、监控和维护,包括自检程序、操作系统等等。而应用软件的主要目的是解决计算机当中的某些具体问题,实现对计算机的管理等功能,包括学习管理软件、人事管理软件等等。从软件功能的角度来看,我们可以认为,软件就是通过利用计算机本身提供的逻辑功能,合理组织计算机的工作,简化或者替代人们在使用计算机过程中的工作环境。因此,对于计算机的各种程序来说,不管是支持计算机工作的程序,还是支持用户使用的程序,它们都是软件,如职场生存攻略提高工作效率的一些必备软件:Photoshop、word、Excel、Dreamweaver等。

软件特点有:(1)复杂性;(2)一致性;(3)可变性;(4)不可见性。软件类型一是通用软件,另一是定制软件,是根据软件服务对象的范围,将其划分为两个类型。软件危机是:(1)软件维护费用急剧上升,直接威胁计算机应用的扩大;(2)软件生产技术进步缓慢,是加剧软件危机的重要原因。软件生存周期是指一个软件从提出需求开始直到该软件报废为止的整个时期,通常包括可行性分析和项目开发计划、需求分析、概要设计、详细设计、编码、测试、维护等活动,它们将以适当地方式分配到不同阶段去完成。

软件开发是一个过程,是指软件工程人员未获得软件产品在软件工具支持下实施的一系列软件工程活动。其开发过程包括获取过程、供应过程、开发过程、操作过程、维护过程、管理过程和支持过程。其开发模型有:(1)瀑布模型;(2)快速原型模型;(3)喷泉模型;(4)增量模型;(5)螺旋模型;(6)形式化方法模型;(7)基于构件的开发模型。其开发方式是一种使用定义好的技术集及符号表示组织软件生产的过程,包括:(1)结构化方式;(2)Jackson方法;(3)维也纳开发方法;(4)面向对象开发方法。其开发工具一般指为了支持软件人员开发和维护活动而使用的软件。有RUP、RequisitepRro、Rose及Robot。

2 软件工程

“软件工程”自1968年首次提出软件工程概念以来,已经40多年了。编程范型已经经历了三次演变,软件工程也从第一代发展到第三代。其概念提出那个年代就开发大型系统软件用手工方式进行,其生产效率低、出错率高。这种状态不能满足日益增长的软件生产的需要,产生以下四个方面的问题:(1)软件复杂性飞速增长;(2)软件成本高;(3)开发周期长;(4)维护工作量大。即出现了“软件危机”现象。软件工程定义为将系统性的、规范化的、可定量的方法应用于软件得开发、运行和维护,即将工程化应用到软件上。

其有一个相似的概念,出现上个世纪70年代,是开发和维护软件的规范化方法,其指导思想是以处理工程问题的方法处理软件生产的全过程。其发展大致经过三个阶段,包括程序设计时代、软件时代、软件工程时代。而软件开发也大体经过三个阶段,定义、开发、维护三个阶段。随着软件工程的发展,软件工程学出现,它是计算机科学、系统工程学、管理学、经济学等等,既是边缘学科,又是综合性学科。

软件工程目标有:(1)支付较低的开发成本;(2)达到要求的软件功能;(3)取较好的软件性能;(4)开发的软件易于移植;(5)需要较低的维护费用;(6)能按时完成开发任务,及时交付使用;(7)开发的软件可靠性高。其标准主要有三:一是FIPS 135是美国国家标准局发布的《软件文档管理指针》;二是NSAC--39是美国核子安全分析中心发布的《安全参数显示系统的验证与确认》;三是ISO 5807是国际标准化组织发布(现在已经成为中国国家标准)的《信息处理--数据流程图、程序流程图、程序网络图和系统资源图的文件编制符号及约定》。

其标准层次有五个,从顶层到低层依次是国际标准、国家标准、行业标准、企业规范及项目(课题)规范。其标准级别也是五个,即国际标准、国家标准、行业标准、企业(机构)标准和项目(课题)标准。这是根据软件工程,其标准制定的机构和标准适用的范围有所不同分出的级别。软件工程包括软件开发技术和软件工程项目管理两大部分。第三代软件工程:基于构件的软件工程是以软件服用为目标、领域工程为基础,其开发过程一般包括四个阶段,依次是领域分析和测试计划定制、领域设计、建立可复用构件库、按“构件集成模型”查找与集成构件。

今后,计算机软件工程的不断发展,给克服软件危机带来了希望。随着面向对象编程力度的增大,软件工程师技术再不断进步,特别是构件开发的规范化与市场化,已经把软件开发推进到一个新的阶段,出现了“开发伴随软件复用,开发为了软件复用”以及“软件就是服务”等新思想。这些突出的成绩,让我们对计算机软件方向的发展拭目以待。

参考文献:

[1]史济民,顾春华,郑红.软件工程--原理?方法与应用[M].北京:高等教育出版社出版社,2009.

[2]刘冰,赖涵,瞿中,等.软件工程实践教程[M].北京:机械工业出版社,2009.

[3]麦中凡.计算机软件技术基础[M].北京:高等教育出版社,1999.

[4]钱乐秋,赵文耘.软件工程[M].北京:清华大学出版社,2007.

作者简介:张宇(1992-),女,黑龙江哈尔滨人,在读学生,研究方向:计算机科学与技术。

软件工程管理 篇4

原文来自常州NIIT:http://www.niit.cz/7/281.html

一,软件工程师证书,是有社会培训机构通过培训考核发给的有关证书。与国家计算机软件水平资格考试不一样。

如JAVA如件工程师,其培训内容包括: 初级部分:

1.Java 面向对象程序设计、Java API使用、数据结构及算法基础、Java高级类特性、异常处理;

2.AWT及Swing图形程序设计、流、网络程序设计、对象序列化、Applet、多线程程序设计、Java应用国际化基础; 3.Java桌面系统项目开发; 4.Java编程基础提高课程:反射机制、设计模式(I)、正则表达式,Java SE5.0新特性等;

5.基于Oracle的数据库开发及管理、数据库设计、标准SQL、PL/SQL编程; 6.JDBC、JSP2.0、Servlet2.4、JavaBean编程;Tomcat服务器使用、Jbuilder及Eclipse 等集成开发环境;

7.Linux操作系统中的Java程序开发、Linux系统管理; 8.Java Web编程提高课程:JDBC进阶、高效分页处理、过滤器使用技巧、Struts中动态表单验证、DispatchForm等; 高级部分 1.MVC设计模式、Struts架构核心工作机制、国际化、验证框架、Struts Taglib、ORM基础、基于Hibernate的企业级应用;

2.JavaME手机游戏设计、界面程序设计、数据库程序设计、手机短信、多媒体短信(彩信)开发;.JavaEE核心技术、XML、Web Service、异构系统整合、分布式应用开发、WebLogic和JBoss等应用服务器;.CMM、UML与系统建模和设计、Rational Rose、软件工程和软件过程模型、版本控制及设计模式; 6.Java 企业级应用开发提高课程:Hibernate使用技巧、设计模式(II)、Spring编程入门、提高Java EE应用的性能;.NET程序设计

.NET架构、.NET桌面和Web程序设计、.NET与JavaEE平台应用的整合; 职业素质

IT职业规划、沟通技巧、团队合作、专业技术规范、面试技巧等职业技能培训。

完成以上培训课程后,通过考核就可以获得培训机构颁发的合格证书。

现在比较吃香的是JAVA,特别是J2EE,未来3G出来后,手机编程将成为热点,J2EE当然就会很吃香了。

二,关于证书的权威性,建议你要去知名的培训机构去,最好是像SUN这类国际大公司有关认证所指定的培训机构,这样权威性高些。

一般来讲,软件公司是非常喜欢通过了软件工程师的人员,学历对他们来说并不重要,而重要的是能力。如果你的能力够强,在一个好的公司的话,这个月薪我想应该是可以拿到的。

其他方面的软件权威考试,在国内当然就是国家计算机软件水平资格考试了。这是国家级的考试。

三,考软件工程师要看什么?有那些教材,还有比较好的参考书推荐? 能给些有关考试的建议吗?

首先,确切的说是软件设计师,没有软件工程师这种考试的。

软考改革之后,软件设计类就分为:程序员-软件设计师-系统分析师 这三个级别,程序员相当于以前的初程和中程,软件设计师相当于高程。即软件设计师考出之后是中级职称。区别在于以前的高程终身有效,现在的软件设计师有效期3年,三年之后需要再培训。

软件设计师考的不太难,但是面比较广,如果你是计算机或软件工程专业的,看一下清华大学出版社的《软件设计师教程(第二版)》就可以了。

软件工程师考试一年考几次啊?

软件工程管理 篇5

摘要:本文主要概述了国有企事业单位软件配置管理中变更管理方面存在的问题,以及解决这些问题的建议,并对软件配置管理的发展进行了展望。

关键词:软件配置管理,软件变更管理,问题,建议

软件配置管理的目的在于建立和维护软件项目生命周期内软件产品的完整性。配置管理工作如果做不好,很容易产生软件质量问题。

1、软件配置管理现状

软件配置管理一是对软件实体进行管理,二是对软件的研制过程进行管理。大型国有企事业单位在软件研制的过程中,基本上都采用了各种软件版本工具来确保软件的质量。即便如此,也不一定能够确保软件技术状态的正确性。这是由于对软件研制过程中变更管理做得不到位造成的。因此,需要采用技术手段对软件变更过程进行有效管理,以保证软件质量。

2、软件变更管理中存在问题及提高软件质量建议

软件变更管理主要涉及到软件更改的申请、软件更改的批准、软件更改、软件问题归零、软件更改验证及评审等环节。针对软件变更管理中的薄弱环节,以下内容将说明软件配置变更管理中很容易忽视的几个问题,并给出提高软件质量的建议。

(1)软件变更缺少相应级别的评审

实施软件变更的人员在进行完软件的变更之后,由于缺乏对软件更改部分的验证工作,容易导致软件实际更改内容与预期更改内容不一致,甚至由于软件更改描述内容过于简单,导致软件测试人员认为软件只是更改了参数文件等相关内容,而实际上却更改了其他文件,从而造成了软件中可能隐藏的缺陷没有能够暴露。因此,软件变更之要后要进行相应级别的评审,而不能走形式主义。

(2)软件变更管理需要模块化思想

从事软件测试的人员一定会发现,上一版本软件测试提交的问题报告单,在下一版本软件中仍然没有归零,于是软件测试人员纷纷抱怨软件的质量跟踪不到位、软件质量人员没有尽到应有的.责任。可各种软件规章制度实在太多,也不可能把质量人员的质量职责细化得太精确。因此,软件变更管理需要进行模块化管理,将软件变更管理内容按照一定类型分解为不同的模块,让软件变更流程上相关人员按照模块化的思想进行软件变更流程处理,以更好的保证软件质量,从而很好的控制了一些客观因素对软件变更过程质量的影响。

(3)软件变更管理应具有可追溯性

在国有企事业单位软件研制的过程中,软件往往需要变更多次之后才能形成最终交付用户的产品,可软件研制除了注重结果之外,也应该注意过程。因为中间过渡版本软件是企业经验的积累,它可以让软件研制人员总结研制过程中的经验、让新进人员吸取研制过程中的精华知识。因此,对软件的变更管理要有可追溯性。

3、IBMRationalClearQuest软件变更管理工具——提高软件变更管理的质量

针对软件变更管理中存在的问题,可以采用IBMRationalClearQuest软件变更管理工具进行高效的变更管理。该工具能够定制软件变更管理过程中的入库流程、出库流程、更改流程、缺陷管理流程等电子审批流程,还能够对软件变更历史记录进行查询,从技术手段上解决了软件变更缺少评审、验证等环节,以及软件变更过程可追溯性差等问题,让软件变更管理过程实现了模块化思想,从而提高了软件变更管理的效率及质量。

4、软件配置管理发展展望

软件工程中软件需求分析的论文 篇6

关键词:面向对象;软件工程;软件需求分析

1软件工程

随着电子信息化的迅猛发展,软件工程涉及程序程序、语言、数据库、开发工具、设计模式等各方面的内容,主要是用来进行软件研究及软件分析的一门学科,软件工程师是专门进行软件开发的执行者,也可以根据所负责工作的不同划分为系统分析员、软件设计师、系统架构师及程序员等等。随着信息技术的不断升级,软件工程需要不断研究出新的产品、质量高的产,更能满足人们日常生活所需的软件产品。在这里明确指出的是,软件产品是指运用逻辑思维,将逻辑思维的结构与人们所期望的产品进行结合而研制出来的,是逻辑上存在的产品,并不是某一可以实实在在看到的物件。软件产品在使用过程中会面临许多逻辑上的错误,而且其更新换代非常快,存在很大的过时问题,其必然是需要根据时代的需求,人们的需求进行软件产品的不断更新,增加新的功能。同时,软件功能的实现是依靠用户的使用和软件的运行状态,具有一定的复杂性。

2软件需求分析具体过程

软件工程管理 篇7

随着城市轨道交通自动售检票系统 (简称:AFC) 系统的不断完善, 承接AFC系统开发的供货商不断增加, AFC系统软件越来越多。而频繁的软件升级、降级工作, 需要技术人员随时获取需要版本的软件;面对突发故障和重大故障, 应急处理时更加需要随时可提取应急包, 以满足快速修复故障, 保障运营。为了更好的服务生产、满足应急需求, 需要搭建一个随时可提取、可控的软件管理平台。

AFC系统涉及多种站级设备:自动售票机 (TVM) 、闸机 (AGM) 、半自动售票机 (BOM) 、验票机 (TCM) 、车站计算机 (SC) 等, 各种设备基于不同的操作平台运作。SVN是一种免费的, 可支持多平台的开源软件SVN。因此, 基于SVN搭建的AFC软件管理平台, 可以为不同平台的用户自由访问软件管理平台提供帮助。

本文首先从时间、安全性、访问控制和版本控制等方面进行需求分析, 然后提出基于SVN服务器的方案, 最终给出基于SVN的AFC软件管理平台的具体实现。

2 需求分析

一个好的软件管理系统需要具备以下几个基本功能:

2.1 满足24小时随时提取软件的功能。

除了满足运营时间用户对软件的提取的需求, 还需考虑运营结束后, 用户进行的软件升级、出现故障采取应急抢修的需求。

2.2 数据上传、下载过程中具备的可靠性、安全性。

管理员在后台上传软件, 普通用户通过AFC设备远程下载软件的过程中, 软件管理平台应该保障网络、数据安全且可靠。

2.3 访问控制功能。

不同角色, 对软件管理平台的使用具备不同的使用权限。管理员具有管理所有软件、备份软件的权限, 且对普通用户赋予不同使用权限的功能;普通用户按照管理员分配的权限执行的功能。

2.4 版本控制功能。用户从SVN服务器下载软件后, 自动进行本地文件与下载文件对比, 通过图标的不同, 标识两个文件的区别。

五、备份功能。管理员不断的上传软件至SVM服务器, 导致服务器磁盘空间越来越少。为了保障SVN服务器的正常运作, 需要SVN服务器具有自动备份功能。

2.5 后台配置管理功能。

通过SVN安装使用, 发现SVN本身具有很好的版本控制和访问控制功能, 但都是基于管理员庞大的配置工作基础之上, 为提高管理员工作效率, 有必要为管理员开发一款后台配置管理软件。

3 一种基于SVN的AFC软件管理方案及实现

目前AFC系统分为五层, 第一层ICCS (清分中心系统) ;第二层LCC (线路中央计算机) ;第三层:SC、打印机、紧急按钮;第四层:站级设备, TVM、AGM、BOM、TCM、SC等。第五层:票卡。

软件管理平台主要是为站级设备提供软件下载服务, 因此, 基于SVN的AFC软件管理平台搭建在AFC系统的第三层。此方案不仅可以满足站级设备的下载要求, 而且不影响上层ICCS、LCC和SC等设备的使用, 最终实现站级设备与SVN服务器互联互通。

3.1 安装SVN服务端和客户端

AFC软件管理平台是基于开源软件SVN, 因此, 需要分别在不同的设备上安装SVN服务器和SVN客户端软件。具体步骤如下:

a.安装SVN服务端。一台专用服务器, 用于安装SVN服务器。该服务器可以放在便于管理员上传数据的地方, 且放置AFC设备局域网内。

b.创建SVN服务器的服务。

c.安装SVN客户端。在每个站的每台SC服务器上安装SVN客户端。

3.2 数据传输及安全机制

数据传输包括数据上传和数据下载两部分。

数据上传:管理员用专用U盘将在杀毒层中验证过的数据上传至SVN服务器;数据下载:站级设备 (AGM、TVM、TCM、BOM) 需要升级时, 站级设备通过本站SC服务器上的SVN客户端连到SVN服务器, 下载相应的数据。

因为这两个功能都是基于网络而实现, 当软件携带病毒时将直接影响SC服务器的稳定, 而SC服务器又直接与站级各设备互联, 将间接影响站级设备的网络安全。因此需要做好必要的杀毒工作。杀毒层主要由一台专门专用杀毒设备组成。每次需上传至生产网的数据, 必须通过专用杀毒设备, 杀毒后才能够进入生产网。

3.3 SVN的版本控制机制

在软件升级和下载过程中, 普通软件配置管理工具可以通过管理员对软件不同的命名区分。但是当管理员操作失误时, 普通用户不可能察觉。SVN有一个自带的版本控制功能, 当用户下载同一个文件名的软件至本地时, SVN会自动检查文件的内容。对于文件名相同, 但是内容不同的文件, SVN将更改文件夹或者文件的图标;当文件名相同, 而且用户下载的文件内容也一样, 本地文件将不变化。除了通过图标显示异同, 对于文件的属性, 比如软件上传者、上传时间和版本号等历史痕迹均可以通过SVN自带的版本库浏览器查看。通过此版本浏览器, 用户可以快速找到目标软件进行下载。

3.4 SVN的备份机制

在SVN服务器上, 需要自行编写一个批处理文件, 主要实现服务器端备份功能。通过此功能实现SVN服务器软件的备份功能。备份机制:首先检查SVN服务器的磁盘空间, 在保证有40%的磁盘空间剩余量的情况下, 删除最久的2个月的软件文件, 再备份新上传而未备份的软件。

3.5 后台管理功能

SVN服务器自带了文本形式的配置功能, 主要为管理员提供配置接口, 用于配置各用户的访问控制权。提供的两个配置文件分别是:authz和passwd, 这两个文件均需要以文本的形式打开后, 手动输入所有软件库配置信息。其中authz配置角色/用户;文件/角色/权限信息;passwd配置用户/密码信息。为节省管理员的工作量, 可先按照passwd的格式, 直接将目前信息管理系统数据库中已存的AFC人员的用户密码信息导入passwd文本中。针对角色/用户的配置, 开发了一个后台管理程序。首先通过路径栏输入SVN自带的配置文件名。然后选择角色中的任意角色名, 在角色拥有权限栏选择适当的权限, 依次按照此方式操作。最后选择创建方式, 共提供了三种方式:重新生成所有信息:重新配置authz和passwd的所有信息;重新生成用户角色信息, 不重新创建权限:保持原有信息管理系统数据库中AFC人员用户及密码信息, 本次仅仅创建authz的内容。此操作一般用于SVN服务器中已经存在用户密码信息;只创建新权限:保持原有的authz不变, 重新生成passwd。

4 结论

一种基于SVN的AFC软件管理平台不仅满足了基于各类主机文件存储器系统的AFC设备24小时下载软件的要求, 而且实现了数据可靠、安全传输的功能。在此基础上, 开发一个后台管理软件, 方便了管理人员对用户权限的配置工作。

摘要:首先介绍搭建AFC软件管理平台的现实意义, 然后从时间、安全性、访问控制和版本控制等方面进行需求分析, 然后提出一个基于软件配置管理工具 (SVN) 服务器的AFC软件管理平台方案, 最后给出具体实现方案。

软件工程管理 篇8

摘 要:随着计算机的迅猛发展,网络技术的不断进步,在自身硬件组成与软件设计方面取得了突破性的成就,极大地便利了人们的工作与生活。计算机在发展的过程中,除了重视自身硬件性能的提升之外,逐渐将系统软件的开发作为一项重要的内容,以此从系统软件构成方面来满足多样化的使用需求,为了保证计算机系统软件的科学开发,该文旨在从软件工程技术的角度出发,在相关科学理论的指导下,对其在系统软件开发过程中的科学高效运用进行全面探索,以期提升系统软件开发的质量与水平,促进计算机产业的健康发展。

关键词:系统软件开发 软件工程技术 原则 运用方式

中图分类号:TP311.52 文献标识码:A 文章编号:1674-098X(2016)06(c)-0083-02

计算机技术以及互联网技术的快速发展,使得计算机应用的范围日益广泛,逐渐成为现阶段社会生产与生活中重要的工具。系统软件作为计算机软件系统的核心构成,通过自身的逻辑语言与数学算法,在很大程度上满足了计算机使用者的使用需求,实现了经济生产与社会生活的智能化[1]。为了进一步提升系统软件开发的质量与水平,使得系统软件能够满足越来越多样化与专业化的使用需求,我们将软件工程技术引入到系统软件的开发过程中,通过这种方式促进系统软件开发的效率,实现系统软件开发的人性化与信息化。因此在现有的技术条件下,探究软件工程技术在系统软件开发中的科学高效应用就有着十分重大的现实意义。

1 传统软件应用程序与软件开发分析

对传统软件应用程序与软件开发的客观分析,能够帮助参与系统软件设计的相关工作人员进一步厘清传统软件应用程序中存在的不足,并以此为基础为软件工程技术在系统软件开发中的运用准备条件。

1.1 传统软件应用程序开发工程分析

在传统软件应用程序开发工程中,为了保证程序开发有序进展,在软件应用程序开发之前需要进行模型的构建,并根据软件应用程序的设计需求与使用环境,在相关软件开发理论的指导下,对软件开发模型进行多次计算与修改,形成生存期模型,而生存期模型在实际的开发过程中又产生了诸如演化型、螺旋型以及增量型等多种形式[2]。从实际情况来看,无论是何种形式,这些模型在软件应用程序开发的实际操作中,都表现出一定的不足,存在缺陷。例如演化型模型能够对软件开发流程进行科学的优化与调整,从而便于软件应用程序的有效管理,大大降低了软件应用程序开发过程中出现错误的几率,但是如果其中的某一个环节出现了差错,将会造成整个软件开发流程的紊乱,对软件应用程序开发的稳定性带来极为消极的影响。随着社会经济的不断发展,互联网技术以及计算机技术的日益成熟,虽然现阶段大多数的软件程序仍是以WWW为构建进行设计与开发,但是为了满足经济快速发展的要求,相关企业不断进行软件开发与管理流程的优化,以期使得软件开发工作能够适应国民经济发展与社会生活的客观要求。但是我们必须看到传统软件应用程序的开发模式已经越来越难以满足实际要求,这就要求相关企业要立足于软件应用程序设计开发的实际,进行全新模式的科学探索。

1.2 软件应用系统分析

传统软件的开发周期较长,应用程序日益复杂,在很大程度上难以满足社会经济发展对软件应用程序更新换代速度的客观要求。系统软件开发作为一种新的软件开发模式,以软件作为构建的基础,对于数据信息有着较强的处理能力,并且以页面作为主要的展现形式,在一定程度上满足了不同软件应用程序使用者的不同使用需求,并且凭借着自身对各类技术与软件功能的科学整合,其能够在很大程度上缩短软件应用程序开发周期,提升应用程序的简洁性与使用性[3]。

2 系统软件工程技术在系统软件开发运用中应遵循的原则

(1)系统软件工程技术在系统软件开发中的运用必须要遵循科学性的原则。系统软件工程技术在系统软件开发中应用目标的实现,要充分体现科学性的原则,只有从科学的角度进行系统软件工程技术重要性、系统软件开发流程以及相关工作人员的职业素质与技能进行细致而全面的考量,才能够最大限度地保证系统软件工程技术在系统软件开发中的应用满足实际的系统设计需求与企业应用的要求,只有在科学精神、科学手段、科学理念的指导下,我们才能够以现有的技术条件为基础,进行系统软件工程技术在系统软件开发过程中的科学高效运用。

(2)系统软件工程技术在系统软件开发中的运用必须要遵循实用性的原则。系统软件开发相关工作的科学高效运行,需要雄厚资金的支持,从实际来看,资金的稳定供应与否直接影响到系统软件开发工作的质量与水平,因此系统软件开发在进行系统软件工程技术应用的过程中,必须要遵循实用性的原则,最大限度降低系统开发企业在设计与构建过程中系统软件的开发建设与应用成本,降低系统软件开发企业在软件开发方面的资金投入,从而能够将更多的资金利用于其他方面,促进系统软件开发企业自身的健康快速发展,提升其经济收益。

3 软件工程技术在系统软件开发过程中运用的途径与方法

软件工程技术在系统软件开发过程中的运用是一个复杂的过程,需要相关软件设计人员充分认识到传统软件应用程序开发中存在的不足,并在相关原则的指导下,从多个方面入手,采取多种方式,实现软件工程技术在系统软件开发过程中的科学高效运用。

3.1 软件开发模型的科学构建

软件工程的特殊性使得软件应用系统的设计与开发与传统的软件开发工作有着极为明显的区别。而为了保证软件工程技术在系统软件开发中的科学高效运用,就需要进行软件开发模型的科学构建,通过对整个系统软件应用程序的科学解读,对开发周期、基本流程以及软件开发管理工作的重点进行梳理,以此为基础进行软件开发模型的构建,同时为了保证模型构建的质量与效果,还需要进行项目管理模型以及组织公共模型的建立,通过这种方式及时发现软件开发模型中存在的不足,并对其原因进行考察,找出应对差错的方式,从而保证开发流程的有序进行[4]。

3.2 软件应用程序的开发

通常情况下,软件应用程序的开发会以系统软件的迭代升级作为自身的组织框架,在软件一次次地更新中,对软件的性能以及潜在的发展方向进行准确判断,也就是说软件应用程序涵盖了软件开发的各个方面。所以为了充分发挥软件应用程序开发的作用,就需要对软件使用者的使用需求进行客观分析,并以此为基础,组织相关技术人员对相关数据进行分析,从而为下一阶段的软件应用程序的使用需求、设计重点以及性能测试提供有效参考[5]。同时我们也必须看到软件应用程序开发的最终目的在于满足用户的使用需求,因此在进行软件的开发设计中,要对软件应用界面进行科学的优化,并在这一原则的指导下,对用户的使用习惯进行全面了解,对于用户感兴趣的内容、重要资讯以及核心内容安排应用界面的合理位置,通过这种优化能够让用户在满足使用需求的同时,充分满足自身的审美体验,从而大大提升用户使用软件的频率,实现高效开发与合理利用。

3.3 软件工程管理的有效运用

立足于计算机硬件加速升级的趋势,以硬件为支撑,不断提升软件工程管理的效率。软件工程管理与软件开发技术有着较为密切的联系,因此软件工程管理水平的提升,就需要不断进行软件开发技术的完善与调整,使其能够满足实际的管理需求。

参考文献

[1]邱恩海.软件工程技术在系统软件开发过程的应用[J].信息化建设,2016(4):129-130.

[2]王楠.系统软件开发过程中的软件工程技术[J].中国科技博览,2015(45):90.

[3]周敏.系统软件开发过程中的软件工程技术[J].电子制作,2015(8):85-86.

[4]郑彦平.系统软件开发过程中的软件工程技术[J].电子测试,2014(24):122-123.

软件工程管理 篇9

开发与维护软件,把经过时间考验而证明正确的管理技术和当前能够得到的最好的技术方法

结合起来,这就是软件工程。软件工程强调使用生存周期方法学和各种结构分析及结构设计

技术。它们是在七十年代为了对付应用软件日益增长的复杂程度、漫长的开发周期以及用户

对软件产品经常不满意的状况而发展起来的。人类解决复杂问题时普遍采用的一个策略就是

“各个击破”,也就是对问题进行分解然后再分别解决各个子问题的策略。软件工程采用的生存周期方法学就是从时间角度对软件开发和维护的复杂问题进行分解,把软件生存的漫长

周期依次划分为若干个阶段,每个阶段有相对独立的任务,然后逐步完成每个阶段的任务。

采用软件工程方法论开发软件的时候,从对任务的抽象逻辑分析开始,一个阶段一个阶段地

进行开发。前一个阶段任务的完成是开始进行后一个阶段工作的前提和基础,而后一阶段任

务的完成通常是使前一阶段提出的解法更进一步具体化,加进了更多的物理细节。每一个阶

段的开始和结束都有严格标准,对于任何两个相邻的阶段而言,前一阶段的结束标准就是后

一阶段的开始标准。在每一个阶段结束之前都必须进行正式严格的技术审查和管理复审,从

技术和管理两方面对这个阶段的开发成果进行检查,通过之后这个阶段才算结束;如果检查

通不过,则必须进行必要的返工,并且返工后还要再经过审查。审查的一条主要标准就是每个阶段都应该交出“最新式的”(即和所开发的软件完全一致的)高质量的文档资料,从而

保证在软件开发工程结束时有一个完整准确的软件配置交付使用。文档是通信的工具,它们

清楚准确地说明了到这个时候为止,关于该项工程已经知道了什么,同时确立了下一步工作的基础。此外,文档也起备忘录的作用,如果文档不完整,那么一定是某些工作忘记做了,在进入生存周期的下一阶段之前,必须补足这些遗漏的细节。在完成生存周期每个阶段的任

务时,应该采用适合该阶段任务特点的系统化的技术方法,结构分析或结构设计技术。把软

件生存周期划分成若干个阶段,每个阶段的任务相对独立,而且比较简单,便于不同人员分

工协作,从而降低了整个软件开发工程的困难程度;在软件生存周期的每个阶段都采用科学的管理技术和良好的技术方法,而且在每个阶段结束之前都从技术和管理两个角度进行严格的审查,合格之后才开始下一阶段的工作,这就使软件开发工程的全过程以一种有条不紊的方式进行,保证了软件的质量,特别是提高了软件的可维护性。总之,采用软件工程方法论

可以大大提高软件开发的成功率,软件开发的生产率也能明显提高。目前划分软件生存周期

阶段的方法有许多种,软件规模、种类、开发方式、开发环境以及开发时使用的方法论都影

响软件生存周期阶段的划分。在划分软件生存周期的阶段时应该遵循的一条基本原则就是使

各阶段的任务彼此间尽可能相对独立,同一阶段各项任务的性质尽可能相同,从而降低每个

阶段任务的复杂程度,简化不同阶段之间的联系,有利于软件开发工程的组织管理。一般说

来,软件生存周期由软件定义、软件开发和软件维护三个时期组成,每个时期又进一步划分

成若干个阶段。下面的论述主要针对应用软件,对系统软件也基本适用。软件定义时期的任

务是确定软件开发工程必须完成的总目标;确定工程的可行性,导出实现工程目标应该采用的策略及系统必须完成的功能;估计完成该项工程需要的资源和成本,并且制定工程进度表。

这个时期的工作通常又称为系统分析,由系统分析员负责完成。软件定义时期通常进一步划

分成三个阶段,即问题定义、可行性研究和需求分析。开发时期具体设计和实现在前一个时

期定义的软件,它通常由下述四个阶段组成:总体设计,详细设计,编码和单元测试,综合测试。维护时期的主要任务是使软件持久地满足用户的需要。具体地说,当软件在使用过程

中发现错误时应该加以改正;当环境改变时应该修改软件以适应新的环境;当用户有新要求

时应该及时改进软件满足用户的新需要。通常对维护时期不再进一步划分阶段,但是每一次

维护活动本质上都是一次压缩和简化了的定义和开发过程。下面扼要介绍软件生存周期每个

阶段的基本任务和结束标准。问题定义问题定义阶段必须回答的关键问题:“要解决的问题

是什么?”如果不知道问题是什么就试图解决这个问题,显然是盲目的,只会白白浪费时间

和金钱,最终得出的结果很可能是毫无意义的。尽管确切地定义问题的必要性是十分明显的,但是在实践中它却可能是最容易被忽视的一个步骤。通过问题定义阶段的工作,系统分析员

应该提出关于问题性质、工程目标和规模的书面报告。通过对系统的实际用户和使用部门负

责人的访问调查,分析员扼要地写出他对问题的理解,并在用户和使用部门负责人的会议上

认真讨论这份书面报告,澄清含糊不精的地方,改正理解不正确的地方,最后得出一份双方

都满意的文档。问题定义阶段是软件生存周期中最简短的阶段,一般只需要一天甚至更少的时间。2可行性研究。这个阶段要回答的关键问题:“对于上一个阶段所确定的问题有行得

通的解决办法吗?”为了回答这个问题,系统分析员需要进行一次大大压缩和简化了的系统

分析和设计的过程,也就是在较抽象的高层次上进行的分析和设计的过程。可行性研究应该

比较简短,这个阶段的任务不是具体解决问题,而是研究问题的范围,探索这个问题是否值

得去解,是否有可行的解决办法。在问题定义阶段提出的对工程目标和规模的报告通常比较

含糊。可行性研究阶段应该导出系统的高层逻辑模型(通常用数据流图表示),并且在此基

础上更准确、更具体地确定工程规模和目标。然后分析员更准确地估计系统的成本和效益,对建议的系统进行仔细的成本/效益分析是这个阶段的主要任务之一。可行性研究的结果是

使用部门负责人做出是否继续进行这项工程的决定的重要依据,一般说来,只有投资可能取

得较大效益的那些工程项目才值得继续进行下去。可行性研究以后的那些阶段将需要投入要

多的人力物力。及时中止不值得投资的工程项目,可以避免更大的浪费。3需求分析这个阶

段的任务仍然不是具体地解决问题,而是准确地确定“为了解决这个问题,目标系统必须做

什么”,主要是确定目标系统必须具备哪些功能。用户了解他们所面对的问题,知道必须做

什么,但是通常不能完整准确地表达出他们的要求,更不知道怎样利用计算机解决他们的问

题;软件开发人员知道怎样使用软件实现人们的要求,但是对特定用户的具体要求并不完全

清楚。因此系统分析员在需求分析阶段必须和用户密切配合,充分交流信息,以得出经过用

户确认的系统逻辑模型。通常用数据流图、数据字典和简要的算法描述表示系统的逻辑模型。

在需求分析阶段确定的系统逻辑模型是以后设计和实现目标系统的基础,因此必须准确完整

地体现用户的要求。系统分析员通常都是计算机软件专家,技术专家一般都喜欢很快着手进

行具体设计,然而,一旦分析员开始谈论程序设计的细节,就会脱离用户,使他们不能继续

提出他们的要求和建议。较件工程使用的结构分析设计的方法为每个阶段都规定了特定的结

束标准,需求分析阶段必须提出完整准确的系统逻辑模型,经过用户确认之后才能进入下一

个阶段,这就可以有效地防止和克服急于着手进行具体设计的倾向。4总体设计。这个阶段

必须回答的关键问题是:“概括地说,应该如何解决这个问题?”首先,应该考虑几种可能的解决方案。列如,目标系统的一些主要功能是用计算机自动完成还是用人工完成;如果使

用计算机,那么是使用批处理方式还是人机交互方式;信息存储使用传统的文件系统还是数

据库。通常至少应该考虑下述几类可能的方案:低成本的解决方案。系统只能完成最必要的工作,不能多做一点额处的工作。中等成本的解决方案。这样的系统不仅能够很好地完成预

定的任务,使用起来很方便,而且可能还具有用户没有具体指定的某些功能和特点。虽然用

户没有提出这些具体要求,但是系统分析员根据自己的知识和经验断定,这些附加的能力在实践中将证明是很有价值的。高成本的“十全十美”的系统。这样的系统具有用户可能希望

有的所有功能和特点。系统分析员应该使用系统流程图或其他工具描述每种可能的系统,估

计每种方案的成本和效益,还应该在充分权衡各种方案的利弊的基础上,推荐一个较好的系

统(最佳方案),并且制定实现所推荐的系统的详细计划。如果用户接受分析员推荐的系统,则可以着手完成本阶段的另一项主要工作。上面的工作确定了解决问题的策略以及目标系统

需要哪些程序,但是,怎样设计这些程序呢?结构设计的一条基本原理就是程序应该模块化,也就是一个大程序应该由许多规模适中的模块按合理的层次结构组织而成。总体设计阶段的第二项主要任务就是设计软件的结构,也就是确定程序由哪些模块组成以及模块间的关系。

通常用层次图或结构图描绘软件的结构。5详细设计。总体设计阶段以比较抽象概括的方式

提出了解决问题的办法。详细设计阶段的任务就是把解法具体化,也就是回答下面这个关键

问题:“应该怎样具体地实现这个系统呢?”这个阶段的任务还不是编写程序,而是设计出

程序的详细规格说明。这种规格说明的作用很类似于其他工程领域中工程师经常使用的工程

蓝图,它们应该包含必要的细节,程序员可以根据它们写出实际的程序代码。通常用HIP

O图(层次图加输入/处理/输出图)或PDL语言(过程设计语言)描述详细设计的结果。

6编码和单元测试。这个阶段的关键任务是写出正确的容易理解、容易维护的程序模块。程

序员应该根据目标系统的性质和实际环境,选取一种适当的高级程序设计语言(必要时用汇

编语言),把说细设计的结果翻译成用选定的语言书写的程序,并且仔细测试编写出的每一

个模块。7综合测试。这个阶段的关键任务是通过各种类型的测试(及相应的调试)使软件

达到预定的要求。最基本的测试是集成测试和验收测试。所谓集成测试是根据设计的软件结

构,把经过单元测试检验的模块按某种选定的策略装配起来,在装配过程中对程序进行必要的测试。所谓验收测试则是按照规格说明书的规定(通常在需求分析阶段确定),由用户(或

在用户积极参加下)对目标系统进行验收。必要时还可以再通过现场测试或平行运行等方法

对目标系统进一步测试检验。为了使用户能够积极参加验收测试,并且在系统投入生产性运

行以后能够正确有效地使用这个系统,通常需要以正式的或非正式的方式对用户进行培训。

通过对软件测试结果的分析可以预测软件的可靠性;反之,根据对软件可靠性的要求也可以

决定测试和调试过程什么时候可以结束。应该用正式的文档资料把测试计划、详细测试方案

以及实际测试结果保存下来,做为软件配置的一个组成成分。8软件维护。维护阶段的关键

任务是,通过各种必要的维护活动使系统持久地满足用户的需要。通常有四类维护活动:改

正性维护,也就是诊断和改正在使用过程中发现的软件错误;适应性维护,即修改软件以适

应环境的变化;完善性维护,即根据用户的要求改进或扩充软件使它更完善;预防性维护,即修改软件为将来的维护活动预先做准备。虽然没有把维护阶段进一步划分成更小的阶段,但是实际上每一项维护活动都应该经过提出维护要求(或报告问题),分析维护要求,提出

维护要求,提出维护方案,审批维护方案,确定维护计划,修改软件设计,修改程序,测试

程序,复查验收等一系列步骤,因此实质上是经历了一次压缩和简化了的软件定义和开发的全过程的阶段,但是实际上每一项维护活动都应该经过提出维护要求(或报告问题),分析

维护要求,提出维护要求,提出维护方案,审批维护方案,确定维护计划,修改软件设计,修改程序,测试程序,复查验收等一系列步骤,因此实质上是经历了一次压缩和简化了的软

上一篇:平面构成1概述点下一篇:审计风险的现状与对策