wise use of commute time :)

April 30, 2007 9:06 am

I received this picture in an email ….

Wise use of commute time


Exploratory Testing and documentation…

April 30, 2007 12:52 am

Talking about Exploratory testing and the project management  [link] a few weeks ago, Pradeep from Bangalore, had shared a fable about TestTrimming or shortcuts. It is a good story of what it takes to bake a cake and how shortcuts would not provide a quality outcome.

From the fable’s example, it is agreed that the 3hrs of effort is what it takes to bake a cake and no shortcuts. However, 3hrs is an estimate that was given by the baker and he/she knows it takes taht time to complete. So, back to my ad-hoc testing – considering we have provided a similar estimate and what I referred in previous paragraph as Mar 15 – what is the level of confidence to say, I can be done by then. OR, does it mean, I won’t know about it until I am done. This is something I heard from someone working on SCRUM project model.

I have also come across few articles [link1][link2] while learning about the technique / approach for ET, and i have noted that the documentation or heuristics can be used along with FTT (Features to be Tested) docs to learn about the product. I also remember reading on Satisfice or somewhere else that the last few minutes of the ET session should be kept for reporting the bugs / issues etc. I was having a similar conversation with someone recently. So our conversation was, though having the reference materials like mentioned before, how about keeping a log for what was exactly tested or at least the scenarios touched upon during the session. We had mixed thoughts, given the time constraints for the project, on

  1. whether to be documented on those or not
  2. if documented, then to what extent? I understand it is relative comparison. so my answer was, we need to document at a higher level to an extent of the scenarios touched upon, for others to understand the areas touched, helpful pointers as appropriate etc. And it doesn’t have to be detailed to include the sample data, outcome of that data (in case the software resulted as expected) [again "as expected" could be like from a spec]
  3. why document that – because it ad-hoc and the bugs/issues will be reported anyway. –> it probably makes sense, but I probably have to disagree with this and I think it is always better to have some sort of documentation, even if it is a one liner as mentioned in #2 above – i understand there are chances of ambiguities if we start documenting things. Well again, we need to draw a line somewhere. I have also noticed a blog post by Pradeep on mixing Scripted and ET. This is another resource with good examples listed.

It looks like I am wandering around these thoughts on ET, agile, TDD, etc etc as I think about Agile project management.

So, your thoughts on ET and documentation? please share here in comments….

thanks

{tags: project management, agile , exploratory testing}


our townHome is open for Sale now

April 19, 2007 7:18 pm

Our townhome on eastside has jsut been listed for sale. We just moved to a slightly bigger home and an existing one is now on sale. I have uploaded few pictures here on spaces album. If you or anyone you know are interested to buy, leave a comment. :)


Pair programming – “two are better than one”

April 16, 2007 9:54 pm

      XP – A recent post I read on David Anderson’s blog post titled “pair programming in 1975”. I was amazed and excited to know some of the concepts that we find profound in nature today have been literally from way back, several decades ago. Coming to computer industry after my college, and when I heard about XP or paired programming several years ago, I too thought – “wow! It was a great way of programming” – a sure better way of writing quality code. Have another pair of eyes to do an inspection and review to drive the quality upfront. This is applicable to almost all the agile methodologies today. Take for an instance, SCRUM, the concept that was used long ago and is not now becoming very popular in IT industry. Lean methods / theory of constraints , etc have been in practice in manufacturing industry way back. Now, IT industry has started widely using these.

   ibbaru.jpg  Anyways, I just noticed proverbs on Veena’s blog  and took a snapshot of a line below. What it really reads is what this article from David’s post says “Two heads are better than one.  And we have read these in 70s in our primary schools and this has been an ancient proverb and such proverbs were explained in schools and pass time stories for elementary school children. It appears to me as if it now makes a lot of sense since we are implementing those concepts now. But to me, I think, the concept has been there for-ever and wasn’t put in right use, as I know of, or wasn’t popular those days.

<4/20: updated typo above>

