Home » Author Archives: Dalip Mahal

Author Archives: Dalip Mahal

Dalip is a principal consultant at Accelerated Development and has worked his way through all aspects of software development. He started as a software engineer and worked his way through engineering and product management.

What is architecture?

On a regular basis we hear people talk of good and bad architecture, but what is architecture?   Before I describe software architecture, let’s see if we can come to an agreement of what architecture is.  What are the components of architecture, and what value does architecture have.   Architecture provides the structural and connective framework required for a system of components to ...

Read More »

How to avoid underestimating complexity

People involved in software projects would say that software development is about understanding complexity. What is complexity? Complexity is easy to define at a high level, but people get vague when pressed for a precise definition.  Let’s see if we can quantify the problem, then come back and define it.             Assume we need to ...

Read More »

Hidden Assumption of Agile

Agile cures common problems that we experience in software development, however, there are limitations to Agile.  It may seem like a silver bullet, but there are circumstances under which Agile is not the best choice for development, or at a minimum, not to develop the entire project. The problems with the waterfall model are well known and understood by most ...

Read More »

Ready, Fire, Aim: How most gather requirements

Connecting with your customers and delivering value depends on understanding your customer’s requirements and selling the correct product or solution that solves your customer’s problems. Commonly, the requirements gathering process is done hastily or not at all in the rush to get the sale. After all, the faster you can make the sales process go, the faster the money is ...

Read More »

Do Project Managers need Domain Experience?

Opinions vary on whether a project manager needs to have domain experience.  Certainly project managers that do not have domain experience will be the first to say that domain experience is not necessary as long as they have access to excellent subject matter experts. I would advocate a more nuanced position; that is, a project manager does not need domain experience ...

Read More »

Not using UML on Projects is Fatal

The Unified Modeling Language (UML) was adopted as a standard by the OMG in 1997, almost 20 years ago. But despite its longevity, I’m continually surprised at few organizations actually use it. Code is the ultimate model for software, but it is like the trees of a forest.  You can see a couple, but only few people can see the entire ...

Read More »

Pair Programming for Team Building

Extreme programming (XP) introduced most people to pair programming. The theory was that the sooner that code was reviewed, the more effective the review — so how much more effective can you be if you do that review right away?     Pair programming increases productivity by 3% and quality by 5% The reason it isn’t a better practice is that ...

Read More »

Accelerated Development: Team Conflict is for Losers

It is a guarantee that don’t like someone on your development team and they have behaviors or habits that you might find objectionable: Mashable talks about 45 most annoying office habits [the nest] talks about 10 Annoying Work Habits That Can Get You Fired. But as irritating as you find your co-workers, odds are: You do something that they find annoying… Annoyances ...

Read More »

Infeasible software projects are launched all the time

Infeasible software projects are launched all the time and teams are continually caught up in them, but what is the real source of the problem? There are 2 year actual projects for which the executives set a 6 month deadline. The project is guaranteed to fail but is this due to executive ignorance or IT impotence?       There is no ...

Read More »

User Stories are Rarely Appropriate

All tools are useful when used appropriately, and User Stories are no different. User stories are fantastic when used in small teams on small projects where the team is co-located and has easy access to customers. User stories can quickly fall apart under any of the following situations:   the team or project is not small the team is not ...

Read More »

Want to take your Java skills to the next level?

Grab our programming books for FREE!

Here are some of the eBooks you will get:

  • Spring Interview QnA
  • Multithreading & Concurrency QnA
  • JPA Minibook
  • JVM Troubleshooting Guide
  • Advanced Java
  • Java Interview QnA
  • Java Design Patterns