Software engineers should also act as Tech Support

Important for the product based organization, Software engineers should also act as Tech Support at least twice a month.

  • Fights “Development in a vacuum” syndrome. It’s valuable to gain exposure to how users use the app. Until I finally saw this as a young developer, I didn’t realize what a crappy UI developer I was. All I cared about was coding and not design, analysis or the user’s perspective.
  • Delivery product to the target audience in a better way. They can simply the UX issues for the customer which cause more customer satisfaction.
  • Software engineers can also realize the pain of Support Staff and simplify his life after delivering a better product.
  • Developers that are not as good as they think they are can be humbled (although there’s no guarantee you’ll get this benefit; some devs are truly oblivious, selfish, and stubborn).
  • Developers will gain domain knowledge. This is critical if your developers are to eventually become better at identifying and filling in the gaps the business analysis phase (assuming there is any) misses.
  • Good support is a marketing point. If you do it well, clients will come to appreciate it. And a well-rounded developer with communication skills and domain knowledge is capable of doing this well. However, I would still prefer that applications be of high enough quality that they don’t need support. Superior quality is its own form of customer support (and also a marketing point).

Brainstorming Process

Brainstorming is a group or individual creativity technique by which efforts are made to find a conclusion for a specific problem by gathering a list of ideas spontaneously contributed by its member(s). The term was popularized by Alex Faickney Osborn in the 1953 book Applied Imagination. Osborn claimed that brainstorming was more effective than individuals working alone in generating ideas, although more recent research has questioned this conclusion. Today, the term is used as a catch all for all group ideation sessions.

In another words, Brainstorming with a group of people is a powerful technique. Brainstorming creates new ideas, solves problems, motivates and develops teams. Brainstorming motivates because it involves members of a team in bigger management issues, and it gets a team working together. However, brainstorming is not simply a random activity. Brainstorming needs to be structured and it follows brainstorming rules. The brainstorming process is described below, for which you will need a flip-chart or alternative. This is crucial as Brainstorming needs to involve the team, which means that everyone must be able to see what’s happening. Brainstorming places a significant burden on the facilitator to manage the process, people’s involvement and sensitivities, and then to manage the follow up actions. Use Brainstorming well and you will see excellent results in improving the organization, performance, and developing the team.

Brainstorming Process

  1.     Define and agree the objective.
  2.     Brainstorm ideas and suggestions having agreed a time limit.
  3.     Categorise/condense/combine/refine.
  4.     Assess/analyse effects or results.
  5.     Prioritise options/rank list as appropriate.
  6.     Agree action and timescale.
  7.     Control and monitor follow-up.

1. Lay out the problem you want to solve.
This may be easier said than done.  Keeney describes a doctoral student who is at sea while trying to come up with a dissertation topic and advisor.  The student grasps for ideas with only the vaguest idea of a goal, stated as negatives rather than positives. “I don’t think I could do it,” “it is not interesting to me,” “it seems too hard,” and “it would be too time consuming.” Then finally someone suggests an idea that doesn’t have any of those negatives. The doctoral student grabs the topic. But Keeney says this is a poor way to make a major decision. Instead the student should keep pushing until they come up with at least five more alternatives, and then, considering all those, “identify your objectives for your dissertation, evaluate the alternatives and select the best.” It will be well worth the effort.

2. Identify the objectives of a possible solution.
This is what Keeney did for the German energy company and what he’s done for several government agencies, including the Department of Homeland Security and the energy department. It’s not easy and it takes time but if you can approach your goals critically and hone in on what you want to achieve, your brainstorming session will be much more effective.

Keeney offers a great example of this process. David Kelley, the founder of renowned design firm IDEO, wanted to design a product that would enable cyclists to transport and drink coffee while they were riding.  A couple of ways to describe what he wanted to design: “spill-proof coffee cup lids,” or “bicycle cup holders.”  But a much better description is the following objective: “helping bike commuters to drink coffee without spilling it or burning their tongues.”  Keeney likes this statement because it clearly lays out IDEO’s objectives, to help  bike commuters 1) drink coffee, 2) avoid spills, 3) not burn their tongues. He even contributes a few objectives of his own: avoid distractions while biking, don’t contribute to accidents, keep the coffee hot and minimize costs. Going into that much detail before  brainstorming about ways to design the cup holder makes IDEO much more likely to succeed.

3. Try to generate solutions individually.
Before heading into a group brainstorming session, organizations should insist that staffers first try to come up with their own solutions. One problem with group brainstorming is that when we hear someone else’s solution to a problem, we tend to see it as what Keeney calls an “anchor.” In other words, we get stuck on that objective and potential solution to the exclusion of other goals. For instance, when Keeney was consulting with a cell phone maker years ago, the company had numerous objectives. It wanted to produce a lightweight phone that also had GPS capabilities (Keeney did this consulting gig some time ago, but he insists the example remains illustrative). When company executives got together to brainstorm ideas about how to build a better phone, one person brought up the issue of weight. Suddenly everyone became fixated on that idea and forgot about their other objectives. Coming into a meeting with potential solutions reduces the risk that participants will get bogged down on one objective.

4. Once you have gotten clear on your problems, your objectives and your personal solutions to the problems, work as a group.

Though he acknowledges that it’s a challenge not to “anchor” on one solution in a brainstorming session, Keeney believes that if participants have done their homework, clarifying the problem, identifying objectives, and individually trying to come up with solutions, a brainstorming session can be extremely productive.

At the end of the paper, he describes a 2008 workshop he held to try to come up with ways to improve evacuations in large buildings in case of a terrorist attack, based on a recommendation from the National Institute of Standards and Technology. Keeney brainstormed for two-and-a-half days with 30 people with expertise in everything from firefighting and building codes to handicapped people and human behavior. The result, after going through Keeney’s four-step process: a list of 300 new alternative ways to speed evacuation. Then the participants evaluated the many ideas, which included using cell phone alarms to guide people to exits and building linked sky bridges on every fifth floor. The hope, of course, is that these solutions will never be tested. But Keeney’s brainstorming method helped the group find effective suggestions..

Improving the Daily Scrum

Few important points

  1. Time Start at: 10.00 AM (Not 10.02 AM); Scrum meetings wait for no one.
  2. Three Key Questions:
    1. “What did you do since the last meeting?”
    2. “What are you going to do until the next meeting?”
    3. “What impedes you from being more productive?”
  3. Concentrate on the second and third question, not on the first one.
  4. Standup means stand up, no sitting, really. except medical conditions.
  5. Stand in front of the visual progress artifact.
  6. Everybody should be present except medical conditions.
  7. No typing.  
  8. Daily standup is for synchronizing between the team members, not between Scrum Master and the team. If team members start behaving as they are reporting to Scrum Master, he can start literally looking at another person or even walk away a little. Such small tricks are often able to confirm that daily Scrum is for the team members and not for the Scrum Master

.

Project Open ]po[

Project Open
Nice Project Management Tool;
http://www.project-open.com

]po[ iPhone App available
Follows PMI Guideline
Good UI & Structuring

But
Only CVS Support! SVN Integration is on the way; no Idea on GIT Support
Instead of MySQL they use PostgreSQL.