March 22, 2018
Writing Software Requirements 101
Writing software requirements should be easy, right? Right? Of course we know exactly what we need and can tell you exactly what the software should do. Unfortunately, it’s not always so easy. Writing software requirements well takes detailed, deep thought about business requirements. It also takes clear communication between the people who will use the software […]
March 7, 2018
Blue in the face: Is my software development team listening to me?
Is your software development team listening to you? Good project communication helps prevent costly rework and ensures that product owners and development teams understand each other. We don’t speak the same language, even if we’re both speaking English. We all know that feeling of frustration when we’re trying to communicate and just not getting through. […]
February 26, 2018
What is Technical Debt?
You may have heard software developers and project managers talk about “technical debt”. This term has been around since the 1990s and is growing in popularity. But what is technical debt and why do people keep talking about it?
February 15, 2018
Monolithic Rollouts of Legacy System Replacements
in: Business, Developers, Programming, Software Tagged: Business, business efficiency, business productivity, consulting, custom software, custom software development, Programming, software, software development, solution design
Legacy system conversion projects are always challenging. Rollout strategy can make a huge difference in successful user adoption and overall project success. Only when I began writing them down did I realize that I had recurring dreams. I had believed that my dreams were largely random and varied, but instead I learned that I had […]
May 30, 2017
Emergent Workflows Part 1
What is an Emergent Workflow? I’m not sure if there’s any consensus on the definition of an emergent workflow. It’s a term that I use to describe a pattern I have witnessed in business software. To me, an emergent workflow is a workflow that was not designed explicitly into a piece of software, but slowly […]