|
|
|
|
Milestone status for Oct 09
1. Name
|
| | Derek Sessions |
| | | 1 (8%) | |
|
|
| | Jeeyun Lim |
| | | 1 (8%) | |
|
|
| | Corey Shaw |
| | | 1 (8%) | |
|
|
| | Hubert Lee |
| | | 1 (8%) | |
|
|
| | Yuan Gao |
| | | 1 (8%) | |
|
|
| | Dave Eng |
| | | 1 (8%) | |
|
|
| | Rae Alty |
| | | 1 (8%) | |
|
|
| | Aaron Cottle |
| | | 1 (8%) | |
|
|
| | Sohum Misra |
| | | 1 (8%) | |
|
|
| | Felipe Serrano |
| | | 1 (8%) | |
|
|
| | Matt Freeburg |
| | | 1 (8%) | |
|
|
| | Kevin Le |
| | | 1 (8%) | |
|
|
| | Brad Dodson |
| | | 1 (8%) | |
|
|
Total: 13 |
2. Percentage complete
|
| | 46% |
| | | 1 (8%) | |
|
|
| | 45% |
| | | 2 (15%) | |
|
|
| | 70% |
| | | 2 (15%) | |
|
|
| | 67% |
| | | 1 (8%) | |
|
|
| | 100% |
| | | 2 (15%) | |
|
|
| | 95% |
| | | 1 (8%) | |
|
|
| | 85% |
| | | 1 (8%) | |
|
|
| | 90% |
| | | 1 (8%) | |
|
|
| | 10% |
| | | 1 (8%) | |
|
|
| | 40% |
| | | 1 (8%) | |
|
|
Total: 13 |
3. What milestone objectives were actually attained? Be specific!
|
| | Content Team:
We have completed a simple video tag system. It is functional, although needs some work and cleaning up. However, at this point most of the work is out of the way; the rest is just a matter of adding a bit of style and functionality. (This is not up on Skynet yet, so I won't post a link.)
We have a theoretical beginning implementation of the user profile page that has only the baseline functionality, but apparently it crashes the development web server on Corey's server, which is probably bad, and is thus why we have nothing on Skynet.
We researched parameter passing when loading user controls. This also crashes, but we are not sure if this is a back-end problem or our problem.
-----------------------------------------------------------------------
As the person in charge of doing the video player, everything is going well. I've cleaned up the code quite a bit, and have added a tagging mechanism. Overall I think I've broken the back of most of the work, which is good. In about a day or two of a bit more cleaning up, it should pretty much be to the point where it is less of "totally make something new" and more of making things look nicer and adding small pieces of functionality. |
| | | 1 (8%) | |
|
|
| | - Implementation of variable parameter-passing when loading user controls; it currently crashes the development web server but we're not sure if it's our code or the backend that's causing the problem
- Started on user profile page
- Tags in video in silverlight
- Implementation of display of tags for text in progress: didn't have a separate control for tags but currently moving that to a separate control |
| | | 1 (8%) | |
|
|
| | - Started a user profile page, but it doesn't work yet (and we don't know why, because it crashes the development webserver). We'll need to spend some time debugging, or figuring out if its a problem with the backend.
- We can display tags in video content in our silverlight player.
- We researched the methods of passing information to user controls, but have not rewritten all user controls to use this yet |
| | | 1 (8%) | |
|
|
| |
- Added an image content type to the enum of valid content types
- Researched the types of stored procedures in SQL Server and compiled a document on it. See here.
|
| | | 1 (8%) | |
|
|
| | [ My milestone can be found here]
1. Upload the WYSIWYG text editor
2. Add the text editor to TextEditor.aspx page
3. Modify the editor to remove javascripts from the content
4. Enable user switch between WYSIWYG editor and plain text editor
5. Upload the content to the backend successfull. User can preview the content in TagContent page.
Now the users can add images/video/links, create tables and preview the content. |
| | | 1 (8%) | |
|
|
| |
- I researched RDF and SPARQL for possible use within the backend/search databases.
- We decided on using rdf and SPARQL for the relationship model since it best represents such graphs.
- I attended a meeting on Wednesday to decide on reorganizing the Search model and start on implementing it.
|
| | | 1 (8%) | |
|
|
| | Group milestone:
G1 - Finalize working standard with backend (see the team milestone )
Personal Milestones
P1 - Search tree creation ( here)
P2 - Write up description of selection tree for the backend ( here)
P3 - Finishing the Selection Tree ( here)
P1 - I added the classes necessary to have a tree represent the selection process. At the time, I was assuming returning a value to be parsed, so I added the code in the complex selection tree classes (union, intersection and negation) to combine lists of results in the proper way, and tested such. Unfortunately, when I spoke to Brad this method changed, so I never finished the "searchAlgorithm" class as it was to be (and has sincebeen) deleted.
P2 - I wrote-up the complete descrption of the selection tree for the backend. It can be found
G1/P3 (Selection Trees) - We finalized the selection tree. Sohum modified the factory to properly create the selection trees based upon set SearchParameters. I updated/created all the small classes to allow the structure to work. I later added the boolean expression style leafs, and to make that work I also modified the SearhParameters creation of simple selection trees slightly. In the process of doing this, I deleted a lot of the code from P1...but it was a necessaryt change (though it is regretttable that miscommunication lead to a waste of the first half of the week on P1.)
G1 - I had Dave research SPARQL, as per the request of Brad, and he came to the conclussion that it would be nice for the models, and would requir the backend to implement RDF. It is not, however, applicable to the searching process.
|
| | | 1 (8%) | |
|
|
| | I satisfied almost all of my team's milestones assigned by Brad and the internal milestones we assigned to ourselves.
- I added the tables the Search team needs.
- I am debating with Brad on the best way to perform atomic transactions and control DB access. I have a solution, and he just needs to be convinced of how good it is.
- I've also sent a proposal for how to store multiple versions of content to Brad.
- I've updated the DB for keeping track of authors of tags.
- I've added primary keys to the database. Some tables don't have primary keys, but I don't think they need one (tables where every single column would have to be part of the primary key in order to be unique). |
| | | 1 (8%) | |
|
|
| | Milestones
I attained both of these milestones. The first one was trivial code since it was simply a delegation from the indexer to the model. It may be thrown-away code, as well, since the design has changed a fair bit. The second was non-trivial code that involved me parsing search queries into our ISearchTree datastructure. I wrote a SearchParameter to help me do this and implemented the algorithm in a way that (hopefully) is easily extensible. |
| | | 1 (8%) | |
|
|
| | See the Authoring Team Milestones here. The milestones not assigned to anyone were posted by Brad. The ones assigned to team members were the milestones I assigned and split up.
- Allowed uploading of images in addition to text and video
- Integrated viewing content with the tagging page in order that this content can be previewed and tagged (especially so the user knows what the content will look like)
- Abstracted out this content view to be dependent on the content type. For now, videos are the only thing that is displayed in an iframe, since I have no silverlight skills to display the video separately. I may have to consult with Derek on this one
- Check the format of files. This, again, is also dependent on the type of file that the user said he/she is uploading. So if the user said that they are uploading an image of type .txt, it will fail, but a text document of type .txt will go through.
- In addition to this, I check the internals of a text file so that not unwanted script will be run when a user views the file. This will probably need looking at from other team members to make sure that it's secure, because this can be a pretty significant breach if we don't take care of it.
|
| | | 1 (8%) | |
|
|
| | Milestone assignment is available here.
- Updated Entity, User, and Group (along with I- versions) to follow the transaction model that Content was changed to over the weekend.
- Changed Entity/User/Group to use GetProperty and SetProperty methods that pull properties out of the database in a lazy fashion (only when asked for, but then saved for later requests)
- Created a PasswordService in the Common project which has an encryption method that changes a password string into an encrypted Byte[] which is stored in the database
- Updated Entity/User/Group to use password encryption
- Created new Entity/User/Group constructor which takes an email and password and returns the Entity if the password matches what is stored in the database for that user (throws an exception if password does not match)
- Created a method in Backend, LoginUser, which calls the new constructor above for a User. Returns the User on a successful login, or null on failure. No LoginGroup yet since Group functionality is still illdefined.
- Created an alternate CreateContent method in Backend which also takes a user id and checks that that user id exists before allowing content creation. This is the first draft way of checking that an author is valid before creating content.
|
| | | 1 (8%) | |
|
|
| |
- Both Yuan and myself were assigned to create a working progress bar over the weekend, but all we have to show for it is a lot of code that doesn't work.
- On Monday I was reassigned to make a profile creation page. I've done what little I can in terms of making the web application check for profile information validity, and opening up a connection to the backend. The code does not actually create a user in the backend.
|
| | | 1 (8%) | |
|
|
| | First of all, my personal goals for the week were:
- See that we could gain some "lead time" between the backend functionality and what people need to implement their milestones
- See that someone takes care of handling the user interaction with the system and manages the user interface design.
- Get user profiles and tagging online in some minimal form.
- Work with Rae to specify things concretely enough that the search team could make progress
- Bring the backend towards a more correct implementation and interface, including handling transaction/concurrency issues correctly and doing data retrieval performantly.
- Assign more effective and timelier milestones
Of these I think only 2,4, and 5 have made progress, although 3 should be operational tomorrow I believe. This was not without its significant problems however. For 2, I appointed Sohum (with some class interaction) to take charge of this and I believe he is moving into the role of managing user interaction, although I need to communicate more clearly the vision and authority I intend him to have. 4 was essentially a failure at the beginning, but is moving towards completion as Rae and I have had some very important discussions over the course of the week. 5 is also in progress, and I did some things personally on it (since I'd written the code originally, and wanted to fix my own errors). However, I believe ownership has been thankfully transfered to the backend coders, and a reasonable settlement has been made about how things will happen. |
| | | 1 (8%) | |
|
|
Total: 13 |
4. What milestone items were left uncompleted? Be specific!
|
| | We are missing image tag display (which was scratched from the list to do this week.)
We have not started on a homepage, since we have not heard from Sohum what we want to put on it.
We are not displaying related results in the Silverlight player yet, although this is more a matter of connecting to the Content pages and getting results rather than needed Silverlight functionality (this is something that would be very easy to add to the player). |
| | | 1 (8%) | |
|
|
| | - No main homepage: have not finalized the items that should be displayed by this page
- No image tags (facebook style): the deadline for this has been moved to next week
- No related results showing for silverlight content |
| | | 1 (8%) | |
|
|
| | - We did not implement the viewing of tags in an image (like in Facebook), because we realized that the list was far too long and scratched it from this week
- We have not started on a home page, partly because we haven't heard from Sohum or Brad on what should go on it
- We aren't displaying related results in our silverlight player, but this should be done next week
|
| | | 1 (8%) | |
|
|
| | I'm unsure how we plan on placing our actual content, in the database or in the filesystem. In either case, we need to figure out a way to stream the data out. I think Brad may have found a way to stream data from the database. |
| | | 1 (8%) | |
|
|
| | The function to clean up the code is not finished. Now I only check javascripts. Only certain html tags and attributions should be allowed in the content. |
| | | 1 (8%) | |
|
|
| |
- I was originally assigned to implement the Search factory class, but this was later reassigned to Sohum, after the originally planned design became deprecated.
|
| | | 1 (8%) | |
|
|
| | G1 (Selection Trees) - We have not added the visitor pattern to the tree yet.
G1 (Ranking Trees) - We are still uncertain as to how to communicate the algorithms for ranking to the backend. I have a couple thoughts, which range from "mathematical trees" (blanking on the name right now) to a SQL query language. A tree would be large and a lot of fluff, thus a waste of space and slow things down. On the other hand, adding a language would mean parsing for the backend...looking for the right option still. |
| | | 1 (8%) | |
|
|
| | - I again did not provide a document on how to use branches in VS. I'm not actually sure of how useful this would be at this point, as people are already using branches effectively.
|
| | | 1 (8%) | |
|
|
| | None |
| | | 1 (8%) | |
|
|
| |
- No image tagging has been implemented yet, but since neither the backend nor the content view team can accept image tags, there was nothing I could really do except implement the javascript to determine the position in the image the tag was created, which is simple code.
- No conversion of file types to a standard. This is way more difficult than I expected (think gzip*100). For example, the WMV format spec is over 250 pages long...
- Didn't complete abstracting out the tagging mechanism as clearly as I would like. It would work for all kinds of tags, but I would like to make the right hand side of the TagContent page asbstract
- I realized late today that I can check the extension of files being uploaded in javascript instead of in the server so that the user doesn't upload a useless file that will be rejected anyway. Any internal check of the file will have to be done in the server though.
|
| | | 1 (8%) | |
|
|
| | I was unable to connect to the database from my machine, and while logged in and running the project on Skynet3, so I couldn't test that part of the functionality. Other than that, everything compiled and my test programs ran fine aside from timing out or being refused by the database. I am seeking help for the problem and hope to be able to finish testing tomorrow.
I don't think the author validation for creating content is the best solution (ideally the webapp would be checking a session cookie for this), but it should allow some testing functionality even if the code is ultimately thrown away. |
| | | 1 (8%) | |
|
|
| |
- The progress bar is still unfinished, and while I think it is possible, I also believe it takes a disproportionate amount of work for a trivial part of the project.
- I would like to encapsulate the validity checking of a user profile in a separate class eventually.
- Once the backend handles users, I will be filling out my stubs to flesh out user information editing, and creation.
|
| | | 1 (8%) | |
|
|
| | 1 is a miserable failure thus far. I hope to plan much better and try to get this done in the next two weeks.
To see 2 through to conclusion, I need to more completely communicate what I expect of him in the new role.
3 should happen shortly I believe.
4 is still up in the air in some ways, especially with regards to relationships and how they will be defined.
5 is mostly on the road to completion although there is still concrete work to be done. |
| | | 1 (8%) | |
|
|
Total: 13 |
5. Additional Comments
|
| | Note: My main (read only) task has been the video player.
Video's going well, I think I'm getting a very strong understanding of Silverlight and Javascript, and through that development of it is speeding up. Although, I don't think I can take too much more Javascript. |
| | | 1 (10%) | |
|
|
| | This wasn't a very productive week for us, for a number of reasons. At the top, we were all incredibly busy with other classes as well, including COMP 440 (for me), and other work and midterms. Also, I feel it was harder to be focused on a goal because we had a (somewhat) unreasonably large milestone this week, but more so because its components weren't very centralized. If you look at the list above (including what we did and what we didn't finish), there were a lot of different things on our plate and it was difficult to focus. This is far more than my planned goal of just improving the video player, and I feel that the milestone requirements from Brad (and partly from what the customer wanted, and was promised before consulting me) derailed us quite a bit. Also, there wasn't much to work from as far as the home page and profile pages go, because neither Brad nor Sohum gave us specs on what should be on those pages. |
| | | 1 (10%) | |
|
|
| | I got this milestone on Monday. Before Monday I was working on progress bar. I looked at several examples including one that use AJAX and pass the file stream to web service, but it requires ActiveX, which is not supported in Firefox. And it turns out that progress bar is impossible due to the limitation of IIS. |
| | | 1 (10%) | |
|
|
| | I actually didn't spend very much time coding at all this week. Instead I was mostly doing research into SPARQL and RDF. I don't feel as if we accomplished all that much as a team, but that was mostly due to the major setback of trying to redesign the searching model, but having the plans scrapped and redesigned over the weekend anyway. I'm realllllly hoping that next week is more productive, and REALLY want to push for more concrete milestones/objectives. |
| | | 1 (10%) | |
|
|
| | I really, really am tired of these late, vague milestones. I know it's partly my job to get work for my team, but some guidance would be appreciated, as that IS one of the main job's of the PM. We STILL don't have a time-line, and I feel that is resulting in us being WAY behind where we should be. I'm really hoping for a DETAILED time-line for the Thursday meeting, no more of the vague stuff that S&N keeps getting. It's getting to where I feel I need to make one for my team, which maybe I should have from the beginning, but I was under the impression it was the job of the PM to look at the "big picture" - but clearly that's not the case (or its just not being done, as he's being too preoccupied with the backend.) Sorry, I'm frustrated, but two weeks of the same thing will do that to me... |
| | | 1 (10%) | |
|
|
| | This was my last milestone for the search team as I am now moving into a UI team. |
| | | 1 (10%) | |
|
|
| | Unfortunately, I was forced to assign new milestones to Kevin and Yuan on Monday due to the failure of the progress bar. Apparently it's more complicated than we expected so we will have to brainstorm more. In addition, we only found out on Monday that we needed to have a profile creation page...not the best communication. Thankfully, I quickly assigned that to Kevin and he's working hard towards it. |
| | | 1 (10%) | |
|
|
| | Created a branch to hold my code until it is fully tested. Branching is kind of confusing (at least if you have something already written that you don't want to check in to the main branch). |
| | | 1 (10%) | |
|
|
| | I have a fair amount to say about what transpired this week, but I think it is better left for the journal. |
| | | 1 (10%) | |
|
|
| | This week has felt like a failure to me, as I'd hoped to be moving past many of these problems, and they're biting me again. I'd like to just say I'll work harder, but I'm not sure that's possible or will help, so I'll say that I'm going to try to work harder and smarter to get things done, and especially focus on managerial effectiveness above all. |
| | | 1 (10%) | |
|
|
Total: 10 |
|
|
|
|
|
|