You’ve likely seen the line that says ‘Only drug dealers and software developers call their customers users’. It’s funny but also carries an important message. You see, drug dealers don’t care about their customers. All they care about is the money. Some software developers exhibit a similar characteristic in that all they care about is […]
Month: August 2011
How to Capture Non-Functional Requirements
Non-Functional Requirements (NFRs) can be difficult to define and track. We often treat them as after-thoughts and only near the end of the project. We usually focus on functional requirements. These represent system behaviors. They define what a system is supposed to do and how the inputs and outputs will appear. NFRs are more varied. […]
5 Steps to Disciplined Problem Solving
Hurricane Irene spun through New England this weekend. It was a tropical storm by the time it arrived but still wrecked havoc. Many people had to make adjustments or completely change their plans. Many businesses had to close and those that stayed open suffered losses. Similarly, unexpected events can wreck havoc on software development projects. […]
IT Certifications Have Value in the Right Situations
Businesses are always looking for an edge. Job seekers are always looking for a differentiator. Both often view IT certifications as a way to get better results. Yet the subject of information technology certifications is controversial. Some strongly believe that someone with a certification is better at what they do than someone without. Others are […]
Don’t Let Mindless Complexity Ruin Your Project
To be more agile, you need to keep it simple. Many of us have a tendency to make things too complicated. In an effort to cover every angle or get all the facts on the table, we overwhelm the reader or listener with too much information. This creates confusion, causes mental fatigue, and leads to […]
Hate Scrum? Re-Define it!
I have a theme going this week on this blog. I’ve been touching on reasons why software developers dislike agile development and Scrum in particular. But wait there’s more! Some software engineers dislike having to deliver “production-ready” code at the end of each sprint. I can understand why. I often race through a code module […]
Scrum Stand-Ups: Information Sharing Not Status Reporting
Yesterday’s post (Scrum Does Not Take Control Away From Developers) made me consider another reason why some software developers simply don’t like Scrum. I think it comes down to too much reporting. Doing Scrum properly requires daily stand-ups to share information. The team congregates for 15 minutes and quickly synchronizes — at least that’s what […]
Scrum Does Not Take Control Away From Developers
There is a small and vocal percentage of software developers who dislike almost any form of structured process around their work. Process is often viewed as a euphemism for control, specifically, management control. If you take the time to carefully read the Agile Manifesto and to understand the basic elements of Scrum, you’ll see that […]
Here’s How Corporate IT Can Adjust to Tablet Computers
Tablet computers are disruptive and are invading every company. It started with the Apple iPad and has blossomed into many choices. Every major vendor has announced at least one tablet device including Acer, Dell, HP, Lenovo, Motorola, RIM, Samsung and Toshiba. Those tablets offer a variety of operating systems including Android, iOS, QNX, WebOS (or […]
How Software Projects Seize Defeat from the Jaws of Victory
Here’s what happens. I’m sure you’ve seen it before. A software project starts with lots of enthusiasm. The team is assembled. A kickoff meeting is held. New relationships are formed. Everyone is energized. The team is focused on solving a business problem. There is a sense of urgency and a commitment to deliver. The team […]
Solve The Delivery Problems That Plague Software Projects
Software projects are notoriously difficult to manage. Stories of projects delivered late, over-budget and/or defect-ridden abound. You have likely been involved in a few such projects yourself. Many trainers and coaches claim to offer a solution to software delivery problems. However, before diving into the latest project management fad, it’s important to understand the underlying […]
Minimize Your Risk Exposure By Moving Faster
Risk. Many project managers spend a lot of time identifying and mitigating risks. Is it worth the effort? First, some background. Risk management revolves around identifying vulnerabilities. Once you know how and where you are vulnerable, you can assess the probability and the impact of each vulnerability — the level of risk. Here are a […]
Unlock Your Team’s Agile Intelligence
There are many forms of intelligence — some more easily defined than others. It’s time to add “agile intelligence” to the lexicon. Here are some of the most commonly used references to various forms of “intelligence”: artificial intelligence business intelligence competitive intelligence emotional intelligence human intelligence military intelligence social intelligence According to Wikipedia, “Intelligence has […]
Interruptions Are Toxic to Software Projects
Interruptions: a destructive force every software development team has to manage. There is a huge advantage to starting a new job or being brought in as a new consultant — you have no history, no baggage, no (internal) “body of knowledge” that you have to carry around with you from project to project. You get […]
Agile and Specialization Are Not Contradictory
There are many obstacles to enterprise agile adoption. Some are intrinsic to the agile philosophy and difficult to handle. Others are self-induced by the agile community. Here’s an obstacle we can handle. One of the key attributes of agile software development is teamwork. We build small teams, keep them together, and have everyone share the […]
Turn Back the Clock and Write Documents After Development?
There’s a scenario I’ve seen play out many times over the years. It happened again just this week. There are many variations, I’m sure. It goes something like this. A company follows a waterfall approach for software projects. Development teams create requirements documents, functional specifications, technical and design docs — you know the drill. Then […]
7 Scrum Variations That Might Work for You
Scrum is not prescriptive. It is adaptable. Scrum has simple rules — perhaps too simple for some. The basic guidelines are provided at ScrumAlliance.org in an article called Scrum Is an Innovative Approach to Getting Work Done. Beyond the basics, Scrum can get very complex, very fast. (Actually, the same is true of any process. […]
Success Is Overrated; Try Controlled Failure
Many companies want to move faster. They want to innovate, challenge and lead. (This even applies to government funded projects in many situations.) Yet, they don’t. They stagnate, fumble and follow. Why is that? They are overly risk averse! They spend enormous amounts of time trying to avoid failure. They focus on reducing risk and […]