There is a constant tussle between following Agile techniques and still managing to do enterprise architecture. While Agile development focuses on adjusting the design and plan as more insight is gained into the domain, architecture establishes the technology stack. It addresses the quality attributes and communicates to the interested stakeholders. Combination of the two is successful when agile techniques are leveraged to drive towards the desired architecture.
The agile architect is a jack-of-all-trades, doing what is necessary to ensure architectural integrity of the product. Listening, guiding, mentoring and cajoling are all part of the job.
Karl Scotland on Kanban as a way of creating a model improving a business’ capability to meet its purpose based on systems thinking, workflow, visualization, work in process, cadence, and learning.
lean thinking and tools like A3 and Kanban tie all of the agile pieces together, and help organizations think and behave with agile principles in mind.
A lot of those practices will be single-actor practices -- practices organized so that one employee, supported by technology, can do whatever needs to get done
Waterfail: The act of attempting to build software according to spec and releasing it 2 years later for nobody
I present the "dirty dozen" impediments, or key enemies of successful agility that I've observed.
Code is inventory. It is stuff lying around and it has substantial cost of ownership. It might do us good to consider what we can do to minimize it.
By simplifying agile methods to a perspective such as the one presented here and being influential at the critical interaction points, a skilled architect can adapt to agile development while staying focused on the core architectural work
Nanjangud C Narendra presents a case study of an enterprise Agile project in the light of Lehman's laws of software evolution, along with observations on Agile practices used and their outcome.
Allan Shalloway’s article on Demystifying Kanban gives us a panoramic view on what Kanban is and isn’t by comparing it with what he has been calling first generation agile methodologies, such as Scrum and XP, and discussing how Kanban overcomes their challenges
One software architect or many? Single point of responsibility or shared amongst the team? Agile or not, the software architecture role exists. Only the context will tell you the right answer
These are notes gathered from talking with many friends at Facebook about how the company develops and releases software.
To improve, software teams need some time away from the daily grind to reflect, but they also need to retain a focus on all aspects of the software development process. It's really easy to get caught up in the hype of the industry, but it's worth asking whether this is more important than ensuring you have a good pragmatic grounding
There are some patterns I see over and over that are fundamental to a successful agile adoption, or a large scale enterprise agile transformation. Here are the ones I think are most important and why.
In this presentation from SOA Symposium 2010, Manas Deb and Clemens Utschig-Utschig discuss how to derive business agility from SOA and BPM, motivations for agility, developing and nurturing agility, influencers and dependencies, how SOA and BPM enable agility, pitfalls and recommendations for organizational culture, and pitfalls and recommendations for business and technical architectures.
Similar to the GreenHopper and Confluence teams, 2010 was a very exciting year for the JIRA team. We doubled the size of the dev team - forcing us to move into a new building across the street - adding a new skillsets and evolving new roles
AccuRev has released a glossary of terms for agile software development, intending to accelerate the adoption of agile practices in enterprises.
Yes, if you honour the Agile Development Manifesto. This means valuing people and interaction over processes and tools, working software over comprehensive documentation, collaboration over contract negotiation, responding to change over rigid plans
It has been nearly 10 years since programming dignitaries released "The Manifesto for Agile Software Development [1]," which promoted processes that accommodate changing requirements, collaboration with customers, and delivery of software in short iterations.
