Difference between revisions of "DPS909 and OSD600 Winter 2009 Eclipse WTP Weekly Schedule"

From CDOT Wiki
Jump to: navigation, search
(Discussion & Helping Corner)
m (Week 5 (Feb 9) - Test-Driven Development (TDD): fixed link to junit tutorial)
 
(101 intermediate revisions by 4 users not shown)
Line 2: Line 2:
  
 
The course is broken into two parts.  First, general open source and and community specific skills and ideas are taught.  Students learn and/or review how to work with Java EE, WTP, Eclipse project techniques and practices.  Second, students focus on bug fixing within the Eclipse WTP project itself.
 
The course is broken into two parts.  First, general open source and and community specific skills and ideas are taught.  Students learn and/or review how to work with Java EE, WTP, Eclipse project techniques and practices.  Second, students focus on bug fixing within the Eclipse WTP project itself.
 +
All your work will be based on this [[Basic Tutor]]
  
 
=Part I – Essential Open Source Development and Java/Eclipse Skills and Concepts=  
 
=Part I – Essential Open Source Development and Java/Eclipse Skills and Concepts=  
Line 42: Line 43:
 
** Begin learning how to use [[Irc|IRC]] for communication. It is better to get started early such as your Eclipse workplace is set for programming.  
 
** Begin learning how to use [[Irc|IRC]] for communication. It is better to get started early such as your Eclipse workplace is set for programming.  
 
** After you install [http://www.eclipse.org/downloads/ Eclipse for RCP/Plug-in Developers (175 MB)] you will have ECF (Eclipse Communication Framework) and IRC client; you can open an IRC client from the Communication Perspective.
 
** After you install [http://www.eclipse.org/downloads/ Eclipse for RCP/Plug-in Developers (175 MB)] you will have ECF (Eclipse Communication Framework) and IRC client; you can open an IRC client from the Communication Perspective.
 +
  
 
== Week 2 (Jan 19) - Eclipse Webtools Overview ==
 
== Week 2 (Jan 19) - Eclipse Webtools Overview ==
Line 80: Line 82:
 
! <h2  id="mp-tfp-h2" style="margin:0; background:#0099ff; font-size:120%; font-weight:bold; border:1px solid #afa3bf; text-align:left; color:#ffffff; padding:0.2em 0.4em">The First Milestone</h2>
 
! <h2  id="mp-tfp-h2" style="margin:0; background:#0099ff; font-size:120%; font-weight:bold; border:1px solid #afa3bf; text-align:left; color:#ffffff; padding:0.2em 0.4em">The First Milestone</h2>
 
At the end of the second week you must have an working environment:<br>
 
At the end of the second week you must have an working environment:<br>
Please, follow the instructions to [[install Eclipse PlugIn and Eclipse WTP]] on your systems.
+
Please, follow the instructions from  [http://cs.senecac.on.ca/~jordan.anastasiade/Eclipse/WTP/0/WTP_Tutorial_1.html tutorial to install Eclipse PlugIn and Eclipse WTP] on your systems.
 
|}
 
|}
 
|}
 
|}
Line 113: Line 115:
 
! <h2  id="mp-tfp-h2" style="margin:0; background:#0099ff; font-size:120%; font-weight:bold; border:1px solid #afa3bf; text-align:left; color:#ffffff; padding:0.2em 0.4em">The Second Milestone</h2>
 
! <h2  id="mp-tfp-h2" style="margin:0; background:#0099ff; font-size:120%; font-weight:bold; border:1px solid #afa3bf; text-align:left; color:#ffffff; padding:0.2em 0.4em">The Second Milestone</h2>
 
At the end of the third week you must attentively decide and publish the list of your bug(s) (i.e. the bug(s) you want to work on in this course)<br>
 
At the end of the third week you must attentively decide and publish the list of your bug(s) (i.e. the bug(s) you want to work on in this course)<br>
Please, update the project column of the table [[Winter_2009_Open_Source_Students]] with the following information: '''''WTP-Bug ID, Severity, and Priority'''''".
+
Please, update the project column of the table [[Winter 2009 Open Source Students]] with the following information: '''''WTP-Bug ID, Severity, and Priority'''''".
 
