exo software factory overview

61
eXo Software Factory Harder, Better, Faster, Stronger Friday, January 27, 12

Upload: exo-platform

Post on 10-May-2015

7.106 views

Category:

Technology


0 download

DESCRIPTION

Arnaud Héritier, Apache Maven Evangelist and eXo Software Factory Manager is giving a quick overview of our software Factory. For more details read his blog post series on http://blog.exoplatform.com

TRANSCRIPT

Page 1: eXo Software Factory Overview

eXo Software FactoryHarder, Better, Faster, Stronger

Friday, January 27, 12

Page 2: eXo Software Factory Overview

• Software Factory Team

• Development rules and recommendations

• Methods and Tools

• To improve quality and productivity

• Teams training

• To improve ours skills

• Support & Accompaniment

• About tools, methods, processes, and technical

Software Factory Team

Friday, January 27, 12

Page 3: eXo Software Factory Overview

• Development practices

• Unit tests, integration tests, functional tests, web tests, performances tests

• Code quality

• Java/JEE & Production Architecture

• Development tools

• Build, Packaging, IDE ..

Skills Catalog

Friday, January 27, 12

Page 4: eXo Software Factory Overview

• Documentations are in ours WIKIs

• http://wiki-int.exoplatform.org/display/exoSoftwareFactory/Home

• Activity is tracked in Jira :

• http://jira.exoplatform.org/browse/SWF

• Contact us :

• Email : [email protected]

• Skype : aheritier

How are we working ?

Friday, January 27, 12

Page 5: eXo Software Factory Overview

WIKI

Confluence

Friday, January 27, 12

Page 6: eXo Software Factory Overview

Confluence

Friday, January 27, 12

Page 7: eXo Software Factory Overview

SCMsSources management

Friday, January 27, 12

Page 8: eXo Software Factory Overview

Subversion• https://svn.exoplatform.org/projects/

• Private and public R&D projects

• https://svn.exoplatform.org/exo-int/

• Private developments

• https://svn.exoplatform.org/cp

• Customers projects

• https://svn.exoplatform.org/sandbox/

• Sandbox

Friday, January 27, 12

Page 9: eXo Software Factory Overview

Git

• https://git.exoplatform.org/public/

• Public projects

• https://git.exoplatform.org/private/

• Private projects

• Tests repositories

• https://git.exoplatform.org/public/tests-git/

• https://git.exoplatform.org/private/tests-git/

Proof of concept

Friday, January 27, 12

Page 10: eXo Software Factory Overview

NexusBinaries management

Friday, January 27, 12

Page 11: eXo Software Factory Overview

Nexus

Friday, January 27, 12

Page 12: eXo Software Factory Overview

Nexus for productivity

Friday, January 27, 12

Page 13: eXo Software Factory Overview

Nexus for collaborationDeploy 3rd Party ArtifactsCollaborate with Internal

RepositoriesDistribute to the community with

Public RepositoriesDistribute to customers with

Private Repositories

Friday, January 27, 12

Page 14: eXo Software Factory Overview

JiraIssues and tasks management

Friday, January 27, 12

Page 15: eXo Software Factory Overview

Jira

Friday, January 27, 12

Page 16: eXo Software Factory Overview

Jira with Greenhopper

Friday, January 27, 12

Page 17: eXo Software Factory Overview

Jira with Bonfire

Friday, January 27, 12

Page 18: eXo Software Factory Overview

JenkinsAutomation and scheduling : Build, Tests, Deployment

Friday, January 27, 12

Page 19: eXo Software Factory Overview

Jenkins

Friday, January 27, 12

Page 20: eXo Software Factory Overview

Continuous Integration

Build, Test and Deploy ASAPUsing Maven 2/3

From sources in SVN or GITgooglecode, jboss, exo, github

reposTo Maven repositories

>100 jobs

Friday, January 27, 12

Page 21: eXo Software Factory Overview

PackagingGenerate the full packaging of our

productsReady for demo or tests

Use upstream constraints and a large quiet period to not launch them to often

Use priority sorter plugin with a reduced priority

~15 jobs

Friday, January 27, 12

Page 22: eXo Software Factory Overview

Mobile developments - continuous integration and deployment

Friday, January 27, 12

Page 23: eXo Software Factory Overview

Reporting and dashboards

• Jenkins => Teams

• Emails (email-ext plugin)

• Teams => Jenkins

• Dashboard views

• Radiator views

Friday, January 27, 12

Page 24: eXo Software Factory Overview

Dashboards

Friday, January 27, 12

Page 25: eXo Software Factory Overview

Unstable Build Notification

Friday, January 27, 12

Page 26: eXo Software Factory Overview

Build Failure Notification

Friday, January 27, 12

Page 27: eXo Software Factory Overview

Radiator views

Friday, January 27, 12

