Agile and Architecture

Published August 20th, 2009 Under Agile | Leave a Comment

Interesting things happen when you put the words “Agile” and “Architecture” in the same sentence. Some would say that they have nothing to do with each other, others would say that effectiveness in one precludes effectiveness in the other. Still others would say “look, a squirrel”, but we’re not going to worry about them right now. Rather than wander aimlessly through the vast domains of knowledge that both agile and software architecture imply, the goal of this session is to distill each down to a level where we can observe first-hand the impact that architectural decisions have on our ability to iteratively develop software over time, and vice versa. We will accomplish this by using an iterative exercise as a framework to construct and evolve a generalized application architecture.

Persons attending this session need not be either Agile or Architecture experts, but an interest in both is an absolute requirement. Ideally attendees will be familiar with the common abstractions of complex software applications such as user interfaces, business logic, communication protocols, API’s, frameworks, persistence mechanisms and so forth, but if you are not, we’ll be sure to group you with someone who is so you won’t miss the fun. At the end of this session attendees should walk out with not one, but two shiny new skills – first is an increased knowledge of both the cost of investment and the price of change at various layers of application architecture. Second is a new sense of “smell” that will help you to detect when an architectural investment is needed, or when too much has been or is being invested.

Agilists and Architects: Allies not Adversaries

Published July 23rd, 2009 Under Agile | Leave a Comment

As Agile becomes more accepted, concerns from architecture groups are increasing. Traditional ways that architects engage with development groups conflict with Agile methods. This talk describes ways that Agile methods can benefit architects, addresses concerns architects express about agile, and proposes ways that architects and agile development teams can become allies.

http://www.infoq.com/presentations/agilists-and-architects

How does design get done on an Agile Project?

Published May 19th, 2009 Under Agile | Leave a Comment

Agile projects have a reputation in many circles as cowboy coding or purely “code n’fix.” While there might not be an explicitly defined “Architecture” or “Design” phase or activity, design is still an integral part of any successful Agile project. This talk will discuss the questions of when, how, and by whom is design accomplished. Jeremy will present the Agile and Lean design philosophies for simple design, delayed commitment, and enabling change. Specifically, he will talk about enabling Continuous Design, why evolutionary design adds value over strictly upfront design, and how to get it done without incurring unnecessary code and design thrash in later stages of the project. This talk will be useful to all roles on agile project and product efforts, including project and program managers as well because it touches on flexible and incremental delivery. Agile Austin Meeting July 01, 2008. Speaker: Jeremy Miller.

Agile Enterprise Software Development Using Domain-Driven Design and Test First

Published February 13th, 2009 Under Agile | Leave a Comment

This talk presents the experience gained and lessons learned when the IT department at Statoil ASA, a large Oil and Gas company in Norway, used Domain-Driven design techniques to verify the software architecture chosen for the development of our group oil trading application. The hypothesis was that the use of object oriented techniques, domain driven design and a proper object-relational mapping tool would significantly improve the performance and reduce the code base compared to the current legacy systems. The legacy system is based on several Oracle databases serving a variety of clients written in Java, Gupta Centura Team Developer and HTML. The databases have a layer of business logic written in PL/SQL offering various system services to the clients. To validate our new object-oriented software architecture, we re-implemented one of the most computationally heavy and data intensive services using Test First and Domain Driven Design techniques. The resulting software was then tested on a set of servers with a representative subset of data from the production environment. We found through this exercise that using these techniques on our new software architecture drastically improved the performance of this service as well the quality of the resulting code when running atop our Oracle database. We also switched to an object database from Versant and achieved additional performance gains.

Watch this video on DomainDrivenDesign.org

Agile Architecture Is Not Fragile Architecture

Published June 12th, 2008 Under Agile | Leave a Comment

Architecture is perceived as a heavy-weight activity which does not fit into an Agile process, so many teams start without it, just to find themselves re-doing the software later because the code structure was not good enough to support maintainability and evolution. In this presentation, Coplien and Henney describe how to start with enough architecture to ensure long term success of the project.

Coplien is a Senior Agile Coach, and Systems Architect working at Gertrud&Cope. He is a well-known industry speaker, author, and innovator. Henney is an independent consultant and trainer based in Bristol, UK. He has developed and delivered training courses, consultancy and software across a number of domains.

http://www.infoq.com/presentations/Agile-Architecture-Is-Not-Fragile-Architecture-James-Coplien-Kevlin-Henney

« go back