Friday, August 4, 2017

Learning an Application: Can you find clues within the application itself?

I recently changed jobs and landed myself in a totally new domain for me. I am spending most of my time learning about the domain and the products involved. There is little documentation about the product, the team is very busy with the day to day work and I am left alone to explore and learn about the product.
There are different styles of learning about an unknown entity and one of the approaches I am following is to interact with the product, create mind maps about the product's capabilities and see if I can make any sense out of the data. While I was playing with the product, I observed that there was a big difference in the number of options displayed since I used it the first time and now. So, I called up my friend who had experience with this product and asked what could be the reason. He told me that the options could have been hidden due to a configuration in the application.

Quite possible and then we went to the configuration screen and there were few roles already assigned to my user id. I spent few minutes checking out the different user roles and was amazed at the information the product was sharing with the user.

For example, consider Google Maps and imagine if it had user roles like
maps.add
maps.view
maps.delete
maps.update
directions.favorite
directions.satellite
directions.optimise
directions.reverse
directions.reset
and so on.

So, by looking at the roles I can infer that there is an option to even optimise the directions even without looking at the directions screen. Few questions I can think of by knowing this information:
- Have I tested this feature
- How is this feature dependent on other features
- Am I even aware of this feature

The answers will help me understand
- my test coverage
- my knowledge of the application
- the capability of the application (in terms of whether the feature is discoverable by the users or not)
- my model's strengths and weaknesses (or loopholes)

Have you encountered similar situations at work? What has been your experiences in learning a product of a new domain? Looking forward to your comments.

1 comments:

Ajay Balamurugadas said...

Physical Items
# Five buttons placed vertically
# One vertical slider
# Two horizontal sliders within a circle and a ball on each horizontal slider
# Colors
# Puzzle 1 text + Drum + ?
# Units - 10 on each of the three sliders with marking on every half unit as well
# Naming - YS1, BS1, BS2, BS3, BS4
VS
HS1
HS2 (Horizontal Slider 2)

Do you notice the slider marking is not uniform.
=========
What is under our control
Individual button switch on/off
VS - Movement of ball

Different States
None of the buttons are pressed
VS moved - 0 to 10 positions in increments of 0.5 - could be anywhere
One of the button is pressed - two pressed, 3, 4,5
Yellow button clicked after BS1/BS2/BS3/BS4/Combination of BS (Blue switches)

Behaviour
BS1/2/3/4 - HS1 (2.0)
YS - moves to 3 and back

BS1+2 - HS1 (4.0)
1+3 / 1+4 /
Order doesn’t matter in two BS

3 buttons - HS1 (6.0) / VS (0)
4 buttons - HS1 (8.0) / VS (0)

===========
VS position (10) - BS1 - HS1 (2), HS2 (4)
VS (9) - BS1 - HS1 (2), HS2 (3.5)
VS (5) - BS1 - HS1(2), HS2 (2)
===========
VS (5) - BS1,2 - HS1(4), HS2(3)
VS (5) - BS1, 2, 3 - HS1(6), HS2(3.5)
VS (5) - BS1, 2, 3, 4 - HS1(8), HS2 (3.75)
=========
Timer
Hints