itSpice
Subscribe:       RSS    Twitter    EMail
 




Enter your email address:

Delivered by FeedBurner











Why Agile Development Demands Agile Architecture?

by Swati Bansal

The dark cloud of economic slowdown has developed a silver lining within Microsoft IT, a raised vehemence on Agile development techniques. It does not mean that the company is new to Agile. Beyond this far, Agile development approaches have been used in several IT groups for nearly a decade.

Here’s an example – If we have a governance point that is used throughout all levels of IT organizations known as “Baseline” where all design and specifications have been completed and signed off. This is what guesses to occur before software is delivered. Does this favor waterfall? This governance point is cited in one of the metrics all the way up to CIO scorecard. BDUF (Big Design Up Front) is built in to the DNA itself. If you are looking towards it, you will look after several reasons that why people keeps on requesting BDUF as by getting BDUF, it helps in lowering down risks as everyone understands and agrees what exactly are the features, requirements, scope, timelines, deployment model and responsibilities.

Well, reducing risks is a good thing and on the other hand, we want to raise number of systems that are delivered on time and budget with lesser defects. Though, Agile methods have already proven that there is another way to attain the goal of improved delivery. Where waterfall needs 600 pages of documentation to be written up front, Agile requires that most of those pages are never written. It is not correct that Agile methods produce design documents “as you go.” Agile methods create 10 pages of diagrams, and nearly no accompanying text.

Is Agile architecture a BDUF process?

BDUF architecture is a good thing. Although, Agile architecture is also a good thing that is the act of creating and producing appropriate architecture to meet the requirements of the project, in a timely fashion, with minimal effort. Rarely, it has produced a detailed class model. Often, Agile architecture develops high level components, context models to create the existence of components, their names and even the section of responsibilities. It never produces diagrams of technical things, such as the structure of a message. Dev tools do that, from the code itself.

Most of the Agile architects produces models by using a dev environment tool like Sparx or Visual Studio Enterprise Architect instead of any diagramming tool like Visio that cannot be easily connected with the code. Agile architects use diagrams to communicate between people and to express artifacts into code where developers have real freedom to make the magic happen.

“Failure to architect a system is a failure to deliver”. Agile architects not only leverage patterns but also complete reference models. Along with consuming a well built reference model, it interjects the components that would be developed for the application. They built pre existing designs by using frameworks that develops secure, reliable, maintainable and easily deployed systems. Thus, the success mantra is Agile architecture. Hope your doubts have been cleared by reading this post.


Tags: [ , , , , ]


Related Posts


Comments