Sunday 12 April 2015

My Third Year Journey

It gives me a great pleasure whenever I think/write about my journey. I felt that I just shared my 2nd year journey few months back. But, it’s almost a year. This shows me (make me to feel) how much I enjoy my job without knowing the time. Yes, it’s a third year completion for me in the testing industry :)

Highlights of first two years Journey:
I joined Moolya Software, Bangalore in the year 12-Apr 2012. This was my first job in the field of Software Testing. In Aug 2012, I was temporarily stopped. In Jan-2013, I started my journey in Mindzpark, a start-up in Coimbatore (TN). I was the first and one and only Software Tester in that organization. Some great things happened in between that duration. Apart from my project work, I focused more on blogs, published book, connected to more testers with similar interest.. There were few supporting hands who helped me to do all these work.

In the year 4 Feb 2015, I rejoined Moolya Software, Bangalore. It was like “A Home away from Home” feel. I was extremely happy because I know that I am going to work with few passionate testers and it happened. And the journey is still continuing :)

Third Year Journey:
In the first two year, I focused on testing web applications. In the third year, I got an opportunity to work on Mobile platform.  Every year, there will be always some new people who keeps me inspiring. I always used to mention about my Gurus Pradeep and Parimala and my colleague Raivsuriya who are my great inspirations. As, mentioned in one of my blog, their guidance are like a blessing rain for me.  I feel that I am blessed to have them as my mentors. I am not sure, where I have leaded my journey if I didn't get an opportunity to meet them. It all happened in one place “MOOLYA”. This is one of the reasons why I don’t want to give up Moolya at any cost. I always have a great respect to the organization (the place where I found my passion and that changed my style too : )

How my team inspired me:
To me if I am not happy with the environment (work place), I won’t give my best at work. Nowhere this has happened because of my team mates. That’s an another blessings where I got an opportunity to work with such great Testers Megha Harsh, Vani Vinay. These two people keep me inspiring in many ways. I learned the work-life balance with these two people.  I was impressed, on the way Megha handles work-life balance. Her work style, way of handling the project, passion and dedication inspired me a lot. At one point of time I realized that she has a great leadership skill.

Their passion and dedication at work made me to work along with them with the great spirit and things are going on our favor. This made me to realize that great work could be done when there is a good coordination in a team.  I could proudly say that this is my best team I have ever found so far.

Motivation from client:
There was a great support from the Dev, Client (PM), who keep motivating me to focus more on work. It’s hard to have such great people in one team. But, again I am blessed.

“No Ego’s in a team make me more comfortable to continue in a team”

On learning front, like last two years, this year too turned as a great time for me. I have explored many areas in Mobile platform. And still exploring without feeling bored: ). This I was able to make it with the great support from the team. Note I meant great not good or better :)  This year turned as a special year for me. So many changes in my work style, learning, contact with few more passionate Testers/Developers.  

Why it’s good to have a mentor:
If I have not met my Guru, I don’t know where and how I will be today. Finding a right mentor is hard, but, if you have them, you are blessed. I have a dream, I want to chase it. I was looking for the path to travel. They showed my path, I am travelling to reach where I want to be. There will be many obstacles while travelling. We need to be prepared to tackle that. The mentor might help in those cases. I am prepared to face anything, because my focus is only on the destination not what is coming in between.
I am not a talkative person. I belong to “Work more talk less “category. But, it doesn't mean that I never talk, I do when there is a need for it. I have my own style and that’s my identity. I don’t be a copycat of someone’s style.
I wish my fourth year journey starts with great energy with the same support from my Gurus, team members.

I have to end up my writing by conveying a big thanks to all the people whom I mentioned and others who still supports me.

With Respect
Pradeep Lingan
               







Sunday 14 December 2014

My Opinion on Android Device Fragmentation

I started my career in testing the web application. Two years later, I focused on testing the Mobile applications. Till the time I started testing the mobile app, I thought there are not much difference between the web and mobile other than screen size. But, from the day one after testing the mobile apps, I understood that both the web and mobile has its own challenges not the screen size alone.

Here I want to share some of my learning and concerns that I made/had in testing the mobile apps.  To me focusing testing on various platforms just needs a mindset first. Let me not talk what software testing is J

Okay. I have worked on Android/Windows Phone/ iOS.  The great challenges that I faced and facing so far is that the device fragmentation in Android. Yes, the ratio of devices uncovered is much greater than the covered devices. I believe there are good practices to do that. But, there are no such best practices yet. Looking for the best one soon J

I believe device coverage is not a great challenge when it comes to Windows Phone and iphone Apps. But, the story is quite different when it comes to Android.  Few months back I read through one article which says, there are 18000+ Android devices available in market. This count itself looks like OMG. But in WP and iPhone this is not a great challenge.  I am talking about the Device coverage challenge alone, not the Technologies.

There are no such supported tools to do that. Simulators/Emulators can do to some extend, but I can’t rely only on that alone. Also, the experience in using simulators varies from the real devices. So, I prefer to go with real devices. In worst case I choose simulators.

There need to be some ways that could help us to do at-least a good coverage so that the users don’t face more problems in using the apps. Problems are unavoidable while using the apps but could be limited to certain extend. It is purely based on the work that we do. As it is hard to cover all the devices, I would prefer to give my coverage in three ways.

There are certain parameters which needs to be focused in giving the coverage
·       
  • Covering all the versions
  • Covering the mostly preferred devices
  • Resolutions


