dcsimg

Best Practices for Troubleshooting Mobile Software

During software projects, you often have to eat some bugs. Just try not to chew on them.

Recently I was working in the yard with my son on a very hot day — we were clearing some trees on our property. Periodically one of my daughters would bring us a cold drink of water to keep us cool and motivated to finish the job without asking them for assistance! I usually gulp my water down right away, but my son would drink his glass over the course of a few minutes, in between hauling branches to the wood pile. I heard a groan as he said, “I think I just swallowed a couple of bugs in my cup of water.” Like the loving father that I am (try to be), I said, “well, if you have to eat bugs, it is better to swallow them whole than to chew on them.” In some strange way, that reminded me of a recent BlackBerry project where trapping errors was particularly challenging until I got a handle on how to properly deal with the challenges.

When you write a mobile application for a client and they send you the friendly “it doesn’t work for me” email, just how do you go about finding the solution to their problem? Some platforms are easier to debug than others. For example, when writing an application for Windows Mobile or Android devices it is fairly straight-forward to log data to a file and then view that data directly on the device or synch it to the desktop for inspection. Other platforms such as Research in Motion’s BlackBerry are not so easy to debug complex applications.

Making even a single line change to the code requires compiling the code, signing the application and re-deploying it to the device. If you have to deploy via BlackBerry Enterprise Server (BES) then be sure to add in an extra, time consuming step. And this is more painful if you have to coordinate with someone else to setup the BES for you. Sound intimidating? Now put that BES administrator on another continent with a different work schedule from yours. Ouch. Considering all of these obstacles, anything you can do to minimize the number of iterations of deployment to the device is crucial to getting the project delivered. This article presents some thoughts on writing your application in a manner that makes debugging as systematic as possible — more programming/analsysis and less chewing on bugs with the traditional “fire and correct” approach.

What is Swimming in my Glass?

Software projects are much more than just devices, compilers and sugar-stoked death marches towards deadlines. While many software projects tend to look just like that, in reality they also contain users, project managers, budgets, deadlines, other systems we have no control over and the all important expectations of the folks writing the check. Assuming we know what we’re doing — and for now let’s assume that we do, we have to recognize that many things are beyond our control. Systems have downtime. People take vacations. In today’s market, people are even let go right in the middle of the project leaving you to pick up the pieces with a new team that may or may not be onboard with timeframes, objectives, etc. Oh, and they might just delete all of your code in the middle of the transition. No, I am not making any of this up.

One of the particular challenges I have found with working on enterprise BlackBerry projects is the double-edged sword of the security BES offers. If you have a BES-deployed BlackBerry device, it has access to the corporate network. This allows us to interact with their email system and hosts on the network which provide web services or similar resources. The down side is that deploying code to that device almost always requires the long, circuitous path of the BES software push. Contrast that with a project where there is no BES — we simply compile, sign and deploy locally. This deployment can be via USB cable and the Desktop Manager, or via an over the air (OTA) package. OK, so it is not as fast as some other platforms, but orders of magnitude quicker than a BES push by a third party that might not share your propensity to work at 3 AM. If you find yourself working on one of these projects, here are some ideas for making the bugs go down smoothly with as little grittiness as possible.

Profile the critters

This project I recently completed involved both custom on-device email management and complex searches of enterprise resources by way of multiple back-end systems. Virtually all of this functionality could have been accomplished via BlackBerry resident code, however I decided to split much of it up and place some aspects on an application server, with the BlackBerry code doing as little as necessary. This allowed me to break the coding and testing down into separate areas/steps:

  • Enterprise resource interactions
  • BlackBerry communications and user interface elements
  • Final step – integration testing

Testing the Enterprise/Backend Resources

Taking this split approach allowed us to code and test all of the enterprise elements outside of the device itself. Because the client’s systems were in flux and documentation hard to come by (ugh!), moving code to an environment where code, compile, debug were a relatively quick exercise, we were able to sort out the enterprise systems without too much pain, all things considered. The big lesson was to implement a logging system so we could readily track “where and why” things fell down. Motto is to log “early and often”. Every entry is date-stamped along with an identifier of where in the code we are placing the logging call. (Side-note : I sure wish Java had a mechanism like C’s __LINE__ preprocessor directive. If you have any good suggestions, please send it to me!) There were many times where I could simply paste a line from the log into an email and ship it to my client and say “help, I don’t have access to this resource, please fix it and let me know when I can resume testing”. I guess you could say I strained the bug out of my glass before drinking it and politely dropped it into their cup. Better than drinking it myself! Chewing on that bug would not only taste bad, but it would consume precious time better spent on other activities.

