Pragmatic Architecture, DevOps, and Cloud Computing
Matching: agile X
jl.marechaux 060001NWA6 Tags:  agility-at-scale architecture rational clm pragmatic agile alm-sig agileadopt alm 4,702 Views
On January 22, Vishy Ramaswamy and I talked about Agile architecture during an InformationWeek webcast: Agile Development: Three Pillars of Success. Questions which had not been answered during the Q&
jl.marechaux 060001NWA6 Tags:  rational architecture pragmatic agileadopt alm agile alm-sig webcast clm agility-at-scale 5,961 Views
On January 22, I co-presented an InformationWeek webcast with Vishy Ramaswamy. the architect of the Design Management Server. The webcast was mostly an informal discussion where Vishy and I shared our opinions on four different topics.
The replay and the slides are available on--demand from the InformationWeek website at https://www.techwebonlineevents.com/ars/eventregistration.do?mode=eventreg&F=1005386&K=CAA1AC.
To access the material, you need to register with a valid email address. You will receive an email with a link to the recording session.
jl.marechaux 060001NWA6 Tags:  pragmatic clm architecture alm-sig agile agility-at-scale alm rational agileadopt 11,129 Views
Yesterday, I was co-presenting an InformationWeek webcast on Agile Development: Three Pillars of Success. With Vishy Ramaswamy , the lead architect for Design Manager, we talked about some agile architecture practices and how these practices were adopted by the IBM development team to create and deliver the Design Manager product.
During the Q&A session, there was a question that we saw a question that we did not answer (lack of time, too many good questions). It was something like: “What should we pay attention to when we try to adopt agile architecture practices on our projects?”
When I started this blog, I used the following description (from http://bitly.com/Sg2FQe) to define what Pragmatic Architecture is:
To summarize a bit, I would say that the three pillars of pragmatic architecture are:
jl.marechaux 060001NWA6 Tags:  architecture agility-at-scale rational alm-sig pragmatic alm agile clm agileadopt 4,890 Views
[Previously on ALM and agile design.....Part 3 - Sprint planning and design information]
During sprints, agile teams focus on development to deliver working software. Developers examine user stories to implement business needs. They also consider language best practices, design patterns, code complexity, or easiness to evolve and maintain the software. That's why agile design is an important activity during a development sprint.
Development is not a mechanical activity. You don't write code without thinking...and you have many opportunities to think while you develop a feature.
Sketches for ideation and problem solving
An image is worth a thousand words. Often, complex ideas can be conveyed with a simple diagram. Recently, I read a really serious study from researchers of an university (in UK I believe) were they tried to measure the amount of information conveyed by a picture (diagram, sketch, drawing...). They calculated a 84/1 ratio. So according to them, a picture is worth 84 words. It is not 1000, but it is not that bad!
So anyway, sketches are useful to convey and discuss ideas. And sketches are definitively design elements. They help teams agree on the structure and the behaviors of a component.
During a development sprint, the team can have a need for a quick design activity. The “design in a flash” session can happen anytime to address a new technical problem uncovered. Such design sessions are not planned ahead of time. They are part of the development activities. Only the right teammates are involved to provide their input, and the session can last only 15 minutes.
Designs as input to development activities
When design information is available (sketches or others), agile team members can reuse it to better understand the tasks they have to complete.
To create a test or implement a new feature, a developer can quickly take a look at the design of the component. Of course, the user story is important, but the design will provide other key information such as the relationship with existing components, the interfaces, or the technology to use.
Because software programming requires some thinking, design is part of development activities. In a software intensive system, a component does not work in isolation. It interacts with other components. Good thinking (design) leads to coherent and resilient architecture, which is key to agility..
jl.marechaux 060001NWA6 Tags:  architecture agileadopt alm-sig agility-at-scale clm rational pragmatic alm agile 7,120 Views
[Previously on ALM and agile design.....Part 2 – Release plans, iterations, and design ]
Each sprint begins with a planning exercise where the team defines the sprint goal and the sprint backlog. Team members examine the backlog to select the most valuable stories that can be contained in the sprint.
During sprint planning, design information can be used for three different purposes.
First, to assess the technical feasibility of a requirement. If the new feature is straightforward, then this task can be skipped, but for more complex features, the team can explore different design options to agree on a target solution.
Second, design information is used to identify the tasks to implement the sprint stories. A technical perspective on each story is needed to understand the work to complete. For some stories, the team will need to develop new component, for others, the team will need to integrate or reuse existing assets.
And last but not least, agile team can leverage design resources to evaluate the development effort. If the team is using the planning poker technique, design information will help choose the right card.
Development effort should be assessed based on the understanding of what needs to be delivered. Design information helps the team identify what can be delivered (technical feasibility) and what can be contained in the next sprint (estimation)
jl.marechaux 060001NWA6 Tags:  alm pragmatic alm-sig agileadopt architecture clm agile rational agility-at-scale 4,767 Views
Interested in agile ALM and collaborative architecture? Check the video at https://www.youtube.com/watch?v=O70P8IpV0oY. It will only take 3:20 minutes of your time.
Then read the related article published on developerWorks and tell me more about the pragmatic architecture approach that you have adopted in your agile projects.
Share your experience!
jl.marechaux 060001NWA6 Tags:  alm-sig agile pragmatic alm agility-at-scale rational architecture clm agileadopt 4,737 Views
Just back from Agile Tour 2012, a conference held in Montreal (Canada) on November 24.
Ok, it was not a long trip as the conference center is probably at less than 2 miles from home.
This year, I was a member of the organizing committee. Quite an experience which started around March, an initiative led by the Agile Montreal community.
Key facts and figures from the conference:
People I talked too during the conference are not interested in the "agile dogma". They value "pragmatic agility", agility applied to their specific context. Sometimes it means governance, sometimes ALM, sometimes lean software development.
So far the feedback from attendees is very good. It was an amazing day. I am glad I had the opportunity to be involved in the organization of this conference.
jl.marechaux 060001NWA6 Tags:  architecture agility-at-scale agileadopt alm clm agile alm-sig pragmatic rational 4,466 Views
I will be a speaker at Agile Tour 2012 (Montreal) on November 24. My session is about the role of the agile architect in an ALM environment.
Here is a teaser.....I hope it will prompt people to attend the session.
What someone can expect to take away from the presentation?
Table of content
Interested?..... Take a look at the Agile Tour 2012 (Montreal) page for further information.