Information on the Senior Design Project

WinFS is Dead

http://fishbowl.pastiche.org/2006/06/25/we_come_to_bury_winfs

I guess we don’t have to worry about that competition any longer.

Tag v1.0

Here is the installer for the Tag application suite:
Tag v1.0 (~2.5mb) – Windows

The Windows functionality in Tag requires the .NET Framework version 1.1 which can be downloaded at microsoft.com or also here (~22mb) locally.

I believe that we will also be publishing a Linux/OS X version in the near future, which contains the command line utilities.

Economic Analysis

Here is the start of the Economic Analysis for the final report. The times listed in this spreadsheet are those that were used in the Cycle Reports for cycles 1-3 and in the status updates for cycles 4-5 with the exception of this week (cycle 5, week 2).

Economic Analysis spreadsheet

Please enter your times for this week into the Planning & Tracking tool so I can finish the cycle 5 totals and write up something about the numbers. If this is not done by Sunday, I will assume the times entered is all you worked for the week.

Interestingly enough, our project cost about $30,000 in manpower as of now using the $50/hour wage to factor in overhead.

Here is the write up of the economic analysis:
Economic Analysis
Economic Analysis (v2) Spreadsheet

Tag installer/source mega-update

Everyone,

I believe I fixed all of the major bugs that we were aware of; the new MSI is in CVS. Please do some acceptance testing over the weekend, but from my tests, everything seems to work (tested on my desktop, not the laptop which is messed up currently). Please post any issues (or valid testing for that matter) in the comments.

