Agile Architects

0

This article is a Spanish direct translation of the “Architects” section from the InfoQ Article named “Book Excerpt: Succeeding with Agile: Software Development Using Scrum“, which is about Mike Cohn’s book “Succeeding with Agile: Software Development Using Scrum“.

You can access the Spanish version of this article following this link.

Since the original article is written in English, I see no need to translate it. Please visit the original article here: http://www.infoq.com/articles/cohn-chapter8

Agile Project Managers

0

This article is a Spanish direct translation of the “Project Managers” section from the InfoQ Article named “Book Excerpt: Succeeding with Agile: Software Development Using Scrum“, which is about Mike Cohn’s book “Succeeding with Agile: Software Development Using Scrum“.

You can access the Spanish version of this article following this link.

Since the original article is written in English, I see no need to translate it. Please visit the original article here: http://www.infoq.com/articles/cohn-chapter8

Agile Analysts

0

This article is a Spanish direct translation of the “Analist” section from the InfoQ Article named “Book Excerpt: Succeeding with Agile: Software Development Using Scrum“, which is about Mike Cohn’s book “Succeeding with Agile: Software Development Using Scrum“.

You can access the Spanish version of this article following this link.

Since the original article is written in English, I see no need to translate it. Please visit the original article here: http://www.infoq.com/articles/cohn-chapter8

La Dique Island

Breaks between Sprints

0

Last week there was a conversation within an organization I’m currently working on with agile implementation in creative services industry.

The key point was if there was a way of introducing a break between sprints; this is something that came out from a retrospective. The fact was that the team requested it, but the product owner was not in that same page, he actually didn’t want any break at all between sprints. His arguments were: We need sustainable peace and spend time doing work.

After discussing with both parties and having them exposing their point of views, I gave my personnal opinion to that:

I personally don’t think that having a break between sprints will attempt against sustainable peace. Sustainable peace is about rhythm, heart beats; it’s not about “continuous development”. I mean, we can have a fixed length sprint without alterations and a fixed length break; let’s say half a day. If we do that and preserve it through time, then we’re still having sustainable peace, correct?

Another totally different situation might be if we have random length breaks; like half a day after the first sprint, two days after the second sprint and one day after the third one. This will absolutely attempt against sustainable peace.

On the other hand, when talking about “continuous development”, I realized the PO was talking about getting people producing creative deliverables all time (designing, drafting, creating, etc)… ok, I would be very careful on that because people still need to be trained, regardless the industry they are at.

I personally come from the systems engineering industry, one in which anyone can be turned into a vintage programmer if he don’t get training or refreshes on latest technologies. Of course, this is somehow extreme, but it happens to all people regardless their industry.

It didn’t took too much discussion until we found a shared agreement on breaks between sprints: we decided to have the demo & retrospective meeting during the morning and a free space during the afternoon, there might be no planned work for those 4 hours at the end of each sprint (every 2 weeks).

What are they going to be used for? Well, there will be happening three different things during that time:

  • Have the team attend training sessions or prepare training session on industry updates or
  • Have someone relevant to the work they do to attend and have a discussion session with them  in order to get updated and discuss about new approaches, new movements or latest industry events or
  • Have the people contribute to the corporate blog, with an interesting article, or get them participate in online blog conversations, getting benefit for the web 2.0 opportunities

We’ll be monitoring closely how this goes… I’m very excited on this approach. I’d certainly recommend a break between sprints with this characteristics. :)

Triple Constraint

Agile Triple Constraint

0

Back from vacations, the recently past year was an interesting one; full of changes and challenges. This upcoming year is one I’m very optimistic on; I see a lot of opportunities, discussion spaces and new fresh ideas coming up.

New Year: new blog post. This time, I’d like to write about one of the comparisons/competitions I hear the most in the agile world: PMPs in an agile environment.

Several times I hear questions or arguments from PMPs (I’m a PMP also) about how to implement agile, why agile doesn’t seem to fit on a PMI environment, and so.

There are lots of things going on in the PMI-Agile world, especially after mid-2009. A very interesting argument I heard so far is about helping PMPs change their minds and/or understand better the way agile works from a high level is:

Agile approach has three major areas:

  1. Engineering Practices
  2. Leadership Practices
  3. Project Management Practices