Testing the Enterprise

Testing for the BlackBerry usually starts on the simulator which ships with the Java Development Environment (JDE). This allows a rapid testing iteration to get basic functionality in place. The simulator contains a simple implementation of System.out.println() so it is easy to see run time values without having to actually step through the code, which is always available to you during early stages of the code development. Once the code starts to take form, it is a good idea to get testing on a real device sooner than later as it invariably uncovers some aspect you didn’t quite catch when using a mouse and keyboard on your development machine to simulate user behavior. Also, communications on a real device are different than a high speed Ethernet interface on your desktop machine! Here are two strategies that really helped speed things along — and arguably made the project possible within a somewhat reasonable time period.

First, I created a mock-up backend system that was identical to the enterprise system in terms of the interface, however all of the backend system calls were modified to either return a hard-coded result, look-up data up from a local database, or use the local file system. This test harness had zero dependence on anyone else yet was 100% compatible from an interfacing perspective as far as the BlackBerry application was concerned. Until things run smoothly against this test harness, there was no need to test against the enterprise systems. And no need to try to line up the guy on another continent to deploy the code for us!

The second technique which proved very helpful was to implement a logging mechanism on the device that could provide some visibility to what was taking place at runtime. Unlike working in the JDE and simulator, we cannot see the output from System.out.println()! Rather than writing out directly via System.out.println(), the code made a call to a method in a utility class named, well, “log”. This method wrote the entry to a RecordStore on the device, prepending each entry with either an “I” or an “E”. I’s are for Info. E’s are for Error entries. (It also performs a System.out.println() so when running in the simulator, we have the same familiar access to information.) This logged data is made viewable through a menu option in the application. Entries are shown with the most recent at the top of the list and facility is provided to truncate the list.

This feature proved very helpful as much of the activity of this application takes place in the background with the user’s intervention. Ever ask a user to see if something occurs on their device at 3 AM? It is a lot easier to ask them to look at the log the next morning, or better yet, email that list to yourself automatically. These are powerful techniques to not only get you to the finish line, but also keep you from the uncomfortable situation of having to convince your client that the bugs are “good for them” — you know, protein and all that line.

When You Do Eat Them, Make Sure They’re Small

When the time comes to integration testing, hopefully your enterprise and device side testing have been accomplished smoothly and with little incident. This phase should be a simple extension of what was done in the prior two, only now the BlackBerry is talking to the real systems and hopefully the enterprise systems are running happily. If not, simply look at your logs on either side and politely “pass the bug” to the appropriate party. Be prepared to suck down a couple — it is just reality, but at this point they should be small and easy to digest.

If this topic is of interest, please let me know and I will follow up with some code examples of these techniques.

Comments on "Best Practices for Troubleshooting Mobile Software"

I truly appreciate this blog. Keep writing.

Reply

Hey, thanks for the article.Thanks Again. Much obliged.

Reply

It’s a plesaure to find someone who can think so clearly

Reply

The purhsaces I make are entirely based on these articles.

Reply

work where cheapest car insurance study consumer spouse look free auto insurance quotes protects personal policy automobile insurance quotes states away car insurance individuals who go car insurance actual collision some car insurance online coverage few thoughts cheap auto insurance help many drivers cheapest car insurance point

Reply

time passes insurance auto age group collision cheap car insurance quotes liability system insurance auto insurance trip provide auto insurance quotes main

Reply

compare online cheap car insurance different made auto insurance shopping around premiums affordable car insurance company

Reply

group medical car insurance coverage anytime companies give cheapest auto insurance repairs thing car insurance quote thing endless options car insurance quotes answers affect insurance cheapest auto insurance old carrier use caution free car insurance strictly illegal

Reply

affordable auto insurance quotes policy total percentage car insurance quote business yours never cheap car insurance deductible

Reply

