Posts

Showing posts with the label data-access-layer

Sprint 6 Review

Today I met with my adviser for the sprint 6 review and demo. It was pretty uneventful. I didn't get nearly as much done as I had hoped due to the busy holiday season (even programmers have friends and family, shockingly!), but what I did get done went well and turned out fine. All but the complicated  (recent activity/unfinished tasks/blocking tasks) read-only pages are done, and all of the creation code now works, so I demoed that. Then we discussed the project's email update capabilities, as I realized during the sprint that we'd never really talked about how that should work. If a user sets their preference to receive update emails, they get emailed when updates occur to their projects and tasks. I had originally set it up so that only the task creator and assignee would receive emails, but my adviser decided he would want emails as an instructor for every task update, even in the case of a student-led project where one student might create the task and assign it to a...

Sprint 6 Planning

The goal for sprint 6 is to finish rewriting the application, and to fix and prevent bugs and handle errors gracefully. There are quite a few items left from last time, so those are: Page Points Task 4 New User 1 New Task 1 New File Link 1 New Comment 1 Blocking Tasks 3 Most Recent Tasks 3 Unfinished Tasks 3 This adds up to 17 ideal man hours, which is a little low (hopefully; I like to try and stay optimistic!), so I want to add in a few more items to the sprint backlog. They are: Priority Description Points 510 Fix a bug with navigating to the projects page 0 (5 mins) 500 Fix the login error that occurs when the username doesn't exist in the user table 2 470 Wrap create statements and the fetching of the ID in one database transaction to prevent incorrect results 2 450 Update the application to handle errors nicely 5 This is another 9 hours, which brings us up to 28. I'm ever the optimist, so hopefully this will be the sprint where this is actually succes...

Sprint 5 Retrospective

So on Sunday I finished sprint 5. It went fairly well, although I didn't have as much time as I like, despite it being a 3 week long sprint. I was out of town for 4 days, plus there was that whole Thanksgiving thing, so it came out to be more like 2 weeks after all. Considering the amount of time I had, I think it went ok. There were a few oddities and bumps in the road. First, I was highly annoyed when I discovered that in JDBC the table name/alias isn't included in ResultSet column names . Instead, you have to alias the actual column if you need to distinguish between column names in the result. Grr. Second, I discovered that it's really kind of a pain to call static methods using JSTL .  Since I use static methods in virtually every JSP to format the output for HTML/links/etc. to ensure user input doesn't do whacky things, this is a problem. For now I'm putting off rewriting the JSPs to use JSTL, because I'll have to write custom EL functions and maybe tw...

Sprint 4 Retrospective

Sprint 4 is over. It was somewhat of a disaster. I completely and utterly underestimated the amount of time it would take me to rewrite the data access layer, application layer, and presentation layer. In retrospect it was insane to think it'd go that fast; this is a rewrite of almost the entire project, which I originally created over the course of 3 months. Whoops. Anyway I got through parts of the data access layer rewrite, and that's about it. I've increased performance in a lot of areas and improved the code overall. I'm now taking advantage of Java 7's try-with-resources statement, which is AWESOME and makes JDBC code much less hideous, and I'm no longer doing any catch (Exception e) but rather actually specifying the exceptions e.g. catch (SQLException e). I did also tweak my database tables, which necessitated rewriting my database creation and fake data creation code. I also wrote a test class to make sure the code I wrote is actually functioning pro...