agile in

                 pract ice
                        Jim Barritt


http://jimbarritt.com
mail@jimbarritt.com
@jimbarritt
people
rituals
collaboration
PROBLEM



   SOLUTION

IMPLEMENTATION
small steps
walking skeleton
walking skeleton
stress free
get
tool’d up
UAT        PROD

             CI   ARTIFACT   ARTIFACT   ARTIFACT




DEVELOPERS
GO!
h"p://www.inf.usi.ch/phd/we"el/codecity.html	
  
                                                   visualise
asl-java-report.report-javancss



      asl-java-report.-report-findbugs-xslt



              -war-prepare-libs-stub



        asl-db-deploy.make-db-build-dir



        asl-java-build.copy-resources



         asl-dbunit.get-outputfile-details
                                                                                                                                                                                                                                                                                                                                                                                                           1
                                                                                                                                                                                                                                                                                                                                                                      3
      asl-java-report.-report-init-findbugs

                                                                                                                                                                                                                                                                                                                                                                                                                        -report-jdepend-xslt
                                                                                                                                                                                                                                                                                                                                                                                                           2
      asl-java-test-testng.-test-init-classpath                                                                                                                                                                                                                                                                                                                           asl-java-report.report-jdepend
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      2

                                                                                                                                                                                                                                                                                                                                                                                                                  asl-java-report.report-javadoc