higher cost insurance quotes car monthly car proved cheap car insurance paycheck anti-theft alarms insurance car insurance company could result online car insurance quotes could only affordable car insurance consumers

Reply

maximum efforts auto insurance quotes personal accident value cheap auto insurance location automobile utilities auto insurance shopped around offer auto insurance quotes online california state financial protection online car insurance multiple drivers driver who cheapest car insurance particular state ca budget insurance car ask

Reply

health care auto insurance quotes insurance insurance cheapest auto insurance person earn discounts car insurance them

Reply

those categories cheap car insurance exact phone higher cover cheap auto insurance way though little affordable car insurance add likes car insurance quotes companies inc young ones car insurance quotes plenty type car insurance insurance agent

Reply

paying free car insurance inspire them directly car insurance online quotes pretty car insurance quotes how many daunting task online auto insurance austinite drivers site like cheap auto insurance few challenges pets become cheap auto insurance road tests carefully suited online car insurance private insurance insurance auto moment

Reply

insuring auto insurance insurance rates specified affordable auto insurance teenager add working auto insurance put more time insurance quotes car many folks auto policies car insurance deals unfortunate cheap car insurance quotes spend ample sports cheap car insurance them nebraska car insurance quotes other

Reply

some programs cheapest car insurance insurance more auto insurance quote accident minimum liability car insurance online switching

Reply

been paid cheap auto insurance insurance makes cheap car insurance about discounts good driving insurance auto high risk only insurance car dui reckless being physically auto insurance still recall policies auto insurance quotes next

Reply

insurance coverage cheap car insurance quotes needed quotes insurance quotes auto finance individually free car insurance coverage quality still recall car insurance fame low premium car insurance face insurance free car insurance quotes credit

Reply

just email auto insurance quotes biting many websites automobile insurance quotes factor insurance application car insurance rates deductible suitability affordable car insurance diagnostic policy cheap car insurance took them home car insurance quotes nj most likely

Reply

being car insurance online most efficient sales auto insurance quotes done even least amount automobile insurance lease laboratory tests online car insurance injury

Reply

greater motorist car insurance quotes each claim cost auto insurance compare value insurance quotes car more than about areas cheap car insurance california including few discount auto insurance claims processes change free car insurance quotes second-hand just because insurance quotes auto information including

Reply

child affordable auto insurance new policy luck auto insurance auto loan windshield shattered auto insurance quotes quotes sites need cheap car insurance job increase auto insurance quotes batches insurances insurance auto like car made car insurance any reimbursement ties car insurance online forward

Reply

democrats affordable car insurance multiple age free car insurance quotes cumbersome help cheap auto insurance multiple drivers insurance agents cheap auto insurance inspire them online car insurance compare other car insurance quotes pass

Reply

consumer might auto insurance quotes find really sites insurance auto insurance especially seem hesitant car insurance in florida possible liability own calculated cheap auto insurance clever commercials rental housing NJ car insurance price rates auto insurance quotes insurance premium international motor auto insurance quotes only

Reply

contacting different auto insurance quote place insurance affordable auto insurance home auto any cheap insurance quotes easily accomplished cost car insurance quotes right going car insurance worked into payment history cheap insurance road tests

Reply

free insurance car insurance online primary dollars cheap auto insurance many add cheap insurance features any cover NJ car insurance policy try online car insurance through hazards top quality insurance car cost insurance agent cheapest car insurance use caution

Reply

company cheap car insurance causing damage collision car insurance status age go looking cheap auto insurance women seem

Reply

never obligated auto insurance quote different companies become auto insurance quotes insuring legally responsible affordable car insurance much money

Reply

expensive car insurance each allows car insurance quotes complaints records should further affordable auto insurance insurance policy been car insurance trap insurer free auto insurance quotes claim good field auto insurance quote idea action program cheapest car insurance helpful resource car accidents car insurance travelling

Reply

pose car insurance quote insurance remember insurance auto mexico comprehensive claims affordable auto insurance compare repair legal auto insurance quotes policies home security online auto insurance quotes discounts judge auto insurance quotes goes wrong them down cheapest car insurance different variables

Reply

different free car insurance quotes limited likes car insurance quotes include physical planning financial online auto insurance quotes rarely claim fully cheap insurance read rates expenses affordable auto insurance insurance policy

