What We've Learned From This Journey Since 2012 we've learned a couple of important lessons.
Start small. Take new and smaller projects as opportunities to start changing.
It's easier to convince others to follow you, if you've got something to show. With the first documentation project we've done back in 2012, we were able to show some positive results, but this didn't create the awareness we needed to make us change.
Don't wait for major projects to start changing. After finishing the documentation for the application lifecycle management tool, I was hopping that we get a project to revamp our most used docs. The docs for our IDE. But there are always things getting in the way. So if you really want to change, start with the new features you're shipping right now. Then your changes will get some visibility and momentum, and other things getting in the way will seem less important.
Someone needs to lead the change. If you're frustrated with something don't just complain, do something.
Personally I was frustrated with:
- Documentation that didn't show how powerful and easy the OutSystems Platform is;
- Documentation that didn't help users connect the dots;
- An ever growing maintenance backlog that was stopping us from thinking strategically;
I saw how user stories could help address all these issues, so I documented a flagship feature with user stories. At the beginning, the feedback I got within the team was mostly about being inconsistent. But after a while the feedback started changing, and now documenting by user stories is the status quo.
Users Stories make us better developer advocates. After you've identified the user stories, you can leave your gut feelings aside when giving feedback to others.
User stories that are executed frequently should be easy and straightforward to accomplish, for example querying data from the database. User stories that are not so frequent can be more difficult and hidden, for example check the SQL that was generated by OutSystems Platform for fetching data.
If the development team implemented something but there's no user story for it, maybe it's just bloatware and your product is better off without it. Just this year we were able to convince the development teams to drop two features that would otherwise be included on the product but wouldn't be of use to 99% of our customers.
|