Archive for the 'Agile' Category

Javascript Testing Talk in Oakland

Next week at EBig Jonah and I are wrapping up our world tour of talking about Javascript testing. March 17th in Oakland: ”Recent evolutions in Javascript testing frameworks now allow creating test suites, test-driving development, and running tests on a continuous integration server. This allows us to support more complex Javascript, have confidence in the implementation, and push more of the logic from the server into the browser, reducing the load on the server.” The focus of the talk is walking through a suite of tests we build for a real-world example.

For those of you who caught it last week at the SDForum, here are the links people requested:

To sign up for next Wednesday, go to the EBig site.

Test-Driven JavaScript with ScrewUnit and BlueRidge

Jonah and I are taking our presentation about Javascript Testing on the road next Tuesday at 6:30 in Palo Alto, at the SDForum

The teaser for it… Recent evolutions in JavaScript testing frameworks now allow creating test suites, test-driving development, and running tests on a continuous integration server. This allows us to support more complex JavaScript, have confidence in the implementation, and push more of the logic from the server into the browser, reducing the load on the server…

Hope to see you there.

Screw.Unit JS Testing in Maven: javascript-test-maven-plugin

I’ve written a maven plugin to integrate Screw.Unit javascript tests into a maven build. The project is inspired by the Blue Ridge testing framework for Rails, but it’s a bit more light-weight by design.
Continue reading ‘Screw.Unit JS Testing in Maven: javascript-test-maven-plugin’

Recipe for 5 Whys with an Agile Software Team

5 Whys is a great way to get at the root of quality problems. On my last three projects, when I felt like code quality was dropping, I ran a “5 Whys” session. I have found it adds variety, solves a very specific problem, and plugs right in as an alternative to an agile reflection.

It’s not in every agile software team’s bag of tricks. Asking around our fairy savvy office, I discovered it’s far from universal. In the “State of Agile” report from Version One, which includes survey results from 2500 software developers, it wasn’t mentioned. Since I haven’t seen it show up that much in other agile writings, I thought I’d share my experiences here. Continue reading ‘Recipe for 5 Whys with an Agile Software Team’

Recipe for Simple Agile Retrospectives

After my talk at the Commonwealth Club last week our good friend Darren from Stimulant followed up with me to get a summary of the simple agile retrospective technique I described.

I thought I’d just send him to Google but a search for agile retrospective returned descriptions that seemed too heavy weight for the small, skilled, agile-literate teams we employ at Carbon Five.

There is certainly a lot of valuable information and insight out there I and definitely suggest doing some reading to understand the fundamentals and options for running retrospectives. However, since we want to do retrospectives often, we need a practice that doesn’t take much time or effort.

Here’s a recipe we are using these days. You can do this in 30 minutes. I actually did this with our architect for a home renovation project I am working on. Great things came out of it. I think it might have blown their minds.

Setup

Get alll team members in a room with a few stickies each.

You’re here to talk about an iteration, project, or other unit… with the goal of improving the next time around.

Thoughts: 5-10 min

Smiley face on stickies with good things from the last iteration.
Frowny face with concerns, risks, fears,…
You don’t have to be exhaustive, use the time you allocate.

Cluster: 5-10 min

Create two teams.
Give the smiles to one and the frowns to the other.
Group the stickies into related clusters.

Discuss: 20 min

Identify the primary smiley clusters.
Confirm that you will continue to see these benefits, can you increase them?