Resolutions:

  • LDPI
  • MDPI
  • HDPI
  • XHDPI
  • XXHDPI


Versions:
As most of the app users use 2.3. It is better to have the app that cover from 2.3 and above.

  • 2.3-2.3.2
  • 2.3.3- 2.3.7
  • 3.0
  • 3.1
  • 3.2
  • 4.0-4.0.2
  • 4.0.3-4.0.4
  • 4.1
  • 4.2-4.3
  • 4.4
  • 5.0 ( up-to date)


Devices:
It may not be the best solutions. But, it could be a better option.

  • Samsung
  • LG
  • Sony
  • Karbon
  • Xylo
  • HTC
  • Motorola
  • Spice
  • Huawei
  • Micromax


Now, let’s draw a tabular column and figure out the devices to be focused (targeted) on.

Thank You !

For any feedback please contact

E-Mail Id: ktg.pradeep@gmail.com
Phone Number: 08748887074
Skype: pradeep.lingan1


Monday 22 September 2014

iOS :: List of UI Controls

Action Sheet




Activity Indicator 


Add Button


Alert 



 Button 




Date Picker

 Detail Disclosure Button 



Navigation Bar 


Page Control


Picker 


 Progress View


Refresh Control 


Scope Bar 

Search Bar



Search Bookmark Button




                                                                                             




 Search Clear Button 
    


Search Prompt


  


Search Bar



Segmented Control








Share Screen



Slider



Status Bar

 



Stepper

 


Switch 





Tab Bar 



Text Field



Tool Bar Button


Saturday 20 September 2014

iOS :: Devices Model & Release Date Details

I just gone through the Apple's product details. It was quite interesting to learn about the products and the release details. So, here I am sharing the details of  each products  release. 


Saturday 16 August 2014

Windows Phone App :: UI Components :: Contracts and Activity Life cycle

Contracts:

It’s like an agreement between two different apps for sharing the contents. The two different contracts used are Source and Target. When the app needs to share the content supports source contract by meeting a specific requirement. Whereas the app that needs to receive content from the outside source uses a Target contracts by meeting a specific requirement.

Activity Life Cycle:
 
 The various activities performed on user’s interaction with the app are listed in the activity life cycle diagram:



When the app was launched by the user, the OS displays the Splash screen of the app. Once it is displayed, the app should be ready to display it’s UI to the user. This should be performed in few seconds.

The app may not be in the running state when splash screen is displayed. Once the app enters the running state, the app is activated and the app UI is shown. When the user moved out of the app, it moves to the suspended state. The data that are used will be saved. When the user re-enter to the app, the data will be shown again.

 The OS can also terminate the app after being moved to suspend state for various reasons like, the user sign-out from the app or closed the app manually or the system may be running on the low resources. Once that was happened and when the user re-launches it again, the app should start displaying the splash screen.  Not running state occurs when the app is not been used for long time. On resuming it, the app will be activated.

Animations:

Add and delete:

It enables us to add or remove item(s) from a collection.

Content Transitions:
It helps to change the content in the area of the screen while keeping the background constant. When the new content fades in, the existing content fades out.

Drag:
Use to move the object from one location to the other.

Edge based UI:
Edge based show or hides the UI that originates from the edge of the screen.

Fade:
It is used to bring/move the item from the view.

Page transition:
It is used to display the first page of the newly launched app or the transition between screen within the app.

Pointer click:
It provides a visual feedback about the tap on an item. Pointer down is used when the user tap the item. The animations slightly shrink an item indicating that it has been tapped. Pointer up animation is used when the tap is released.

Re-positions:
It is used to move an element/s to a new position.

Pop up UI:
It is used to show/hide pop ups which includes fly outs and context menu.

Swipe:

It is used when the swipe gesture is implemented for selection of an item.

Wednesday 13 August 2014

Windows Phone app :: UI components :: List of Controls with image

I have shared the list of controls name in my previous blog post. To get into that post, please click here . In this post,I am sharing the controls name with the image.



Gestures: Apps behavior on applying single and double tapping

Recently, I noticed the risk of implementing two different actions on making a single and double tapping. Here is the scenario.

I was on the screen which has three text fields and all the three are mandatory. I entered data in first two fields and submitted the data by leaving the other one as empty. I got an error pop up which says enter the data in the third text field (this is not an actual error message content) with the button “OK” provided to close that pop up. So, I made a single tap on the button and noticed the behavior. I also noticed the behavior on making double tapping the button in the same pop up screen.

The actions for single and double tapping are not same. For single tapping, it closes the pop up screen and now the screen with the three text field is in foreground. On making double tapping, I noticed that, the action for the first tap closes the pop up screen and the second action was hitting the text field which was overlapped with the “Ok” button in the pop up screen. So, the second action was enabled by itself and taken to the different screen. I noticed the risk of having such behavior. I know that the risk varies based on the context.

Imagine, if it is a Payment button, Send button for email, or any other options (that needs just one action to compete the task) has been replaced in the place of text field. Here the task will be invoked automatically without the user actions.

The risk rate could be low for the app where I noticed this issue. But still it is not a best practice as it adds one more screen to complete the task  and also as context change the risk rate might also change within that app. So, I suggest that the gestures double/single behavior should be same to avoid such risk. 

Few investigations we made to get into the issues are
  • We saw the pix-elation applied between the header and the text field.
  • Length of the dialog box in the screen.
  • Increased the size of the font size through phone setting and noticed the behavior.