Slide 1

Slide 1 text

AGILE WORKFLOW BRINGING AGILE TO HIGHER ED WITHOUT SCARING ANYONE / Nick DeNardis @nickdenardis

Slide 2

Slide 2 text

NICK DENARDIS Perpetual minimalist. User experience crafter. Speaker. Realist. Web Director at . Library Scientist. Technical Director for . Organizer for and . teacher. @waynestate @TEDxDetroit @hewebMI @RefreshDetroit @GDIdet

Slide 3

Slide 3 text

AND... NOT A TRAINED AGILIST But I am a practitioner

Slide 4

Slide 4 text

ONCE UPON A TIME... I gave four people six months to reconstruct from the ground up our website 42 individual sites, 4,000+ pages, 250 templates, countless stakeholders

Slide 5

Slide 5 text

THEY DID IT! And thus begins our journey...

Slide 6

Slide 6 text

HIGHERED IS BUILT ON PROCESSES Let's embrace that

Slide 7

Slide 7 text

CONTEXT

Slide 8

Slide 8 text

THIS TALK IS ABOUT TEAMS 2-10 people, local preferred

Slide 9

Slide 9 text

MY TEAM != YOUR TEAM Not a step by step guide

Slide 10

Slide 10 text

THIS TALK IS ABOUT WEB SOFTWARE Anything else you take away from it is a bonus

Slide 11

Slide 11 text

"AGENCY" WITH "CLIENTS" Managing a product could be it's own talk

Slide 12

Slide 12 text

AND YOU.. Using any agile practices? Who is using traditional waterfall? Who oversees a team? Who is on a team? Who is the whole team?

Slide 13

Slide 13 text

agile, not Agile Agile is short for "agility"

Slide 14

Slide 14 text

AGILE MANIFESTO Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan

Slide 15

Slide 15 text

“To heal the divide between business and development” ~ Kent Beck

Slide 16

Slide 16 text

IMPROVE No process or person is perfect

Slide 17

Slide 17 text

WHAT'S WRONG WITH WATERFALL? Semantic Diffusion The original ideas, as they get passed from person to person get more diffused (more and more fuzzy).

Slide 18

Slide 18 text

No content

Slide 19

Slide 19 text

DO WE HAVE TO GO ALL IN? Nope. But all team buy-in is important Everyone must be willing to try ideas for some time before dismissing them.

Slide 20

Slide 20 text

THE STARTING POINT

Slide 21

Slide 21 text

RETROSPECTIVES Start here if you do anything at all Once a week, or every other week It's about improving slowly over time

Slide 22

Slide 22 text

FOUR QUESTIONS 1. What went well? 2. What didn’t go so well? 3. What have I learned? 4. What still puzzles me?

Slide 23

Slide 23 text

REPEAT.

Slide 24

Slide 24 text

INDIVIDUALS AND INTERACTIONS Projects rarely fail because of technology Communication (or lack of it) is the root cause of disaster projects

Slide 25

Slide 25 text

CLIENT CONTACT Project Manager? Designer? Developer? Writer? ... All of them.

Slide 26

Slide 26 text

CUSTOMER COLLABORATION

Slide 27

Slide 27 text

INITIAL EXPECTATIONS Client: This agency is going to make me more money Agency: This client is going to pay the bills

Slide 28

Slide 28 text

COLLABORATION VS COOPERATION Introduce feedback loops as early as as often as possible.

Slide 29

Slide 29 text

COOPERATION Going along with someone else's idea, they have already figured it out and you're along for the ride.

Slide 30

Slide 30 text

COLLABORATION Build something together, something new happens. Working then handing off and pipelining means there isn’t a collective knowledge unless you document it

Slide 31

Slide 31 text

Dr. Alistair Cockburn, 2002

Slide 32

Slide 32 text

COLLABORATIVE DESIGN Define minimum requirements and constraints 15 mins - Break out individually and create wireframe sketches 5 mins/person - Individual presentation of wireframe to the group Group critique on individual’s wireframe with feedback focused on clarifying the presenter’s design 15 mins - Break out individually for iteration on their own most well-received wireframe 5 mins/person - Presentation/group critique 30 mins - Sketch a single solution based on wireframes and feedback At the end (2 hours) a single wireframe built by the group is complete

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

No content

Slide 36

Slide 36 text

RESPONDING TO CHANGE

Slide 37

Slide 37 text

SUCCESS What does it look like?

Slide 38

Slide 38 text

PLANNING UP FRONT success == according to plan

