Undergraduate Capstone Open Source Projects

Archive for the ‘Ingres’ Category

Henry’s Midway Update

Posted by Henry on 2010/03/01

Never worked on an open-source project before, it has proven to be challenging for me to run different scripts and commands in an open-source environment. It has been a huge learning curve for me to adjust to open-source programs when I was babied all these years by GUI applications and Windows. Although we are half-way through the term, we still have a lot of development work to do. The setup of the environment took awhile as there are so many configurations that are required for this project. Yet, it was worthwhile as I’ve learned a lot from creating environment variables to running scripts on maven, and then configuring build path in installing SVN for file sharing in Eclipse. Setting up and running maven, GeoTools and GeoServer were both challenging and time-consuming as making a tiny mistake would require hours of work to fix. Yet, I have no regrets or concerns because I have learned a lot through this process.

At the moment, we are in the progress of connecting to the Ingres database server, where we will be running our testing. Once that is set up, the remaining tasks will be mostly development, which should not be too difficult. I had not anticipated setting up the environment can be so difficult and time-consuming. Nevertheless, Andrew, other members in the team and the open-source community have been very helpful. In the Ingres team, we are assigned to different mailing lists where important information is communicated across. There is also documentation regarding geospatial data that we need to read and understand for our development. Thus, considerable time is spent on reading and catching up each week. I had spent around 8-10 hours each week on reading mailing lists, catching up, and providing my input to the project. It is longer than I anticipated, but it is worthwhile as it gives me an idea of what it’s like working in the industry.

Although impediments slowed us down, I feel that we can make up for it now that we have much of our set up completed. Much of the remaining tasks are development, which I am comfortable with. I learned that communication is very important especially when all of us are scattered across Canada. As long as I ask questions, I will always get the help I need. Weekly meeting and status updates are very helpful in sharing our knowledge and findings. In the time we have left, I feel that as long as we maintain our teamwork and collaboration, we will be able to achieve our goals and help connect GeoTools to the Ingres database.

Posted in Ingres, Status | 1 Comment »

Xiaoxiao’s Midway Update-Ingres

Posted by George on 2010/02/28

My overall progress is a bit slower than I expected, because environment setup took me too long in early February. But I have started implementing actual code and current progress seems good.

The main difficulty I have had so far is setting up development and testing environment. A large scale open source project such as geotools requires me to install and configure a lot of programs before development starts. Therefore, this setup progress is time-consuming and requires attention to detail.  I set one argument in a single program’s configuration to a wrong value, and the whole project wouldn’t build. This mistake wasn’t discovered until after I spend 5 days double checking all settings and with Lim’s help. Moreover, a Ubuntu crash forced me to reinstall the system and to started all over again. However, I find this (rather painful) process valuable and rewarding, since this is the first time I need to do so many configurations at the same time(linux, java, eclipse, mvn, geotool, geoserver, openvpn) to make software work.

The reading overhead is also much more than the actually development. I have to spend at least 3 hours per week to read online documentations, mailing lists, and book.

But the overhead in setting up environment and reading greatly helps us to understand what we need to write. Writing code is really the last and easiest thing to do if you can understand the problem to solve.

Posted in Ingres, Status | 1 Comment »

Anthony’s Midway Update

Posted by Anthony on 2010/02/24

Ingres support for Geotools has been progressing well. However, although we are already half way thru the term, we still have quite a ways to go, so we are beginning to pick up the pace a bit.

Comments and Observations:
– It seems like there is a lot of overhead and learning compared to the actually size of the code being developed. This has been a great learning opportunity, although it seems like given the learning curve, it would have been more effective if this project was longer than just one term.
– There was good communication within our team. This has been very important, as it has kept everyone up to date, motivated, and made sure that we were all on the right track. Weekly teleconference meetings have been very effective and I don’t feel that we have suffered from not being able to meet face to face.
– I came in with less experience with actually software development experience than other team members, so I spent a lot of my time bringing my skills up to speed (i.e. linux, svn, maven, etc). Again, this was a good learning opportunity for me.
– Lots of time spent writing status updates, reading mailing lists, reading emails, etc. This was a little surprising for me, but I soon realized how essential and beneficial communication and staying organized is. I particularly benefited from the knowledge of my teammates and mailing list participants.
– Lots of time spent installing and configuring supporting software.
– Our mentor, Andrew, has been very helpful in providing us with any required support.
– The average time put in per week was more than I had expected. After the first two weeks I realized I needed to put in at least 10 hrs per week to keep up. This has been very rewarding though, so no complaints!

