一种实现多人协同开发程序的方法、系统及开发服务器的制造方法

文档序号:10470913阅读:761来源:国知局
一种实现多人协同开发程序的方法、系统及开发服务器的制造方法
【专利摘要】本发明公开了一种实现多人协同开发程序的方法、系统及开发服务器,方法包括在开发服务器上建立虚拟会议室;在虚拟会议室中安装软件开发程序,并根据软件开发程序生成开发环境;接收多个客户端发送的登录虚拟会议室的登录请求;根据登录请求向多个客户端返回虚拟会议室的虚拟界面,其中,虚拟界面包含开发环境的界面;在多个客户端中一客户端通过自身附带的硬件在开发环境进行开发程序时获取一客户端所输入的开发内容,并且根据开发内容更新虚拟界面,以及将根据开发内容所更新的虚拟界面同步至其它客户端;将开发内容保存至开发服务器。通过上述方式,本发明能够实现多人协同开发程序,并且增强开发环境的适应性。
【专利说明】
一种实现多人协同开发程序的方法、系统及开发服务器
技术领域
[0001]本发明涉及虚拟会议室技术领域,特别是涉及一种实现多人协同开发程序的方法、系统及开发服务器。
【背景技术】
[0002]软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程。软件开发包括应用软件开发和嵌入软件开发,而在嵌入软件开发时开发环境中需要配置有芯片的仿真环境,例如:在为ASIC(Applicat1n Specific Integrated Circuit,特定用途集成电路)芯片编写软件时,开发环境中需要配置有ASIC仿真环境,在为FPGA(Fi eldProgrammable Gate Array,现场可编程逻辑阵列)编写软件时,开发环境需要配置有FPGA的仿真环境。开发环境通常都在开发公司内构建的,开发人员离开公司后,开发人员无法再登录公司的开发环境进行软件开发。若开发人员需要在自已的电脑上开发软件,需要在自已的电脑上重新安装开发环境,非常麻烦。而传统软件开发都是开发人员单独进行开发,开发完成后再统一整合,而开发人员独立开发软件,很难发现自身的坏的开发习惯,而坏的开发习惯容易成为软件的隐患,并且只能通过后续的软件测试检测软件的问题。另外,单独开发的方式也不利于监督。

【发明内容】