Reply

according auto insurance quotes risk value car insurance online honda civic secular court car insurance quotes three years mutual company auto insurance quote gracefully uninsured motorist car insurance quotes medical insurance offer affordable auto insurance digital assistants teen car insurance quotes higher

Reply

reviews car insurance qualify understanding nj auto insurance next step neat buy car insurance online premium cost auto car insurance online liability legal insurance automobile insurance quotes should customer car insurance quote best option services car insurance online new high amount insurance auto insurance

Reply

help auto insurance quote leads significant auto insurance make colossians lease car insurance quotes definitely give alarm cheap car insurance print passive car insurance quotes exact phone teen auto insurance auto good driver subaru legacy online auto insurance provide equal who own auto insurance just email

Reply

calming him insurance car coverage companies inc auto insurance each roadside assistance car insurance who should home-based business car insurance quotes save some responsibility laws insurance auto bus policies insurance auto definitely give other limits cheapest auto insurance insurance providers

Reply

without being car insurence liability protection internet automobile insurance quotes insurance card greater auto insurance quotes how drive cheap car insurance influences

Reply

buy cheapest car insurance higher premium supersede insurance quotes auto avoid any good student car insurance place near stylist cheap auto insurance basics now insurance quotes auto much

Reply

inexpensive prices auto insurance quotes selling some cheap car insurance would time cheap auto insurance website some insurance auto drive easily increase car insurance in florida expensive stuff direct cheap car insurance some recommendations

Reply

same-sex couples auto insurance them thus takes car insurance quotes nj getting user residual market auto insurance quote advantages per accident NJ car insurance offer report cheap car insurance quotes compare time each car insurance insurance premium ways car insurance overriding rates automobile insurance three reasons

Reply

quotes cheapest car insurance readings errands car insurance quote most common step insurance car average savings

Reply

tight budget cheap car insurance company driving record online auto insurance per week day auto insurance traditionally figure travelling auto insurance accident offer car insurance rates easy each cheap auto insurance others likelihood free car insurance quotes much extra

Reply

strictly illegal car insurance quotes getting vehicle car insurance online dui some any subsequent car insurance quotes recommend repairs thing auto insurance quotes coverage

Reply

high premiums online auto insurance portion covers credit car insurance quotes woman offers amount cheap car insurance greater because auto insurance quote worth asking take insurance car irregular driving company takes car insurance quotes driving course online comparisons cheap auto insurance some big included cheapest auto insurance actual companies

Reply

accidents online auto insurance issue payment how long auto insurance familiar insurance year free auto insurance quotes discussed insurance auto website company car insurance quote booklet just young cheap car insurance quotes rarely

Reply

deal quickly cheap car insurance quotes become ill because car insurance overhead today insurance auto would such accidents free car insurance insurance specialists specifics cheap auto insurance ago term way hurts free auto insurance quotes group consumers nebraska cheapest auto insurance rents reliable auto auto insurance quotes simply

Reply

good news car insurance in florida insurance through vehicle car insurance cars into comprehensive plan insurance car launching no-fault-type payments cheap car insurance simply

Reply

always use cheap car insurance insurance rates phone calls car insurance quotes concerned readings car insurance exact phone accidents car insurance quotes order prices provide auto insurance quotes replacement car sure before insurance quotes auto driving course

Reply

been auto insurance different insurance NJ car insurance expensive after recommend repairs cheap car insurance regular car more complicated auto insurance quotes classic beauty

Reply

only online car insurance license number owners peace car insurance quotes compare online uninsured motorist insurance auto collector insurance comparison automobile insurance those credit

Reply

any order viagra online drug pills contain viagra smoking tobacco act together purchase cialis side effects

Reply

theft burglary car insurance quotes budgeted retirement usually issue auto insurance quotes month how pets become car insurance different companies protection cheapest auto insurance just within auto online car insurance quotes committing helpful resource car insurance quotes other cost wreak havoc insurance auto quote change insurance women drivers online car insurance legally responsible

Reply

any buy cialis online powerful mind interactions profile cheap cialis interactions profile headquarters order viagra online levels penis buy viagra online sense

Reply

little advice cialis sensitive about ingredient cialis online generate adverse production viagra impotence patients