Identify the primary frowny clusters and list the themes on a whiteboard.
Vote to discuss – each team member has 4 votes – put dots next to
the issues you want to discuss.
Discuss the top 3 issues – identify SMART (http://en.wikipedia.org/wiki/SMART_criteria) steps to address them.

Rinse, wash, repeat. Don’t feel you have to talk about everything. You are trying to focus on top issues. Once you address those, the next most important issues will surface for discussion.

We do this every other week with our internal team and monthly including our clients.

If you have other recipes for simple reflection, I’d love to hear them.

Fail Early and Often at the Commonwealth Club Wed Dec 9

Please join us for an Evening Program at the Commonwealth Club in San Francisco for my presentation on techniques for creating a culture of learning, quality and collaboration in your organization. I will be sharing insights including failures and lessons learned from Carbon Five’s almost 10 years of creating web-based products.

Light reception to follow. We hope you can hang out after for a glass of wine and to catch up before the holidays.

http://tickets.commonwealthclub.org/auto_choose_ga.asp?area=2&shcode=1501

Fail Early and Often: Innovative Practices for Online Development
Alon Salant, Principal, Carbon Five

Organizations today increasingly struggle to create compelling software products, web sites and social media while working with the daunting details of limited time and resources. Learn new ways of working and delivering early value with simple and easy-to-apply processes from a pioneering software development firm. Discover how agile techniques and tools have helped to sculpt new strategies and sustainable practices, leading to more success, faster turn-around and reduced expenses.

Location:
Commonwealth Club Office
585 Market Street, 2nd Floor
San Francisco, CA 94105

Telephone Reservations: (415) 597-6700

Time: 5:30 p.m. networking, 6 p.m. program, reception to follow
Cost: $8 members, $15 non-members, $7 students (with valid ID)

This is an open invitation. Please share with others.

Agile Practices… visualized?

Only pure agile devotees will find it interesting… Revisiting agile methodologies, I wanted to solidify my understanding of the differences between agile, scrum, XP, etc. I went through a mini-research project of reviewing the “canonical” sources of these practices, and then built a quick visualization to clarify my understanding:

http://ndpsoftware.com/agile_methods/agile_methods.html

Hint: Try dragging around the boxes to see how practices are related to each other.

Warning: If it doesn’t draw anything interesting for you, refresh your browser… there’s a large component of “randomness” to the algorithm and it can get stuck easily.

Warning II: Don’t leave it running in your browser, as it’s somewhat sluggish Javascript… this was a demo thrown together in a couple hours.

Carbon Five at SXSW 2010

We’re planning our return to Austin for the South by Southwest interactive conference with a session we have put together with the folks at Aardvark. Titled The Experiment is the Product: Innovation through Iteration, Rob Spiro and I are going to break down how we merged our Agile software development practices with their user-focused and research-driven product design process.

There’s great stuff about cheap and fast prototyping and testing techniques, building feedback loops in to product design, and how to come up with emerging product definition that can drive an iterative software development process.

SXSW weights community input heavily in its panel selection process. Take a moment to give our proposal a thumbs up.

Twitter transcript for our #agileux20 panel at Web 2.0 Expo

I grabbed Twitter search results for our #agileux20 hashtag so we don’t lose them later. Thanks everyone for your interest, comments and questions. Unlike Twitter search, these tweets are listed oldest to most recent so you can read them as a transcript of our panel.

joshdamon at Apr 02 10:59 AM
if you want to tweet questions to the design vs dev agile panel at #w2e, use tag #agileux20 and i’ll as many as i can to the panel.
chris23 at Apr 02 11:04 AM
How are you defining "design"? Is physical co-location a requirement for success in agile desi? Is upfront design required? #agileux20
razasaeed at Apr 02 11:04 AM
#agileux20 really interested in learning about user behavior testing …. how to figure out the impact of new design on existing community
moyalynne at Apr 02 11:04 AM
Shout out to Maria Giudice from Hot Studio, now at the helm in Room 2005 on human-centered design #w2e #agileux20
ericgrandeo at Apr 02 11:05 AM
Attending the human centered design meets agile development session #w2e #agileux20
moyalynne at Apr 02 11:07 AM
http://twitpic.com/2q72j – Human-centered design meets agile development #w2e #agileux20
AllanWolinski at Apr 02 11:09 AM
Tag #agileux20 for: Can’t we just all get along? Human-centered design meets agile development
moyalynne at Apr 02 11:09 AM
http://twitpic.com/2q773 – Maria AKA Wonderwoman moderates #agileux20 #w20
AllanWolinski at Apr 02 11:09 AM
#agileux20 Panel: @arenareed, Dave Shih, @asalant, @robsp, @mgiudice #web2expo
moyalynne at Apr 02 11:11 AM
http://twitpic.com/2q7at – Maria with her whip at the ready #agileux20 #w2e
_ilo at Apr 02 11:13 AM
RT @moyalynne: http://twitpic.com/2q7at – Maria with her whip at the ready #agileux20 #w2e
moyalynne at Apr 02 11:14 AM
http://twitpic.com/2q7gj – Agile Manifesto – Agile Values #w2e #agileux20
coffeemommy at Apr 02 11:15 AM
Work Utopia: Human centered design meets agile development; xp (extreme programming) #agileux20; seems logical. Let’s DO it!
joshdamon at Apr 02 11:15 AM
@razasaeed #agileux20 did @robsp’s overview of aardvark’s research approach answer your question?
justinjscanlon at Apr 02 11:16 AM
#agileux20 do you expose functional prototypes to users, mockups, alphas? What tools are use?, irise, others? How often do you engage users?
moyalynne at Apr 02 11:17 AM
On Agile and Ux together — but "How realistic is it that user research actually happens early on?" – @mgiudice #agileux20 #w2e
moyalynne at Apr 02 11:20 AM
Clients might already have research they need? "I don’t feel like I’ve ever done enough user research" Arena Reed — #agileux20 #w2e
moyalynne at Apr 02 11:21 AM
How much user research to do and when to do it as key question in human-centered design. #agileux20 #w2e
dbcto at Apr 02 11:22 AM
#agileux20 Curiuos about differences btwn web sites and web apps from a agile UX perspective
moyalynne at Apr 02 11:22 AM
One thing that’s clear is that "design and engineering teams need to share knowledge during user research phase"– @mgiudice #agileux20 #w2e
moyalynne at Apr 02 11:23 AM
Here’s a hypocritical question: can user research kill innovation? #agileux20 #w2e
brendanking at Apr 02 11:23 AM
A lot of great ideas wouldn’t exist if they were user validated (like twitter) so do you always follow the user results? #agileux20
_ilo at Apr 02 11:24 AM
It’s a great question #w2e #agileux20 How much design *should* be done up front?
moyalynne at Apr 02 11:24 AM
No upfront design can be painful, and too much upfront design can be painful too — what’s the right amount? — Arena Reed #agileux20 #w2e
moyalynne at Apr 02 11:25 AM
"Anything we’re immediately developing HAS to be fully designed" #agileux20 #w2e
AllanWolinski at Apr 02 11:26 AM
Should the design phase have it’s own sprint including burndown? #agileux20
Mauronic at Apr 02 11:26 AM
How many people out there are using agile practices for visual design? #agileux20 #w2e I work with @thegroop and they rock it.
ceben at Apr 02 11:28 AM
What is an ideal ratio of product managers to developers in an agile process? #agileux20 #w2e
AllanWolinski at Apr 02 11:29 AM
What flexibility should developers have in changing or improving the design in following implementation iteration? #agileux20
coffeemommy at Apr 02 11:32 AM
#agileux20 : You mentioned "getting everyone in one room" suggestions on this process with a global/virtual team?
moyalynne at Apr 02 11:32 AM
Consultancies deal with a different issue, which is the need to document and deliver- the "do just enough" idea is difficult #w2e #agileux20
jedwhite at Apr 02 11:33 AM
You can’t track design the way you track engineering. It stifles creativity. #agileux20 #w2e
michaelbkim at Apr 02 11:39 AM
If you’re a hardcore engineer passionate about social search & looking for a new pre-launch startup opp, ping me. #w2e. #agileux20
AllanWolinski at Apr 02 11:40 AM
@AllanWolinski Designers on the panel use tracker for tasks but do not work within the scrum sprint/iteration #agileux20 #web2expo
moyalynne at Apr 02 11:41 AM
"The goal is working software in users’ hands — everything that gets you there is disposable" – on only "just enough" docs #w2e #agileux20
moyalynne at Apr 02 11:42 AM
What about for "lessons learned" and improving the process? What documentation does Agile preserve for that? #w2e #agileux20
joshdamon at Apr 02 11:44 AM
@moyalynne #w2e #agileux20 sorry, didnt get your last question in. they’re moving pretty fast.
joshdamon at Apr 02 11:46 AM
when they mention "track" the folks on the agile panel are referring to pivotaltracker (used for tracking stories) – #agileux20 #web2expo
moyalynne at Apr 02 11:46 AM
RT @arnoland: User research can never kill innovation, stifle but never kill, for that you need an incompetent designer -;) #agileux20 #w2e
lostonroute66 at Apr 02 11:48 AM
RT @arnoland: User research can never kill innovation, stifle but never kill, for that you need incompetent designer -;) #agileux20 #w2e
joshdamon at Apr 02 11:49 AM
#agileux20 #w2e thanks for the great questions, & aplogogies i didn’t get to more of them. follow up w/ speakers contact info on last slide
asalant at Apr 02 12:28 PM
Thanks everyone for the great comments and questions at #agileux20! #w2e
razasaeed at Apr 02 01:10 PM
@joshdamon They do not have a visual design so not sure .. especially when you need to roll out a new design and measure impact #agileux20

Join Us at Web 2.0 Expo

Maria Giudice from Hot Studio and I are following up our Core Conversation at SXSW last month on agile development and human-centered design with a panel Thursday at 11am at Web 2.0 Expo in San Francisco titled Can’t We Just All Get Along? Human-centered Design Meets Agile Development.

Our panel includes Arena Reed, Lead User Experience Designer at Grockit, Rob Spiro, co-founder of Aardvark and Dave Shih, Senior Visual Designer at Hot Studio.

At SXSW Maria and I realized how easy it is to talk about the challenges of coordinating design and development efforts since almost everyone involved in software development has experienced some pain around it. I’m excited about our panel for Web 2.0 Expo because I think we are going to better organize the discussion around identifying best practices. I am particularly inspired by the work of the Aardvark team who are intensely user-focused and test like crazy to validate their ideas and implementations while maintaining an agile software development process with frequent incremental releases.

You can follow our panel on Twitter with hashtag #agileux20 even if you are not at the conference. We welcome comments, questions and suggestions before, during and after.