Slide 39

Slide 39 text

ADAPTIVE PLANNING Plan and execute many times on a project (every sprint)

Slide 40

Slide 40 text

POINT NORTH http://pointnorth.io/

Slide 41

Slide 41 text

ALIGN AND GUIDE YOUR PROJECT North is a set of standards and best practices for developing modern web based properties. Included are standards and best practices for all aspects of a project, from kick off through development. North encourages an agile, content-first, approach to product development and a mobile-first, in-browser, system based approach to design and development.

Slide 42

Slide 42 text

No content

Slide 43

Slide 43 text

WORKING SOFTWARE

Slide 44

Slide 44 text

RELEASES, SPRINTS, ITERATIONS Pick a cycle and stick to it If it isn't in the cycle, it isn't important

Slide 45

Slide 45 text

No content

Slide 46

Slide 46 text

No content

Slide 47

Slide 47 text

WALKING SKELETON Tiny implementation that performs end-to-end function.

Slide 48

Slide 48 text

No content

Slide 49

Slide 49 text

THIN VERTICAL SLICE Layer of the implementation that spans every component.

Slide 50

Slide 50 text

No content

Slide 51

Slide 51 text

created by Daniel Kummer efficient branching using git­flow by Vincent Driessen translations: English ­ Castellano ­ Brazilian Portugues ­ 简 体中文 (Simplified Chinese) ­ 日本語 ­ Türkçe ­ 한국어(Korean) ­ Français ­ Italiano Fork m e on GitHub Tweet 365 About git­flow are a set of git extensions to provide high­level repository operations for Vincent Driessen's branching model. more ★ ★ ★ git-flow cheatsheet

Slide 52

Slide 52 text

CONTINIOUS INTEGRATION/DEPLOYMENT

Slide 53

Slide 53 text

NO ESTIMATES, ONLY BUDGETS Basecamp just posted a good article that sums it up. Drive development with budgets not estimates

Slide 54

Slide 54 text

No content

Slide 55

Slide 55 text

XP/PAIRING/SWARMING

Slide 56

Slide 56 text

WHY WASTE THE TIME OF MULTIPLE PEOPLE ON A SINGLE TASK?

Slide 57

Slide 57 text

INCLUDE THE CLIENT? As often as possible.

Slide 58

Slide 58 text

HAVE YOUR CLIENTS WRITE/SIGN OFF ON ACCEPTANCE TESTS WAT?!?

Slide 59

Slide 59 text

ACCEPTANCE TESTS A php framework for testing your business expectations. Behat

Slide 60

Slide 60 text

F e a t u r e : N e w s I t e m s I n o r d e r t o a n n o u n c e h i g h l i g h t s w e n e e d a p l a c e o n t h e h o m e p a g e A s a u s e r I s h o u l d b e a b l e t o s e e u p d a t e s f r o m t h e d e p a r t m e n t S c e n a r i o : T h e n e w s a r e a o n t h e h o m e p a g e s h o u l d d i s a p p e a r i f t h e r e a r e n o n e w s G i v e n t h e r e a r e n o a c t i v e n e w s i t e m s A n d I a m o n " / " T h e n I s h o u l d n o t s e e " N e w s & A n n o u n c e m e n t s " S c e n a r i o : T h e n e w s a r e a o n t h e h o m e p a g e s h o u l d s h o w a m a x o f f o u r i t e m s G i v e n t h e r e a r e f i v e n e w s a c t i v e n e w s i t e m s A n d I a m o n " / " T h e n I s h o u l d o n l y s e e f o u r i t e m s T h e n I s h o u l d s e e " M o r e n e w s i t e m s "

Slide 61

Slide 61 text

No content

Slide 62

Slide 62 text

No content

Slide 63

Slide 63 text

No content

Slide 64

Slide 64 text

No content

Slide 65

Slide 65 text

RECAP agile, not Agile Retrospectives Customer collaboration Working software every release Defined release schedule Budgets, not estimates Pairing/swarming

Slide 66

Slide 66 text

MY HOPE There is always room for improvement in your process.

Slide 67

Slide 67 text

RESOURCES Agile Manifesto Point North Drive development with budgets not estimates Git Flow Cheatsheet Codeship.io - Continious integration and deployment. Target Process Behat - Behavior driven development This talk on GitHub Follow me on Twitter

Slide 68

Slide 68 text

THE END BY NICK DENARDIS / @NICKDENARDIS https://github.com/nickdenardis/agile-workflow