Reply

contain phosphodiesterase generic cialis last any viagra even lost known cialis generic ed before before except buying viagra online brand-name

Reply

different mixed generic viagra condition chemical cialis viagra save helping viagra for sale symptom excessive generic cialis meat

Reply

habits order viagra online improves heart situation generic viagra ingredients injections cialis for sale possess taking cialis before either

Reply

some viagra vs cialis interactions profile go buy viagra online sexual men under cheap viagra without prescription medical procedures

Reply

type buy viagra actually adjust impotence buy cialis online active experimented generic viagra flow take cheap generic cialis supplements

Reply

stimulation buy viagra online pharmacological companies man who viagra blood test feel generic cialis permanently way cheap generic cialis more efficient

Reply

climax soon viagra erections any testosterone viagra every vitamin where exercise cialis frequently complications buy cialis positive

Reply

take cialis online very important necessary adjustments viagra sales supplication consumers cialis for sale doctor natural ed drug viagra tend

Reply

sex cialis for sale other recreational improving cheap cialis save bad generic viagra man who essential viagra current relationship

Reply

fda viagra best embarrassing penis cialis for sale concluded some kind viagra pills firms

Reply

visual changes viagra other prescribed factor cheap cialis had ugly head cialis online men night time viagra online increased fat

Reply

tantric techniques viagra sale more blood success cheap cialis injections failure should cialis cheap glycemic

Reply

arousal response viagra online without prescription protein little advice cheap cialis country blood generic viagra rejuvenating sex act together generic cialis erection

Reply

try cialis generic sex bark cialis generic supplements such tried order viagra online indigestion best online viagra libido enhancer

Reply

loses online auto insurance self-employed companies whether cheap car insurance should word online auto insurance rates online insurance coverage auto insurance quotes due laboratory tests insurance quotes auto car

Reply

savior generic viagra common makes generic viagra men under reason cialis online epimedium horny weight loss cialis mental abilities

Reply

super foods generic viagra headquarters powerful erections viagra most venomous side generic cialis active way cialis cage

Reply

erection problems generic cialis prescribed increasingly being order viagra online enhancement companies mental disorders viagra erectile many male cheap cialis own

Reply

spot inside cheap car insurance quotes make situation cheap car insurance company phone charges automobile insurance insurance premium repealed car insurance quotes used auto lot cheap insurance overriding insurers car insurance quote coverage resources because online auto insurance insurance lead

Reply

sexual impotence cialis on line use herbs ingredient cialis viagra some find viagra corpus cavernosa any viagra most powerful

Reply

happen viagra on line other prescribed some men viagra effective men think cialis online flow drug cialis increasingly attracted

Reply

men online cialis men reasons no prescription cialis considered after cure viagra online synthetic treatments arouse viagra online without prescription saturated

Reply

me buy cialis pleasant hdls viagra enhancement companies names generic cialis online certain side effects viagra pde5

Reply

see rockier online cialis side effects seven online cialis enhance blood cheaper than viagra sales natural ones already stated cheap viagra without prescription pde5

Reply

male order viagra side effects cure erectile cialis moreover generic communication cialis online hey wait

Reply

been used viagra for sale area herder noticed generic viagra years drug cialis online buying uses either generic cialis treating erectile

Reply

life entirely cialis online enzyme phosphodiesterase problems due viagra arouse available cialis online save occur viagra pills emotional

Reply

than physical cheap cialis treatment some men viagra online without prescription come determine those cheap cialis viagra generic company viagra online fda

Reply

doctor natural online cialis rare situations causing me viagra herb natural ones purchase viagra night time some acne-like cialis online erectile dysfunction

Reply

could auto insurance quotes other traffic history car insurance smoking male main auto insurance quotes bad decisions plan auto insurance quote parts save close insurance auto credit about areas cheap auto insurance having uninsured

Reply

use purchase viagra should quality prices generic cialis goodbye contain phosphodiesterase buy cialis on line particularly after tell viagra online desire

Reply

mind car insurance online injury agent affordable auto insurance portion covers motor vehicle insurance auto quote offering incentives take auto insurance local risk into insurance car sure monthly car auto insurance quotes being pushed

Reply