Fixes:

  • Tag Monitor:
    • There were some mishandled exceptions for the TagConduit. Also some minor bug fixes.
    • Added a RemoveAllTags call (while handling the exception for no tags) anytime before a move operation, there are duplicates otherwise.
  • Context Menu/Paste with tags:
    • It is impossible that this functionality ever worked on the copying tags level (copying files works fine). This is because no process can be invoked via the shell because “UseShellExecute” is forced to true whenever the process is started from the shell. This disables output redirection (required for our output parsing) and also disables working directories being passed on beyond the initial executable. This error was missed due to ignoring exceptions that were thrown when calling the TagConduit from “Paste with tags.” There are two possibilities as to why “Paste with tags” may have appeared to have worked before:
      • The tag database just happened to have that data already in it from previous testing.
      • It was working before the ProcessFactory was added and we didn’t do any output parsing – unlikely.
    • I got “Paste with tags” to work. This required the addition of another executable (C# console application) whose sole purpose is to run the TagConduit.CopyFile/UpdateFile functions for “Paste with tags.” By passing the file paths to this standalone application, we are able to bypass the shell execution issue that I mentioned already. There is a possibility of solving this issue directly in the TagConduit (specifically making their own process instances without doing any output redirection and having “UseShellExecute” set to true. The standalone console application only handles one pair of source/destination along with the operation at a time and is pretty much just calling the corresponding TagConduit functions while also making sure to handle exceptions. Every TagConduit tag query that doesn’t have a corresponding database entry throws an exception so they must be handled. This application also implements the aforementioned RemoveAllTags issue.
    • I implemented the “Copy (x) of” algorithm.
    • I added clearing of the clipboard after the file operation was done (as suggested by Corey as a solution to that weird explorer crash bug).
    • “ContextMenu.dll” is now “TagContextMenu.dll.” This is because the naming of the original assembly conflicts with any other shell extension called “ContextMenu.dll,” most notably Adobe Acrobat, which it turns out is why my context menu is so messed up looking.
  • doc/Installer
    • Added a “build” subdirectory that contains all of the latest release builds, along with a debug version of the File Monitor which is not packaged with the MSI. This guarantees that the installer is built with the newest files regardless of who is building it. Any time the Tag Conduit is updated, everything must be rebuilt.
    • In the event of a reinstall in which the Context Menu DLL has changed, the computer must be restarted (or explorer restarted), otherwise the old DLL will still be loaded into memory.

-Andy

Meeting Minutes (May.15.2006, May.18.2006)

Here are the minutes for the meetings from this week.

May.15.2006 – Status Update Meeting
May.18.2006 – Team Meeting

Tag Poster Final

Here is a copy of the final version of our senior design poster. Please post your feedback as far as what (if anything) should be changed. The absolute final is due on Wednesday. Thanks.

Tag Poster Final (PDF)

Cycle 5, Week 1 Status update report

Cycle 5, Week 1 Status Update Report

Tag Final Report Draft

Tag Final Report Draft

With all of the test cases and source code included, it was about 25 pages of text and a total of 173 pages of everything. Add in a few things that I think were missing it’s going to be bigger probably. I wanted to get something in, and it is about as complete as I think will be at this point without comments from Dr. Welch.

Tag Poster Final Draft

Here is a copy of the final draft of our senior design poster. Please post your feedback as far as what (if anything) should be changed. The absolute final is due on Wednesday. Thanks.

Tag Poster Final Draft (PDF)

Meeting Minutes (May.08.2006, May.09.2006)

Here are the minutes for the meetings from this week.

May.08.2006 – Status Update Meeting
May.09.2006 – Team Meeting

Tag Poster WIP #2

Here is a copy of the work-in-progress (possibly final depending on feedback) version of our senior design poster. Please post your feedback as far as what (if anything) should be changed. Thanks.

Tag Poster WIP #2 (PDF)

Final Report section

Here’s my section.

Final Report Section 1

Final Cycle Report

Here’s my section:

JD's Final Cycle Report sections

I’ll be leaving for camping this weekend, so if there’s anything I’m missing or needs to be updated, let me know and I can do it late Sunday when I get back. Thanks.

Major Issue

I found a major bug with the our project, I believe to be localized in the Tag Monitor. Well, I’m pretty sure it is. The problam is, it’s hard to figure out what is causing this issue. I believe it is caused when the Text Box in the Debug Console fills up, but I can’t gaurentee that. All I know is that eventually at some point of running the software, it suddenly stops working. Saving word docs causes the file to be lost, and even renames are no longer caught. I can’t even get the context menu to show up on the Tag Monitor anymore. I can close it through the Task Manager and restart the Tag Monitor, and it goes back to working fine. I believe it to be an issue with the Console’s text box because I noticed twice that this all occurs when the text box is filled up completely and begins truncating text at the bottom of the text box, but this may just be coincidence, or just an effect of the actual error that’s causing everything else not to work. I think everyone needs to install Tag on their laptops and begin some actual testing because we’re clearly missing something.

Also, I’ve found out that the issue of saving word docs losing the tags attached to them, which we thought was fixed, sort of is. For some reason when the Monitor is compiled in Debug mode, it can successfully catch renaming to temp files, so tags aren’t lost when saving word docs, however this doesn’t work in Release mode. I’ve no idea why. I got distracted by the crazy error I found above. It might have something to do with how long/when a file is changed to a hidden file and then renamed. EX: If the file is renamed and then made hidden, or if it is made hidden and then renamed, will make a difference. Our code assumes it is made hidden first, and then renamed. Perhaps we should just check for files renamed starting with a ~, which most temp files are. However, the user will no longer be able to rename tagged files with a ~

Tag Poster WIP

Here is a copy of the work-in-progress version of our senior design poster. It is based on the concept we drew up during the last meeting.

Tag Poster WIP (PDF)

Cycle 4, Week 2, Status update report

Cycle 4, Week 2, Status update report

Meeting Minutes (May.01.2006, May.02.2006)

Here are the minutes for the meetings from this week.

May.01.2006 – Status Update Meeting
May.02.2006 – Team Meeting

Cycle 4, Week 1 Status update report

Cycle 4, Week 1 Status update report

Meeting Minutes (Apr.24.2006, Apr.25.2006)

Here are the minutes for the meetings from this week.

Apr.24.2006 – Status Update Meeting
Apr.25.2006 – Team Meeting

Meeting Minutes (Apr.10.2006)

Here are the minutes from the advisor meeting.

Apr.10.2006 – Status Update Meeting

Bugs and stuff

If you find bugs in any of the pieces, leave a comment.

Add a tag doesn’t ahve newline when adding multiple tags.

Cycle 3 Report Draft

Cycle 3 Report Draft

Cycle 3 Report - More Stuff

My portions of the cycle report

Covers Tag Modification Tool, Tag Conduit, Context Menu Items.

Need to do PHP items still, forgot.

PHP Command-Line Tool Fixes

A number of bugs were found in the PHP Command-line tool which were removed. Adding a second tag to a file that had a record in the database already (ie: already had tags applied to it) was not working. The help messages for the UpdateFile and CopyFile command classes were just copies of another help message, and this was fixed. Another problem found for the UpdateFile command was that it would remove the old file from the database, but never insert the new file and its tags. As a result, the updated file would instead just be removed from the database. This bug was fixed as well.

Cycle 3 Report sections

Here are my report sections:
Cycle 3 Report: Tag Browser
Cycle 3 Report: PHP Changes (Andy/Jon)

Cycle Report Stuff-JD

I’ve updated the STRAT form and committed it to CVS. You can find it in the doc tree under planning. I’ve also made a section explaining the File Monitor tool.

File Monitor Desc for Cycle 3 report

My excel suddenly crapped out, so I had to do the Cycle 4 Plan in a word doc. Here it is.
Cycle 4 Plan
Basically next cycle will be spent fixing any defects found in our testing, followed by running Acceptance Test Cases and User Stories. The second iteration will be researching installation packages, implementing the script/package, and then doing final documentation on everything.

Cycle 3, Week 5 Status update report

Cycle 3, Week 5 Status update report

Meeting Minutes (Apr.03.2006)

Here are the minutes from the advisor meeting.

Apr.03.2006 – Status Update Meeting

Cycle 3 Report

Executive Summary – Corey
Introduction – Corey
Current progress
File monitor – Jon
Context Menu – David
Tag Conduit – David
Tag Modification Tool – David
Tag Browsing Tool – Andy
PHP tool changes and fixes- David & Andy
Project status – Corey
Management and issues and risks – Corey
Next cycle plan/updated STRAT - Jon
Conclusion – Corey

If I am missing anything or you have any questions just let me know.

Cycle 3 Report

Some time this week we need to discuss the cycle report. I hope to talk about this before the weekend since we have it due next Thursday. I would like to get the draft to Dr. Welch on Monday. We can discuss over AIM or on here about what we need to write on and how we want to split up the report.

Thanks,
Corey

Cycle 3 Presentation

Here is the cycle 3 presentation.

Cycle 3 Presentation

« Previous Entries