23 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			23 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| title: The Iron Triangle, or "Pick Two"
 | |
| ---
 | |
| # The Iron Triangle, or "Pick Two"
 | |
| 
 | |
| Software development is a series of tradeoffs between features implemented, the quality of the features, and how long it takes to produce.
 | |
| But, no matter how much effort is put in, one cannot sustainably maximize all three of these without increasing the cost of the project.
 | |
| For software development, often cost is directly related to the number of people assigned to and working on a project. 
 | |
| This concept is often summed up as "Pick Two: Quality, Speed, Features". 
 | |
| 
 | |
| This relationship between quality, features, speed, and cost is illustrated by imagining a triangle with a fixed volume 
 | |
| with the volume being quality. 
 | |
| One can increase speed to implement and the features, but quality will suffer if cost is unchanged, 
 | |
| keeping the volume of the triangle the same.
 | |
| 
 | |
| Frequently cost is assumed to be constant because in most cases the cost is fixed and there is no budget to add more people 
 | |
| nor are there people available for transfer from other projects.
 | |
| 
 | |
| 
 | |
| ----
 | |
| ## Sources:
 | |
| * [The Broken Iron Triangle Anti-Pattern](http://www.ambysoft.com/essays/brokenTriangle.html) Classic essay by [Scott Ambler](https://en.wikipedia.org/wiki/Scott_Ambler)
 |