Below are some of my status updates for the past few weeks.

Week of January 31st
What I’ve done this week:
– followed Lim’s instructions to set up debugging for GeoServer in Eclipse
– took a detailed look at the test classes proposed by Henry. I agree with his proposed action items.
– need to confirm whether skipColumnTest is necessary, my initial thought would be that it is
– spent a few hours trying without success to get the opengeo workshop to work with regards to writing data.. currently waiting for some help from geoserver mailing list
– having some problems with moving a school and then saving
error msg: 06 Feb 15:31:41 ERROR [geoserver.ows] –
org.geoserver.wfs.WFSException: Could not locate FeatureStore for ‘schools’

Week of February 7th
What I’ve done this week:
– got OpenLayers to write to postgis via Geoserver (using example code from opengeo workshop)
issue was that table in query did not specify a workspace, and no default workspace was set. Upgraded to GeoServer 2.0.1 to be able to set appropriate default workspace
– mailed copyright form
– received SVN access
– continued reading GIS pdf

Week of February 14th
What I’ve done this week:
– import ingres project into eclipse
– read jdbc notes doc
– communicated with henry about test classes
– added 5 test classes

Posted in Ingres, Status, Uncategorized | 1 Comment »

Ingres/Geotools Lim’s Midway Update

Posted by clgoh on 2010/02/23

The Ingres/Geotools team finally began work on actual implementation of classes and unit tests for the classes in Geotools at this halfway point. I personally feel that we are falling a little bit behind schedule, not beyond managable. We took our time in the initial phase afraid of making mistakes that compromises the quality of the output. The Ingres/Geotools team has have a lot to explore in the geospatial world as a toddler would have the world.

We already defined a very clear goal since the beginning and based on that, we finally setup in our plan, Looking at the size of the project in the beginning it seems reasonable, even at this point when we have detailed action items, I believe we are on the right track and its possible to see the project through its completion. However measuring against that, implies that we need to catch up on the actual implementation as we have got a lot to grind through. I personally do not think the effort spent in the first half of the term is wasteful, it just means we have a limited time left to execute the plan, a plan now much clearer than it would have been should we not have communicated and spent time understanding the concepts.

We are already learning at this point through the challenges and lack of information we have faced, that is how the real industry works, no matter how our courses have been like. We will continue to face these challenges but we learnt to be ready for it, and we could catch up by wasting no time trying and asking.

Posted in Ingres, Status, Uncategorized | Tagged: , | 1 Comment »

Geotools Status Report

Posted by clgoh on 2010/02/09

The Geotools team had been working on mostly getting oriented to Geospatial concepts, determining action items, etc.

We are now ready to create a new unsupported jdbc-ingres module into Geotools. In the coming weeks, you will see rapid additions of new code in the Geotools source.

Posted in Ingres, Status | Tagged: , | Leave a Comment »

“What we learnt” + “Where we’ll go”

Posted by clgoh on 2010/01/19

The day before the sprint, I knew of nothing about what I should do and what I can do in this project. I woke up at 5 on Friday morning, took a taxi to the bus terminal, got onto Greyhound to Toronto, got lost on our way to Bahen Centre (we were on University and College, 5 minutes away from Bahen, lol)  To my surprise, I arrived, and joined a team of people as lost as I was. We found out throughout the sprint, many differences between universities, the courses, the cultures, etc. But all of us being in our last year, I believe there’s one thing in common that we’ve learnt before we get there: Well, no one’s going to help us if we don’t start helping ourselves. Before long, the whole team started the sprint ourselves. We asked lots and lots of questions (Thank you very much Andrew for your detailed presentation and all your help even by having to whisper), we read wiki pages, downloaded source code and snorkeled in it. No one sat still waiting for an answer, there was no awkward silent moment as the team of “professionals” blended from the very first day and moved forward as one. The three days went by very quickly.

We learnt the following during the sprint:

