HeaderSIS.jpg

Difference between revisions of "2010T1 The Green Reapers: Final Presentation"

From IS480
Jump to navigation Jump to search
 
(15 intermediate revisions by 4 users not shown)
Line 23: Line 23:
 
|||Edwin FENG Chugong  
 
|||Edwin FENG Chugong  
 
|-
 
|-
|||Marcus YUE Han-Jie
+
|||Marcus Y.
 
|-
 
|-
 
|||TAN Fengnan
 
|||TAN Fengnan
Line 44: Line 44:
  
  
===Project Achievements:===
+
===Cherished Achievements:===
*[https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers#Motivation Our motivation] to aid in [http://www.un.org/millenniumgoals/ United Nations Millennium Development Goals]
+
*[https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers#Motivation Applying our skills to design and implement] a solution to aid the [http://www.un.org/millenniumgoals/ United Nations Millennium Development Goals]
*[https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture Architecture]
+
*Creating an [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture elegant and extensible architecture]
*Integrating various technologies for a scalable information distribution, without reliance on a single technology as we moved from [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Initial_Architecture proprietary (Microsoft powered technologies)] to [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Overview Open Source]
+
*Integrating various technologies for a scalable information distribution without reliance on a single vendor - we moved from [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Initial_Architecture proprietary (Microsoft-powered technologies)] to [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Overview Open Source Software]
*[https://wiki.smu.edu.sg/is480/2010T1_The_Green_Reapers:_Final_Presentation#Partner.27s_Comment: Partner's(IRRI) validation]
+
*Collaborating closely to achieve our [https://wiki.smu.edu.sg/is480/2010T1_The_Green_Reapers:_Final_Presentation#Partner.27s_Comment: partner's (IRRI) validation]
 
<br>
 
<br>
  
Line 56: Line 56:
 
|-
 
|-
 
|  
 
|  
Client/users situated in Philippines
+
Client/users situated in Singapore and Philippines
 
[[Image:phil_flag.png|thumb|200px|left|alt=phil_flag|Philippines]]
 
[[Image:phil_flag.png|thumb|200px|left|alt=phil_flag|Philippines]]
 
|
 
|
Our partner (IRRI) is largely situated in Philippines gave us valuable feedback in validating Intellicrops. We had to conduct meetings via Skype or teleconference with the team at Philippines. Meeting up with IRRI's team at Singapore, gave us valuable feedback on '''farmers, extension workers and researchers''' expectations and daily activities.
+
Our partner (IRRI) is headquartered in Philippines and has a branch in Singapore.  We are very thankful for IRRI's close guidance and feedback all through the project. We wanted to make sure that our prototype had relevance to their short and long-term goals, and communicated often to ensure that we were on the right track.
 +
 
 +
 
 +
Both locations (Philippines and Singapore) had employees with different specializations. To get a clear picture of the needs and concerns of the domain, we constantly engaged the various teams with physical meetings, teleconferences and even remote functional testing.
 
<br/><br/>
 
<br/><br/>
 
Mitigation:
 
Mitigation:
Line 67: Line 70:
  
 
<br/>
 
<br/>
[https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Jul#.5B_Jul-15_.5D_:_Discussion_with_IRRI_.28Skype.29 Jul-15  : Discussion with IRRI (Skype)]
+
Relevant Communication Logs
<br/>
+
* [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Jul#.5B_Jul-15_.5D_:_Discussion_with_IRRI_.28Skype.29 Jul-15  : Discussion with IRRI (Skype)]
[https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Jul#.5B_Jul-29_.5D_:_Discussion_with_IRRI_.28Conference_Call.29 Jul-29 : Discussion with IRRI (Conference Call)]
+
* [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Jul#.5B_Jul-29_.5D_:_Discussion_with_IRRI_.28Conference_Call.29 Jul-29 : Discussion with IRRI (Conference Call)]
<br/>
+
* [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Aug#.5B_Aug-30_.5D_:_Teleconference_with_IRRI Aug-30 : Teleconference with IRRI]
[https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Aug#.5B_Aug-30_.5D_:_Teleconference_with_IRRI Aug-30 : Teleconference with IRRI]
+
* [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Sep#.5B_Sep-27_.5D_:_Functional_Testing_with_IRRI_.28at_NUS.29  Sep-27 : Functional Testing with IRRI (at NUS)]
<br/>
+
* [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Oct#.5B_Oct-13_.5D_:_Functional_Testing_with_IRRI_.232_.28at_NUS.29  Oct-13 : Functional Testing with IRRI #2 (at NUS)]
[https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Sep#.5B_Sep-27_.5D_:_Functional_Testing_with_IRRI_.28at_NUS.29  Sep-27 : Functional Testing with IRRI (at NUS)]
+
* [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Nov#.5B_Nov-05_.5D_:_Functional_Testing_with_IRRI_.233_.28Philippines_team.29 Nov-05 : Functional Testing with IRRI #3 (Philippines team)]
<br/>
 
[https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Oct#.5B_Oct-13_.5D_:_Functional_Testing_with_IRRI_.232_.28at_NUS.29  Oct-13 : Functional Testing with IRRI #2 (at NUS)]
 
<br/>
 
[https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Nov#.5B_Nov-05_.5D_:_Functional_Testing_with_IRRI_.233_.28Philippines_team.29 Nov-05 : Functional Testing with IRRI #3 (Philippines team)]
 
 
|-
 
|-
 
| Connecting to IRRI's database directly
 
| Connecting to IRRI's database directly
 
|
 
|
Connecting to IRRI's database will allow us to structure information, and retrieve latest updates as quick as possible. But they had to talk to their lawyers which would take at least 9 months.
+
Connecting to IRRI's database will allow us to structure information, and retrieve latest updates as quickly as possible. But they had to talk to their lawyers which would take at least 9 months.
 
<br/><br/>
 
<br/><br/>
 
Mitigation:
 
Mitigation:
Line 95: Line 94:
 
*Done extensive testing with IRRI based on their feedback and experience with extension workers and farmers. Their feedback is taken seriously to incorporate features like '''custom voice'''
 
*Done extensive testing with IRRI based on their feedback and experience with extension workers and farmers. Their feedback is taken seriously to incorporate features like '''custom voice'''
 
*Leverage on IRRI's experience on their current [http://webapps.irri.org/nm/phmobile/ Nutrient Management System].<br/>
 
*Leverage on IRRI's experience on their current [http://webapps.irri.org/nm/phmobile/ Nutrient Management System].<br/>
[https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Jul#.5B_Jul-15_.5D_:_Discussion_with_IRRI_.28Skype.29 Jul-15  : Discussion with IRRI about NMS]
+
 
<br/>
+
 
[https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Jul#.5B_Jul-29_.5D_:_Discussion_with_IRRI_.28Conference_Call.29 Jul-29 : Discussion with IRRI about NMS]
+
Relevant Communication Logs
 +
* [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Jul#.5B_Jul-15_.5D_:_Discussion_with_IRRI_.28Skype.29 Jul-15  : Discussion with IRRI about NMS]
 +
* [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Jul#.5B_Jul-29_.5D_:_Discussion_with_IRRI_.28Conference_Call.29 Jul-29 : Discussion with IRRI about NMS]
 
<br/>
 
<br/>
 
|-
 
|-
Line 142: Line 143:
 
==<div style="width: 95%; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f6ffe9', endColorstr='#bfff64'); background: -webkit-gradient(linear, left top, left bottom, from(#f6ffe9), to(#bfff64)); background: -moz-linear-gradient(top,  #f6ffe9,  #bfff64); padding: 15px; font-weight: bold; margin-top: 35px; line-height: 1.4em">      Quality of Project    </div>==
 
==<div style="width: 95%; filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f6ffe9', endColorstr='#bfff64'); background: -webkit-gradient(linear, left top, left bottom, from(#f6ffe9), to(#bfff64)); background: -moz-linear-gradient(top,  #f6ffe9,  #bfff64); padding: 15px; font-weight: bold; margin-top: 35px; line-height: 1.4em">      Quality of Project    </div>==
  
Our project is a seamless integration of open source and existing technologies, coupled with an extensible and scalable architecturial design. Our [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture Architecture]
+
Our project is a seamless integration of open source and existing technologies, coupled with an extensible and scalable architectural design. Our [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture Architecture]
 
<br/>
 
<br/>
[https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Improvements_after_Usability_.26_Functional_testing Improvements after Usability & Functional testing]
+
(Enhancements to our architecture after usability & functional testing are detailed [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Improvements_after_Usability_.26_Functional_testing here])
  
 
===='''IVR'''====
 
===='''IVR'''====
  
 
{| cellpadding="15"
 
{| cellpadding="15"
|
 
 
|
 
|
 
*'''IVR Menu Wizard'''  
 
*'''IVR Menu Wizard'''  
 
**Provides a jquery implementation on PHP for a interactive user experience with Ajax functions utilizing .net and restful webservices to access datasources for pulling and pushing of information. Paving the way for a IVR menu wizard that is able to manage the content that is being presented through the skype IVR. For more in-depth information please refer to our [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Interactive_Voice_Response_System:_Behind_the_Scenes IVR Architecture] page
 
**Provides a jquery implementation on PHP for a interactive user experience with Ajax functions utilizing .net and restful webservices to access datasources for pulling and pushing of information. Paving the way for a IVR menu wizard that is able to manage the content that is being presented through the skype IVR. For more in-depth information please refer to our [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Interactive_Voice_Response_System:_Behind_the_Scenes IVR Architecture] page
 
*'''Knowledge navigator'''
 
*'''Knowledge navigator'''
**Web version of the phone IVR system with jquery UI, interfacing with webservices that are being used by the skype IVR system to ensure symmetry on datasource. For more in-depth information please refer to your [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Knowledge_Navigator:_Behind_the_Scenes Knowledge Navigator Architecture] page
+
**Web version of the phone IVR system with jquery UI, interfacing with webservices that are being used by the skype IVR system to ensure symmetry on datasource. For more in-depth information please refer to our [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Knowledge_Navigator:_Behind_the_Scenes Knowledge Navigator Architecture] page
 
*'''Webservice engine'''
 
*'''Webservice engine'''
 
**Understanding what integral wordpress tags and searching and retrieval of articles based on tags from the wordpress database. For more in-depth information please refer to our [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Information_Architecture Information Architecture] page.
 
**Understanding what integral wordpress tags and searching and retrieval of articles based on tags from the wordpress database. For more in-depth information please refer to our [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Information_Architecture Information Architecture] page.
 
*'''Skype Interactive Voice Response System'''
 
*'''Skype Interactive Voice Response System'''
 
**Utilizing the Skype API and built on C# .net platform, the IVR has Unique identification to allow simultaneous calls in as well as possibility to resume calls due to the unique identification and saved state of the caller. Through a structured algorithm, the IVR allows different type of menus further elaborated on the [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Interactive_Voice_Response_System:_Menu_configuration_and_types AND,OR,RECORD,FACTSHEET Architecture] page. For more in-depth information on how our IVR system works please refer to [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Interactive_Voice_Response_System:_Behind_the_Scenes IVR Architecture] page.
 
**Utilizing the Skype API and built on C# .net platform, the IVR has Unique identification to allow simultaneous calls in as well as possibility to resume calls due to the unique identification and saved state of the caller. Through a structured algorithm, the IVR allows different type of menus further elaborated on the [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Interactive_Voice_Response_System:_Menu_configuration_and_types AND,OR,RECORD,FACTSHEET Architecture] page. For more in-depth information on how our IVR system works please refer to [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Architecture#Interactive_Voice_Response_System:_Behind_the_Scenes IVR Architecture] page.
**Menus on the IVR are generated on the fly based on the data managed by the IVR Menu Wizard translated from text to speech using the microsoft synthesizer
+
**Menus on the IVR are generated on the fly based on the data managed by the IVR Menu Wizard translated from text to speech using the Microsoft synthesizer
 
**IVR logs detailed information on each call for use in data analytics
 
**IVR logs detailed information on each call for use in data analytics
  
Line 184: Line 184:
 
*The tagging infrastructure of the Web CMS allows articles to be easily tagged and retrieved. By doing so, we are able to scale easily if there is going to be more information added to the data repository. Retrieval via the IVR menu system would also be more efficient through this infrastructure.
 
*The tagging infrastructure of the Web CMS allows articles to be easily tagged and retrieved. By doing so, we are able to scale easily if there is going to be more information added to the data repository. Retrieval via the IVR menu system would also be more efficient through this infrastructure.
 
*Preview of recorded call contribution from IVR and allow users to transcribe the recorded call audio to text through wordpress.
 
*Preview of recorded call contribution from IVR and allow users to transcribe the recorded call audio to text through wordpress.
*Skype plugin integration on live application can bee accessed [http://www.intellicrops.com/wordpress here]
+
*Skype plugin integration on live application can be accessed [http://www.intellicrops.com/wordpress here]
 
|-
 
|-
 
|}
 
|}
Line 258: Line 258:
 
===Testing:===
 
===Testing:===
  
Testing is a vital component of our project and these is done to ensure Intellicrops is usable by IRRI and the general public.
+
Testing was a vital and constant aspect of our project.  We wanted to ensure that IntelliCrops had relevance to IRRI's near and long term goals.  Just as we worked hard to create and communicate our interesting suite of technologies with IRRI, we always treated their feedback seriously.  As such, we [https://wiki.smu.edu.sg/is480/IS480_Team_wiki:_2010T1_The_Green_Reapers:_Communication_and_Decision_Log_-_Jul#.5B_Jul-15_.5D_:_Discussion_with_IRRI_.28Skype.29 started with a surprisingly close alignment of goals], and maintained that throughout.
We adopted a dual approach namely: '''Functional Testing''' and '''Task-Based Testing'''.
+
 
 +
 
 +
We approached testing two ways - '''Functional Testing''' with IRRI and '''Task-Based Testing''' with untrained users.
 +
 
  
 
====''Functional Testing''====
 
====''Functional Testing''====
  
We conducted 3 rounds of functional testing with IRRI.  
+
We conducted 3 rounds of functional testing with IRRI - Twice at IRRI Singapore Headquarter at NUS with Miss Tara and Mr Duncan, Head of Development (Philippines), Executive Director (Singapore); and remote testing with Mr Marco, Head of Information Technology Services, who is based at IRRI Philippines through Skype.
  
Twice at IRRI Singapore Headquarter at NUS with Miss Tara and Mr Duncan, Head of Development (Philippines), Executive Director (Singapore)
+
Besides usability concerns and technical complexity, the expanded focus was on functional requirements, technical feasibility and practical considerations. As this is a exploratory system, the exact system requirements is unknown. We kept talking to IRRI to ensure that the system requirements were of use to them. We also took note of technical feasibility in terms of whether our IntelliCrops system will be able to integrate with their current systems such as the Nutrient Management System. Practical Considerations were also noted on how IntelliCrops would aid IRRI current system in the real world.
Remote testing with Mr Marco, Head of Information Technology Services, who is based at IRRI Philippines through Skype.
 
 
 
We have conducted 3 functional tests with IRRI. Besides usability concerns and technical complexity, the expanded focus was on functional requirements, technical feasibility and practical considerations. As this is a exploratory system, the exact system requirements is unknown. We kept talking to IRRI to ensure that the system requirements were of use to them. We also took note of technical feasibility in terms of whether our Intellicrops system will be able to integrate with their current systems such as the Nutrient Management System. Practical Considerations were also noted on how intellicrops would aid IRRI current system in the real world.
 
  
 
<br>
 
<br>
Line 276: Line 276:
 
====''Usability Testing''====
 
====''Usability Testing''====
  
For our UAT, we conducted the test by breaking them up into 2 tests of 30 friends each.  
+
For our UAT, we conducted the test by breaking them up into 2 test rounds with 30 friends each.  
  
They come from a mixed background and we have about 45 of them being non technical users. The reason for choosing mainly non-technical users is that our target audiences are Scientists, Researchers, Extension Workers and Farmers, whom may not understand the underlying technical complexities of IntelliCrops. This was why we felt that it was suitable to have a larger proportionate of non technical users.
+
They come from a mixed background, and about 3 quarters of them had no technical training.. The reason for choosing mainly non-technical users is that our target audiences are Scientists, Researchers, Extension Workers and Farmers who may not understand the underlying technical complexities of IntelliCrops. This was why we felt that it was suitable to have a larger proportion of non-technical users.
  
The first Usability Tests was performed in End Oct after Iteration 6 and the 2nd Usability Test was conducted in mid Nov, Iteration 7.
+
The first Usability Tests was performed in End Oct after Iteration 6 and the 2nd Usability Test was conducted in mid Nov, during Iteration 7.
  
We created several questionaires through Google Spreadsheets and performed some task-based testing for each our the 3 major components of IntelliCrops. The tests were unassisted as far as possible to model real-life task goals. The users were merely given a test plan with a sequence of steps to follow to achieve a desired outcome which was to complete the task. This allowed us to focus on the usability and discoverability of human computer interaction and to see where there may be areas that can be improved.
+
We created several questionnaires with Google Spreadsheets and performed task-based testing for each of the 3 major components of IntelliCrops. The tests were unassisted as far as possible to model real-life task goals. The users were merely given a lists of tasks to complete. This allowed us to focus on the usability and discoverability of our functions.
  
  
 
'''Test Scenarios'''
 
'''Test Scenarios'''
 
<ul>
 
<ul>
<li>IVR - Users were given a test plan which stepped them through on finding a fact sheet on organic rice. Users would call in our IVR system through Skype and attempt to input the correct key presses in the dialpad to retrieve the required information.</li>
+
<li>IVR - Users were given a test plan which stepped them through finding a fact sheet on organic rice. Users would call in our IVR system through Skype and attempt to input the correct key presses in the dialpad to retrieve the required information.</li>
 
<li>Knowledge Navigator - Users will be going through the Knowledge Navigator in an attempt to retrieve the suitable fact sheet and answer on Organic Rice.</li>
 
<li>Knowledge Navigator - Users will be going through the Knowledge Navigator in an attempt to retrieve the suitable fact sheet and answer on Organic Rice.</li>
 
<li>Data Analytics portion - Users were tasked to create charts that showed the following: total number of calls that come from each country and different average monthly call durations of each country.</li>
 
<li>Data Analytics portion - Users were tasked to create charts that showed the following: total number of calls that come from each country and different average monthly call durations of each country.</li>
Line 310: Line 310:
 
<li>Building on open source applications  
 
<li>Building on open source applications  
 
<li>Implementing workarounds to unresolved technology issues
 
<li>Implementing workarounds to unresolved technology issues
<li>Experience with building a Interative Voice Response System on Skype
+
<li>Experience with building a Interactive Voice Response System on Skype
 
<li>Deriving Analytical charts with JQPlot  
 
<li>Deriving Analytical charts with JQPlot  
 
|-
 
|-
Line 318: Line 318:
 
{| cellpadding="15" border="0"
 
{| cellpadding="15" border="0"
 
|-
 
|-
| [[Image:marcus.png|thumb|120x100px|left|alt=Marcus Yue| Marcus Yue]]
 
 
|  
 
|  
 
Through learning to integrate WP with the various technologies was truly an eye opener. However, the biggest takeaway I had was really having to source for our own client and being able to align our needs with them. In addition, because our client was largely situated overseas, I learnt how to condense the information to be put across to them and also to gather as much information and requirements from them to be as accurate as possible. Working in a self managed team was extremely comfortable also as all of us were flexible and provided help to other teams when needed.
 
Through learning to integrate WP with the various technologies was truly an eye opener. However, the biggest takeaway I had was really having to source for our own client and being able to align our needs with them. In addition, because our client was largely situated overseas, I learnt how to condense the information to be put across to them and also to gather as much information and requirements from them to be as accurate as possible. Working in a self managed team was extremely comfortable also as all of us were flexible and provided help to other teams when needed.
Line 363: Line 362:
 
| [[Image:lucaschua.png|thumb|120x100px|left|alt=Lucas Chua|Lucas Chua]]
 
| [[Image:lucaschua.png|thumb|120x100px|left|alt=Lucas Chua|Lucas Chua]]
 
|  
 
|  
It has been truly a wonderful experience to work on this unique project, especially with a client like IRRI which gave us a great deal amount of information to work on and also provided an insight on how their 50-year old organisation work together to provide a better farming experience for the farmers in Philppines.
+
It has been truly a wonderful experience to work on this unique project, especially with a client like IRRI which gave us a great deal amount of information to work on and also provided an insight on how their 50-year old organization work together to provide a better farming experience for the farmers in Philippines.
  
 
Customizing/editing the Wordpress CMS themes, plugins, functions to ensure our Wordpress CMS integrates well together with the rest of our Intellicrops system. Using remote procedure calling using HTTP as the transport and XML as the encoding to allow the IVR systems to post and interact with the Wordpress CMS .
 
Customizing/editing the Wordpress CMS themes, plugins, functions to ensure our Wordpress CMS integrates well together with the rest of our Intellicrops system. Using remote procedure calling using HTTP as the transport and XML as the encoding to allow the IVR systems to post and interact with the Wordpress CMS .
Line 394: Line 393:
  
 
Looking back on how we've managed project resources, interacted with our mentors and testers, and designed and built robust macro and micro architectures, I've certainly honed my skills in:
 
Looking back on how we've managed project resources, interacted with our mentors and testers, and designed and built robust macro and micro architectures, I've certainly honed my skills in:
<li>Visualizing at the various scales of projects, technologies and architectures</li>
+
<li>Visualizing at the various scales of projects, technologies and architectures
<li>Communicating complex technologies to both developers and users</li>
+
<li>Communicating complex technologies to both developers and users
<li>Specifying architecture and interface designs and implementing them (e.g. creating the new graphing system)</li>
+
<li>Specifying architecture and interface designs and implementing them (e.g. creating the new graphing system)
<li>Exploring unique interdisciplinary niches and sharing our visions for that space</li>
+
<li>Exploring unique interdisciplinary niches and sharing our visions for that space
 +
 
  
 
Most of all, I've gained the confidence and drive to seek out such innovative projects!
 
Most of all, I've gained the confidence and drive to seek out such innovative projects!
Line 435: Line 435:
 
[[Image:IntelliCrops-Finals-Group-Photo.jpg|thumb|520px|left|alt=Proudly Done By The Green Reapers (with our Project Supervisor Chris Boesch|Proudly Done By The Green Reapers (with our Project Supervisor Prof Chris Boesch & Prof Ben Gan)]]
 
[[Image:IntelliCrops-Finals-Group-Photo.jpg|thumb|520px|left|alt=Proudly Done By The Green Reapers (with our Project Supervisor Chris Boesch|Proudly Done By The Green Reapers (with our Project Supervisor Prof Chris Boesch & Prof Ben Gan)]]
  
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
+
<br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/>
 +
<br/>
 +
<FONT style="color:white">
 +
FROM THE HEART
 +
</font>
 +
<br>
 
'''[[IS480_Team_wiki:_2010T1_The_Green_Reapers|Back to Home Page]]'''
 
'''[[IS480_Team_wiki:_2010T1_The_Green_Reapers|Back to Home Page]]'''

Latest revision as of 04:39, 5 April 2019

Back to Home Page

IntelliCrops - Global Knowledge Partnership to Feed the World
IntelliCrops.
Est 2010
Type Global Knowledge Partnership to Feed the World
Area Knowledge Management
Data Analytics
Text-to-Speech
Interactive Voice Response (IVR)
Industry Non-Profit Organization
Team Members Alvin KOH Jun Yong
Edwin FENG Chugong
Marcus Y.
TAN Fengnan
QUA Wei Han
CHUA Sun Lun



Project Progress Summary

Project Status:

  • All planned functionality completed and deployed to team server
  • Analytics feature packaged and ready for deployment by IRRI
  • Skype- and tag-based IVR components packaged, documented and ready for further development by IRRI


Cherished Achievements:



Project Challenges:

Client/users situated in Singapore and Philippines

phil_flag
Philippines

Our partner (IRRI) is headquartered in Philippines and has a branch in Singapore. We are very thankful for IRRI's close guidance and feedback all through the project. We wanted to make sure that our prototype had relevance to their short and long-term goals, and communicated often to ensure that we were on the right track.


Both locations (Philippines and Singapore) had employees with different specializations. To get a clear picture of the needs and concerns of the domain, we constantly engaged the various teams with physical meetings, teleconferences and even remote functional testing.

Mitigation:

  • Ask the right questions, go to the right people to provide the input and feedback for the system
  • Clarify doubts and expectations
  • Prof Benjamin Gan and our supervisor Prof Chris Boesch for always assisting us for our video conferencing sessions, and providing valuable inputs for Intellicrops validation


Relevant Communication Logs

Connecting to IRRI's database directly

Connecting to IRRI's database will allow us to structure information, and retrieve latest updates as quickly as possible. But they had to talk to their lawyers which would take at least 9 months.

Mitigation:

  • Focus on their Cereal knowledge bank, which is publicly available. We had to manually extract content and articles to be placed into our CMS
  • IRRI was pleased with our effort, and wanted us to support factsheets as well. The support of factsheets would allow them to distribute knowledge & best practices to more people

Validation with actual users of Intellicrops

Validating our idea with actual users will be a challenge, as we are targeting rice farmers, extension workers and scientists mostly based in developing worlds.

Mitigation:

  • Done extensive testing with IRRI based on their feedback and experience with extension workers and farmers. Their feedback is taken seriously to incorporate features like custom voice
  • Leverage on IRRI's experience on their current Nutrient Management System.


Relevant Communication Logs




Project Schedule (Planned Vs Actual):

  • On the whole, we've completed all planned functionality on schedule.
  • Our flexible system architecture further allowed us to complete additional functionality such as the Knowledge Navigator.
  • We were able to forge a close relationship with IRRI, and are most appreciative of their close guidance throughout the project.
  • Core system functionality was completed by Iteration 6
  • We did not have to dip into our planned buffer time.
  • Instead, we dedicated that time to enhancing the usability and reliability of our components.
  • With the extra time, we were able to complete 3 rounds of functional testing with IRRI and 2 rounds of usability testing by the end of the project.
  • We added Iteration 7 that focuses solely on usability enhancements based on the testing.
  • We completed everything in good time and quality.


Planned Actual
Activity Start Date End Date Activity Start Date End Date Comments
Our schedule changes are detailed [on this separate page]

Quality of Project

Our project is a seamless integration of open source and existing technologies, coupled with an extensible and scalable architectural design. Our Architecture
(Enhancements to our architecture after usability & functional testing are detailed here)

IVR

  • IVR Menu Wizard
    • Provides a jquery implementation on PHP for a interactive user experience with Ajax functions utilizing .net and restful webservices to access datasources for pulling and pushing of information. Paving the way for a IVR menu wizard that is able to manage the content that is being presented through the skype IVR. For more in-depth information please refer to our IVR Architecture page
  • Knowledge navigator
    • Web version of the phone IVR system with jquery UI, interfacing with webservices that are being used by the skype IVR system to ensure symmetry on datasource. For more in-depth information please refer to our Knowledge Navigator Architecture page
  • Webservice engine
    • Understanding what integral wordpress tags and searching and retrieval of articles based on tags from the wordpress database. For more in-depth information please refer to our Information Architecture page.
  • Skype Interactive Voice Response System
    • Utilizing the Skype API and built on C# .net platform, the IVR has Unique identification to allow simultaneous calls in as well as possibility to resume calls due to the unique identification and saved state of the caller. Through a structured algorithm, the IVR allows different type of menus further elaborated on the AND,OR,RECORD,FACTSHEET Architecture page. For more in-depth information on how our IVR system works please refer to IVR Architecture page.
    • Menus on the IVR are generated on the fly based on the data managed by the IVR Menu Wizard translated from text to speech using the Microsoft synthesizer
    • IVR logs detailed information on each call for use in data analytics

Data Analytics

  • Enables dynamic pulling of data with ajax to generate charts by modularizing graph creation and data-loading module
  • Variety of complex graphs types made possible by jqplot for detail analysis
  • Entire ETL process of data visualization to be carried out on one hassle free page.
  • Object oriented style of code infrastructure using JSON on php enabling reuse of in graph preview and graph viewing. For more in-depth details, please refer to the Data Analytics Architecture page.

Web CMS Team

  • The tagging infrastructure of the Web CMS allows articles to be easily tagged and retrieved. By doing so, we are able to scale easily if there is going to be more information added to the data repository. Retrieval via the IVR menu system would also be more efficient through this infrastructure.
  • Preview of recorded call contribution from IVR and allow users to transcribe the recorded call audio to text through wordpress.
  • Skype plugin integration on live application can be accessed here

Project Deliverables:

Stage Specification Modules
Project Management Minutes Communication and Decision Log
Metrics Bug metrics
Risk Management Risk Management
Schedule
Analysis Use case Overall
Screen Shots Features
Design Architecture Principles and Considerations
Testing Functional Testing Methodology, Test Plans and Results
Usability Testing Methodology, Test Plans and Results
Handover Deployment Instructions


Please refer to our Architecture Page for more details about how we addressed issues such as:

  • Scalability
  • Maintainability
  • Configurability
  • Flexibility
  • Usability
  • Performance



Testing:

Testing was a vital and constant aspect of our project. We wanted to ensure that IntelliCrops had relevance to IRRI's near and long term goals. Just as we worked hard to create and communicate our interesting suite of technologies with IRRI, we always treated their feedback seriously. As such, we started with a surprisingly close alignment of goals, and maintained that throughout.


We approached testing two ways - Functional Testing with IRRI and Task-Based Testing with untrained users.


Functional Testing

We conducted 3 rounds of functional testing with IRRI - Twice at IRRI Singapore Headquarter at NUS with Miss Tara and Mr Duncan, Head of Development (Philippines), Executive Director (Singapore); and remote testing with Mr Marco, Head of Information Technology Services, who is based at IRRI Philippines through Skype.

Besides usability concerns and technical complexity, the expanded focus was on functional requirements, technical feasibility and practical considerations. As this is a exploratory system, the exact system requirements is unknown. We kept talking to IRRI to ensure that the system requirements were of use to them. We also took note of technical feasibility in terms of whether our IntelliCrops system will be able to integrate with their current systems such as the Nutrient Management System. Practical Considerations were also noted on how IntelliCrops would aid IRRI current system in the real world.


Please refer to our Functional Test page for more details

Usability Testing

For our UAT, we conducted the test by breaking them up into 2 test rounds with 30 friends each.

They come from a mixed background, and about 3 quarters of them had no technical training.. The reason for choosing mainly non-technical users is that our target audiences are Scientists, Researchers, Extension Workers and Farmers who may not understand the underlying technical complexities of IntelliCrops. This was why we felt that it was suitable to have a larger proportion of non-technical users.

The first Usability Tests was performed in End Oct after Iteration 6 and the 2nd Usability Test was conducted in mid Nov, during Iteration 7.

We created several questionnaires with Google Spreadsheets and performed task-based testing for each of the 3 major components of IntelliCrops. The tests were unassisted as far as possible to model real-life task goals. The users were merely given a lists of tasks to complete. This allowed us to focus on the usability and discoverability of our functions.


Test Scenarios

  • IVR - Users were given a test plan which stepped them through finding a fact sheet on organic rice. Users would call in our IVR system through Skype and attempt to input the correct key presses in the dialpad to retrieve the required information.
  • Knowledge Navigator - Users will be going through the Knowledge Navigator in an attempt to retrieve the suitable fact sheet and answer on Organic Rice.
  • Data Analytics portion - Users were tasked to create charts that showed the following: total number of calls that come from each country and different average monthly call durations of each country.


Please refer to our Usability Test page for more details.

Reflection

The Green Reapers' Reflection:

Group photo.png
  • Collaborating with an international institution dedicated to social causes
  • Effective communication skills with partner organization
  • Distilling complex concepts to create simple and intuitive user experience
  • Integration across over 3 distinct platforms
  • Building on open source applications
  • Implementing workarounds to unresolved technology issues
  • Experience with building a Interactive Voice Response System on Skype
  • Deriving Analytical charts with JQPlot
  • Marcus's Reflection:

    Through learning to integrate WP with the various technologies was truly an eye opener. However, the biggest takeaway I had was really having to source for our own client and being able to align our needs with them. In addition, because our client was largely situated overseas, I learnt how to condense the information to be put across to them and also to gather as much information and requirements from them to be as accurate as possible. Working in a self managed team was extremely comfortable also as all of us were flexible and provided help to other teams when needed.

    Wei Han's Reflection:

    Qua Weihan
    Qua Weihan

    Being able to work towards a noble and social cause have been very intriguing for me, we're not driven to make more profits but rather putting what we have learnt to good cause of improving the lives of others

    On the technical side, through developing intellicrops IVR menus and Knowledge management navigator, being the front interface aggregating information from distinctly different platform and languages have exposed me to many inter-platform/inter-language technologies and work arounds. The knowledge navigator is such an example, running on PHP utilizing javascript jquery UI as its display library drawing data from both a mysql database and a .net aspx http request for data population.

    Issues were then encountered where codes were working perfectly fine for a particular browser and not work at all on another. As there were no direct remedy to the issue, a work around of interfacing JQuery UI to another php class acting as the intermediary which makes the call to the .net http request and present the information back to the jquery.

    At the end of the day i really enjoyed working with the team, as we spent countless hours slugging towards bringing the project to completion

    Edwin's Reflection:

    Edwin Feng
    Edwin Feng

    The project has opened my mind in using technology to help farmers around the world. Bringing the project from Imagine Cup, to getting a client, was an unexpected journey. The discussions we have in the team to make things simple for our system, together with our client was very fruitful. Key takeaways for me are:

  • Planning of Architecture
  • Simplification of call menu design
  • Extending our call menu design
  • How we could shift to other systems beside Skype
  • Designing a system which is capable of supporting different languages in the future
  • Delivering a vision to help farmers around the world

  • Lucas's Reflection:

    Lucas Chua
    Lucas Chua

    It has been truly a wonderful experience to work on this unique project, especially with a client like IRRI which gave us a great deal amount of information to work on and also provided an insight on how their 50-year old organization work together to provide a better farming experience for the farmers in Philippines.

    Customizing/editing the Wordpress CMS themes, plugins, functions to ensure our Wordpress CMS integrates well together with the rest of our Intellicrops system. Using remote procedure calling using HTTP as the transport and XML as the encoding to allow the IVR systems to post and interact with the Wordpress CMS .


    Fengnan's Reflection:

    Tan Fengnan
    Tan Fengnan

    Working on this project has increased my exposure on open architecture visual analytics codes and its development. This involves multiple technologies which are relatively new to me before the project, like JSON, Ajax, as well as many JQuery technologies. These technologies work hand in hand to create the data analytics feature that IRRI needs. Through the whole process and integration of the technologies, I was able to have a better understanding and appreciation of the whole data analytics process.

    The analytics process that was firmly embedded into my understanding:
    Data extraction - Data transformation - Data loading - Graph generation

    Working with the team also improved my task priority management skills due to juggling different tasks with different complexity over a tight timeline.


    Alvin's Reflection:

    Alvin Koh
    Alvin Koh

    IntelliCrops has been a very special and exciting experience. At its core, the project is a thoughtful and loving integration of our collective passions and experiences in domains such as technology, social sciences and developmental work. Working at the intersections of these interests gave us the inspiration and boldness to explore a unique combination of technologies and concepts that showcases the great social impact of IT.

    Looking back on how we've managed project resources, interacted with our mentors and testers, and designed and built robust macro and micro architectures, I've certainly honed my skills in:

  • Visualizing at the various scales of projects, technologies and architectures
  • Communicating complex technologies to both developers and users
  • Specifying architecture and interface designs and implementing them (e.g. creating the new graphing system)
  • Exploring unique interdisciplinary niches and sharing our visions for that space Most of all, I've gained the confidence and drive to seek out such innovative projects!
  • Partner's Comment

    Marco
    Marco
    Head of Information Technology Services
    (Based in Philippines)

    IntelliCrops is an extremely good tool to retrieve articles and information. I am extremely impressed that you guys have been able to put IVR onto Skype. This is a good piece of software that we would want to pick up for further development. The analytics feature is extremely useful. Currently, the NMS is not that heavily used yet, but we will integrate the analytics in as soon as we can. It would be great if you are able to support pre-recorded voices instead of the computer generated voice.The tagging infrastructure is unique and very useful, it may allows us to organise large chunks of information better.

    Tara
    Tara
    Development Officer
    (Based in Singapore)

    I would like to commend your team on its professionalism, particularly in the face of challenges that came up along the way. The needs of the agricultural sector were, I know, not familiar to any of you but you were able to grasp the context quickly and apply your technical skills appropriately. I also think the various elements of the project have the potential to be very useful for us or for similar platforms. The analytics component in particular is suitable for application, with not many tweaks necessary.

    As for future collaborations, we are as always open to them. However, as you know, privacy issues regarding the content and data can make full collaboration difficult. Also, the limitations on the technical team's time to dedicate to such short-term projects can make it challenging. However, we would be happy to stay in touch with SIS in the future.

    Duncan
    Duncan
    Development Director
    (Based in Philippines)

    It is great to be able to port the rice doctor, such a large repository of information onto the mobile!

    Credits

    Proudly Done By The Green Reapers (with our Project Supervisor Chris Boesch
    Proudly Done By The Green Reapers (with our Project Supervisor Prof Chris Boesch & Prof Ben Gan)













    FROM THE HEART
    Back to Home Page