Friday, October 29, 2010

Week 8!

This week ended up being very productive and busy for the Access Lecture team:

Monday: Met for ~2 hours with Chris, who gave us a demonstration of some of the concepts we had asked him about last week.  This really helped solidify what he tried to explain the week before.

Tuesday: We ended up making simple programs to test out scrollviews, which were one of the main UI areas we were confused about.  It ended up being a lot easier than we thought.

Wednesday: Interviewed a college physics professor, so now we've talked to people in the physics department at both the college level and high school level.  We're still looking for people to interview that teach chemistry, but after that we will have talked to professors and teachers from most of the major math and science fields. 

Thursday: We began by figuring out the layout of the app and the different "pages" we'll need.  We then implemented "rough drafts" of the pages using interface builder, to show to our CREU faculty member and see if we were moving in the right direction.  We also ended up setting up our SVN for the project and integrating that with XCode, which was a little confusing at first but we are starting to understand it better.

Friday: We are continuing our design of the UI and determining what information and features will need to be on each page, and how we can make them more accessible while still meeting the UI guidelines.

Perhaps for next weeks blog entry we can include some screenshots of the UI design we're considering. We haven't really included any images yet on our blog and I think it'd be more interesting for our readers if they could see the design rather than if we just described it.

I'm going to go join Abhishek and Alex now, we're currently working on the design of the settings page and what UI elements would be best for the different options.

-Lindsey

Friday, October 22, 2010

Week 7 - "Requirements doc, design patterns, and lunch. Oh my!"

"The lightbulb was not invented by continuously reinventing the candle." - Unknown

I thought that I would start you all off this week with a great quote that my former boss posted on his Facebook. Whether he made it up himself or found it somewhere, the world may never know. Either way, it describes an excellent philosophy.

Week 7 has consisted of the following activities:
  • The creation and completion of a full requirements document.
  • The writing of a full and in-depth analysis of the student-survey responses obtained thus far.
  • Two meetings with Chris, our resident Cocoa Touch expert.
Our requirements document was created by pooling resources from three central documents: the survey analysis, our focus group interviews, and the initial project proposal to the CREU. Seeing as we had three team members and three core documents, it was a relatively easy decision to take the "divide and conquer" approach to data mining all of these documents. Each of us made a separate requirements document, using only the information available in the sole document which was assigned to that person. These documents were then combined into one large spreadsheet, where they were sorted and edited appropriately. Our requirements document follows the standard format; we have functional and nonfunctional requirements, and the standard subcategories of nonfunctional requirements. Additionally, we prioritized each requirement on a scale of 1-3. The scale was as such:
  • 1: This requirement shall be fulfilled by the end of the summer.
  • 2: This requirement is a priority, but not a core portion of the system. If possible, this requirement shall be fulfilled by the end of the summer.
  • 3: This requirement is outside the original scope of the project, and shall likely be fulfilled after this summer and possibly by a different team of individuals.
As it turned out, most of our nonfunctional requirements were 1's, while many functional requirements tended to be 2's. This is so we can focus on fulfilling the core requirements of the system which are needed to make the system usable and valuable (such as whiteboard-marker to iPad transmitting and zooming in). After we are confident that these core requirements are fulfilled, we can begin to work on the 2's. These are mostly functional requirements that will enhance the experience for the user, but are not necessary for product deployment. We anticipate that many of these requirements will be added, particularly ones that pertain to coloring.

Aside from the requirements doc, we got a few one-on-one tech talks with Chris. We were able to ask Chris to demonstrate certain iOS development concepts which we felt we did not have a solid grasp on. Seeing a live demonstration certainly helped to solidify our knowledge of these concepts. Additionally, we have plans to meet with Chris again next week for one or more two hour blocks. Since we are able to explain our project goals from an engineering prospective to Chris before his demonstrations, he is able to gear his information towards our specific needs. This makes our meetings with him much more efficient than say, reading generalized online tutorials.

Oh yeah, we still have interviews lined up! We're hitting up the physics department, and they've been giving us a great response. We have plans to interview at least three physics professors here at RIT in the upcoming weeks.

Until next week...

- Alex

Friday, October 15, 2010

Week 6 .... and we have the UI mock-up!

The main highlights of week 6 are:
  1. Summary report of the professor interview
  2. Reaching out for more professors
  3. Analysis of requirements constraints (functional and non-functional)
  4. Preparation of UI mock-up
  5. Including graphics and media into the application and SVN set up