asl-dealer-image-loader.copy-colour-schemes-php                                                                                                                                                                                                                                                                                                                                                                                                        1
                                                                                                                                                                                                               2                                                                                                                                                      1



                                                                                                                                                                                                                                                                                                                                                                                                           5
               test-run-javascript                                                                                                                                                                                                                                                                                                                                                                         1                     4
                                                                                                                                                                                                                                                                                                                                             6
                                                                                                                   11
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            2
                                                                                                                                                                                                                                                                                                                                                                                                                                                                     asl-java-build.compile
                                                                                                                                                                                                                                                                                                                                                                                                                        -report-jdepend-run
                                                                                                                                                                                                                                                                                                                                             3                                     build-stub-jar                                                                                                     1
                                                                                                                                                                                                                                                                                             rpm
                                                                  test-javascript
                                                                                                                                                                    -report-findbugs-xslt                                                                                                                                                    3
                                                                                                                                                2                                                      set-firefox-binary                                                                                                                                                                                  2                                                                                                            generate
                                                                                                                                                                                                                                                                                                                                                                                                                                                                            -init-time
                                                                                                                                                                                                                                                                                                                      7                                                                                          asl-java-report.-report-jdepend-run
                                                                                                                                                3
                                                                                                   asl-java-report.report-findbugs                             -report-findbugs-checkfailure                                                                                                                                                                                                                                                                                                          1
                                                                                                                                                1                                                                                                                                                                                                                                                                                                                                                                -init-runtime-classpath
                                                                                                                                                                                                                                                                                                                                                                                                                                                       3         asl-java-build.-init-jar-classpath
                                                                                                                                                                                                                                                                                                                      2
                                                  4                                                                                                                                                                                                                                                                                                                             asl-java-war.war                                 1
                                                                                                                                                                        war-deploy                                                             war                                                                                                                    8
                                                                                                                                                2
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          asl-java-build.-init-runtime-classpath
                                                                                                                                                                                                                                                                                                                                                                      8                  7
                                                                                              7                                                                                                                                                                                                                                                                                                            5                     2                                                                                                                 -init-classpath
                                                                                                                                                                                                                                                                                                                      2                                                                                                                                                                                                     2
                                                                                                                                                                 asl-java-war.war-deploy                                                                                            asl-rpm-build.rpm                              war-without-config
                                                                                                                                                                                                                                                                                                                                                                                                                                                                             compile
                                                                        8                                                                       3

                                                  3                                                           report-pmd
                                                                                                                                                            asl-java-report.-report-findbugs-run                                                                                                                                                                                         7
                                                                                                                                                                                                                                                                                                                                                                                                                         -war-prepare-libs
                                                  14             echo-pmd-stats                                                                                                                                                                                                                                                                                                                            3
                pre-check-in                                                                  5
                                                                                                           report-findbugs                      1
                                                                                                                                                                                                                                                                                                                                                                                         4
                                                                                                                                                                    -report-findbugs-run                                                                                                                                                                                                                   3
                                                  12
                                                  11                                          8
                                                                   echo-todos                                                                                                                                                                                                                                                                                                                              5
                                                                                                     asl-java-report.report-pmd

                                                  9                     7
                                                                                              5                                                                                                                1
                                                                                                                                                                                                                                                                                                                                                                                                           2                                           1                 copy-resources
                                                                                              5                                                                       -report-init-pmd                                                                                                                                     asl-rpm-build.war-without-config
                                                                                                                                                                                                               1                                                                                                                                                                         1
                                                                                                                                                                                                                                                                                                                                                                      6                                                     stub-compile
                                                           asl-java-report.report-all         2                                                                                                                                                                                                                                                                                                            3
                                                  13                                                                                                                local-container-tests                      1                      -report-init-findbugs


                                                  10                                          4                                                                                                                                                                                                                                                                                          4
                                                               echo-cobertura-stats                                                                                                                                                                                                                                                                                                                                                                    2
                                                  9
                                                                                                                                                                                                               1                                                                                                                                                                                                                                       3
                                                                                                  asl-java-report.report-checkstyle             2                                                                                                                                                                                                                                                          1
                                                                                                                                                                                                                                                 1                                                                                                                    6
                       sanity
                                                                                              9                                                 2                                                                                                                                                                                            2                        1
                                                                                                                                                                                                                                                                                                                                                                                                                                                       1
                                                  6                                                                                             2                  -report-checkstyle-xslt
                                                             report-cobertura-xml             7                     3                                                                                          2
                                                                                                                                                                                                                                                                                                                                                                                                                                                       5                -init-jar-classpath
                                                                                                                                                1                                                                                                                                                                                                                                                                               jar
                                                  8                                           8
                                                                                                                                                                                                                                                                                                                                                                                                                                                       2
                                                                                                                                                                                                                                                                                                                                                                      1
                                                                                                                                                                                                                                                                                                                      4                                                         asl-java-build.dist
                                                                                              6             report-jdepend                                                                                                                                                                                                                                                                                                                                            -init-jar-version-dev
                                                  3                                                                                       report-javadoc
                                                                                                                                                                                                                                                                                                                      2                                                                                                                                7
                                                                                                                                                                                                                                                                                                                                                                                                                                                       5
                                                                                                                                                                                                                                 asl-twist-test.-twist-compile-src                                                                                                                -copy-webapp
                                                                                                            report-javancss                                                                                                                                                                                                                                                                                                                                    asl-config-selection.-config-select
                                                                                              4
                                                                                                                                                                                                                                                                                                                      2
                                                                                                                                                                                                                                                                                                                                                                                                                         asl-java-build.jar            7
                                                                                              9                                                            asl-java-report.-report-checkstyle-run
                                                                                                          report-checkstyle                                                                                                                                                                                                                                                                                                                            6                     buildrpm
                                                                                                                                                1
                                                                                              7
                                                                                                                                                                                                                            asl-dealer-image-loader.load-resources
                                                                                                                                                                   -report-checkstyle-run                                                                                                                             1
                                                                   report-all                                                                                                                                                                                                                                                                                                                                                                          6
                                                                                              2                                                                                                                                                                                                                                                                                                                                                                      -init-jar-version-release
                                                                                                                                                                                                                                                                                                                                                                                                                                                       4
                                                  4
                                                                                              6
                                                                                                                                                                                                                                    publish-cruise-build-times
                                                                                                              report-cpd
                                                                                                                                                                                                                                                                                                                                                                                                                                                       4
                                                                                                                                                                                                                                                                                                                                                                                                                                                                           -init-version
                                                  4                                           1                                                                                                                                                                                                                                                                       2
                                                                                                                                                1
                                                                                                                                                                                                                                     -report-init-checkstyle                                                                                 2
                                                       asl-report-misc.echo-cobertura-stats                     test-all
                                                                                              1
                                                                                                                                                                                                                                                 1
                                                                        5

                                                                                                              -init-proxy
                                                  2                                                                                                                                                                                                                   1

                                                                 test-integration                                                                                                                                                                                                                                                                                                                                      try-to-delete-jetty-log
                                                  3                                                                                             2                     generate-cookie                                                                                 1
                                                                                                                                                                                                                                                                                                                                                                                                           1
                                                  10
                      reports
                                                                                                                                                                                                                                                                                                                                                                                       clean
                                                  2                 test-unit                                                                   3                    report-cobertura                                                                                                                                                                                                                      2
                                                                                                                                                                                                                                                                                               1                                                                                                                        asl-common.clean
                                                                                              2     create-container-coverage-report
                                                                                                                                                                                                                                                                                                                                                                                -test-init-classpath
                                                                                                                    3                                                 -report-cpd-run                                                                                                                                                                                 3
                                                                                                                                                1
                                                                                                                                                                                                                                                                                                                          asl-java-test-testng.-test-compile-shared
                                                                                                                                                                                                                                                                              asl-java-test-testng.-test-compile                                                      2
                                                                                                                                                2
                                                                                                                                                                                                                                                                                                                                                                                       dist
                                                                                                                                                                                                                                                                                                                      3
                                                                                                                                                              asl-java-report.-report-cpd-run                                                                                                                                                                         3
                                                                                                                                                                                                                                                                                                                                             1
                                                                                                      asl-java-report.report-cpd                                                                                                                                                                                                                                                         1
                                                                                                                                                2                                                                                        -report-init-cpd
                                                                                                                                                1
                                                                                                                                                                      -report-cpd-xslt                                                                                                                                2
                                                                                                  asl-java-test-testng.test-integration                                                                                                                                       asl-twist-test.-twist-init-classpath                                                                                                               1
                                                                                                                                                                                                                                                                                                                      3
                                                                                                                                                                                                                                      format-source-as-html
                                                                                                                                                              asl-java-report.-report-cpd-xslt
                                                                                                      asl-java-test-testng.test-all
                                                                                                                                                2
                                                                                                                                                                                                                                                                                                                      2           -test-init-full-classpath           2
                                                                                                                                                1
                                                                                                                                                                     test-run-integration
                                                                                                                                                                                                                                                                                                                      3

                                                                                                                                                                                                                                                                                                                                                                                                                                 1

                                                                                                     asl-java-test-testng.test-unit                                      test-run-unit
                                                                                                                                                                                                                                                                                     -twist-init-classpath            2
                                                                                                                                                                                                               1                                                      5                                               2


                                                                                                                                                                                                                                                                                                                                   -test-compile-shared
                                                                                                                                                                              1


                                                                                                                                                                              1

                                                                                                                                                2
                                                                                                                                                                                                                                                                                                                      1

                                                                                                                                                                                                               1                                                                                                      2

                                                                                                                                                                                                               3                                                                 asl-jboss.wait-for-servers


                                                                                                                                                3
       execute.scenarios.and.start.jboss                                                                                                                                                                                                                                                                              1

                                                               execute.scenarios                                                                                                                                                                                                                                      4
                                                                                                                                                                                                                                                                                               2
                                                                                              4                                                                                                                                                                                                                       3
                                                                        4
                                                                                                                                                                              2
                                                                                              5
                                                  6                     4
                                                                                                                                                                                                                                                                                                                                      -wait-for-server
                                                                                                                                                                              3
                                                                                                                                                                                                                                                                                    -test-copy-resources                                                                                                                                                         rpm-build.build-config-rpm
                                                                                                                                                                                                                                                                      2                                               4                      1

                                                                                                           -twist-compile-src                                                                                                                                                                                                                                                                              3
                                                                        4
                                                                                              1                                                                        test-run-smoke                                                                                                  wait-for-servers
                                                                                                                                                                                                                                                                                                                                                                                                           3
                                                                                                              test-smoke
                                                                                              2
                                                                                                                                                                                                               1
                                                                                                                                                                             jetty                                                         -test-prepare
                                                        asl-twist-test.execute.scenarios
                                                                                              1                                                                                                                                                                                                                                                                                                                       rpm.deploy.qa_stable                                       1
                                                                                                    asl-java-test-testng.test-smoke                                                                            3                                                      3
                                                                                              2                                                            asl-java-test-testng.test-run-integration                                                                  2

                                                                                                                                                                                                                                                                                                                                                                                                                                                       2                         1
                                                                   sanity-twist                                                                                                                                                                                                        -test-instrument                                                                                                         asl-rpm-build.rpm.deploy.dev_ci
                                                                                              3
                                                                                                                                                                                                                                                                      4                                               2
                                                                                                                                                             asl-java-test-testng.test-run-smoke                                                                                                                                                                                                                                                                                 1
                                                                        5                                                                                                                                                                                             3
                                                                                              5
                                                                                                                                                                                                                                                                                                                                                                                                                                                       2
                                                                                                                                                                                                                                                                                        -config-select                                                                                                         asl-rpm-build.rpm.deploy.qa_stable
                                                                                                                                                                                                                                 asl-java-test-testng.-test-prepare                                                                                                                                                                                                                                                   -init-svn-rev
                                                                                              1                                                                                                                                                                       4                                                                                                                                                                                                          1
                                                                                                                                                              asl-java-test-testng.test-run-unit                                                                      1
                                                                                              4                                                                                                                                                                                                                                                                                                                                                        2                         1
                                                                                                                                                                                                                                                                                        -test-compile                                                                                                            asl-rpm-build.rpm.deploy.qa_ci

                                                                                                                                                           asl-java-test-testng.test-run-container                                                                    1
                                                                                                                                                                                                                                          build-config
                                                                                                                                                2
           execute.scenarios.batch.b                                    5                                                                                                                                                                                                                                                                                                                                              rpm.deploy.perftest                 asl-rpm-build.rpm-build.build-config-rpm
                                                                                                                                                                                                                                                                                                                                                                                                                                                       2
                                                                                                              twist.settings                                                                                                                                                                                                                                                                                                                                                     1
                                                                                                                                                                                                                                                                                  build-dealer-images-jar
                                                                                              1                                                                                                                                                                                                                                                                                                                                                        2

                                                                        5                                                                                                                                                                                                                                                                                                                                                rpm.deploy.qa_ci
                                                  6
                                                                                                                                                                                                                                                                                                                                                                                                                                                       2
                                                                                                                                                                                                                                                                                        expand-rr-zip
                                                                                              2                                                                                                                                           config-select                                                                                                                                                                                                                  download.rpms
                                                                                                                                                                                                                                                                      2                                                                                                                                                                                2

                                                                                                                                                                                                                                                                                                                                                                                                               asl-rpm-build.rpm.deploy.dev_stable     2                         1
                                                               load-data-with-tag             4                                                                       test-run-container                                                                                     asl-java-test-testng.-test-instrument
                                                                                                                                                                                                                                asl-config-selection.config-select                                                                                                                                                                                     2
                                                                                              3
                                                                                                                                                                                                                                                                      4
                                                                                                                                                                                                                                                                                   delete-expanded-rr-zip                           -test-init-cobertura                                                        asl-rpm-build.rpm.deploy.perftest      2              asl-buildsvn.buildrpm
                                                                                              2
                                                                 twist-with-tags                                                                                                                                                                                      1
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 1
                                                                                              4
                                                                                                    set-firefox-arg-if-binary-not-set                                                                                                   build-resources                   asl-report-misc.merge-cobertura-datafiles
                                                                                                                                                3                                                                                                                     5
                                                                                              2
                                                                                                                                                                              1                                                                                       2
                                                                                                                                                                                                                                                                                                                                                                                                                        rpm.deploy.dev_ci                                        1
                  test-run-twist                                 local-twist-tests
                                                                                              3
                                                                                                                                                2                                                                                                                         asl-report-misc.report-cobertura-xml
                                                                                                      set-firefox-arg-if-binary-set
                                                                                                                                                                                                                                                                      4
                                                                                              4
                                                                                                                                                                                                                                                                                                                                                                                                                                                                  asl-rpm-build.download.rpms
                                                                                                                                                                                                                                                                      1      asl-java-report.report-cobertura
                                                                                              2                                                                                                                                                                                                                                                                                                                       rpm.deploy.dev_stable
                                                                 test-firefox-arg                                                                                                                                                                                                                                                                                                                                                                                                1
                                                                                                                                                                                                                            asl-dealer-image-loader.build-resources
                                                                                              3
                                                                                                                                                                                                                                                                      5          merge-cobertura-datafiles
                                                  2                                                                                             3
                                                                                              1                                                                                                                                                                       3

                                                                                                                                                                                                                                                                                                                      2
                                                  6                                                                                                                                                                                                                                                                             copy-colour-schemes-php
           execute.scenarios.batch.a
                                                                                                                                                                                                               1                                                      3
                                                                                                                                                                                                                                                                                       build-theme-jars
                                                                                                  asl-java-test-testng.test-container


                                                                  test-container                                                                                                                                                                 1
                       twist




                                                                                                                                                                                                                                                                                                                                                                                                                    horror!
                                                                                                                                                                                                                                                                                                                      2
                                                                                                                                                                                                                                  asl-dbunit.refresh-website-data     2
                                                  6
                                                                                                                                                                                                                                                                      2                                               1

                                                                                                                                                                                                                                                                      1
                                                                                                                                                                                                                                 asl-dbunit.extract_theme_image

                                                                                                                                                                                                                                                                      1
                                                                                                                                                                                                                                                 1



                                                                                                                                                                                                                                                                      2                                                             copy-theme-images

                                                                                                                                                                                                                                      extract_dealer_images
                                                                                                                                                                                                                                                                      1
                                                                                                                                                                                                               6
                                                                                                                                                                                                                                                                      2
                                                                                                                                                                                                                                     extract-full-website-data

                                                                                                                                                                                                                                                                      1
                                                                                                                                                                                                                                                                      2

                                                                                                                                                                                                                                     extract_colour_schemes
                                                                                                                                                                                                               3
                                                                                                                                                                                                                                                                      1
                                                                                                                                                                                                                                                                      2
                                                                                                                                                                                                               2                       refresh-website-data
                                                                                                                                                                 extract-website-static-data
