knowledge-base

Making Development Teams Effective

Being able to make steams productive is one of the ways that software architects differentiate themselves from other software architects. Teams that feel left out of the loop or estranged from software architects (and also the architecture) often do not have the right level of guidance and right level of knowledge about various constraints on the system, and consequently do not implement the architecture correctly.

One of the roles of a software architect is to create and communicate constraints, or the box, in which developers can implement the architecture. Architects can create boundaries that are too tight, too lose, or just right.

Architect Personalities

How Much Control?

To be an effective architect, knowing the right level of control to exert on a given development is key. This concept is known as Elastic Leadership. Here we deviate a bit and focus on the specific factors for software architecture. There are 5 factors/dimensions that we influence the amount of control you ideally exert. The idea is that you quantify the team on these 5 factors to determine the level of control, or rather “what type of architect personality” you need to play. As a project progresses, these 5 factors will change over time. Therefore, periodically “measure” these 5 factors and adjust your level of control accordingly.

Factors Impacting Control

Determine Control

For each factor determine if it needs either less control (-20) also known as armchair architect, or more control (+20) also known as a control freak. Take the sum of all factors. The min value of the sum is -100 (hardcore armchair) and the max sum is +100 (hardcore control freak). Based on the sum you know if you need to be take a control freak (>0) or armchair role (<0) on a scale of 0 to 100.

Example

Factor Value Rating Desired Role/Personality
Team Familiarity New team members +20 Control Freak
Team Size Small (4 members) -20 Armchair
Overall Experience All experienced -20 Armchair
Project Complexity Relatively Simple -20 Armchair
Project Duration 2 months -20 Armchair
Accumulated score   -60 Armchair

Obviously this is not an exact science, but rather a tool that just helps you guide the decision process.

Team Warning Signs

3 factors come in place when considering the most effective development team size:

Leveraging Checklists

Surgeons and pilots use them, they work, they are very non-invasive tools to do a sanity check if something was overlooked. Even when repeating a process various times, the most experienced can overlook things.

As always, balance is key, too many checklists will loose its effect. Making checklists too long works also contra-productive.

TIP: State also the obvious in checklist, its usually the obvious that is skipped or missed.

A few example checklist that are proven to work:

Resources