While focusing only on the Project Management Practices, we can talk about the so known “triple constraint”:

In any Project Management environment the most important variables to monitor when managing a project are: Scope, Time and Cost. (Also Quality, Client Satisfaction and Risk are; but for this opportunity we’ll focus just on the first three).

Traditional Project Management states that whenever you start a project, you start from the Scope. Once you have the Scope clarified enough you start playing with resources, assignments and sequence of activities, that will lead you to determine the Time it will take and the Cost it will have. Result: a pretty nice Gantt chart.

Then you go back to the business and/or sponsors; present the result and the typical reaction is: You’re asked to reduce Time and Cost. :)

Then, as a Project Manager, you start thinking about increasing the team, splitting the work in different phases, build things in parallel (increasing risk of course). The traditional challenge then turns into the traditional problem: very complex Gantt charts, with very complex dependencies that will require very hard coordination and tracking.

Instead, Agile Project Planning approaches the same problem from another direction; the starting point is Time + Cost:  How much money wants to be invested for how long? This gives you a team for a certain period of time, and the commitment to deliver the best possible amount of software.

That way you have:

  • A Fixed Cost: The team members 8hours of work).
  • A Fixed Time: Time boxes, iterations, releases.
  • A variable Scope: Then the Scope is the variable part of the triangle, which is injected into iteration after iteration and transformed into working software.

In my opinion, this is the clearest explanation on the different points of view from each of the approaches: traditional and agile ones. Don’t you?

Photograph by Yui Kubo: http://www.flickr.com/photos/yu-kubo/398714467/

AO La Plata 2009

Agile Open La Plata 2009 Results

0

On Saturday June 20th the Agile Open La Plata 2009 took place, more than 65 people attended.

After having breakfast, we did the official opening, which I facilitated. An incredible experience: it was my first facilitation in an Open Space model. At the beginning, it was exactly as we’re used to see in these kind of events: people does not understand the expectations on them until after 10 minutes of actual work, the result was almost 40 sessions proposals, a very fluid voting and the following schedule:

AO La Plata 2009

Agenda AO La Plata 2009

I highlight some sessions I was able to participate in, all of them of an excellent level:

Lean introduction (facilitated by Juan Gabardini) and Agile introduction (moderated by Nicolás Paez) were the first two sessions. I saw people very engaged on the topics, I admit it was hard to stop those sessions on-time due to the atendees’ enthusiasm.

The starts of the second track were SCRUM intro (proposed and moderated by Marcelo Belnicoff) and Agile Team Communication (moderated by Nicolás and Esteban).

Lunch arrived on-time, there was an excellent climate where people exchanged concerns, experiences, questions, solutions, doubts, opinions. A great networking context.

We started the afternoon with the “Pajarraco” Game, during which I took some photos (taken with my cell phone) and a lot of other parallel sessions, more advanced ones in which I was lucky to participate: CMMI+PMI+Agile, Scrum with very little teamsAgile TestingHow to engage the client in Agile ProjectsNon IT-industry implementations of agile methodologies, etc.

* Pajarraco Photos:

Pajarraco 1Pajarraco 2Pajarraco 3Pajarraco 4

After a coffee break during the afternoon, there was an interesting debate about Retrospectives (open discussion format) and an Agile Architecture presentation (by Diego Fontdevila).

We reached to the closure with more than 40 people. It was facilitated by Diego with excellent results, as we’re used to in every Open Space: great people interaction, highly engaged & active people,really interesting topics, living experiences, etc. The result was more than positive:

Resultado

Resultado AO La Plata 2009

The next steps we’re taking at “La Plata” level is to organize a monthly event where to discuss agile topics following the same approach that has been working for months in Buenos Aires, while at a national level we still have the organization and realization of the Rosario, Mar del Plata and Bahía Blanca Agile Opens. And any new city who wants to have one.

A new Agile Open was finished, and -same as the previous ones- it left it’s footprint.

Read Article in English

G-Y

Working with Y Generation

1

GY

Being a leader of a young-people’s team (and with this I’m not referring to the inner child we all have) requires both to know about them and to understand the way they interact with the agile methodologies.