[0003]本发明主要解决的技术问题是提供一种实现多人协同开发程序的方法、系统及开发服务器,能够实现多人协同开发程序,并且增强开发环境的适应性。
[0004]为解决上述技术问题,本发明采用的一个技术方案是:提供一种实现多人协同开发程序的方法,包括:在开发服务器上建立虚拟会议室;在所述虚拟会议室中安装软件开发程序,并根据所述软件开发程序生成开发环境;接收多个客户端发送的登录所述虚拟会议室的登录请求;根据所述登录请求向所述多个客户端返回虚拟会议室的虚拟界面,其中,所述虚拟界面包含所述开发环境的界面;在所述多个客户端中一客户端通过自身附带的硬件在所述开发环境进行开发程序时获取所述一客户端所输入的开发内容,并且根据所述开发内容更新所述虚拟界面,以及将根据所述开发内容所更新的虚拟界面同步至其它客户端;将所述开发内容保存至开发服务器。
[0005]其中,所述在所述多个客户端中一客户端通过自身附带的硬件在所述开发环境进行开发时获取所述一客户端所开发的开发内容的步骤之前,所述方法还包括:接收来自所述一客户端发送的硬件控制请求;根据所述硬件控制请求为所述一客户端分配硬件控制权限。
[0006]其中,所述虚拟界面还包括文字通信区;所述方法还包括:获取所述一客户端通过自身附带的硬件在所述文字通信区进行编辑时所生成的编辑内容;根据所述编辑内容更新所述虚拟界面,并且将根据所述编辑内容所更新的虚拟界面同步至其它客户端。
[0007]其中,所述方法还包括:在所述虚拟会议室中安装软件开发程序语音通信软件;通过所述语音通信软件接收来自所述一客户端的语音内容;将所述语音内容同步至其它客户端。
[0008]其中,所述方法还包括:在所述一客户端通过自身附带的硬件进行在虚拟界面进行操作时,对其操作过程进录屏,生成录屏文件,并保存所述录屏文件。
[0009]为解决上述技术问题,本发明采用的另一个技术方案是:提供一种开发服务器,所述开发服务器建立有虚拟会议室,所述虚拟会议室中安装有软件开发程序,所述虚拟会议室还根据软件开发程序生成有开发环境,所述开发服务器还包括:第一接收模块,用于接收多个客户端发送的登录所述虚拟会议室的登录请求;第一发送模块,用于根据所述登录请求向所述多个客户端返回虚拟会议室的虚拟界面,其中,所述虚拟界面包含所述开发环境的界面;第一获取模块,用于在所述多个客户端中一客户端通过自身附带的硬件在所述开发环境进行开发程序时获取所述一客户端所输入的开发内容;第一更新同步模块,用于根据所述开发内容更新所述虚拟界面,以及将根据所述开发内容所更新的虚拟界面同步至其它客户端;存储模块,用于将所述开发内容保存至开发服务器。
[0010]其中,所述开发服务器还包括:第二接收模块,用于接收来自所述一客户端发送的硬件控制请求;权限分配模块,用于根据所述硬件控制请求为所述一客户端分配硬件控制权限。
[0011 ]其中,所述开发服务器还包括:第二获取模块,用于获取所述一客户端通过自身附带的硬件在所述文字通信区进行编辑时所生成的编辑内容;第二更新同步模块,用于根据所述编辑内容更新所述虚拟界面,并将根据所述编辑内容所更新的虚拟界面同步至其它客户端。
[0012]其中,所述虚拟会议室中还安装有语音通信软件;所述开发服务器还包括:第三接收模块,用于通过所述语音通信软件接收来自所述一客户端的语音内容;第二发送模块,用于将所述语音内容同步至其它客户端。
[0013]为解决上述技术问题,本发明采用的又一个技术方案是:提供一种实现多人协同开发程序的系统,包括开发服务器和多个客户端,所述开发服务器建立有虚拟会议室,所述虚拟会议室中安装软件开发程序,并且所述虚拟会议室根据所述软件开发程序生成有开发环境;所述开发服务器用于:接收所述多个客户端发送的登录所述虚拟会议室的登录请求;根据所述登录请求向所述多个客户端返回虚拟会议室的虚拟界面,其中,所述虚拟界面包含所述开发环境的界面;在所述多个客户端中一客户端通过自身附带的硬件在所述开发环境进行开发程序时获取所述一客户端所输入的开发内容,并且根据所述开发内容更新所述虚拟界面,以及将根据所述开发内容所更新的虚拟界面同步至其它客户端;将所述开发内容保存至开发服务器。
[0014]本发明的有益效果是:区别于现有技术的情况,本发明开发服务器建立虚拟会议室,在虚拟会议室中安装软件开发程序,并根据软件开发程序生成开发环境,当一客户端在虚拟会议室的开发环境中开发程序时,该一客户端所开发的开发内容同步至其它客户端,实现多人协同开发程序,并且增强开发环境的适应性;另外,客户端所输入的开发内容存储在开发服务器,使得开发内容不容易泄密。
【附图说明】
[0015]图1是本发明实现多人协同开发程序的系统实施方式的示意图;
[0016]图2是本发明开发服务器实施方式的示意图;
[0017]图3是本发明实现多人协同开发程序的方法实施方式的流程图;
[0018]图4是本发明实现多人协同开发程序的方法实施方式中实现多客户端之间的文字通信的流程图;
[0019]图5是本发明实现多人协同开发程序的方法实施方式中实现多客户端之间的语音通信的流程图。
【具体实施方式】
[0020]请参阅图1,实现多人协同开发程序的系统20包括开发服务器21和多个客户端22,开发服务器21建立有虚拟会议室,虚拟会议室中安装软件开发程序,并且虚拟会议室根据软件开发程序生成有开发环境。开发服务器21所建立的虚拟会议室可以多个,并且多个虚拟会议室可以安装不同的软件开发程序,以实现多种不同程序的开发。为了方便建立虚拟会议室,可以预先在开发服务器21上建立会议室模板,根据不同开发需求直接在会议室模板中配置,实现快速建立虚拟会议室,也可以对同一种开发环境的虚拟会议室实现一键克隆,当然,在会议室模块更新时,会议室模块下所有虚拟会议室也会同步更新。
[0021]多个客户端22在接入虚拟会议室需要先登录,则多个客户端22向开发服务器21发送登录虚拟会议室的登录请求,其中,登录请求携带待登录的虚拟会议室的标识、多个客户端22自身的标识,以方便开发服务器21获知哪个客户端22想要登录那个虚拟会议室。开发服务器21根据登录请求向多个客户端22返回虚拟会议室的虚拟界面,其中,虚拟界面包含开发环境的界面。在开发服务器21向多个客户端22返回虚拟界面后,说明多个客户端22成功登录虚拟会议室。
[0022]开发服务器21在多个客户端22中一客户端22通过自身附带的硬件在开发环境进行开发程序时获取该一客户端22所输入的开发内容,并且根据开发内容更新虚拟界面,以及将根据开发内容所更新的虚拟界面同步至其它客户端22,从而实现多人协同开发程序。虚拟会议室基于云计算,直接在开发服务器21侧生成的,并且虚拟会议室构建了开发环境,开发人员通过客户端22登录虚拟会议室即可实现编程,实现开发软件不用跟着开发人员走,并且虚拟会议室可以满足各种各样的应用软件,不同的操作系统,增强开发环境的适应性。另外,开发服务器21还将开发内容保存至开发服务器21上,实现云端存储开发内容,使得开发内容不容易泄密。
[0023]为了避免多个客户端22同时控制硬件对虚拟会议室的开发环境进行开发时所造成冲突,虚拟会议室对硬件实行独占控制,即:同一时刻只允许一个客户端22的硬件对虚拟会议室进行操作,当客户端22想使用硬件时,需要向开发服务器21进行申请,则在该一客户端22通过自身附带的硬件在开发环境进行开发程序之前,该一客户端22需要向开发服务器21发送硬件控制请球,开发服务器21接收到来自该一客户端22发送的硬件控制请求后,根据硬件控制请求为一个客户端22分配硬件控制权限,简而言之,将虚拟会议室中硬件控制权重定向至该一客户端22。在该一客户端22不需要使用硬件后,向开发服务器21释放硬件控制权限,当然,开发服务器21侧也可以主动回收硬件控制权限。在本实施方式中,硬件是指鼠标、键盘等等。
[0024]为了方便多人进行协同开发程序时进行沟通,虚拟会议室还配置文字通信功能,实现多个客户端22之间的文字通信。
[0025]具体的,虚拟界面还包括文字通信区。开发服务器21获取一客户端22通过自身附带的硬件在文字通信区进行编辑时所生成的编辑内容,根据编辑内容更新虚拟界面,并且将根据编辑内容所更新的虚拟界面同步至其它客户端22。
[0026]当然,虚拟会议室除了安装有软件开发程序之外,还可以安装语音通信软件,以实现多个客户端22之间的语音通信,具体的,开发服务器21通过语音通信软件接收来自该一客户端22的语音内容;将语音内容同步至其它客户端22。而其它客户端22接收到语音内容后,可以通过其身附带的麦克风把语音内容广播出来。
[0027]为了提高开发内容的安全性,开发服务器21在该一客户端22通过自身附带的硬件进行在虚拟界面进行操作时,对其操作过程进录屏,生成录屏文件,并保存录屏文件。通过录屏记载客户端22所执行的操作,当开发人员盗拷开发内容时,可以对开发人员进行追究。
[0028]当然,在其它替代实施方式中,除了实现多客户端22之间的文字通信、语音通信之夕卜,还可以实现桌面共享、文档共享等其它辅助功能。
[0029]在本发明实施方式中,在开发服务器建立虚拟会议室,在虚拟会议室中安装软件开发程序,并根据软件开发程序生成开发环境,当一客户端在虚拟会议室的开发环境中开发程序时,该一客户端所开发的开发内容同步至其它客户端,实现多人协同开发程序,并且增强开发环境的适应性;另外,客户端所输入的开发内容存储在开发服务器21,使得开发内容不容易泄密。
[0030]本发明又提供了开发服务器实施方式。请参阅2,开发服务器建立有虚拟会议室,虚拟会议室中安装有软件开发程序,虚拟会议室还根据软件开发程序生成有开发环境,开发服务器21还包括第一接收模块211、第一发送模块212、第一获取模块213、第一更新同步模块214和存储模块215。
[0031]第一接收模块211,用于接收多个客户端发送的登录虚拟会议室的登录请求。第一发送模块212,用于根据登录请求向多个客户端返回虚拟会议室的虚拟界面,其中,虚拟界面包含所述开发环境的界面。第一获取模块213,用于在多个客户端中一客户端通过自身附带的硬件在所述开发环境进行开发程序时获取一客户端所输入的开发内容。第一更新同步模块214,用于根据开发内容更新所述虚拟界面,以及将根据开发内容所更新的虚拟界面同步至其它客户端,从而实现多人协同开发程序。存储模块215,用于将开发内容保存至开发服务器,使得开发内容不容易泄密。
[0032]为了避免多个客户端同时控制硬件对虚拟会议室的开发环境进行开发时所造成冲突,虚拟会议室对硬件实行独占控制,则该一客户端在开发环境输入开发内容之前,还需要申请硬件控制权,开发服务器还包括第二接收模块216和权限分配模块217。第二接收模块216,用于接收来自该一客户端发送的硬件控制请求。权限分配模块217,用于根据硬件控制请求为一客户端分配硬件控制权限。当然,在该一客户端不需要使用硬件后,向开发服务器释放硬件控制权限,或者,开发服务器侧也可以主动回收硬件控制权限。
[0033]为了实现多客户端之间进行文字通信,开发服务器还包括第二获取模块218和第二更新同步模块219。第二获取模块218,用于获取该一客户端通过自身附带的硬件在文字通信区进行编辑时所生成的编辑内容。第二更新同步模块219,用于根据编辑内容更新虚拟界面,并将根据编辑内容所更新的虚拟界面同步至其它客户端。
[0034]为了实现多客户端之间的语音通信,虚拟会议室中还安装有语音通信软件,开发服务器还包括第三接收模块220和第二发送模块221。第三接收模块220,用于通过语音通信软件接收来自该一客户端的语音内容。第二发送模块221,用于将语音内容同步至其它客户端。
[0035]为了提高开发内容的安全性,开发服务器还包括录屏模块222,录屏模块222用于在该一客户端通过自身附带的硬件进行在虚拟界面进行操作时,对其操作过程进录屏,生成录屏文件,并保存所述录屏文件。
[0036]在本发明实施方式中,开发服务器建立虚拟会议室,在虚拟会议室中安装软件开发程序,并根据软件开发程序生成开发环境,当一客户端在虚拟会议室的开发环境中开发程序时,该一客户端所开发的开发内容同步至其它客户端,实现多人协同开发程序,并且增强开发环境的适应性;另外,客户端所输入的开发内容存储在开发服务器,使得开发内容不容易泄密。
[0037]本发明又提供实现多人协同开发程序的方法实施方式。请参阅图,方法包括:
[0038]步骤S401:在开发服务器上建立虚拟会议室;
[0039]开发服务器是物理主机,虚拟会议室寄生于开发服务器,并且虚拟会议室相当于开发服务器上的虚拟机,其是由虚拟CPU、硬盘、内存等资源构成。
[0040]步骤S402:在虚拟会议室中安装软件开发程序,并根据软件开发程序生成开发环境;
[0041]由于虚拟会议室的功能与真实主机的功能相当,因此,虚拟会议室上也可以安装各种各样的软件,例如:当需要进行ASIC(Applicat1n Specific Integrated Circuit,特定用途集成电路)编码时,开发服务器生成附带ASIC编码环境的虚拟会议室,当需要进行FPGA(Field Programmable Gate Array,现场可编程逻辑阵列)编码时,开发服务器生成附FPGA编码环境。
[0042]步骤S403:接收多个客户端发送的登录虚拟会议室的登录请求;
[0043]由于虚拟会议室是寄生于开发服务器,客户端需要登录虚拟会议室才能对虚拟会议室内的开发环境进行编码。
[0044]步骤S404:根据登录请求向多个客户端返回虚拟会议室的虚拟界面,其中,虚拟界面包含开发环境的界面;
[0045]在客户端接收到虚拟界面时,客户端会显示虚拟界面,并且多个客户端所显示的虚拟界面均相同的。而客户端接收到虚拟界面,则说明客户端成功登入虚拟会议室。
[0046]步骤S405:在多个客户端中一客户端通过自身附带的硬件在开发环境进行开发程序时获取一客户端所输入的开发内容,并且根据开发内容更新虚拟界面,以及将根据开发内容所更新的虚拟界面同步至其它客户端;
[0047]在一客户端进行开发程序时,该一客户端所输入的开发内容显示在虚拟界面,从而更新虚拟界面,更新后的虚拟界面同步至其它客户端,使得所有客户端上所显示的虚拟界面均相同,从而实现多人协同开发程序。
[0048]步骤S406:将开发内容保存至开发服务器。
[0049]在将开发内保存到开发服务器后,实现云端存储开发内容,使得开发内容不容易泄密。
[0050]为了避免多个客户端同时控制硬件对虚拟会议室的开发环境进行开发时所造成冲突,该一客户端在开发环境输入开发内容之前,还需要申请硬件控制权,则在步骤S404与步骤S405之间,方法还包括:
[0051 ]步骤S407:接收来自该一客户端发送的硬件控制请求;
[0052]步骤S408:根据硬件控制请求为该一客户端分配硬件控制权限;
[0053]当该一客户端获得硬件控制权限后,该一客户端才可以对虚拟会议室进行操作,否则该一客户端只能显示虚拟会议室。当然,该一客户端无需要使用硬件后,需要释放硬件控制权。
[0054]为了实现多客户端之间进行文字通信,虚拟界面还包括文字通信区,方法还包括:
[0055]步骤S409:获取该一客户端通过自身附带的硬件在文字通信区进行编辑时所生成的编辑内容;
[0056]步骤S510:根据编辑内容更新虚拟界面,并且将根据编辑内容所更新的虚拟界面同步至其它客户端。
[0057]为了实现多客户端之间的语音通信,虚拟会议室还安装语音通信软件,在本实施方式中,语音通信软件为VOI P语音通信软件。方法还包括:
[0058]步骤S511:通过所述语音通信软件接收来自所述一客户端的语音内容;
[0059]步骤S512:将语音内容同步至其它客户端。
[0060]为了提高开发内容的安全性,在客户端对虚拟会议室进行操作时,对客户端的操作进行录屏,则方法还包括:在一客户端通过自身附带的硬件进行在虚拟界面进行操作时,对其操作过程进录屏,生成录屏文件,并保存录屏文件。
[0061 ]在本发明实施方式中,开发服务器建立虚拟会议室,在虚拟会议室中安装软件开发程序,并根据软件开发程序生成开发环境,当一客户端在虚拟会议室的开发环境中开发程序时,该一客户端所开发的开发内容同步至其它客户端,实现多人协同开发程序,并且增强开发环境的适应性;另外,客户端所输入的开发内容存储在开发服务器,使得开发内容不容易泄密。
[0062]以上所述仅为本发明的实施方式,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。
【主权项】
1.一种实现多人协同开发程序的方法,其特征在于,包括: 在开发服务器上建立虚拟会议室; 在所述虚拟会议室中安装软件开发程序,并根据所述软件开发程序生成开发环境; 接收多个客户端发送的登录所述虚拟会议室的登录请求; 根据所述登录请求向所述多个客户端返回虚拟会议室的虚拟界面,其中,所述虚拟界面包含所述开发环境的界面; 在所述多个客户端中一客户端通过自身附带的硬件在所述开发环境进行开发程序时获取所述一客户端所输入的开发内容,并且根据所述开发内容更新所述虚拟界面,以及将根据所述开发内容所更新的虚拟界面同步至其它客户端; 将所述开发内容保存至开发服务器。2.根据权利要求1所述的方法,其特征在于,所述在所述多个客户端中一客户端通过自身附带的硬件在所述开发环境进行开发时获取所述一客户端所开发的开发内容的步骤之前,所述方法还包括: 接收来自所述一客户端发送的硬件控制请求; 根据所述硬件控制请求为所述一客户端分配硬件控制权限。3.根据权利要求2所述的方法,其特征在于, 所述虚拟界面还包括文字通信区; 所述方法还包括: 获取所述一客户端通过自身附带的硬件在所述文字通信区进行编辑时所生成的编辑内容; 根据所述编辑内容更新所述虚拟界面,并且将根据所述编辑内容所更新的虚拟界面同步至其它客户端。4.根据权利要求1所述的方法,其特征在于, 所述方法还包括: 在所述虚拟会议室中安装软件开发程序语音通信软件; 通过所述语音通信软件接收来自所述一客户端的语音内容; 将所述语音内容同步至其它客户端。5.根据权利要求1?3中任意一项所述的方法,其特征在于,所述方法还包括: 在所述一客户端通过自身附带的硬件进行在虚拟界面进行操作时,对其操作过程进录屏,生成录屏文件,并保存所述录屏文件。6.一种开发服务器,其特征在于,所述开发服务器建立有虚拟会议室,所述虚拟会议室中安装有软件开发程序,所述虚拟会议室还根据软件开发程序生成有开发环境,所述开发服务器还包括: 第一接收模块,用于接收多个客户端发送的登录所述虚拟会议室的登录请求; 第一发送模块,用于根据所述登录请求向所述多个客户端返回虚拟会议室的虚拟界面,其中,所述虚拟界面包含所述开发环境的界面; 第一获取模块,用于在所述多个客户端中一客户端通过自身附带的硬件在所述开发环境进行开发程序时获取所述一客户端所输入的开发内容; 第一更新同步模块,用于根据所述开发内容更新所述虚拟界面,以及将根据所述开发内容所更新的虚拟界面同步至其它客户端; 存储模块,用于将所述开发内容保存至开发服务器。7.根据权利要求6所述的开发服务器,其特征在于,所述开发服务器还包括: 第二接收模块,用于接收来自所述一客户端发送的硬件控制请求; 权限分配模块,用于根据所述硬件控制请求为所述一客户端分配硬件控制权限。8.根据权利要求7所述的开发服务器,其特征在于,所述开发服务器还包括: 第二获取模块,用于获取所述一客户端通过自身附带的硬件在所述文字通信区进行编辑时所生成的编辑内容; 第二更新同步模块,用于根据所述编辑内容更新所述虚拟界面,并将根据所述编辑内容所更新的虚拟界面同步至其它客户端。9.根据权利要求7所述的开发服务器,其特征在于, 所述虚拟会议室中还安装有语音通信软件; 所述开发服务器还包括: 第三接收模块,用于通过所述语音通信软件接收来自所述一客户端的语音内容; 第二发送模块,用于将所述语音内容同步至其它客户端。10.—种实现多人协同开发程序的系统,其特征在于,包括开发服务器和多个客户端,所述开发服务器建立有虚拟会议室,所述虚拟会议室中安装软件开发程序,并且所述虚拟会议室根据所述软件开发程序生成有开发环境; 所述开发服务器用于: 接收所述多个客户端发送的登录所述虚拟会议室的登录请求; 根据所述登录请求向所述多个客户端返回虚拟会议室的虚拟界面,其中,所述虚拟界面包含所述开发环境的界面; 在所述多个客户端中一客户端通过自身附带的硬件在所述开发环境进行开发程序时获取所述一客户端所输入的开发内容,并且根据所述开发内容更新所述虚拟界面,以及将根据所述开发内容所更新的虚拟界面同步至其它客户端; 将所述开发内容保存至开发服务器。
【文档编号】G06Q10/10GK105824617SQ201610133663
【公开日】2016年8月3日
【申请日】2016年3月9日
【发明人】张萍, 张一萍
【申请人】深圳市京华科讯科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1