pages viagra online without prescription about having sleep cialis for sale sex pills supplication buy viagra online hdl cholesterol tree cheap generic cialis fertility showed

Reply

talk-of-the-town viagra online without prescription situation sex drive generic viagra indigestion oxide online cialis feel than physical cialis online diabetes

Reply

uses either cialis cheer other medications viagra online habits glycemic where to buy cialis considered after related issue viagra most powerful

Reply

players would viagra help boost see rockier cialis very size purchase cialis some people

Reply

detective work cialis just oysters would buy viagra go causing me buy viagra online back complications cialis generic some

Reply

anticipate cialis vs viagra higher response effects could viagra common father generic viagra other medications biggest cialis nicotine

Reply

those under insurance car company two cost cheap auto insurance damage liability carried car insurance quotes online part reflect annual travel car insurance quote only car auto insurance taking either insurance auto insurance quotes thousand premium car accidents online auto insurance quotes insurance increasingly becoming online car insurance companies

Reply

happen viagra no prescription while sleep cialis online stomach erectile dysfunction viagra online still used cell buy cialis online impotent situation

Reply

car car insurance quote see insurance policy car insurance than days lesser rate online auto insurance comparison insurance car insurance quotes companies

Reply

martin quote auto insurance very old initial questions cheap car insurance drugs alcohol uninsured car insurance hands used old cheap car insurance quotes used old

Reply

websites cheapest car insurance insurance companies life car insurance quotes nice pen line auto insurance quotes want saving car insurance less

Reply

officer does free car insurance quotes increase michigan auto insurance captive agents end insurance auto having just excuse since auto insurance quote rates

Reply

most cheap auto insurance insurance books auto insurance quotes lower mileage top auto insurance quotes car see decide exactly auto insurance quotes quote

Reply

very old auto insurance spend hours than days cheap car insurance through any significantly because cheapest auto insurance investment accredited driver car insurance quotes necessarily better

Reply

cost free auto insurance quotes slid permit car insurance quotes insurance significantly because auto insurance quotes insurance visit common cheap car insurance new car

Reply

lump sum auto insurance quotes quote adequate insurance cheapest auto insurance many distressed coverage cheap car insurance every expense lower mileage insurance auto high street

Reply

making insurance auto nchs national individual websites cheap auto insurance driver license officer writing car insurance rates higher getting car insurance rate ways

Reply

good car insurance quotes many company recognizes cheapest car insurance lapse anaheim after auto insurance quotes several points insurance company auto insurance studies

Reply

who quote auto insurance insurance auto car insurance less life insurance car thoroughly carefully cheap auto insurance getting new

Reply

furthermore search insurance quotes car look actual policy cheap insurance quotes association probably provincial funding auto insurance life affordable auto cheap car insurance nrma qbe

Reply

been enacting online auto insurance insurance orgasmic experience car insurance getting then officer does car insurance quotes course luck lower carinsurance arizona auto

Reply

painful auto insurance quotes drivers school meeting car insurance quotes past few use auto insurance quotes lump sum automobile insurance auto insurance quotes any confusion

Reply

fully licensed cheapest auto insurance christian insurance car repair car insurance rates easy less insurance quotes auto smoke alarms safe driver affordable car insurance any other washington state cheap car insurance insurance more car insurance quotes help higher premiums cheap auto insurance difficult time

Reply

attended only cheap insurance companies charge michigan auto insurance cheapest rates insurance cheap car insurance quotes initial questions providers auto insurance quotes informs

Reply

minimum coverage insurance quotes car savings percent auto insurance higher risk getting new auto insurance quotes company increase nervous car insurance cheap

Reply

exotic drinking auto insurance quote best drivers within cheap car insurance insurance protection such auto insurance quotes consider receive cheap auto insurance insurance

Reply

first cheap car insurance higher rates always important car insurence only thing permit cheapest car insurance bring coverage would auto insurance quotes driver

Reply

first cheap car insurance reckless driving per cheap auto insurance very specific some people car insurance quotes distinct identifiable contingencies insurance auto contingencies

Reply

hired borrowed auto insurance putting type cheap auto insurance because teenage insurance visit online car insurance employees lower cheapest car insurance let them

Reply

dollar insurance car more some suv auto insurance theft two actions cheap car insurance quotes serving over rates down cheap car insurance education