Who are they? The Generation “Y” or also know as the “Millennials”, “The Internet Generation”, or even “The Google Generation” is the one comprising  the demographic segment borned between 1981 and 1997. And they are now entering the global workforce.

It’s the MTV and “All Stars” Generation who experienced the end of the Cold War, the spread of non-traditional family models and the technology revolution. There are the young people who couldn’t conceive life without technology (SMS, mobile phones, IPods, Reality Shows and Internet 2.0) and who probably wouldn’t also live without it.

The strong sense of group identification through which they build their personal identity has become one of their most forceful features (who haven’t heard about “urban tribes”?). The Generation Y doesn’t think in a future based on a single job (unlike previous generations), nor they think in a long-term plan. Their life plan is “today”, they are curious, they love to experiment, to change jobs and “not take sides”.

For some reason and unlike the previous generation, they Gen Y feels unenthusiastic for public participation and doesn’t accept the traditional authority figures, being more collaborative than hierarchical.

What is important to bear in mind when working with them in the software development, but also in any other kind of job?

  • They have a very low attention span and get bored easily. Thus, not-to-long tasks which bring frequent outcomes are strongly recommended. This doesn’t mean they are not willing to work, by contrast, they’re really enthusiastic, but need immediate gratifications (as they received during their childhood).
  • They ignore long-term plans, strictly defined scopes. They have an affinity with both incremental planning and development in which they want to participate actively.
  • Gen Y is willing to learn, and they keep up quite well with technologic advances, this is something very positive to grasp new concepts and ways of working.
  • Impatience: They cannot wait to get a better position, even though they have just started and they haven’t gained experience enough. They need help in controlling their anxiety.
  • Gen Y is used to chaos, and doesn’t feel uncomfortable with confusion. This represents an advantage when considering the constant changes today in businesses. However, they require both a strong coaching to lead them and an environment which accepts these changes to keep them focused on objectives continually being defined.
  • Flexibility (may be too much). The variety of options they have at the reach of hand makes them think that if they don’t get what they want by one mean, they can get it by another. This affects directly their job as far as when picking a job, many of them don’t work “because they need to” but “because they want to” and timetables, job requirements, salary and expectations become crucial to decide whether to stay or go.
  • “Multi-tasking”. Gen Y has developed an ability to deal with more than one issue at a time. What could simply be considered as an advantage can turn into an drawback because of their lapse of concentration and the delay rooted on multi-tasking activities, contrary to a work focus on one single thing at a time.

They are still too young. Even though they look like as know-it-all people by the way they ussualy introduce themselves, the Generation Y people don’t rely on a vast labor experience, and we don’t know exactly what to expect from them. Furthermore, their recent introduction to the job market and the way they behave could generate integration conflicts with previous generations. Thus is necessary to understand how they work and to keep alert for the sake of the team.

With its pros and cons, Generation “Why” is here to stay and agile methodologies will grow with them, retrospective after retrospective, taken their input into account and being shaped based on their behavior. Definitively.

AO BsAs

(Español) Agile Open La Plata 2009

0

Sorry, this entry is only available in Español.

Pomodoros

The Pomodoro Technique

14

Pomodoros

Some time ago I wrote an article about the defragment your day technique. From that moment on, I tried implementing it in my day to day without much success, honestly. The issues i found during that time would probably be due to a particularity of the context: I work in a global team, with people from Spain and Chicago, what gave me a hard time grouping the meetings. This definitely ruined the technique.

Then I decided trying another technique which I had on the shelves for a while, that seems very interesting and not too hard to be implemented: The Pomodoro Technique by Francesco Cirillo. Something that really caught my attention on it was the similarities it has with some basis agile practices: incremental planning, ROI prioritization, time-boxing, retrospectives, etc.

In this post I’m not intended to do a detailed analysis of The Pomodoro Technique, I’m just explaining in a very short way how it works so that someone not knowing about that can eventually try it. If anyone would like to go deeper in details and reasons, there’s an excellent PDF on the oficial site and a book called The Pomodoto Technique Illustrated, which I recommend 100% .

Introduction

The Pomodoro Technique has it’s basis on the assumption that time is considered an enemy by many people and the anxiety generated leads the persons towards an inefficient behaviour both in studying or working. The immediate result is: postponing things in time.