This week the team was mainly focused on summarizing the findings of the survey of the teachers and professors. All in all we had six responses which are as follows:

Maths - 2
Computer Science - 2
Physics - 1
Biology - 1

Most of the teachers/professors interviewed have had some kind of teaching experience with students having visual disabilities and said that they did not mind to putting in extra effort to help out those students. Also they seemed genuinely interested in the concept of our project.  Though this might not be a large statistical number to draw inferences upon but has certainly helped us in gaining insight to some of the issues. We are looking forward to interviewing few more of the professor next week.

We also came up with the initial  draft of the functional and non-functional requirement for the system; though we will be making refinements along the way as we progress.  We had a brainstorming session about how the user interface of the application would look like and were able to design an initial mock-up of the UI. This is indeed an important milestone for the project! We have tried to make the UI as simple as possible. We have considered both the horizontal and vertical orientation but for the first phase we will be mainly focusing on the landscape view. But we definitely would like to have the end-user's perspective regarding it before finalizing which of the orientation to support or even both!

The team played around with embedding some of the graphics elements into the application and was even able to make the cat "meow" whenever it was poked at! This will surely be another crucial aspect for our application as it will play all the important role in making it accessible. We had been discussing SVN for quite some time now and finally this week the team was able to get the SVN running through the XCode. This has come up at just about an ideal time since we are all beginning to head towards working on the main application with all the knowledge that we have been gathering from previous weeks!

Next week we all will be actually putting into work the design of the initial UI that we have prepared this week!

Friday, October 8, 2010

Week 5 - "I get by with a little help from my caffeine"

+5 Bonus points if you caught The Beatles reference.

Alex here with another update on AL.

Week 5 here at RIT means midterms and projects, but that didn't stop us from getting our hands dirty with Access Lecture and some more Objective-C! Unfortunately, it did stop me from sleeping and remaining 100% sane, but I probably wouldn't have done those things anyways.

Week 5 has concluded with some interesting results, and included some interesting events. Our focus this week was split between the iPhone SDK and focus group interviews. We still had some interviews left to conduct this week, and they proved to be just as interesting and helpful as their predecessors. We are mostly done with the "college professor" focus group now, and we plan to begin reaching out to more high school teachers next week. In addition, the college student survey has been finalized and deployed.

What we lacked in number-of-interviews for this week, we made up with in iPad programming progress. Let's just say that if difficult iPhone SDK concepts was a currency, I'd be programming on a golden iPad for the remainder of this project. To help us grasp some of the iPad specific concepts (such as drag & drop, zooming, and scrolling), we developed a long-term plan to create an app that would incorporate many iOS features.

The app is very simple: The user can enter in any string in a text field, and an animal (represented by some cute 1990's clip art) will repeat it back to them! The phrase can either be repeated as-typed, or in that animal's "language". If the user swipes to the side, the screen will scroll to an animal selector panel, which will let the user drag/select an image of a different animal onto the main screen to replace the current animal being used. In addition, the user will be able to double-tap on an animal icon to zoom-in on it. This app, as silly as it seems, will give us substantial experience with...
  • Using UIGestureRecognizer objects and interfaces to detect dragging, swiping, pinching, and tapping.
  • Working with multiple UIViews to create an interactive, scrolling interface.
  • Handling accessibility features, such as zooming.
  • Making a complex, fully featured app.
  • Working with the delegate design pattern, which (along with the MVC) is a major part of every iOS app.
To aid in the creation of our app, we are employing the help of Chris (another RIT student), who has a vast amount of experience developing for the iOS. We plan to meet with him Tuesday to ask questions in regards to important abstract principles that online tutorials have not helped with, and then possibly once a week after that to keep things rolling. We also have plans to attend two tech-talks that Chris is giving; one will be in lecture format and the other a hands-on workshop. This should help us move along very quickly.

After making the plan for the app, we got to work on it. So far, we have drag & drop functionality working with any UI object, and we have begun to look into accessibility features. Finding accessibility documentation that would fit our purposes has been challenging, so we may have to consult the official Apple forums for some more information (all of the documentation we found was for the voice-over technology, which is not applicable to our app).

All-in-all, we got a lot done this week. Next week should have some very interesting challenges and corresponding solutions for us!

Until next week...

- Alex