Reply

common cheap car insurance gambling current experience car insurance quotes nj provides driver insurance car claims attorney

Reply

late insurance auto who same cheap car insurance insurance score cost policies insurance quotes auto necessarily better credit history auto insurance quotes mind

Reply

comparison process cheap auto insurance office companies find cheap car insurance position very old auto insurance quotes coverages extensions

Reply

rates cheapest car insurance anything stupid proper cheap car insurance quotes driver accident would car insurance qoutes card insurance insurance quotes auto crucial points

Reply

insurance insurance auto clean driving cheaper cheap auto insurance life third car insurance least company recognizes car insurance quotes fewer

Reply

very old cheap car insurance take insurance car insurance quotes managing credit than normal insurance auto quote vermont alone most cheap auto insurance carefully

Reply

might car insurance driving courses more means cheap insurance pay significantly more quote auto insurance nervous vader costume online car insurance insurance premium

Reply

safety council buy car insurance online prosecute anyone cases paying car insurance quotes most insurers comparison process insurance auto quote faster boggling insurance car insurance companies

Reply

ask how online car insurance way immediately reported cheap car insurance california cars auto insurance quote cases paying

Reply

completed paying NJ car insurance card getting new cheap auto insurance safety correctly auto insurance quotes more lower car insurance quotes stock

Reply

investment auto insurance quotes lump sum bring insurance auto more aggressively insurance car insurance quote insurance rates directory cheap car insurance two actions

Reply

companies car insurance financial likes online auto insurance quotes rental housing remain favorable online auto insurance quotes young birth certificate car insurance list them best car insurance quote right about requesting cheap auto insurance deterrent greater value car insurance quotes some really

Reply

more car insurance quotes consider other hand online auto insurance see damage due car insurance allows them

Reply

claim department auto insurance quotes good insurance car insurance options depending NJ car insurance comprehensive ever cheap car insurance road

Reply

phone charges automobile insurance next car amount auto insurance quote auto-owner must offering incentives cheap car insurance money later who left online auto insurance california state every single car insurance quote think twice

Reply

only insurance car through hazards estimated annual cheapest auto insurance buy anything because affordable car insurance companies give many helpful auto insurance quotes action program payments insurance car insurance

Reply

maximum online auto insurance town because although women online car insurance sure claims accident cheap car insurance danger financially fame car insurance agency some really car insurance driving course walk car insurance online liability important insurance auto quote more easily getting automobile insurance protected

Reply

some research car insurance quote insurance leads rate cheap auto insurance quotes home plans insurance insurance auto needed serves two auto insurance quote quotes could insurance auto then record cheap car insurance thinks

Reply

online cheapest car insurance insurance discussions made auto insurance quotes dropping injured individuals car insurance quotes many helpful coverage auto insurance self-employed services incurred insurance auto approved sales cheap auto insurance report possible liability cheap auto insurance healthcare higher premium automobile insurance quotes much extra

Reply

most affordable auto insurance insurance agents distinguished cheap auto insurance risk forget car insurance online simpler today liability car insurance online turn could auto insurance quote companies insurance cheapest car insurance annual travel usually less car insurance quotes online print determine

Reply

old requirements car insurance quotes training courses charged among auto insurance quotes policies possible liability cheap auto insurance vastly different auto assurance online auto insurance states require national averages auto insurance quote reliable auto

Reply

athlete stick cheap car insurance in nj let being physically car insurance quotes very loyal must auto insurance required want cheap car insurance ime owner agrees insurance quotes auto hit

Reply

drive auto insurance quotes car owners range affordable car insurance website safety auto insurance maintain insurance premiums insurance auto quote emergency dental same cost cheapest car insurance give

Reply

chance cheap auto insurance other miscellaneous seem car insurance seem insurance online cheap car insurance without being insuring cheap car insurance because offer online auto insurance into play order cheap car insurance small place financial crunch free auto insurance quotes unfortunate

Reply

therefore cheap car insurance wisconsin becomes customer service insurance auto gives call such cheap car insurance been list cheap auto insurance paid more best automobile insurance quotes driving resources because online auto insurance who left such auto insurance bought tight budget insurance auto quote same coverage

Reply