欢迎来到天天文库
浏览记录
ID:10027023
大小:29.50 KB
页数:0页
时间:2018-05-21
《internet软件项目研讨 》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、Internet软件项目研讨Internet软件项目研讨Internet软件项目研讨Internet软件项目研讨Internet软件项目研讨Internet软件项目研讨 1前言 Internet的高速发展给现代生活带来巨大的变化,信息革命不仅影响着生活的方方面面,也给各个社会行业带来很多新变化。软件工程是是一门年轻的学科,并且已经在软件发展的过程中承担了重要作用,如何立足于现有条件,面对新机遇,新挑战成长壮大不仅对于软件行业有重要意义,对于整个信息产业也有十分重要的意义。本文将站在软件开发者和研究者的立
2、场,分析Internet下的软件工程,文中的观点是Internet不仅给软件工程的发展带来很多新的机遇,新的便利,同时也给软件工程的发展带来了新的挑战,下文将从这两方面进行分析。 2Internet对于软件工程发展的推动 Internet的迅速发展给对软件工程有很多积极的影响,大致可以归结为如下几个方面。 技术交流软件开发的流程大致可以分为产品需求、开发和测试3个环节,其中各个环节是由不同的人来负责的。软件项目人员用于相互之间的通信交流通常要大量时间,准确和及时的技术经验交流对于维护项目组之间的进度同
3、步以及允许对于精通核心技术的个人在需要时充分发挥其作用都是十分必要的。比如开放软件社区一个潜移默化的规则是技术交流应该以帖子的形式在论坛相关板块中进行,另外,开放软件项目通常要在技术的精确细节和项目管理决策方面得到支持。很多软件项目的失败是由于经验不足或者技术积累不够,并且很多相似项目重蹈覆辙,Internet给技术人员提供了方便的交流手段,可以快速地传播新技术及相关问题的解决方案,并且同时发布相关技术陷阱可能发生的地方,避免相同的错误重复出现。 跨地域软件开发项目中的版本控制通常很多软件项目是大型的,需
4、要几个几十个甚至成百上千人的参与,这些开发人员在地域上很有可能是分散的,甚至可能相隔千里,这些人员之间的协调合作就变的十分重。比如项目中的一个文件也许几个模块都需要关联,并且各个模块的开发人员都可能会对这个文件进行开发,如何保证各个模块中的对这个文件引用的一致性就需要用到软件项目的版本控制。常用的版本控制软件有SVN,CVS等软件,拿SVN来说,会有一个专门的SVN服务器,每个人在开发的时候都需要从SVN服务器上把最新的代码checkout出来,并且用branch进行开发,这时候他的开发不会影响到其他人的代
5、码,开发完成后需要合并到trunk上,合并的过程需要处理冲突,通过这样的版本控制器和Internet的结合,开发人员可以分散在不同的地区,只要有Internet连接,就可以实现完美的版本控制。由图1可以看出,client1到clientn对应的是现实中的一个个的开发人员,他们可以不在一起,甚至可以不认识,但是却可以通力合作,每一个人都和SVN服务相连,每个人把自己的最新代码提交上去,别人开发的时候下载一份最新的代码,在其基础之上进行开发。 构件复用软件工程的发展方向是构件化,提供构件的复用率可以显著提升软
6、件的开发速度和质量,Internet的发展给了构件复用极大的支持,可以通过在相关的技术社区或搜索引擎查找到需要的构件,避免重复造成的悲剧。在软件开发过程中,遇到一个新功能和新需求,首先不要想着自己去开发,而是去查找是不是已有相关的构件或类似的软件库,一般来说,第三方提供的构件或库都是经过实践检验的,功能和性能都比较有保证,多多使用现有构件,不仅可以加快项目进度,通常还可以降低开发成本,比如在互联网软件开发过程中经常用到的jquery库,提供了一些很方便的js函数和浏览器兼容性的解决方案。 进度管理任何软件
7、项目都需要有需求、执行、控制、运营几个步骤。一般来说小型项目的团队成员比较少,可能在空间上会都在一起,但对于大型项目,通常需要进行一些外部合作,需要几个公司协同开发,有时甚至同一个公司的团队成员在地理上都相距很远,这时候的进度管理就需要Internet的支持,常见的基于Internet的进度管理是依靠管理平台或邮件,通过两种途径对于每个项目成员分配TO-DO列表,并且实时追踪TO-DO列表的完成情况并且更新,另外需要设置里程碑列表来标记项目的关键时期和关键点。 质量保证Internet的发展催生了开源软件
8、项目的发展,开源软件项目自出现到现在取得了十分辉煌的成就,主要体现在起软件质量上,这也是开源软件项目相比于传统封闭的软件开发最大的优势。开源软件的质量保证主要基于3点,一是开发人员可以在Internet上根据自己的兴趣和知识寻找相关的项目;二是很多开发人员自己同时也是需求人员和测试人员;第三点是所有项目过程中的技术交流和程序逻辑都是公开的,把代码呈现在更多人的视野中,可以接受更为严格的检验。此外,由于Intern
此文档下载收益归作者所有