Friday, 27 January 2012

How QA Matrix Meet Dev Metric?

Article written by Sreenivas Mothukuru

Most recently our team has received a user story from Product Owner (PO) where in we are asked to compare the records in excel sheet with the data in MySQL database to look for the matching records. At first glance the requirement sounds pretty simple and for a few minutes I was in an impression that the task can be done quickly. Now the million dollar question is

"When the requirement is so simple ... what made PO delegate the task to our team?"

This question encouraged me to revisit and review the user story requirements in detail. Then I understood that we need to compare each record from Excel sheet (i.e., ~1200 records) with the data in MySQL table (i.e., ~190,00,000 records) to look for the matching records. In brief, this task demands enormous comparisons to get desired result.

One of the solutions is to pick each record one by one from Excel sheet and query MySQL database. This way most of the comparison will be taken care by well constructed SQL query, however this process need manual intervention to execute the query modifying WHERE clause. For an individual to execute a query and copy the results to a file may take approximately 2 minutes. Then for ~1200 records it will take ~40 hours (i.e. ~5 days) to complete the task. If shared between 6 members the same job will be done within 7 hours (i.e., within a day).

Is there any better approach to get things done in minimal time without pulling many individuals for this task?

The answer is "Yes". 

Plan A:
A simple Java program with an array of Excel records are passed to query which checks for the matching records (one after another) and the result set is copied to a text file. This way I was able to make the program compare all records in excel sheet with ~190,00,000 records in MySQL database in just 20 minutes.
  • Semi Automated approach: ~1200 manual comparisons [~40 hours (i.e. ~5 days)]
  • Automated approach: Comparison done using Java program [20 minutes]

But, there are some limitations with this approach. Below questions urged me to go for plan B.
#1: What if the Excel sheet has duplicate records?
#2: What if somebody else want to sort / search / query with specific criteria using the result set?

Answer #1: By eliminating duplicate records from Excel sheet will reduce the turnaround time.

The alternate way is to create a table, insert Excel records into it and then query distinct records from it. For this purpose, I chose MySQL database. For this I quickly wrote another java program to insert Excel records into new table.

Now everything is set.

Answer #2: Further sort / search operations are not possible with the resulted text file.

Plan B:
Extended the first java program to fix problem #2. This time result set is inserted to a new table instead of text file.

This approach helped me achieve my goal within the available time. However, this is not the only solution. If not plan B there are plan C, D, E ... Z ;)

Sunday, 1 January 2012

Personal Branding Checklist for 2012

Your guide to getting your branding strategy in order for the New Year.

It’s time to get your personal brand upgraded for 2012. We live in a day and time where first impressions are everything, so you want to make sure you put your best foot forward—especially if you’re trying to be successful in business for the New Year. The first interaction that most people will have with you will be online so we’re going to walk you through a personal brand checklist to get you on the right path for 2012 and beyond.

Category I: Personal Brand Building
      Identify your passion
2.      Identify your skills, talents and interest
3.      Establish your elevator pitch
4.      Identity your business values (i.e. this is important for aligning yourself with career options and employers that are a good strategic fit)
5.      Establish your niche and own it:
a.       Write a detailed description of the specific niche you want to own
6.      Establish your Brand Promise (what you will deliver on)
7.      Identify your Personal Brand Type (how you’re wired): Long-term
a.       Builder (i.e. intrapreneur/employee)
b.      Leaper (i.e. full-time/pure entrepreneur)

Category II: Creation of Your Identity
8.      Identity whether you’re building a personal and/or small business brand online
a.       Personal Brand: Focus on establishing personal branded social network accounts
b.      Business Brand: Establish social network accounts that are specific to your business brand
9.      Are you using your professional business name (i.e. Mike Jones versus Michael Jones)?
a.       Social networks
b.      Domain names
10.  Research competitors with the same or similar name
11.  Purchase your personal and/or business brand domain name
a.       Use it as your online hub
12.  Secure the social network URLs you want to have a presence in (listed below are some of the more popular social networks to join, but this is not an exhaustive list)
a.       Twitter
b.      Google Plus
c.       Facebook (optional)
d.      LinkedIn
e.       YouTube
f.       Slideshare
13.  Establish Bio/About You: Should be presented as a story
a.       Establish three bios: 160 characters (Twitter), paragraph and long-form version
14.  Keep Social Network Profiles Consistent: Make sure you are consistent across all your social network channels
15.  Social Network URLs—create custom URLs (at least for the Big Five: Facebook, Twitter, Google Plus, LinkedIn, and YouTube i.e.
16.  Avatar photo
a.       Identify the look and style you want to communicate in your online presence
b.      Set-up Link to Download: Upload a hi-res version into Flickr and provide links so you don’t have to email large files
c.       Use the same headshot across all your social networks
17.  Professional email address (Gmail or email with you domain name)

Category III: Social Network Basics
18.  Social network profiles at 100% complete
19.  Take down any photos or inappropriate content in your social networks
20.  Privacy Settings: Properly set-up privacy settings in all social networks
a.       Facebook
b.      LinkedIn
21.  LinkedIn 100%: Established 100% complete Linkedin profile
22.  LinkedIn Resume: Uploaded a PDF version of your resume in LinkedIn
23.  Linkedin Q +A: Answer questions to establish your expertise.
24.  LinkedIn Groups: Identify and join LinkedIn groups for networking
25.  Review LinkedIn profiles of people in similar positions (Point of Reference)
26.  Establish a Google Plus profile
27.  Google yourself—worst case you should, at a minimum, Google yourself every three months. I would highly recommend you increase the frequency, personally I Google myself weekly.
28.  Online Reputation Management – Set-up Google Alert keywords
29.  Customize Twitter background
30.  Create video content
31.  Build LinkedIn network:Reach out to second-degree connections
32.  Access whether the perception of your online content equal the reality of who you are
33.  Actively build your online network
34.  Establish a maintenance plan to review social network profiles quarterly
35.  Identify specific contacts within companies you want to work with or for

Category IV: Online Personal Branded Hub
36.  Establish an online hub/blog
a.       WordPress
b.      Blogger
c.       Create outbound links to your social networks
37.  Integrate a great design—think like a designer
A.    Photos
B.     Blog template selection
38.  Social Network Links: Create outbound links to your social network profiles
39.  Localized Presence: Establish a presence in your local market
40.  Work History/Experience—Linked with projects

Category V: Establishing Social Proof/Demonstrated Expertise in Your Area
41.  Create a content strategy for your blog (how often you will publish content)
42.  Create a content strategy for your social networks (how often you will publish content)
43.  Create content that is on message and consistent with your industry or niche
44.  Manage your links via analytic shortners ( or
45.  Establish multi-media content: video, blog post, and photos communicating your expertise
46.  About Page on Blog: Write your about page in the third person so that it is media ready and media links to your page
47.  Create a media page on your blog
48.  Listen on Twitter: Identify keywords or topics to listen and participate in the conversation

Category VI: Miscellaneous
49.  Think in sound bites
a.       Tweets: Tweet only 120-characters w/links
b.      Creative short blog post
50.  Business cards (Small Business Owners)
a.       Integrate relevant social media links for connection: Twitter, Skype
b.      Digital Business Cards: Bump and Hashable
c.       Create a business card for job fairs/networking
51.  Create opportunities to meet digital friends in the real world
52.  Use third party tools to manage social networks: increases engagement, better management of online reputation, and great for listening online (i.e. Hootsuite)
53.  Pull your credit score (all three reports)

Content copied for other sources