{tags: pair programming, Agile,  }


Training: Visual Studio Team System – part2

April 15, 2007 12:35 am

I had posted about an online training / presentation pointer that I had received from someboday before. Looking at web / MSDN blogs, I found few more such resources to learn visual studio team suite / Team foundation server.

Team System Rocks –> There are a lot of resources on this site.
Some FAQs
customizing your own process templates
Customize tool kit

MSDN – Team foundation blog


Seagull: Begin by knowing you have already arrived

April 15, 2007 12:19 am

 

SeagullUpon looking at Veena’s blog picture – seagull,  I placed a hold on Jonathan Livingston Seagull video at our local library.  I remember hearing this title before but had never made an attempt to read or watch video. However, we received a video today and I am watching this video where I think we are half way through the video (paused it for tomorrow). It is interesting to learn about that seagull’s life, the determination he has and how he gets better. I just looked at the Wikipedia to see further about the book – authored by Richard Bach. In the midst of my 2-year old’s blabbeing and this video running, what caught my attention was the phrase “begin by knowing you have already arrived”. It is a very powerful statement. I think of this as Dr.Covey’s “Begin with end in mind”. Although the video I am watching wasn’t detailed enough for this phrase, but thinking about this – for a second – it is so true most people do forget where they are headed to in life, and just take things as they come – Crisis Management. 

 

I understand it depends how we interpret certain things, however, Jonathan Seagull makes himself courageous to explore new things (viz., fly high enough and beyond the limit), understands the meaning of limit. Learn everything possible by self exploration and through the mentorship. Here comes the value addition of mentorship. He already knew about flying and had put lot of efforts into it. He had seen the world the long and hard way as part of his exploration, in spite, he wanted to learn more. I call that as a great Attitude. As I understood, having that kind of mentorship helped him realize his purpose of life. He finally learns new things and per the suggestions/advice, he goes back to his community to help others to fly – think outside the box. “Forgive” is another word I heard there. As I read somewhere recently – “Mahatma Gandhi says: Forgive is the Attribute of the Strong.” Jonathan Seagull now becomes a teacher to help others being a student himself to learn from others. This reminds me of what Christopher Columbus said. A) Be a student for the initial 3rd part of life – learn everything from the teachers, life, mentors, etc.  B) build the fortune, accumulate all the skills required to be successful in life and C) now become an ambassador – teach what you know at the same time be open to learn more – Give back what you can to life and living being. 


UI browsing standards

April 11, 2007 10:37 pm

There was a discussion about web UI standards that I was part of. One interesting thing we were discussing was about Tabbing across UI elements. In my opinion providing user a better experience is what makes the website stand different. 2 key things I would like to provide on any website design

1. Better user experience (functionality)
2. Accessibility (Intuitiveness, being able to navigate, cruise along the pages/ controls, etc)

Although most GUI users are very well accustomed to using Mouse device, we still see many people using keyboard to cruise along the applications. I like using keyboard on user entry fields, using keyboard shortcuts on other applications. Tab is one of them, that I kind of not really like using for traversing the UI elements - however, there are many users like tabbing across fields for input fields. The topic itself was with respect to tab to calendar control and be able to popup the calendar. So there were some differences in the discussion on this topic. Now, my argument there was purely by a naive user perspective. It has been quite a while since I read UX related documentation.

Look at Expedia or Orbitz websites. Go to flight booking panel and tab through the fields. Notice when the focus goes to leave and return dates. That is something I am referring to  where on a tab user should be able to see the calendar popped up and be able to select the dates via Keyboard. Well, these sites do not have a specific calendar icon by the field, but I am looking for a website that has a calendar control by the text field and still be able to open the calendar on a tab focus.

Now, to readers here, Is there an online resource where I can find the web UI element standards with respect to Accessibility, etc

{technorati tags: accessibility, software quality }


Training: Visual Studio Team System

April 10, 2007 10:55 am