|}
 
|}
 
|}
 
|}
Line 120: Line 122:
  
  
[[/Discussion and Helping Corner]]
+
== Week 4 (Feb 2) - WTP Servertools Webpage ==
Purpose: Jordan our professor has told us in the class that we will ''help each other'' to solve our problems in this learning community. Indeed, we will be rewarded at the end of the semester if we have helped our fellow classmates to fix their bugs. Before we reach this goal, I think we can post up our problems and questions here. Some of us can offer our help by responding to these questions. As for me, I'm learning about a new culture of ''being "open"'' and ''collaborating'' with other students to solve my problems as well as others' problems.
+
* '''[http://www.eclipse.org/webtools/server/ WTP Servertools Webpage]'''
 +
* '''[http://www.eclipse.org/webtools/development/ WTP Project Development]'''
 +
* '''[http://cs.senecac.on.ca/~jordan.anastasiade/Eclipse/WTP/1/Building_Eclipse_Web_Application.html Building Eclipse Web Application]'''
 +
* '''Readings/Resources'''
 +
** Tutorial
 +
*** [http://java.sun.com/javaee/5/docs/tutorial/doc/JSPIntro.html#wp100465 JSP Tutorial]
 +
** Book
 +
*** [http://www.amazon.com/Contributing-Eclipse-Principles-Patterns-Plug-Ins/dp/0321205758/ref=pd_sim_b_8 Contributing to Eclipse: Principles, Patterns, and Plug-Ins (Eclipse Series)]
 +
* '''TODO'''
 +
** Study the structure of [http://dev.eclipse.org/viewcvs/index.cgi/?root=WebTools_Project '''Eclipse Source Repositories''']
 +
** Study the  [http://help.eclipse.org/ganymede/index.jsp '''Eclipse Documentation''']. Look for Web Tools Platform User Guide
 +
** Project Deliverable - Release 0.1
 +
 
 +
<!--        WEEK'S IMPORTANT NOTE        -->
 +
{| id="mp-tfp" style="margin:4px 0 0 0; width:100%; background:none;"
 +
| class="MainPageBG" style="width:100%; border:1px solid #ddcef2; background:#faf5ff; vertical-align:top; color:#000;"|
 +
{| cellpadding="2" cellspacing="5" style="vertical-align:top; background:#faf5ff; color:#000; width:100%"
 +
! <h2  id="mp-tfp-h2" style="margin:0; background:#0099ff; font-size:120%; font-weight:bold; border:1px solid #afa3bf; text-align:left; color:#ffffff; padding:0.2em 0.4em">The Third Milestone</h2>
 +
At the end of the this week you must release the first '''[http://zenit.senecac.on.ca/wiki/index.php/OSD600#Grading Project Deliverable]''':<br>
 +
<u>''Reproduce the bug.''</u> '''This is your 0.1 Release'''<br> 
 +
Please, update your blog by defining the steps to reproduce your bug (i.e. the bug that you are working on). [http://jsinghfoss.wordpress.com/2009/01/31/214/ As a example use this blog]
 +
|}
 +
|}
 +
 
 +
 
 +
 
 +
== Week 5 (Feb 9) - Test-Driven Development (TDD) ==
 +
* '''[https://bugs.eclipse.org/bugs/query.cgi Eclipse Buzilla]'''
 +
* '''[https://bugs.eclipse.org/bugs/createaccount.cgi How to create a Bugzilla account]'''
 +
* '''[http://www.eclipse.org/webtools/community/tutorials/DevelopingWTP/DevelopingWTP.html How to use eclipse with CVS and download the WTP source code]'''
 +
* '''Documentation'''
 +
** [http://cs.senecac.on.ca/~jordan.anastasiade/OS/Assignments/Assignment1.pdf Release 0.1 Assignment 1] - Due Date:Feb 19, 2009
 +
* '''TODO'''
 +
** Read about '''[http://en.wikipedia.org/wiki/Test-driven_development Test-driven development]''' for using the JUnit testing facility in Eclipse.
 +
** Read the tutorial '''Unit Testing in Eclipse Using JUnit: from [http://agile.csc.ncsu.edu/SEMaterials/tutorials/junit/junit_tutorial_3.1.html here] or [http://www.cs.umanitoba.ca/~eclipse/10-JUnit.pdf here]'''
 +
** Practice the Eclipse Debugger. [http://eclipsetutorial.sourceforge.net/debugger.html Use this tutorial] for an '''introduction to debugger's features.''' One can [http://sourceforge.net/project/showfiles.php?group_id=200662&package_id=251688# download the tutorials]
 +
 
 +
== Week 6 (Feb 16) - Eclipse WTP wiki ==
 +
* '''[http://wiki.eclipse.org/Category:Eclipse_Web_Tools_Platform_Project Eclipse WTP project wiki]'''
 +
* '''[http://www.eclipse.org/webtools/development/guidelines/naming-conventions.html Guide on package and plugin naming convention]'''
 +
* '''[https://dev.eclipse.org/mailman/listinfo/wtp-dev Mailing list: wtp-dev]'''
 +
* '''[http://cs.senecac.on.ca/~jordan.anastasiade/Eclipse/WTP/2/WTP%20Tutorials%20-%20Building%20Enterprise%20Application.html Building Eclipse Enterprise Application]'''
 +
* '''Documentation'''
 +
** [http://wiki.eclipse.org/WTP_FAQ WTP FAQ]
 +
* '''Presentation'''
 +
** [http://www.eclipse.org/webtools/people/person.php?name=avera Angel Vera], Eclipse WTP Project Team Committer
 +
** Topic:  WTP - API Concepts and Roles
 +
*** Server Tools Architecture
 +
*** Techniques to find the source code for a specific bug
 +
** Time:  Tuesday Feb, 17 from 11:40 a.m. to 1:25 p.m. @ S2149
 +
* '''TODO'''
 +
** Read the tutorial [http://www.vogella.de/articles/EclipseCodeAccess/article.html Code Access Guide to Eclipse 3.4 (Ganymede) ]
 +
** Based on today Feb. 17 presentation of Mr. Angel Vera, write a blog about code finding procedure in Eclipse WTP (define clearly the steps for finding the code your are working with). ''' Your blog will be marked. ''' Please create an entry on our discussion corner with a link to your blog.
 +
<!--        WEEK'S IMPORTANT NOTE        -->
 +
{| id="mp-tfp" style="margin:4px 0 0 0; width:100%; background:none;"
 +
| class="MainPageBG" style="width:100%; border:1px solid #ddcef2; background:#faf5ff; vertical-align:top; color:#000;"|
 +
{| cellpadding="2" cellspacing="5" style="vertical-align:top; background:#faf5ff; color:#000; width:100%"
 +
! <h2  id="mp-tfp-h2" style="margin:0; background:#0099ff; font-size:120%; font-weight:bold; border:1px solid #afa3bf; text-align:left; color:#ffffff; padding:0.2em 0.4em">The Fourth Milestone</h2>
 +
At the end of the this week, based on the presentation, you must have a good idea how to search Eclipse source. Blog about your experience in finding the source code (problems, advices, interesting findings).
 +
Define the steps to find the code that is related to your bug (i.e. the bug that you are working on).
 +
|}
 +
|}
 +
 
 +
== Week 7 (Feb 23) - WTP Stable Build ==
 +
* Eclipse Platform (Platform, JDT)
 +
* EMF v2.5 Runtime Minimum executable code.
 +
* EMF XSD v2.5 Runtime Minimum executable code.
 +
* Graphical Editing Framework (GEF)
 +
* Data Tools Platform (DTP)
 +
* '''[http://cs.senecac.on.ca/~jordan.anastasiade/OS/Assignments/Assignment2.pdf Assignment 2]''' - '''Due: March 10, 2009'''
 +
* '''Presentation'''
 +
** [http://www.google.ca/imgres?imgurl=http://www.eclipse.org/webtools/people/photos/large/lawrence-mandel.png&imgrefurl=http://www.eclipse.org/webtools/people/person.php%3Fname%3Dmandel&h=276&w=200&sz=149&tbnid=ZyuNfD6rcDGlzM::&tbnh=114&tbnw=83&prev=/images%3Fq%3DLawrence%2BMandel%2Bphoto&usg=__IoJchDctuBi_tNF1ydC4TpXPCP0=&ei=GgmkSfW1MozRnQfRv-2fBQ&sa=X&oi=image_result&resnum=1&ct=image&cd=1 Lawrence Mandel], Software Developer IBM Rational Software
 +
*** Eclipse Plug-in Architecture
 +
*** Techniques for developing Eclipse WTP
 +
** Tuesday Feb, 24 from 11:40 a.m. to 1:25 p.m. @ S2149
 +
* '''TODO'''
 +
** Prior to Tuesday Feb, 24 presentation, read [http://www.eclipsepluginsite.com/ PlugIn tutorial]
 +
 
 +
 
 +
== Week 8 (March 9) Bug Fixing ==
 +
* '''[http://weblogs.mozillazine.org/lilmatt/2007/05/it_begins.html Personal blog account of fixing a bug]'''
 +
* '''[http://cs.senecac.on.ca/~jordan.anastasiade/Eclipse/WTP/0/WTP_Tutorial_1.html Getting your patch in the tree]'''
 +
* '''Readings/Resources'''
 +
** '''[http://cs.senecac.on.ca/~jordan.anastasiade/OS/Lesson9/Pres/FirstProjectNetBean.pdf Compare Eclipse - NetBeans]'''
 +
*** Steps by steps instructions
 +
*** Servlet & Session Stateless
 +
** '''[http://cs.senecac.on.ca/~jordan.anastasiade/OS/Lesson9/Code/Demo.zip NetBeans Project Code]'''
 +
* '''TODO'''
 +
** Present your current work status. Discussion and work related questions.
 +
** Helping each other on our way to understand WTP structures.
 +
 
 +
 
 +
== Week 9 (March 16) Eclipse NewsPortal ==
 +
* '''[http://www.eclipse.org/newsportal/ Eclipse NewsPortal]'''
 +
* '''[https://cs.senecac.on.ca/~jordan.anastasiade/Eclipse/WTP/3/Web_Persistence_with_JPA_PersonTutorial.html Web Persistence with JPA]'''
 +
* '''[https://cs.senecac.on.ca/~jordan.anastasiade/OS/Assignments/CourseProject.pdf Bug Release 0.2]''' Due Date: March 20, 2009
 +
* '''TODO'''
 +
** Verify your fixes (your code) against the latest build: Build for wtp-R3.1-S: S-3.1M6-20090318020101
 +
** As per March 19, when you write to Bugzilla use the '''[http://download.eclipse.org/webtools/downloads/drops/R3.1/S-3.1M6-20090318020101 Build] 3.1M6''' (as the new releases are released, please download and use them accordingly)
 +
 
 +
== Week 10 (March 23) Sample Project Template ==
 +
* '''[http://zenit.senecac.on.ca/wiki/index.php/Sample_Project Sample Project Template]'''
 +
**  30% - '''Bug 0.3 Release'''
 +
** '''Complete your personal wiki page and describe briefly <u>'''''your accomplishments '''''</u> (from the beginning to the present date).
 +
Please use as a model the [http://zenit.senecac.on.ca/wiki/index.php/Mercurial_history_browsing this wiki page] Although, this example is related to the Mozilla project, the same template can be used for your project (bugs) description. '''Your project wiki page will be used as a synthesis for the final evaluation of your work.'''
 +
It is very important to write about: Project Ideas, Details and News.
 +
 
 +
== Week 11 (March 30) The Fifth Milestone ==
 +
 
 +
As per today, April 2nd, 11.15 p.m. [http://download.eclipse.org/webtools/downloads/drops/R3.1/I-3.1-20090402044606 a new build is released].
 +
Please use Build wtp-R3.1-I: I-3.1-20090402044606 for your latest fixes.
 +
The community is looking forward to seeing your FIXES on Bugzilla. Please post your
 +
concise analysis and solution (in your blog posting), together with your patch.
 +
 
 +
<!--        WEEK'S IMPORTANT NOTE        -->
 +
{| id="mp-tfp" style="margin:4px 0 0 0; width:100%; background:none;"
 +
| class="MainPageBG" style="width:100%; border:1px solid #ddcef2; background:#faf5ff; vertical-align:top; color:#000;"|
 +
{| cellpadding="2" cellspacing="5" style="vertical-align:top; background:#faf5ff; color:#000; width:100%"
 +
! <h2  id="mp-tfp-h2" style="margin:0; background:#0099ff; font-size:120%; font-weight:bold; border:1px solid #afa3bf; text-align:left; color:#ffffff; padding:0.2em 0.4em">The Fifth Milestone</h2>
 +
At the end of the this week (11 - deadline extended), you have to post the result of your work in Bugzilla (as defined in our March 24 lecture).
 +
Post all your findings related to the bug that you are working on. For most of you this will be your fixes, but if you did not reach that point, post your findings as you consider them ''valuable'' for the community. This is your 0.3 Release and will be marked (30%).
 +
|}
 +
|}
 +
 
 +
== Week 12 (April 06) - Collaboratively Bug Fixing ==
 +
 
 +
 
 +
 
 +
* Tuesday, April 07, 2009 - Presentations:
 +
**  Le Yang - presentation [http://wb-os.blogspot.com/2009/04/fixed-bug-240698-part-i.html Fixed Bug 240698 - Part I]
 +
**  Davoud Salahi Rad - presentation [http://challenger110.wordpress.com/ Eclipse WTP - Davoud's approch to JAX-RPC bugs]
 +
**  Jesse Valianes  - presentation [http://jvalianes.blogspot.com/2009/03/problem-solved.html Problem Solved]
 +
 
 +
 
 +
== Week 13 (Apr 12) - Open Source Learning Experience ==
 +
 
 +
** Your Work Results and Accomplishments
 +
** Wiki Updates and Presentations
 +
 
 +
 
 +
* '''For any discussion and course related questions please use [[Discussion and Helping Corner]] page'''.
 +
** '''''Important Note: The IBM Presentations are posted in the [[Discussion and Helping Corner]].'''''
 +
 
 +
 
 +
== Summary of Accomplishments ==
  
#Question(pliu): I've created a blog account and writen my first blog on wordpress.com. How do I feed my blogs to the the Open Source @Seneca Planet? (I really enjoyed reading the blogs that were fed to this Open Source @Seneca Planet over the weekend.) Please help me. Thanks.
+
[[DPS909_and_OSD600_Winter_2009_Eclipse_WTP_Summary | DPS909 and OSD600 Winter 2009 Eclipse WTP Summary]]

Latest revision as of 21:15, 22 April 2009

Introduction

The course is broken into two parts. First, general open source and and community specific skills and ideas are taught. Students learn and/or review how to work with Java EE, WTP, Eclipse project techniques and practices. Second, students focus on bug fixing within the Eclipse WTP project itself. All your work will be based on this Basic Tutor

Part I – Essential Open Source Development and Java/Eclipse Skills and Concepts

Week 1 (Jan 12) Course introduction

  • TODO
    • Create an account on this wiki for yourself
    • Create a personal wiki page on this wiki
    • Add a link for yourself to the People page and the Winter 2009 Open Source Students page
    • Create a blog (wordpress or blogspot or whatever) and create a feed category or tag called "open source"
    • Read the Blog Guidelines for instructions on how to use your blog in the course
    • Add your blog feed and info to the Open Source@Seneca Planet List so that it appears in the OpenSource@Seneca Planet
    • Blog on your reactions to the readings for this week.
    • Begin learning how to use IRC for communication. It is better to get started early such as your Eclipse workplace is set for programming.
    • After you install Eclipse for RCP/Plug-in Developers (175 MB) you will have ECF (Eclipse Communication Framework) and IRC client; you can open an IRC client from the Communication Perspective.


Week 2 (Jan 19) - Eclipse Webtools Overview

The First Milestone

At the end of the second week you must have an working environment:
Please, follow the instructions from tutorial to install Eclipse PlugIn and Eclipse WTP on your systems.

IMPORTANT NOTE: As it was suggested by Mr. Angel Vera: “The best place for the students to post question and get answers to it will be the eclipse newsgroup". There is a long list of newsgroups that you can benefit from depending on the question. As you are going to be working with Webtools, you would probably want to stay within the Eclipse Web Tools Platform Project. This is an open community of adopters and developers working with the Webtools project.

Week 3 (Jan 26) - Navigating the WTP source tree

The Second Milestone

At the end of the third week you must attentively decide and publish the list of your bug(s) (i.e. the bug(s) you want to work on in this course)
Please, update the project column of the table Winter 2009 Open Source Students with the following information: WTP-Bug ID, Severity, and Priority".

IMPORTANT NOTE: The marks obtained on the second milestone will be posted on your course page. Continue to wiki and blog intensively as a provided evidence of your persist involvement and dedication to improve WTP Projects by fixing bugs in such a wonderful community work.


Week 4 (Feb 2) - WTP Servertools Webpage

The Third Milestone

At the end of the this week you must release the first Project Deliverable:
Reproduce the bug. This is your 0.1 Release
Please, update your blog by defining the steps to reproduce your bug (i.e. the bug that you are working on). As a example use this blog


Week 5 (Feb 9) - Test-Driven Development (TDD)

Week 6 (Feb 16) - Eclipse WTP wiki

The Fourth Milestone

At the end of the this week, based on the presentation, you must have a good idea how to search Eclipse source. Blog about your experience in finding the source code (problems, advices, interesting findings). Define the steps to find the code that is related to your bug (i.e. the bug that you are working on).

Week 7 (Feb 23) - WTP Stable Build

  • Eclipse Platform (Platform, JDT)
  • EMF v2.5 Runtime Minimum executable code.
  • EMF XSD v2.5 Runtime Minimum executable code.
  • Graphical Editing Framework (GEF)
  • Data Tools Platform (DTP)
  • Assignment 2 - Due: March 10, 2009
  • Presentation
    • Lawrence Mandel, Software Developer IBM Rational Software
      • Eclipse Plug-in Architecture
      • Techniques for developing Eclipse WTP
    • Tuesday Feb, 24 from 11:40 a.m. to 1:25 p.m. @ S2149
  • TODO


Week 8 (March 9) Bug Fixing


Week 9 (March 16) Eclipse NewsPortal

  • Eclipse NewsPortal
  • Web Persistence with JPA
  • Bug Release 0.2 Due Date: March 20, 2009
  • TODO
    • Verify your fixes (your code) against the latest build: Build for wtp-R3.1-S: S-3.1M6-20090318020101
    • As per March 19, when you write to Bugzilla use the Build 3.1M6 (as the new releases are released, please download and use them accordingly)

Week 10 (March 23) Sample Project Template

  • Sample Project Template
    • 30% - Bug 0.3 Release
    • Complete your personal wiki page and describe briefly your accomplishments (from the beginning to the present date).

Please use as a model the this wiki page Although, this example is related to the Mozilla project, the same template can be used for your project (bugs) description. Your project wiki page will be used as a synthesis for the final evaluation of your work. It is very important to write about: Project Ideas, Details and News.

Week 11 (March 30) The Fifth Milestone

As per today, April 2nd, 11.15 p.m. a new build is released. Please use Build wtp-R3.1-I: I-3.1-20090402044606 for your latest fixes. The community is looking forward to seeing your FIXES on Bugzilla. Please post your concise analysis and solution (in your blog posting), together with your patch.

The Fifth Milestone

At the end of the this week (11 - deadline extended), you have to post the result of your work in Bugzilla (as defined in our March 24 lecture). Post all your findings related to the bug that you are working on. For most of you this will be your fixes, but if you did not reach that point, post your findings as you consider them valuable for the community. This is your 0.3 Release and will be marked (30%).

Week 12 (April 06) - Collaboratively Bug Fixing


Week 13 (Apr 12) - Open Source Learning Experience

    • Your Work Results and Accomplishments
    • Wiki Updates and Presentations



Summary of Accomplishments

DPS909 and OSD600 Winter 2009 Eclipse WTP Summary