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 Shane Hastie on Aug 20, 2011
The Agile 2011 conference was held in Salt Lake City from 8-12 August this year. The conference is run every year by the Agile Alliance, and as this year is the tenth anniversary of the signing of the Agile Manifesto the conference organisers decided to go back to where the agile movement started in 2001.
The conference attracted over 1600 attendees from 43 countries, 968 proposals were received out of which 268 sessions were selected.
The conference was structured into 16 "stages", each with a different theme and focus. The breadth of tocpis covered by the various stages is an indicator of how pervasive agile techniques have become in industry. The stages covered every area from agile for imbedded systems to project management to UX design to research to working with customers. This breadth meant there was something for everyone, and the mood among the conference attendees was upbeat and positive. A general theme this reported picked up from talking to attendees is that agile has become "the way we work" in many organisations, it's no longer unusual or considered different it's just the way software is built in their organisations.
There were a number of special stages/spaces in the conference space:
Running in parallel to the first day of the conference was an Executive Forum, an invitation only day long event hosted by Jim Highsmith and Pat Reed targeted at senior executives. This forum attracted over 60 CXX level executives from large organisations around the world.
To celebrate the 10th anniversary of the Agile Manifesto, a "Big Park Bench" event was held with 15 of the original 17 signatories recounting their thoughts on the original gathering and answering questions from the audience. Lively discussion and much good-natured bantering was complimented by serious thoughts about the future of the agile movement.
On the Tuesday evening an Industry Analyst Panel was held with four analysts discussing their understanding of the current and future state of agile development. The panel consisted of
Wednesday evening was the Agile Alliance Annual General Meeting. Board elections were held via electronic ballot with new board members announced at the keynote on Friday morning. (Full disclosure - this reporter has been elected to the Agile Alliance board for 2011-2012).
There were three keynote sessions:
The keynotes will be the subject of InfoQ articles over the next few weeks. In addition a number of the speakers have been interviewed by InfoQ and those video sessions will be released as they become available.
Certification was a topic of discussion in the hallways, with Alistair Cockburn promoting ICAgile, the PMI promoting their new certification and the Scrum Alliance sponsorng the Coaches Corner.
Overall the event was considered highly successful and valuable by the attendees this reporter spoke to, and from the Agile Alliance perspective was a great celebration of ten years of the agile movement.
Some commentators have posted their own summaries of the conference:
http://www.thekua.com/atwork/2011/08/reflecting-on-agile-2011/
http://blogs.msdn.com/b/socaldevgal/archive/2011/08/17/a-technical-conference-filled-with-women.aspx
http://www.readwriteweb.com/hack/2011/08/agile-2011-starts-off-spritely.php
http://blogs.forbes.com/stevedenning/?p=3780
Please add your own thoughts about the conference in the comments, along with summary links.
Shane Hastie is an agile coach, trainer and consultant working for Software Education in Australia & New Zealand
Agile Maturity Model Applied to Building and Releasing Software
Five Key Practices to Agile ALM
Improving Software Delivery Cycles: Pre-requisites and Inhibitors
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!
As an attendee, I would like to point out that of the 268 sessions only one had architecture in its title/description. Is it just me who finds this very unusual that a conference devoted to the trade of software development didn't have much to discuss about architecture? Going agile in a big way inside large organizations (my case) has some significant ramifications for traditional architecture function - and I would have loved to hear some serious discussions around this topic. This tells me that while "agile" is talked about a lot, not much headway has been made at the enterprise level. This was also evident by lack of useful content around impacts on other parts of the organization (e.g. operations, production, etc).
This is a very good point, Suresh.
This year’s conference was again less geared towards developers/architects and more towards coaching, leadership.
Unfortunately even that one session that you were referring to, did not address challenges of integrating agile teams with the infrastructure teams ( DBAs, SAs).
Architecture is a hard problem. Design is about thinking. Agile is about doing. You can probably bet you need both. I think some of the sessions on Lean would have been more interesting for you.
Thanks, Maxim!
I find it hard to believe that all enterprise projects out there are built without thinking. Agile is not for startups and small teams anymore, it moved to an enterprise level. I’ve been on many Agile projects myself in various roles and this is what we struggled with.
Balancing out a long term vision for the product, building scalable solution and short-term iteration focus is a challenge.
It would be interesting to hear how others addressing this challenge. This is what was missing from the conference.
"Architecture is a hard problem. Design is about thinking. Agile is about doing."
Agile is about doing everything in the same phase (i.e. interleaved): design, build, test, revise. If your design is not about "doing," why are you doing it?
Development/engineering is about solving a problem or strongly-related set of problems, within a relatively narrow domain. Architecture is about thinking across the problem domains to address the broad needs of the application.
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.
5 comments
Watch Thread Reply