2014 August - eXo Software Factory Overview

Post on 17-Dec-2014

1.523 views 2 download

description

Overview of the eXo Software Factory and especially all resources that it provides for its community

Transcript of 2014 August - eXo Software Factory Overview

eXo Software FactoryHarder, Better, Faster, Stronger

• Software Factory Team

• Development rules and recommendations

• Methods and Tools

• To improve quality and productivity

• Teams training

• To improve ours skills

• Support & Services

• About tools, methods, processes, and technical

Software Factory Team

• 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

• Documentations

• http://int.exoplatform.org/portal/g/:spaces:development_standards/development_standards

• http://developer.exoplatform.org (should be the place to go)

• https://wiki-int.exoplatform.org/display/exoSoftwareFactory/Home (deprecated but but not moved in intranet)

• Activity/Requests tracked in Jira :

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

• Contact us :

• Email : exo-swf@exoplatform.com

• Skype : aheritier

How are we working ?

SCMSource configuration management

Git on GitHub• https://github.com/exoplatform/

• Blessed repositories

• Rights limited per profiles/roles

• https://github.com/exodev/

• Development repositories

• Pull/Push rights for all eXoers

• https://github.com/exo-addons/

• Platform Add-ons

NexusBinaries management

Nexus

Nexus for productivity

Nexus for collaborationDeploy 3rd Party Artifacts Collaborate with Internal

Repositories Distribute to the community with

Public Repositories Distribute to customers with

Private Repositories

JiraIssues and tasks management

Jira

Jira with Jira Agile

Jira with Jira Capture

JenkinsAutomation and scheduling : Build, Tests, Deployment

Jenkins

Continuous Integration

Build, Test and Deploy ASAP using Maven 2/3

from sources (SVN,GIT googlecode, jboss, exo, github repos) to Maven repositories

managed by Nexus (if build/tests are passing)

Reporting*-sonar jobs are loading data into sonar to provide code analysis.

*-site are generating Maven site on projects.exoplatform.org

They are launched once a day if the codebase change otherwise

once per WE

Mobile developments - continuous integration and deployment

Reporting and dashboards

• Jenkins => Teams

• Emails (email-ext plugin)

• Teams => Jenkins

• Dashboard views

• Radiator views

Dashboards

Unstable Build Notification

Build Failure Notification

Radiator views

SonarQuality management

Sonar, a quality dashboard

Sonar, analyze your project

Sonar, Continuous Improvement ?

AcceptanceTests and validation platform

Acceptance

• Access to all test instances deployed each night

• Monitor features branches statuses

Acceptance

Acceptance

Fisheye & CrucibleSources browsing and code review

Fisheye/Crucible

Teams Code ReviewsAsynchronous, distributed discussions

Have fully threaded conversations about source code with your others.

Simply click on some lines to add comments.

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

Flag a comment as a defect to highlight it.

Teams Code ReviewsManage reviews

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.

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

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

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

Use change set comments as a catalyst for code discussions.

Reviews evolve as your code evolves

Live updates and notifications

Teams Code ReviewsDashboard & Reports

Activity Stream

Who is holding up

Which issues are being held up by reviews?

Teams Code ReviewsJira Integration

Create Jira issues

Resolve subtasks from Crucible

Create reviews from Jira

Follow reviews attached to a jira project

Conclusion

SWF linksGit :

https://github.com/exoplatform

https://github.com/exodev

https://github.com/exo-addons

Nexus :

https://repository.exoplatform.org

Jenkins :

https://ci.exoplatform.org

Jira :

https://jira.exoplatform.org

Fisheye/Crucible :

https://fisheye.exoplatform.org

Sonar :

https://sonar.exoplatform.org

Acceptance :

https://acceptance.exoplatform.org

Maven sites :

https://projects.exoplatform.org

Questions