Just because I live and work in the world of software development doesn’t mean that everyone knows all of the words I use in these posts. So here at the beginning I wanted to give a brief definition of what I mean by some of the words I use. I’ll try to define other terms I use in future posts, and some of the terms I will define briefly now will get a more complete treatment later. But these short definitions should allow us all to start on the same page.
Product Owner – someone whose primary role is to make sure that what the team of software developers builds addresses the real needs of the people who will use the software. There are product owners in fields other than software but this will largely be my focus.
Product Manager – someone whose primary role involves listening to the market (current customers, prospects, competitors, potential customers) to discern real and pervasive market problems that users would be willing to pay someone to help them solve. The folks at PragmaticMarketing.com have lots of good material on the many tasks of an effective product manager but this is how I will sum it up for now.
UI/UX developer – someone whose role in the development team is to focus on the User Interface and User Experience for the product, hopefully making sure that the design and functionality will look good and work smoothly.
Agile – one of many different methodologies or approaches for developing software. I plan to write more about various methods in the future (including the traditional ‘waterfall’ method in which requirements are gathered and passed along from one team or person to another, starting with sales folks and ending with coders); I have worked in companies using several different approaches and seen both good and bad results from all kinds of methods. The Agile method involves cross-functional teams of both business-side and technology-side people working together in short iterations (usually 2-6 weeks) to deliver new features and software in smaller chunks. It is an approach that keeps end users and developers in close connection (at least when it works well) and that I find very effective. But like everything else it has its problems.
Hopefully these few definitions will help everyone understand what I’m talking about in this blog. If not, or if there are other terms you aren’t sure how I am using, then please let me know. I’d like to be clear in what I’m writing, but in truth it’s not that simple.