Software Testing & Using Evernote
Wednesday, January 20, 2010 at 10:30PM 
Working for IAI S.A., I have been frequently challenged with necessity of minimizing the overall cost of the development cycles, be it incremental or a milestone deployments. It is a common thing, especially when your responsibilities include software testing and user experience evaluation. On the one hand, in such role you are solely responsible for quality enforcement and implementation. This usually entails running several use case scenarios, data integrity and validation checks, both being performed either manually or semi-automatically using unit testing approach provided by certain tools and techniques. On the other hand, regardless of the approach in use, it is simply cost-prohibitive to analyze alternative solutions that are essential to testing. This is very much the case during evaluation of pre-released software when there's virtually no time to discuss program alterations or UI modifications that may spur new and innovative ideas. Such situation poses great risk of losing all of the novelties while performing testing routines.
For most of those situations, I used to be left in the dark without a proper tool for collecting my ideas in form of compiled notes, screen shots and photo snaps outlining either a new feature or just preliminary specifications of new system modules. That had not been changed until I found out about Evernote, a wonderful piece of software that was being advertised as an assistant to virtually remember everything. Soon, I decided to give it a try, especially when Mac OS X front-end app was announced to follow afterwards. And needless to say, Evernote and I clicked from the very beginning.
There are a few niceties I particularly like about the software:
- The UI: it's uncluttered, unobtrusive, unsophisticated and therefore tremendously pleasant to use.
- Navigation: limited to selecting between views, notebooks and notes, it's clear-cut and, more importantly, providing concise overview of collected information.
- Tagging: each note may be associated with metadata in form of a set of tags. Using them in consequent and logical manner offers indexing and finding the desired information extremely quickly. To my dismay, the ability to form categories of tags into more robust compound indexes has not been supported.
- Saved searches: this feature is particularly convenient when you continually refer to the same information that is either shared or dispersed across existing notebooks. It works similarly to the smart folders functionality available in Apple Mail or in any other data processing Cocoa application.
Evernote main window (Mac OS X client app shown).
The Mac OS X client has unique finishing touches that make Evernote stand out in at least aspect: the way it handles events using animation. In Evernote events denote change in a note's state, e.g. after an update of the contents. For example, if a note is edited and synced with your online account, the change will be signalled by sliding the currently edited note on top of the notes row. This can also be seen while an initial sync is being committed upon which the already collected notes are sorted dynamically. The sorting is performed using smooth and prompt animated gestures visualizing the applied ordering scheme. The sorting regime may be changed dynamically between date of update, date of creation, title, size and source URL. My favorite is the he first one as it allows me to follow the recent changes I've made on a predefined timespan.
After some rudimentary examination and having created my personal notebook, I finally decided to hire Evernote to the job during software testing. That was a sort of challenge as testing routines have been divided into two distinct categories:
- UI overlay testing: during this testing routine the online store layout, CSS design and page flow sequence are investigated. This means scrutinizing visual and functional components, navigation, reference links and interaction served by embedded JavaScript mechanisms. All of those activities require thorough examination with additional focus on data integrity and processing.
- Shop management systems review: in this session incremental and milestone updates to functional modules of the online store engine are closely reviewed to minimize risks of potentially erroneous behavior. This proceeds to eliminating conflicting features, assessing component usability and UI performance testing. All of these are performed with meticulous attention paid to data type correctness, integrity and validity checks.
Regardless of the category, a usual discussion on the available features follows to evaluate the final outcomes. All of them are re-examined to critically assess if they have effectively met the requests and inquiries made by IAI-Shop.com customers. Needless to say, it's a painstaking process executed within certain budget constraints. Therefore, jotting down something, be it an outline or a functionality statement, in efficient manner is simply a must.
That was when Evernote stepped in. At first, I observed if I could produce systematic results within the same or possibly more limited time and I could. Afterwards, I verified if I could grasp the essential terms and produce a straightforward memo that would allow me to delve into details and work further later on devising a functional specification. Astonishingly, not only could I achieve it, but due to handy feature as the Evernote's Clipper, I was able to render rudimentary proposals containing reference examples three times faster. And so I continued with the flow. I started taking notes and uploading every detailed piece information including photographic images presenting outlines of new modules or algorithms, PDF documents (reference manuals, e-books), some articles and various clippings of use case descriptions and model examples. That is how my professional knowledge base was born.
One of the particular strengths of Evernote is mobility. With front-end app deployment on virtually any existing platform, I can access all my information everywhere and practically on any mobile device. That is because I can always resolve to the web client. Although it's not as refined as the front-end variants are, it's more than capable of doing the job. I can now frequently refer to some of the memos or more sophisticated notes while I'm riding in a public transit thinking of new and potentially interesting features that would fit in the IAI-Shop.com software. Hell, I can also prepare rough notes for this blog. Isn't it wonderful?
To conclude, using Evernote has allowed my to streamline my professional workflow. Its features such as mobile access, design logic and clean slate interface provided me with the capacity for quickly absorbing and organizing both fragmented ideas and more developed forms into a coherent and easily accessible information system. It is remarkable that once isolated memos, documents and photo snaps can now be synthesized quickly yielding to testing documentation, project proposals or functional specifications in a timely and versatile fashion. I encourage you all to give Evernote a try in your professional work setting. Maybe it's just notes today, tomorrow it may be uploading photos, nonetheless when combined with purposeful approach, this software will get you further with whatever you're doing.
evernote in
Software Development
Reader Comments