– OpenLayers draws map using Web Mapping Service provided by Geoserver, which in turns uses Geotools to obtain GeoSpatial Data from databases. Geotools can currently talk to many databases but not Ingres.

– In Geotools there are connectivity code under modules/plugin/jdbc and modules/plugin that uses various jdbc implementations to connect to various databases. There is also a deprecated version of the framework scheduled to be removed soon. Ingres team needs to make a similar jdbc implementation under Geotools to add support for Ingres.

– Sara and Eva will be working on the Ingres server side to make sure GeoSpatial queries are handled properly, while Anthony, Henry, Xiaoxiao and Lim work on Geotools to add Ingres support.

We decided the following during the sprint:

The project lead will communicate with the team and with the community at large to keep everyone informed about the status of the team, and make sure the team is moving in the right direction. Lim will take on this role.

The high-level view of the project is:

– Study the code and play with Geotools in action

– Design and plan potential changes to Geotools source tree

– Implement the designs and also implement support for GeoSpatial data in Ingres

– Unit test the Ingres connectivity code in Geotools, test GeoSpatial data support in Ingres, and system test Geotools actually using Ingres.

Now everyone’s back to where they are from, but technology is constantly connecting us together. We are all a phone call/email/IM message away from each other, and we are preparing for the next get-together online every Monday with more progress to make.

Posted in Ingres, Sprint | Tagged: , , | Leave a Comment »

Code Sprint Summary

Posted by Henry on 2010/01/17

 Get a duplicated copy of GeoTools repository for UCOSP own builds
 Install Geoserver. Do preliminary testing with PostgreSQL w/ PostGIS, feeding to GeoServer
 Continue studying the code and understand how JDBC works to connect to difference databases in GeoTools
 Break down the database connectivity code among developers
 Assign the following tasks
o 2 developers
o 1 tester
o 1 project manager, where half the time is spent on project management, the other half as developer
 Contact Frank W for building Ingres on his server and set up username and password for us. We can then SSH into his server if we need.
 Post a sprint summary for Greg to log down our findings the past few days
 For each of us, log down meeting minutes in our own blog every week for our phone chat with Andrew (?)
 Design Document
Should contain the following:
o List of files needed for GeoTools to run with Ingres
o A class diagram for the Ingres design
o A diagram displaying the architecture of our project
o A test plan that assesses the validity of our code for GeoTools with Ingres
 Create a video showing how Geotools works with Ingres

Methods of Communication
 Google Wave
 IRC Channels: #ingres, #geotools
 Mailing lists: Geotools-devel, IngresGIS
 Conference calling via Asterisk – follow-up with Andrew on instructions to connect

Posted in Ingres | Leave a Comment »

Henry Chow

Posted by Henry on 2010/01/11

Hey all! My name is Henry. I’m a 4th year computer science student at the University of British Columbia. I am also minoring in Commerce. My interests lies in the e-commerce field, such as creating bank applications and websites. I have a good knowledge in Java, SQL, VBA and HTML. I have worked at MDA, Nokia, Quartz Imaging, and HSBC in my previous co-op job placements. I look forward to meeting all of you!

Posted in Bios, Ingres | Leave a Comment »

Anthony McCallum

Posted by Anthony on 2009/12/28

Hi, I’m Anthony McCallum.  I’m in my final year of a computer science degree at the University of British Columbia. My language of choice is JAVA, but I also have experience with a variety of other languages.  I will be working on the Ingres project this coming term.  This will be my first opportunity to work on an open source project, and I am excited for the challenge!  I’ve previously done internships with RIM in Ottawa as well as a bioninformatics lab in Singapore.  I am also currently working part time for a UBC affiliated lab.  Looking forward to meeting everyone at the code sprint!

Posted in Bios, Ingres | Tagged: , , , | Leave a Comment »

Cheang Lim Goh

Posted by clgoh on 2009/12/22


Hi I am Lim, a fourth year Computer Science/Business Option student from the University of Waterloo.

I will be joining the Ingres team next term. My experience lies primarily with C++ but I also speak a little Java and C#. This will be my first time working on a open-source database project, with focus on managing geospatial data, moreover a team as unique as ours! I look forward to working with Prof. Greg and everyone, see you all in January!

Posted in Bios, Ingres | Leave a Comment »