Top Banner
Hello . Nice To Meet You. Darryl Adie, Managing Director @DarrylAdie Iain Hubbard, Development Manager @iainhubbard Joseph McDermott, Senior Developer @Joseph_McD
28

Agile & Test Driven Development: The Ampersand Commerce Approach

Jun 26, 2015

Download

Technology

Ampersand

A presentation to University of Manchester Computer Science graduates about how Ampersand Commerce approaches Agile and Test Driven Development. Also, information about our graduate programme for software engineers
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Agile & Test Driven Development: The Ampersand Commerce Approach

Hello. Nice To Meet You. Darryl Adie, Managing Director @DarrylAdie

Iain Hubbard, Development Manager @iainhubbard

Joseph McDermott, Senior Developer @Joseph_McD

Page 2: Agile & Test Driven Development: The Ampersand Commerce Approach

We’re An Open Source Ecommerce Agency.

We help enterprise businesses develop

& improve ecommerce operations

using open source software

Page 3: Agile & Test Driven Development: The Ampersand Commerce Approach

About Us. •  Founded in 2008

•  Located in the Northern Quarter, Manchester

•  Magento Gold Solution Partner

•  Technical agency focused on Magento Enterprise

•  Team of 25 people

Featured Customers

Page 4: Agile & Test Driven Development: The Ampersand Commerce Approach

What We Do.

Page 5: Agile & Test Driven Development: The Ampersand Commerce Approach

What We’ve Done.

Page 6: Agile & Test Driven Development: The Ampersand Commerce Approach

We Use Magento.

Magento is an open-source

ecommerce solution, written

in PHP with a MySQL database

Page 7: Agile & Test Driven Development: The Ampersand Commerce Approach

What Is It. •  Open source eCommerce platform

•  Written in PHP using Zend Framework

•  MySQL database

•  MVC

•  Its free! (well… some of it)

•  Everything you need to sell online

•  Modular architecture

Page 8: Agile & Test Driven Development: The Ampersand Commerce Approach

Agile Development.

Page 9: Agile & Test Driven Development: The Ampersand Commerce Approach

What Is It. •  Umbrella term for several iterative and incremental software development

methodologies

•  Extreme Programming (XP)

•  Kanban (development)

•  Lean software development

•  Scrum

Page 10: Agile & Test Driven Development: The Ampersand Commerce Approach

What Is It Trying To Solve. •  Waterfall

•  Improved customer feedback

•  Rapid adjustment to change

•  Make the development process less opaque

•  Give the client what they want

•  Shines a light into the black hole of development

Page 11: Agile & Test Driven Development: The Ampersand Commerce Approach

What Does It Struggle With. •  Safety critical systems

•  Fixed cost development

•  Inflexible contracts

Page 12: Agile & Test Driven Development: The Ampersand Commerce Approach

Agile Development For Us.

Page 13: Agile & Test Driven Development: The Ampersand Commerce Approach

What Did We Do. •  Single delivery date to unveil project to client

•  Client feedback gathered at the end of the project

•  Development tasks all share the same deadline

Page 14: Agile & Test Driven Development: The Ampersand Commerce Approach
Page 15: Agile & Test Driven Development: The Ampersand Commerce Approach

What We Do Now. •  Multiple delivery dates to unveil project progress to client

•  Client feedback gathered after each delivery date

•  Development tasks split into sprints

•  Daily internal scrum

Page 16: Agile & Test Driven Development: The Ampersand Commerce Approach

TDD.

Page 17: Agile & Test Driven Development: The Ampersand Commerce Approach

Why Test At All. •  Reduces bugs in production code

•  Saves you time

•  Bugs found at development time are easier and cheaper to fix

•  Less time spent on maintenance

•  Easier to change and refactor code

•  Unit Testing can improve the design of code

•  A measure of completion

•  Encourages simpler design

Page 18: Agile & Test Driven Development: The Ampersand Commerce Approach

Why Not TDD. •  Based on the assumption that everybody fully understands the system

•  Requires a large amount of up front design

•  Requires the client to know exactly what they want

Page 19: Agile & Test Driven Development: The Ampersand Commerce Approach

TDD For Us.

Page 20: Agile & Test Driven Development: The Ampersand Commerce Approach

What Did We Do. •  Nothing

Page 21: Agile & Test Driven Development: The Ampersand Commerce Approach

What We Do Now. •  Continuous integration triggered with every commit

•  You break it you fix it (with the ‘escape goat’ for company)

•  Aim for high percentage code coverage

•  Write tests as early as possible with each task

•  Unit vs Feature tests

Page 22: Agile & Test Driven Development: The Ampersand Commerce Approach

The complexity created by a programmer is in inverse proportion to their ability to handle complexity. @KentBeck

Page 23: Agile & Test Driven Development: The Ampersand Commerce Approach

Our Graduate Programme.

Page 24: Agile & Test Driven Development: The Ampersand Commerce Approach

Since 2011: We’ve hired 100% of interns All of them are still with us Magento Certified within 3 months

Page 25: Agile & Test Driven Development: The Ampersand Commerce Approach

Valentino

Cristian

Daniel

Software Engineers. CV Deadline: 9 Aug Start date: 16 Sep

•  Basic Requirements

•  Object-oriented programming and design skills

•  Attention to detail!

•  Demonstrable programming ability

•  Desirable Skills

•  PHP

•  MVC

•  SQL

•  Linux/Unix

•  jQuery, Prototype or other Javascript experience

Last year’s grads say hello.

Page 26: Agile & Test Driven Development: The Ampersand Commerce Approach

Software Engineers.

CV Deadline: 9 Aug Start date: 16 Sep

Apply: http://ampersandcommerce.com/careers/graduates/

Page 27: Agile & Test Driven Development: The Ampersand Commerce Approach

(PS. We’d be your bosses…) Say hello on twitter @IainHubbard @Joseph_McD @DarrylAdie

Page 28: Agile & Test Driven Development: The Ampersand Commerce Approach

Thank You

Tweet us @AmpersandHQ Learn more ampersandcommerce.com