The Pomodoro Technique identifies two different aspects that are closely related between each other regarding time:

  • Becoming: An abstract and dimensional aspect of time, which leads into the habit of measuring time (seconds, minutes, hours); the idea of representing time using an axis, the concept of “duration”, the idea of “late”.
  • Event succession: A concret aspect about time. I.e.: We wake-up, we take a shower, we have breakfast, we study, we have lunch, we take a nap, we play, we have dinner and finally we go to bed.

The purpose of The Pomodoro Technique is to provide a simple tool/process to improve the productivity (our own and the team’s one) with the following abilities (between others):

  • Alleviate anxiety linked to Becoming
  • Enhance focus and concentration by cutting down on interruptions
  • Boost motivation and keep it constant
  • Bolster the determination to achieve your goals
    (for the complete list, see the oficial paper)

The Artifacts

There are three different artifacts in the Pomodoro Technique:

  • Activity Inventory: A list where all tasks that needs to be done are recorded while they appear. At the end of the day the ones that were finalized are checked.
  • To-Do Today Sheet: A list of tasks to be done during the day, ordered by priority. And a section called “unplanned and Urgent Tasks” where any unplanned and urgent task is recorder while they appear. These kind of activities can alter the entire day plan.
  • Registry sheet: A place where to record all completed tasks at the end of the day and the amount of Pomodoros (we’ll see what a Pomodoro is shortly) invested on it until completion.

The Pomodoro

The heart of the Tecnique is a kitchen chronometer (from where it takes the Italian name “Pomodoro”, because of its tomato-like shape). This chronometer is used to measure the time-boxes which gives rhythm/iterations used to work on the different tasks during the day.

The Iterations

Called “Pomodoros”, are fixed time periods (30 minutes) from which 25 minutes are dedicated to a task and the 5 minutes remaining used to rest, recreate. Once these 5 minutes are passed a new 25 minutes iteration is started. The tool to measure each of these 25 minutes set is a chronometer with alarm.

Each Pomodoro is indivisable and can’t be interrupted. If for any reason I must interrupt a Pomodoro, then that iteration is considered as voided and a new one must be started from scratch.

Every 4 valid Pomodoros the break is longer: from 15 to 30 minutes.

Note: Each break and it’s lengths have an actual reason; for more details read the oficial paper.

The Tasks and The Process

The tasks that appear, if they are not urgent, need to be registered in the “Task Inventory”. At the beginning of each day all the tasks in which the work will be split between are selected an placed in the “Todo Today” sheet. This plan can be done as part of the first Pomodoro of each day.

For the next Pomodoro I take the first tasks in the “To-do Today” and I focus 100% on it. I can’t take-out the attention during those 25 minutes. This means: not reading e-mails, not chatting, not wasting time. There are several minuted dedicated for that at the end of each iteration.

if the Pomodoro finished before i get to finish the task, then I still have to take the 5 minutes break, no choice. After that I start a new Pomodoro focused on that same task I’ve been working on which is still not finalized.

While I spend the iteration, I need to mark an “X” for each one next to the task I’ve been working on. It’s really important to focus on a single task during each iteration. It the task is too short to dedicate an entire Pomodoro on it, then it should be grouped with other tasks, if the task is still finished before the pomodoro ending, then i should keep working on that task, improving quality until the Pomodoro ends.

If I finish a task during te initial 5 minutes of a Pomodoro, then that iteration should be considered as voided. I don’t record an “X” there and I start a new Pomodoro, moving into the next task.

Simple Example of the Process

Let’s suppose for a while that these are my pending tasks:

Activity Inventory
Write Article about the Pomodoro Technique
Review article grammar
Go to the supermarket
Send e-mails about the event organization
Pay TV clable and car insurance
Build Karaoke list for next Saturday
Translate pomodoro Article into Spanish

At the beginning of the day I choose which are the tasks I’ll be working on and then I record them in the “To-Do Today” sheet. I can dedicate 25 minutes for this plan, using a Pomodoro iteration for it:

To-Do Today – June 7th, 2009
Write Article about the Pomodoro Technique
Review article grammar
Translate pomodoro Article into Spanish

