There are a couple of directions for future work, with the aformentioned booking functionality being one of them. Another direction would be to implement the medium/low priority features that weren't implemented in this prototype, such as allowing a user to ask Andrew to watch the price of a certain hotel and send alerts if it changes. However, likely the best thing would be to take its existing functionality and make it more robust. For example, Andrew could expand to be able to accept a greater variety of criteria (e.g. number of occupants) and display more information about each hotel (e.g. address). Fleshing out his search capabilities would enable him to compete with existing travel websites and apps. As a conversation-based interface, Andrew could also undergo some user testing to determine where his text parsing skills fall short, and how those areas could be improved.
Overall, Andrew turned out well, and through his development I cemented some of my skills with particular systems (e.g. Ruby and databases) and gained valuable experience in tying together various platforms - Andrew is a system that includes Twilio, Heroku, Sinatra, SQL, and the allmyles API. His development did have a few bumps along the way. The most grief was caused by unforeseen API/platform barriers and restrictions. In one case, I found that it was unlikely that I would gain access to the Expedia API within this project's timeframe, so I had to spend time searching for another similar travel API (it turns out many of them are equally closed), and as a result of the differences between the new one (allmyles) and Expedia, I had to revise Andrew's feature set. In another case, I was unaware that Twilio imposed a 15 second time limit on responding to request, which forced me to change how Andrew remembered state (from session cookies to database tables) late into the project. While running into walls like these is a part of any development process - and getting past them is a constructive experience - I do think I would have been better off knowing the limitations of the platforms I was going to use before committing myself to them. All that said, I'm fairly satisfied with the Andrew's outcome, and I'm sure he is too.
Content Rating
Is this a good/useful/informative piece of content to include in the project? Have your say!
You must login before you can post a comment. .