social software development – the writing on the wall' by matthew aniyan
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?
• 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