Page 28: eXo Software Factory Overview

Quality management• Sonar reports everyday if the code had changed

(polling)

• ~90 jobs

• Continuous deployment and integration or performances tests

• Jmeter

• Selenium

• JMXTrans / Graphite / Zabbix for monitoring

Friday, January 27, 12

Page 29: eXo Software Factory Overview

SonarQuality management

Friday, January 27, 12

Page 30: eXo Software Factory Overview

Sonar, a quality dashboard

Friday, January 27, 12

Page 31: eXo Software Factory Overview

Sonar, analyze your project

Friday, January 27, 12

Page 32: eXo Software Factory Overview

Sonar, Continuous Improvement ?

Friday, January 27, 12

Page 33: eXo Software Factory Overview

AcceptanceTests platform

Friday, January 27, 12

Page 34: eXo Software Factory Overview

Acceptance

Friday, January 27, 12

Page 35: eXo Software Factory Overview

Fisheye & CrucibleSources browsing and code review

Friday, January 27, 12

Page 36: eXo Software Factory Overview

Fisheye/Crucible

Friday, January 27, 12

Page 37: eXo Software Factory Overview

Teams Code ReviewsAsynchronous, distributed discussions

Friday, January 27, 12

Page 38: eXo Software Factory Overview

Have fully threaded conversations about source code with your others.

Friday, January 27, 12

Page 39: eXo Software Factory Overview

Simply click on some lines to add comments.

Friday, January 27, 12

Page 40: eXo Software Factory Overview

Comments can be displayed inline or next to the code they refer to.

Friday, January 27, 12

Page 41: eXo Software Factory Overview

Flag a comment as a defect to highlight it.

Friday, January 27, 12

Page 42: eXo Software Factory Overview

Teams Code ReviewsManage reviews

Friday, January 27, 12

Page 43: eXo Software Factory Overview

Features• Pre-commit: reviewing content that is not under version control. Upload a

piece of code, a file or cut-and-paste from your IDE.

• Post-commit: reviews after the code is committed to the repository.

• Moderated: reviews can have a moderator responsible for a review; creating, approving, and determining when a review is finished.

• Un-moderated: a streamlined process where the review author is the sole person who starts and stops the review is a simple default.

• Snippet: a pastebin service meets peer review - you can simply paste some code and start discussing it with the team, without the need for any formal code review workflow.

• Changeset discussions: commit messages allow a developer to provide information with a commit. Provide free form comments on commit messages.

Friday, January 27, 12

Page 44: eXo Software Factory Overview

Browsing changesets, searching for files, or uploading a patch to add content

Friday, January 27, 12

Page 45: eXo Software Factory Overview

You can use the classic review roles Moderator, Author and Reviewer or let anyone do anything.

Friday, January 27, 12

Page 46: eXo Software Factory Overview

Only a title and code are needed to start a Snippet Review.

Friday, January 27, 12

Page 47: eXo Software Factory Overview

Use change set comments as a catalyst for code discussions.

Friday, January 27, 12

Page 48: eXo Software Factory Overview

Reviews evolve as your code evolves

Friday, January 27, 12

Page 49: eXo Software Factory Overview

Live updates and notifications

Friday, January 27, 12

Page 50: eXo Software Factory Overview

Teams Code ReviewsDashboard & Reports

Friday, January 27, 12

Page 51: eXo Software Factory Overview

Activity StreamFriday, January 27, 12

Page 52: eXo Software Factory Overview

Who is holding up Friday, January 27, 12

Page 53: eXo Software Factory Overview

Which issues are being held up by reviews?

Friday, January 27, 12

Page 54: eXo Software Factory Overview

Teams Code ReviewsJira Integration

Friday, January 27, 12

Page 55: eXo Software Factory Overview

Create Jira issuesFriday, January 27, 12

Page 56: eXo Software Factory Overview

Resolve subtasks from Crucible

Friday, January 27, 12

Page 57: eXo Software Factory Overview

Create reviews from JiraFriday, January 27, 12

Page 58: eXo Software Factory Overview

Follow reviews attached to a jira project

Friday, January 27, 12

Page 59: eXo Software Factory Overview

Conclusion

Friday, January 27, 12

Page 60: eXo Software Factory Overview

SWF linksSubversion :

https://svn.exoplatform.org

Git :

https://git.exoplatform.org

Nexus :

http://repository.exoplatform.org

http://repository.exoplatform.vn

Jenkins :

https://ci.exoplatform.org

Jira :

https://jira.exoplatform.org

Fisheye/Crucible :

https://fisheye.exoplatform.org

Sonar :

https://sonar.exoplatform.org

Confluence :

https://wiki-int.exoplatform.org

Acceptance :

http://acceptance.exoplatform.org

Friday, January 27, 12

Page 61: eXo Software Factory Overview

Questions

Friday, January 27, 12