Cloud Foundry: Design and Architecture
Derek Collison discusses the goals, the design premises and patterns employed in creating the architecture of Cloud Foundry, VMware’s open source PaaS, unveiling internal architectural details.
The content has been bookmarked!
There was an error bookmarking this content! Please retry.
Posted by Deborah Hartmann Preuss on Jun 06, 2006
Agile Maturity Model Applied to Building and Releasing Software
Improving Software Delivery Cycles: Pre-requisites and Inhibitors
Using ALM to Drive Business/IT Alignment
Combining Inspections, Static Analysis, Testing to Achieve >95% Defect Removal Efficiency
In today’s hyper-competitive world, later may be too late to adopt Agile development and this Roadmap for Success will help you get started. Download "Agile Development: A Manager's Roadmap for Success" now!
I tend to harp on this quite a bit, but the book "Good to Great: Why Some Companies Make the Leap... and Others Don't" by Jim Collins should be required reading for people interested in this topic. One aspect of transforming a company from good but mediocre performance to great long-term performance is to "get the right people on the bus". Get rid of people who are holding back the organization by their attitudes, their lack of talent, or their inability to change. Then load up the organization with people who are going to help, again looking at attitude, talent and ability to change.
Another aspect of transforming a company which is closely related to incentives is the notion of a single "economic driver". This is a metric that is directly tied to the organizaton's long-term goals (decades, not quarters). The economic driver is used across the organization as a planning, performance measurement and incentive tool.
I highly recommend reading the book for more detail.
While I generally agree with what Deb wrote, to connect some additional neurons I will add three "somewhat different" comments:
1. People matter. I was leading an Agile training recently, and someone said "if the only thing we get out of this is never to call a person a "resource" and always call them a person, that will be enough." (Should I hope they would get more than that?) While I think people working together in a team is something special, I hope we continue to respect people as individuals, not as inter-changeable parts of a team (or a firm).
2. Respect. So, what do I really mean? Money matters, but really not all that much. Let's stop waiting and hoping for justice in the world (eg, equal pay for equal work). I no longer pray for justice; I pray that we are rewarded far more than we deserve. And...let's realize that power is shifting, the slaves are awakening, and those that see their own magic will demand reasonable compensation, among other things. Agile is one way many will start to see their own magic.
3. I refer people to Herzberg's classic (see HBR): "One More Time: How Do You Motivate Employees?" One form of motivation is a Kick In The pants (he called it KITA). And he said that "incentives" are (usually/always?) just another form of KITA, a belief that we can "motivate" people externally. People are motivated by what /they/ want, and we don't motivate them. Perhaps another version of respect.
Joe, these are excellent points.
1. People matter. I was leading an Agile training recently, and someone said "if the only thing we get out of this is never to call a person a "resource" and always call them a person, that will be enough." (Should I hope they would get more than that?) While I think people working together in a team is something special, I hope we continue to respect people as individuals, not as inter-changeable parts of a team (or a firm).
I've been leading teams for quite a while and in completely different environments. And individuals inside the team is one of the most important aspects of the team. I thing it is a say "treat him as you want to treat you". If you start thinking about your teammates/your developers as anonymous persons than it is a big chance that they start thinking about you and the company as an "it". This will quickly lead to less interest in their job and in understanding team/company goals.
2. Respect. So, what do I really mean? Money matters, but really not all that much. Let's stop waiting and hoping for justice in the world (eg, equal pay for equal work). I no longer pray for justice; I pray that we are rewarded far more than we deserve. And...let's realize that power is shifting, the slaves are awakening, and those that see their own magic will demand reasonable compensation, among other things. Agile is one way many will start to see their own magic.
Let's face it: money matters, and matters a lot :-). However passionate you are or how much you love what you are doing, your performance needs a measure. And inside organizations, money is a form of it. In the environments I've worked, different solutions were looked for, but finally everything went down to money. Call it pragmatism, call it materialism, but that's the truth I learnt.
I am not saying that everything else doesn't matter. Respect, individuals, money, all these matter. The best employee is one that respects the company and his teammates, the one that identifies itself with the company goals, the one that prooves continuous performance. The organization should offer back the same to each employee.
./alex
--
.w( the_mindstorm )p.
I remember reading in Alistair Cockburn's Agile Software Development about how different compensation schemas influenced badly the business:
- lowest number of bugs - speed of development decreased significantly
- number of lines produced - people made programs overly complex adding all sorts of interfaces and unnecesarry code making debugging a nightmare
- too many thank you's, T shirst and pizzas made people imune to them fast
Regarding what I consider important in a job, I did write something some time ago at: danbunea.blogspot.com/2004/12/encourage-win-win... where I said that a good job needs to be a balance between 3 factors:
- material benefits
- working environement
- career opportunities
Regarding the fact that money matters, I think that the money is the first thing that people notice when they aren't. If there are more bad conditions at your job, the first thing that comes to your mind is that you're underpaid. However, money as a motivational factor are to me like aspirin: the first time, the pain goes away instantly, the second time it is slower, the 5th time it has no effect anymore.
A friend of mine, recently quited a job, where he was working for large amount of money, but he never had the time to spend it. He said he quited, because he was tired of speaking with his 3 year old son on the phone on Sundays. Most people think he was insane, but I think he exposes very well the money-aspirin analogy.
Derek Collison discusses the goals, the design premises and patterns employed in creating the architecture of Cloud Foundry, VMware’s open source PaaS, unveiling internal architectural details.
Andrew Watson talks about the work of the OMG, where CORBA is alive and well (hint: in your car), UML and UML Profiles vs. custom Modeling languages, DDS and other middleware, and much more.
Sohil Shah discusses creating iPhone and Android enterprise mobile applications based on cloud services using the open source platform OpenMobster.
Paul Sanford presents the transformations supported by data throughout its life cycle, and how that can be better done with Splunk, an engine for monitoring and analyzing machine-generated data.
A common “best practice” for unit tests is to only write a one assertion in each test. I intend to question this advice by showing that multiple assertions per test are both necessary and beneficial.
John Rauser presents the architectural and technological evolution of Amazon retail websites starting with 1994 and ending with adopting Amazon Web Services.
Michael Stal discusses system architecture quality, how to avoid architectural erosion, how to deal with refactoring, and design principles for architecture evolution.
Every developer has had to integrate with another system, API or component. Tis article provides strategies to handle the change and for he separating system boundaries.
4 comments
Watch Thread Reply