`

JAVA敏捷开发环境搭建

阅读更多

前面介绍了创业型软件公司的工作模式,这里详细介绍下如何实施,第一步是先要搭建环境,有了环境才能开展工作。

整个软件项目分为四个环境 开发本地环境、开发环境、测试环境、IDC环境。和传统C++开发不一样的模式是多了第一个开发本地环境。这是为什么呢,因为目前大部分开发人员还是比较熟悉windows下开发。对于mac和linux下直接使用软件并且开发的中国开发者还是少之又少,这套架构就这个现状做出来的。如下是环境搭建架构图:

agile_pic3

 

 

 

 

 

 

 

 

 

 

 

 

从环境来说:

一、开发本地环境、开发集成服务器搭建。 前端开发者、后台开发者。

前端开发用的最多的是photoshop和dreamweaver。在做psd之前大部分是不会协同开发的,只有整个文件传递过来过去。html切割的时候可能就会多个人协同开发了。这个时候需要一个集中ftp服务器、svn服务器。svn服务器用于保存版本代码库,用于保存历史修改的版本和开发人员协同。ftp服务器适用于及时修改时保存上传到预览服务器进行预览。看到这里有人也许会问,我直接合并svn和ftp不行吗?其实有这样的问题,如果直接提交svn,后台开发人员就会从svn看到。本来是前端的集成协同开发预览,结果影响到后台容易引起版本混乱。

后台开发怎么搭建环境?用eclipse在本地环境搭建开发环境,通过tomcat插件或者jetty启动调试class、jsp。之前看过很多公司都通过打成war包发布到集成环境再调试。集成环境大家都去集成容易引起版本混乱。即使不发布到集成环境,在本地就算修改个小的class文件也要重启war包有点浪费时间。最好就是利用tomcat的热部署,修改小功能直接生效。现在我们就是这样做的,用maven管理jar包依赖,ant本地打包、拷贝包,用eclipse的tomcat插件热部署快速开发。等到所有功能开发好了。把分支版本发布到开发环境进行集成测试。

开发环境涉及的软件有:nexus 、maven、tomcat服务器、mysql、ftp、jenkins、svn、jira、fisheye、eclipse、dreamweaver、photoshop、nginx。

软件的作用:
nexus作为集中仓库管理,因为每个工程如果都有一堆jar包,很难管理。加上svn上传、分支、合并耗费网络带宽、空间。如果有个地方把这些浪费空间的jar集中管理起来,所有工程合用岂不是很好。
maven是软件生命周期、依赖管理,有了集中管理jar包,就需要有个东西把jar包仓库和工程连接起来。
tomcat服务器是本地开发使用和集中测试服务器。
mysql就没必要每个开发机器都装一个了,放在一个开发环境就可以。
ftp作为前端开发上传文件使用。
jenkins是持续集成,开发和前端都把代码弄好,怎么融合集成在一起测试呢,总需要有个人来把所有的文件合并在一起吧?这个软件就起到这个角色,把所有文件集成、编译、打包、发布到tomcat服务器。如下图:

test

svn代码版本管理,大家都知道协同作用。
jira用于需求、bug等管理。
fisheye用于代码统计、审核等。
eclipse、dreamweaver、photoshop不用说啦。
nginx主要用于做虚拟主机和静态资源管理。因为我们可能同时开发多个网站,nginx可以根据不同的域名转发到不同的web服务器。

二、测试服务器。开发、测试。

开发集成测试环境通过后,这个就可以转测试了。通过持续集成,测试部署好环境就开始测试。测试环境同样依赖于集中仓库、maven、持续集成等软件。也就是集成测试环境、开发集成环境、开发本地环境都是用的一套jar包,是不是很cool。如果测试不通过,就要转回开发,开发好再转测试。怎么保证开发的质量和测试的质量,还有大家的协作性,这个过程涉及到软件工程和绩效考核,后面再说。测试通过一些测试,测试通过后就可以发布到外网了。这个时候需要提供发布列表、操作步骤、数据库操作脚本给到运维审核,审核通过后才能发布。

怎么发布到外网IDC呢?运维可以根据发布列表去操作,开发和前端一起等着熬夜啊熬夜。没有效率!这里提出了一个增量发布版本的方式,通过发布列表,我们的发布程序会自动检测到发布的文件和发布的机器,发布到对应的服务器。如果发布失败了还可以回滚文件,基本上是一键操作。未来还会把服务器重启、日志输出等集成起来。

三、IDC服务器。

外网的真实服务器,后台和前台。大家能够访问到的网站服务器。业务人员在版本发布后查看。整个流程就做好了。大家在每一次版本开发完了,可以很好的协同、开发、测试、发布。

扩展话题:
1、photoshop能否和html互转并且有版本管理功能,这个做好是个革命性的标志。
2、css、js等静态文件是否也能够纳入自动依赖管理里。这样不用我们发布一个页面文件时发现还有些依赖的js没有发布。

原创文章,转载请注明: 转载自Lanceyan

本文链接地址: JAVA敏捷开发环境搭建

0
4
分享到:
评论
1 楼 ywbrj042 2013-05-09  
感觉还不错,比较自动化了。

相关推荐

    敏捷开发环境搭建

    敏捷开发环境的搭建是提升开发团队效率的关键步骤,它涵盖了多个工具和技术的集成,包括项目管理、代码构建、质量检查和版本控制等。在本文中,我们将深入探讨如何搭建一个基于SUSE 11 SP2 x64系统的敏捷开发环境,...

    Git + Jenkins + SonarQube 敏捷开发持续集成环境

    #### 一、环境搭建与配置 在构建一个基于Git、Jenkins和SonarQube的敏捷开发持续集成环境时,首先要确保基础环境的搭建。根据提供的内容,这里假设的基础环境是CentOS 7操作系统,并已安装好Java 8 (版本1.8.0_131)...

    JeeWeb敏捷开发平台

    JeeWeb是一款基于SpringMVC+Spring+Hibernate的敏捷开发系统;它是一款具有代码生成功能的智能快速开发平台;是以Spring Framework为核心容器,Spring MVC为模型视图控制器,Hibernate为数据访问层, Apache Shiro为...

    Eclipse开发环境搭建.pdf

    【Eclipse开发环境搭建】 Eclipse是一款广泛使用的集成开发环境(IDE),尤其在Java编程领域中备受推崇。本文将详细介绍如何在Windows操作系统下搭建Eclipse的开发环境,包括JDK的安装与配置、Tomcat服务器的安装与...

    JEEWEB Mybatis版本是一款基于SpringMVC+Spring+Mybatis+Mybatis Plus的JAVA WEB敏捷开发系统.zip

    JEEWEB Mybatis版本是一个为Java Web开发领域量身打造的敏捷开发系统。其核心架构构建于业界广泛认可的SpringMVC、Spring、Mybatis以及Mybatis Plus之上。SpringMVC作为模型-视图-控制器(MVC)框架,是Spring框架的...

    基于Java和HTML的Smart_Admin敏捷开发框架设计源码

    在软件开发领域,敏捷开发框架是提升项目开发效率和质量的重要工具。Smart_Admin作为一个敏捷开发框架,主要面向于快速构建和管理智能行政系统的项目。它基于流行的编程语言Java和标记语言HTML,集成了多种配置文件...

    敏捷框架移动端开发环境安装_力软敏捷框架移动端开发环境安装_力软_力软-敏捷框架_teampa3_移动端_源码.zip

    在IT行业中,敏捷框架是...总之,这个压缩包提供了一个完整的移动端敏捷开发环境,包括必要的工具、源码和指导,有助于开发者高效地构建和维护应用程序。对于想要学习或使用力软敏捷框架的人来说,这是一个宝贵的资源。

    JAVA的SpringBoot敏捷开发框架源码带文档数据库 MySQL源码类型 WebForm

    SpringBoot敏捷开发框架源码带文档数据库MySQL源码类型WebForm,意味着这是一套完整的解决方案,不仅包括了后端的SpringBoot框架,也包括了相关的数据库设计和前端页面设计。这对于开发者来说,是一个很好的学习资源...

    java项目开发实战-2025.zip

    此外,课程还会涉及到如何搭建项目开发环境,包括安装JDK、配置环境变量、选择合适的构建工具,如Maven或Gradle,以及如何进行项目依赖管理。 在Java项目开发实战中,学员将有机会学习到如何遵循软件开发的最佳实践...

    Java_Web开发教程.pdf

    - **Ruby**:Ruby on Rails 框架极大地简化了 Web 开发流程,特别适合敏捷开发。 - **Java**:尽管学习曲线较陡峭,但其强大的生态系统、高并发处理能力和稳定性使其在大型企业级应用中占有一席之地。 - **Node.js**...

    Python的敏捷开发.docx

    开发者可以创建自定义模块和函数,满足特定需求,同时支持与其他编程语言(如C、Java)的集成,进一步增强了其在敏捷开发中的适应性。 进行Python的敏捷开发,可以遵循以下步骤: 1. 采用基于迭代的开发过程,利用...

    Java项目开发:全面指南与实践

    Java项目开发全面指南与实践知识点: 1. 引言:Java编程语言...8. 总结:Java项目开发成功依赖于周密的项目规划、有效的环境搭建、合理的设计模式和编码实践、全面的测试与调试以及系统的性能优化和敏捷的项目管理。

    深圳物业管理行业Java开发工程师(中级)岗位介绍JD模板.docx

    - 系统环境:了解Docker容器化部署,能够独立配置开发环境。 6. **其他软技能** - 软件工程方法论:敏捷开发、持续集成等实践。 - 项目管理:具备一定的项目管理能力,能够有效推进项目进展。 - 沟通协作:优秀...

    基于SpringBoot框架的Java快速开发模板设计源码

    该项目作为一个开源模板,为开发者提供了42个文件,它们构成了一个完整的开发环境。具体来说,其中包含的26个Java源文件提供了核心的业务逻辑和系统功能实现,而3个日志文件则用于记录应用运行时的关键信息,便于...

    jeeweb-mybatis-springboot敏捷开发平台.zip

    综合以上信息,jeeweb-mybatis-springboot敏捷开发平台是一个功能丰富、适合学习的开发平台,对于想要深入学习Java Web开发的学生和技术人员来说,是一个非常好的选择。通过使用该平台,开发者可以在短时间内构建出...

    基于SpringBoot+SpringCloud+Mybatis+Docker分布式敏捷开发-new-cloud.zip

    整个项目可能还包括了Dockerfile和docker-compose.yml文件,以便于开发者通过Docker容器化部署应用,实现快速、一致的环境搭建。这样的项目结构有利于团队成员之间协同工作,快速响应需求变化,提高整体的开发效率和...

    java基础班和就业班视频

    - **环境搭建**:介绍如何安装JDK(Java Development Kit)并配置系统环境变量。 - **第一个程序**:编写Hello World程序,了解Java程序的基本结构。 - **数据类型**:熟悉Java中的基本数据类型如int、double、char...

    【Java】rbac_shiro框架整合springboot单体项目是一款权限认证授权的网站敏捷开发的解决方案,Shiro是一个强_pgj.zip

    综合以上内容,我们可以得出结论:整合Shiro框架和Spring Boot单体项目的Java应用,不仅能提供一套强大的权限认证和授权解决方案,同时也能够帮助开发者实现敏捷开发,从而快速构建出安全可靠的企业级Web应用。

    管理系统系列--基于Spring+SpringMVC+Mybatis分布式敏捷开发系统架构,提供整套公共微服务服务模.zip

    综上所述,这个压缩包提供的资源可能包括了项目结构模板、配置文件、示例代码等,帮助开发者快速搭建一个基于Spring+SpringMVC+Mybatis的分布式敏捷开发环境,并实现微服务的集成。通过学习和实践这些资源,开发者...

    4-1_SpringBoot敏捷开发技术.pdf

    在本文档中,"4-1_SpringBoot敏捷开发技术.pdf",我们将深入探讨Spring Boot这一强大的Java框架,它是现代后端开发中的重要工具,特别适合敏捷开发。Spring Boot以其简洁的配置、快速的启动时间和集成众多流行库的...

Global site tag (gtag.js) - Google Analytics