Came across a great online audio/video training on Visual Studio Team system. I went through couple of modules yesterday and it looks great. Modules covered are: 
Overview and Architecture
Deployment and Maintenance
Extensibility
Reporting
Team Projects and Template Customization
Team foundation Version Control
Team Foundation Build
Team edition for different disciplines

I was more interested in Reporting and Template customization and going through these sections. They seem to be very good. Do take a look if you are curious to know and learn about Visual Studio Team System

 {technorati tags: VSTS, }


context Switching and Multi tasking…

April 4, 2007 11:31 pm

Multi-tasking: How productive can one be doing multitasking. Sure enough, in active information era like this, most people expect people to be multitasking. In a way it make sense, but from psychological human behavior, it may not be possible. I heard that an average human being can keep 2 tasks in mind at any point of time to work on. That’s very interesting…

Context Switching: I never knew context switiching would be difficult. I understand the power of Repetition – well then that becomes a monotonous task and mind is completely programmed. Here is an example I went through in a class i attended recently. This was an exercise. Try this out:

  1. 1. take a 10 seconds and write Alphabets from A to Z. At the end of 10 seconds, stop and circle the last letter (a, b, c,…. z)
  2. 2. take 10 seconds and write 1 thru’ 100. at the end of 10th second, stop and circle the last number you wrote (1, 2, 3, 4, 5…. 100)
  3. 3. Now, take the same amount of time and write the series A1 B2 C3. etc… Stop at the end of 10 seconds and now circle the last letter.
  4. 4. now, compare the letter circled on step#3 with the one in step#1. And also look back and feel that experience

From this example, we would notice, we certainly b able to work on one area successfully and the moment we add additional tasks, the productivity goes down.

So, is multi tasking like this good?


SCRUM and deliverables…

April 2, 2007 11:48 pm

I am still confused. Either I don’t understand the essense completely or I am not finding the right resources. What is it that I am confused about when it comes to the project management framework like SCRUM. I have been part of the projects in SDLC or waterfall framework. As you know waterfall framework is phased approach and the phases are analysis,development, test, etc… Either because I am used to this environment or the concept itself, at least, it helps us to see 6 or 10 months from now. Yes, it may not be accurate, but at least you do have some references or/and guidelines.

Well, SCRUM framework itself is made of timeboxed sprints of generally 30days each. And at the end of each sprints you have something that can be delivered. Cool, that’s great. You always have something to go live with. I understand this type of thinking works great with sustaining kind of products where you can plan for releases every 30 days. But then, How about a version 1.0 kind of applications? I heard it is much better to use scrum for this situation that gives a lot of flexibility to the product owner and the team.  I agree, product owner has the flexibility and be able to see something at the end of each month / sprint. At the same time,

  • how about the teams?
  • How would it help the functional teams to see the big picture?
  • How well the design teams be able to design an architecture that is scalable for the entire feature in scope by the end of nth sprint?
  • What are the possibilities / likelyhood that the architecture will have to be re-designed in 5th sprint because it didn’t fit the feature set that is being built in 5th sprint?
  • How are testing planned?
  • What would be the temperature check of the functional teams by the end of 5th sprint in terms of changing code, changing design, changing test cases, executing regression cases, changing automation. How would all the time be accounted for?

One may say, modify the SCRUM framework to accomodate the situation. Great, but that’s not what SCRUM recommends. Anyways, my objective of this post was to know how and where I can get better information to understand the Estimation, Project Schedule and the end Deliverables mapped together. I had once put together some resources etc on this blog before. I think my compile is incomplete. How do I know? because – my questions are still not answered. I think these can be better answered if only if product management creats a better product backlog and properly prioritized on what feature set is absolute requirement. So my understanding at this time is “thru SCRUM framework project management, by the end of 4 sprits we should be able to go live with something. At the end of a sprint, we will have something working. We can’t promise on releasing product in <so and so> month.

please help me have a better understanding of SCRUM framework …

{technorati tags: scrum, agile management }