Right after taking the first 5 minutes break, I set my chronometer for 25 minutes and lunch it, that way I’m starting my second Pomodoro, dedicating it to the firat task in the list. After those 25 minutes the alarm of the chronometer will sound, that means the Pomodoro ending; I record an “X” next to the task i’ve been working on (in red below):

To-Do Today – June 7th, 2009
Write Article about the Pomodoro Technique X
Review article grammar
Translate pomodoro Article into Spanish

After another 5 minutes break, I lunch the 25 minutes Pomodoro again, following with the task until completion.
After the first set of 4 Pomodoros, it’s time for a longer break (between 15 and 30 minutes):

To-Do Today – June 7th, 2009
Write Article about the Pomodoro Technique XXXX
Review article grammar
Translate pomodoro Article into Spanish

After that longer breack, I lunch a new Pomodoro. I should continue that way, one 25 minutes Pomodoro after the other, taking a 5 minutes break in between pomodoros and a 15 to 30 minutes break every 4 Pomodoros… until i get to finish the first task, moment in which I cross-over it:

To-Do Today – June 7th, 2009
Write Article about the Pomodoro Technique XXXXXXX
Review article grammar
Translate pomodoro Article into Spanish

And that way, I continue, Pomodoro after Pomodoro until the day finishes:

To-Do Today – June 7th, 2009
Write Article about the Pomodoro Technique XXXXXXX
Review article grammar XX
Translate pomodoro Article into Spanish XXX

Dealing with Interruptions

The interruptions are the most sensible aspect at the time of implementing the Pomodoro technique.

The length of a Pomodoro, 25 minutes, seems short enough to make it possible to resist being distracted by various kinds of interruptions. But experience shows that once you’ve started using the Pomodoro technique, interruptions can become a real problem.
Source: The Pomodoro Technique, by
Francesco Cirillo

The Pomodoro Technique proposes an effective strategy to minimize the amount of interruptions, and to do that, it divides those interruptions in two different categories: Internal and External interruptions, concept that will be addressed in a later post. :)

Important

As said before, this post is just a partial summary of the Pomodoro Technique. To get more knowledge and details I recommend each reader to visit the official site: The Pomodoro Technique by Francesco Cirillo.

Multiples Monitores

Increasing Performance Using Multiple Monitors

3

A few months ago I was reading an article, initially published by Jason Calacanis and later translated into Spanish by Alec Oxenford, about money savings by implementing quick and simple tips as part of a start-up. One of the most discussed points was the usage of multiple monitors to increase the developers performance.

Today, I found Stefan Didak home office photo on Flikr .

Multiples Monitores

This finally raised my curiosity on how a developer performance can be boost by using more than one monitor.

After a quick research looking for statistical data and performance increase facts, i found no more than a few personal experiences posted by people that tested multiple monitors and papers published by monitor and video card manufacturers.

ANew York Times Artivle states that the productivity increases between 20% and 30%. The experience comes from writers who can work on their articles while seeing the outline or draft on the second monitor; designers who can edit images in one monitor and having a previous version (or the original) in the second monitor for their reference. Some few are from Web-shoppers who can do their orders in an easier way.

Obviously all this activities can also be done using a single monitor; the clue here is the increase in the velocity used to do each activity. The time taken in looking for the window in the task bar and activating it (and back) is significantly higher than the one taken to look at the other monitor instead. Yes, the experts use Alt-Tab; but the issue here appears when trying to reach back to the original window, there are two alternatives 1) get back using Alt-Shift-Tab or 2) keep pressing Alt-Tab several times until reaching up the original window. This is really a time waste.

Additionally, I found an article published in Computerworld; it also talks about using multiple monitors, but it states that in several cases, employees preffer a single monitor in order to have more free space in their desks.

In my personal experience, i work with a 14″ wide-screen notebook. During some time I had the opportunity to have a second monitor in the office, a 17″ one, and the comfort it gave me was really higher. It let me work on the project documents and spreadsheets while reading e-mails in the second monitor and using MS project, which is not designed for a 14″ monitor at all.

A second monitor can definitely increase the comfort and velocity; and in consequence the productivity. The only remaining fact to research about is if the cost increment associated with the acquisition and maintenance of the double monitors makes sense… But I’ll leave it to  your own criteria. :)

Go to Top