'Social Software Development – The Writing On The Wall' by Matthew Aniyan

Post on 29-Jan-2015

104 views 2 download

Tags:

description

Social Networking is the most significant development in computing in recent years. Can this paradigm be applied to software development? Information flow is absolutely essential for the quality and success of any software development project. We now emphasize collaboration over documentation. What better way to communicate to a group of people than the current “Wall” metaphor used in social networking sites. • When the business analyst finalizes a requirements doc, she posts it on the wall. Everyone on the team can review it, comment and ‘like’ it. • When there are design choices being made, how better to communicate it and get feedback? • When a shelveset is sent for code review, all team members will know about it. Anyone can review and read the comments. • The tester is plugged into the social pulse of the development team. She knows why design choices were made. When she files a bug, she is aware of related issues. She can now review how her bug was fixed. • The team knows what are the top issues being reported by customer. Information flow is seamless. The team is connected as never before. Net result: Quality software. In this presentation, I will demo a compressed Sprint using the Social networking paradigm. You judge if it will make your life easier.

transcript

The Writing on the Wall

Social Software DevelopmentMathew Aniyan

InteractionsShare – Contribute - Understand

Meetings stand-ups, sit-downs, conf-calls…

• Did we invite all the right people?• Did they all make it to the meeting?• What did we decide?• Why did we choose an option over another?• Did everyone take away the same message?

Email

• Did it go to the right people?• Did they read the mail?• Can we get the related threads to review at a

later time?

Instant Messaging

• Did we invite all the right people?• Did they all participate?• Did you get their focused attention?

The Wall

• Universal access– Read updates from everyone– Comment on everyone’s updates

• Time Relevance– Threaded conversations – Newest first

The Wall

• Locate interesting conversations– Tags– Lists– Like– Search

• Easy, really easy– Multiple entry points – Phone, web, tablet,

desktop applications, ….

The Testers Perspective• I want to know– When tasks are assigned to me– When bugs I create are resolved (or otherwise

modified)– the details of design discussions (and I may

sometimes comment)– the details of code reviews (and I may do some review

of my own)– When new build of the app is available

• I want to work in my favorite tool or my phone.

My Environment

Sprint – Day 0

Product Owner creates a Backlog

Item. Various stakeholders give

feedback.Scrum Master

creates Task.

Sprint – Day 1

Standup in progress. Scrum board updates reflect in the

wall.

Test Plan created & reviewed.

Design doc created and reviewed.

Sprint – Day 2

Standup in progress. Scrum board updates reflect in the

wall.

Code Review process managed from Visual Studio

also appears on the wall.

Build results appear on the wall.

Sprint – Day 3

Ellen does testing. Files bugs. Dev fixes bugs. A new build is

generated. Ellen verifies bugs. Ellen performs Exploratory testing.

Sprint – Day 4

Bug Triage in progress.

A feedback session by the Business Analyst.

Sprint – Day 5

Managing the Wall

• Classification– Lists, Tags, Circles

• Powerful search• Noise Reduction• Summary• Trends

The Wall – Prerequisites

• Trust in all team members• A set of shared goals

The Wall - Benefits

• Universal access to information

• Pull vs. Push

• Transparency in the lifecycle

• Breaking down barriers

The Wall – Downsides

• Information overload• Privacy• Participation

The Wall metaphor brings significant improvements to the information flow in

Software Development.

It enables easy access to all information.All participants can contribute effectively.It helps to build a common understanding.

Questions