Developing software in this ever-demanding world of continuous delivery requires the teams working on creating, writing, testing, and supporting this software to agree on common approaches and methodology. Like any other contentious issue, people have some very strong views on which practice is "right". This article explores what Modern Retail has learned over the years in developing software, and shares how we bring an abstract idea to reality.
Of all the software development approaches out there, Modern Retail has gravitated to DevOps the most. DevOps seems to fit with how we think here at Modern Retail. We love the simplicity of the approach, how one step automatically "flows" into the next step, and how the finished product gets delivered into the hands of the operations group.
For all the strengths of DevOps, we see the world slightly differently.
Modern Retail Ops
As you can see, Modern Retail Ops is very close to DevOps, with some notable differences:
- You could argue that DevOps' Plan phase encompasses our Design phase. However, we don't see it like that. Instead, we treat planning completely different than designing. Planning involves figuring out what needs to be done at a higher level over the next year, quarter or month. Using this plan we figure out how specific features need to be designed. We spend a considerable amount of time creating mockups of everything we build. This includes making every page in excruciating detail. We find this approach works for us because it allows us to fine-tune the interface, make sure it follows our standards and provides a clear roadmap for the development teams to follow.
- Modern Retail believes we're creating software just like well-established programs like Microsoft Word, Photoshop, or your favorite phone app. The companies developing the software and apps you've come to love have concentrated heavily on the user's experience. They made even the largest and most complicated software and tools easy and understandable. If you develop software for a while, you realize this is not easy, especially working with large development teams. Our answer for this is standards! The developers, testers, support personnel, etc. must all adhere to standards. Making consistent interfaces and operating in a repeatable manner is the only way to make a quality product.
- If you've spent any time in this Help and Resource Center, you quickly learn we like documentation. Sure, this feeds into the standards discussed above, but it's also our chance to express how we see the world. We believe this expression is vital to the sustainability of everything we do. It also gives people the ability to agree or disagree with us. Hey, we're not perfect, and if we've gotten something wrong, great let's fix it!
- DevOps certainly encompasses Support when it talks about operating software. We believe we "Support" our customers, and help them to be successful. Again, a small detail but an important one for Modern Retail, because we don't have a company without customers.
- Getting formal or informal feedback from our customers is vital to Modern Retail's success. If you truly listen intently to your customers, they'll tell you exactly what they need. Sure not every customer is right and you certainly can't react to every need. However, you can get a really clear picture of where you need to take your product by simply listening to your customers. It really is as simple as that!
That's about it, nothing too earth-shattering. Please contact us if you need anything, we're here to help. Thank you.