You
Ain’t
Gonna
Need
It!
jus t eno ug
                                h
public Response get(Request request) {

    Domain domain = request.getDomain();
    Website website = websiteRepository.findByDomain(domain);

    try {
      Resource resource = website.findResource(request);
      return resource.httpGet(request);
    } catch (...)
      // exception handling
    }
}
evo lv
      e
developers!
Principles (DRY,
 KISS, YAGNI)	
  



   Patterns	
  



Practices (TDD,
                                      Domain	
  
  CD, Pairing)	
  
                     ARCHITECTURE



                       MEMES
    Discipline                      Domain Driven
                                       Design



                       CODE
?
http://jimbarritt.com
mail@jimbarritt.com
@jimbarritt
stolen from ….




                                                          h"p://www.hispanicallyspeakingnews.com/uploads/
                                                          images/ar:cle-­‐images/backpacks_and_kids.gif	
  




              ©www.instructables.com	
  




  ©super-­‐structure	
  
                                           ©pasukaru76@flikr	
  

Agile in Practice

  • 1.
    agile in pract ice Jim Barritt http://jimbarritt.com mail@jimbarritt.com @jimbarritt
  • 2.
  • 4.
  • 5.
  • 6.
    PROBLEM SOLUTION IMPLEMENTATION
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
    UAT PROD CI ARTIFACT ARTIFACT ARTIFACT DEVELOPERS
  • 13.
  • 14.
  • 15.
    asl-java-report.report-javancss asl-java-report.-report-findbugs-xslt -war-prepare-libs-stub asl-db-deploy.make-db-build-dir asl-java-build.copy-resources asl-dbunit.get-outputfile-details 1 3 asl-java-report.-report-init-findbugs -report-jdepend-xslt 2 asl-java-test-testng.-test-init-classpath asl-java-report.report-jdepend 2 asl-java-report.report-javadoc asl-dealer-image-loader.copy-colour-schemes-php 1 2 1 5 test-run-javascript 1 4 6 11 2 asl-java-build.compile -report-jdepend-run 3 build-stub-jar 1 rpm test-javascript -report-findbugs-xslt 3 2 set-firefox-binary 2 generate -init-time 7 asl-java-report.-report-jdepend-run 3 asl-java-report.report-findbugs -report-findbugs-checkfailure 1 1 -init-runtime-classpath 3 asl-java-build.-init-jar-classpath 2 4 asl-java-war.war 1 war-deploy war 8 2 asl-java-build.-init-runtime-classpath 8 7 7 5 2 -init-classpath 2 2 asl-java-war.war-deploy asl-rpm-build.rpm war-without-config compile 8 3 3 report-pmd asl-java-report.-report-findbugs-run 7 -war-prepare-libs 14 echo-pmd-stats 3 pre-check-in 5 report-findbugs 1 4 -report-findbugs-run 3 12 11 8 echo-todos 5 asl-java-report.report-pmd 9 7 5 1 2 1 copy-resources 5 -report-init-pmd asl-rpm-build.war-without-config 1 1 6 stub-compile asl-java-report.report-all 2 3 13 local-container-tests 1 -report-init-findbugs 10 4 4 echo-cobertura-stats 2 9 1 3 asl-java-report.report-checkstyle 2 1 1 6 sanity 9 2 2 1 1 6 2 -report-checkstyle-xslt report-cobertura-xml 7 3 2 5 -init-jar-classpath 1 jar 8 8 2 1 4 asl-java-build.dist 6 report-jdepend -init-jar-version-dev 3 report-javadoc 2 7 5 asl-twist-test.-twist-compile-src -copy-webapp report-javancss asl-config-selection.-config-select 4 2 asl-java-build.jar 7 9 asl-java-report.-report-checkstyle-run report-checkstyle 6 buildrpm 1 7 asl-dealer-image-loader.load-resources -report-checkstyle-run 1 report-all 6 2 -init-jar-version-release 4 4 6 publish-cruise-build-times report-cpd 4 -init-version 4 1 2 1 -report-init-checkstyle 2 asl-report-misc.echo-cobertura-stats test-all 1 1 5 -init-proxy 2 1 test-integration try-to-delete-jetty-log 3 2 generate-cookie 1 1 10 reports clean 2 test-unit 3 report-cobertura 2 1 asl-common.clean 2 create-container-coverage-report -test-init-classpath 3 -report-cpd-run 3 1 asl-java-test-testng.-test-compile-shared asl-java-test-testng.-test-compile 2 2 dist 3 asl-java-report.-report-cpd-run 3 1 asl-java-report.report-cpd 1 2 -report-init-cpd 1 -report-cpd-xslt 2 asl-java-test-testng.test-integration asl-twist-test.-twist-init-classpath 1 3 format-source-as-html asl-java-report.-report-cpd-xslt asl-java-test-testng.test-all 2 2 -test-init-full-classpath 2 1 test-run-integration 3 1 asl-java-test-testng.test-unit test-run-unit -twist-init-classpath 2 1 5 2 -test-compile-shared 1 1 2 1 1 2 3 asl-jboss.wait-for-servers 3 execute.scenarios.and.start.jboss 1 execute.scenarios 4 2 4 3 4 2 5 6 4 -wait-for-server 3 -test-copy-resources rpm-build.build-config-rpm 2 4 1 -twist-compile-src 3 4 1 test-run-smoke wait-for-servers 3 test-smoke 2 1 jetty -test-prepare asl-twist-test.execute.scenarios 1 rpm.deploy.qa_stable 1 asl-java-test-testng.test-smoke 3 3 2 asl-java-test-testng.test-run-integration 2 2 1 sanity-twist -test-instrument asl-rpm-build.rpm.deploy.dev_ci 3 4 2 asl-java-test-testng.test-run-smoke 1 5 3 5 2 -config-select asl-rpm-build.rpm.deploy.qa_stable asl-java-test-testng.-test-prepare -init-svn-rev 1 4 1 asl-java-test-testng.test-run-unit 1 4 2 1 -test-compile asl-rpm-build.rpm.deploy.qa_ci asl-java-test-testng.test-run-container 1 build-config 2 execute.scenarios.batch.b 5 rpm.deploy.perftest asl-rpm-build.rpm-build.build-config-rpm 2 twist.settings 1 build-dealer-images-jar 1 2 5 rpm.deploy.qa_ci 6 2 expand-rr-zip 2 config-select download.rpms 2 2 asl-rpm-build.rpm.deploy.dev_stable 2 1 load-data-with-tag 4 test-run-container asl-java-test-testng.-test-instrument asl-config-selection.config-select 2 3 4 delete-expanded-rr-zip -test-init-cobertura asl-rpm-build.rpm.deploy.perftest 2 asl-buildsvn.buildrpm 2 twist-with-tags 1 1 4 set-firefox-arg-if-binary-not-set build-resources asl-report-misc.merge-cobertura-datafiles 3 5 2 1 2 rpm.deploy.dev_ci 1 test-run-twist local-twist-tests 3 2 asl-report-misc.report-cobertura-xml set-firefox-arg-if-binary-set 4 4 asl-rpm-build.download.rpms 1 asl-java-report.report-cobertura 2 rpm.deploy.dev_stable test-firefox-arg 1 asl-dealer-image-loader.build-resources 3 5 merge-cobertura-datafiles 2 3 1 3 2 6 copy-colour-schemes-php execute.scenarios.batch.a 1 3 build-theme-jars asl-java-test-testng.test-container test-container 1 twist horror! 2 asl-dbunit.refresh-website-data 2 6 2 1 1 asl-dbunit.extract_theme_image 1 1 2 copy-theme-images extract_dealer_images 1 6 2 extract-full-website-data 1 2 extract_colour_schemes 3 1 2 2 refresh-website-data extract-website-static-data
  • 16.
  • 17.
    jus t enoug h public Response get(Request request) { Domain domain = request.getDomain(); Website website = websiteRepository.findByDomain(domain); try { Resource resource = website.findResource(request); return resource.httpGet(request); } catch (...) // exception handling } }
  • 18.
  • 19.
    developers! Principles (DRY, KISS,YAGNI)   Patterns   Practices (TDD, Domain   CD, Pairing)   ARCHITECTURE MEMES Discipline Domain Driven Design CODE
  • 20.
  • 21.
    stolen from …. h"p://www.hispanicallyspeakingnews.com/uploads/ images/ar:cle-­‐images/backpacks_and_kids.gif   ©www.instructables.com   ©super-­‐structure   ©pasukaru76@flikr