软件开发过程自动化和加速凯发娱乐登录的解决方案,帮助企业缩短软件开发周期、提高软件质量、降低研发成本以及满足软件研发对合规性的要求。
提供持续集成、持续交付、敏捷开发和devops工业应用!
ec希望解决的问题
软件交付各阶段依赖性大,发布周期长:依赖于个人或小团队执行、更新状态和解决问题;
• 应对复杂的开发环境:各种应用、开发流程、硬件环境和工具;
• 多手工的流程:不可重复、易出错、无可追溯性、不透明;
• 硬件资源利用率低:长期空闲或资源争夺;
ec具备的能力
• 软件开发自动化流程建模;
• 分布式编译加速、一键式部署;
• 软件开发工具链集成,实现工具自动执行、动态分析;
• 软件开发相关系统集成,实现全面软件配置管理;
• 对现有硬件资源的统一管理和调度能力;
• 软件开发过程动态监控,基于同一平台自动收集和管理过程数据;
• 提供持续集成、持续交付、敏捷开发和devops工业应用;
软件开发自动化平台
软件开发流程建模
该功能模块主要是对软件开发过程中的流程进行建模,支持将软件开发整个过程(开发、测试、发布)中的不同阶段业务过程集成到一起,实现软件开发过程的流程自动化。流程建模能力主要包括:
• 流程的分支控制可以采取条件自动转换(如编译测试结果等)或者由人工决定(如特定结果检查,审批等),保证流程按照预先设计的路径执行,避免随意性;
• 支持流程之间的嵌套;
• 支持图形化设计和图形化显示,使工作流的展示一目了然;
• 软件开发流程自动化执行及分析:软件开发流程可以根据条件自动、手工或按照计划启动开始自动化执行;
• 软件流程加速:并行的配置简单易用,可以支持多任务或任务内活动的并行执行;
• 并行任务或者步骤间的日志完全隔离,便于调试。
通过上述的软件开发流程的建模能力,企业可构建如下的典型的软件开发流程:
a)持续集成:可通过系统自带的持续集成能力实现代码在入配置库时自动进行集成编译、单元测试、代码检测等操作,确保开发产品的持续可工作性,提高开发效率。
b)测试自动化:可实现测试过程流程自动,实现测试资源自动部署准备、测试脚本自动执行、测试报告自动生成。并可实现复杂的测试逻辑判断和测试并行进行,从而加速测试过程。
c)自动化部署/发布:可通过组建部署/发布对象实现部署/发布的一键实现功能,用户只需选择相应的部署/发布的软件版本号、需要部署/发布的对象即可实现自动的部署/发布过程。并且系统将针对错误的部署/发布结果可实现一键回滚,确保部署环境软件的持续可用性。同时可保证整个部署/发布过程数据可追溯性。
软件开发工具与应用集成
系统支持对软件开发过程各个环节涉及的相应工具及应用进行集成,以打通软件开发过程的各个关键环节。一方面,可以实现企业内开发工具及应用的规范化管理,另一方面把对工具的自动化调用整合至软件开发自动化流程中,可以有效地消除不同工具或应用之间进行手工切换带来的效率和质量问题。系统将通过插件的方式对当前软件开发过程中所采用的工具进行集成。目前系统自带可集成的工具包括: ide,编译工具,测试工具,scm工具等。同时系统具备灵活的集成可扩展性,通过开放性接口可对企业自主开发的工具实现有效集成。
(详细集成列表见:http://www.electric-cloud.com/plugins/)
软件开发资源集中管控
系统能够实现软件开发资源的集中统一管理和动态自动化调度。系统支持与microsoft system center,vmware lab manager,vmware vcloud director/labmanager,amazon ec2,nimbula,eucalyptus等设备资源的集成,实现资源的统一化管理;可以结合虚拟机管理、云管理等相关资源管理插件,实现软件测试资源的动态准备、供给、动态使用和动态回收,并能够实时监控资源利用情况。
软件开发过程动态监控
系统将实时抓取软件开发流程中各作业或步骤的输出结果,提供可视化及报告功能,可以对软件开发的流程执行情况、资源利用率、问题错误情况等进行可视化动态监控,并支持所需格式报告的自动化生成。