CISC 367 Tools for the Software Life Cycle
(Summer 2007 Study Abroad in Switzerland)

A Slide Show of the Trip
course banner course requirements helpful resources calendar course info

Final Grades as of 8/19/07

Lori Pollock
436 Smith Hall
Office Hours: by appointment.
pollock@cis.udel.edu

There are no teaching assistants for this course. All help will be provided by instructor and collaborative student effort.

course information

Course Prerequisites
CISC 220: Data Structures or permission of instructor
Course Description
This course is the study of software tools and environments commonly used throughout the software life cycle. The course will focus on the kinds of tools used in the software life cycle, the goals of each kind of tool, how the tools are used in practice, and the technology behind the tools. Students will learn about how to choose from among a variety of different tools for a given software engineering task. Tools to be examined will include integrated development environments, version control, software testing, performance profiling, and debugging.
The course is a study abroad course, located in Geneva, Switzerland.Much of the course will be taught at CERN, with field trips to various computing companies and research institutions. The classes will be very collaborative and hands-on with demos, lab time to work with the software tools, and discussion.
Course Objectives
At the end of this course, the student should have:

top of page

course requirements

University Requirements
UD email: Students who wish to receive their UD e-mail at a non-UD mailbox (e.g., AOL, Hotmail, etc.) must forward their UD e-mail to that mailbox and ensure that it is working so that they can receive and read official UD e-mail, including course-related materials, in a timely fashion. Instructions for forwarding are posted on the UD Network Page [www.udel.edu/network]

Course Requirements
Each student is expected to complete the following:

To be successful in this course, a student should use their problem-solving skills, be inquisitive about independently exploring the features of the software tools, work to refine their communication skills, be proactive about asking questions on company and research lab visits, and use their conflict resolution skills in collaborative projects.

Additional Requirements for Honors Credit

Course Policies
Students are expected to

top of page

grading information

Grading, Evaluation Policies and Procedures
Each student's course grade will be computed based on the following:

Group Work Grading: Group work will be graded, and then each individual's grade on the group project weighed based on student feedback on each student's participation in the project workload. If the student participated fairly equally in the workload, then each will receive the full earned grade. If the workload was very uneven, then a proportion of the earned grade may be assigned accordingly to the individuals. Each assignment will have a grading criteria provided when the assignment is given. Students will receive peer feedback on some of their work, but the assigned grade will be by the instructor, not based on student feedback.

Assignment Submission: Work to be graded must be given to the instructor by the start of class on the due date, in order to have no points deducted for lateness. The due dates are to be taken seriously and you should not expect them to be extended. The pace of work is implicit in the due dates and necessary if you expect to finish by the end of the semester. NO late work will be accepted FOR FULL CREDIT without discussion with me prior to the due date. If you can not reach me, leave a message on my voicemail or email. All other assignments not delivered by the due date are considered late.

Lateness: My philosophy on late assignments is: (1) Everyone should try their best to complete all assignments by the specified due date. (2) People who work conscientiously to make the deadlines should be rewarded for their promptness and sacrifice of sleep. Thus, allowing others to hand in late assignments without some penalty is not fair to these people. However, there are various circumstances that may prevent you from completing an assignment by the due date. Allowing no late assignments would not give you much incentive to continue to work on the assignment, which is a major source of learning in this course. Thus, I believe late assignments are better than no assignment.

Late assignments will be penalized 10% off the total possible points if turned in within the first 24-hour period after the specified due date and time, and 5% per 24-hour period (or fraction of a day) (including weekends) after that time, up to a week after the due date. Late assignments will be accepted with penalty up to one week after the due date. Assignments submitted at any later time without an approved excuse will not be accepted. It is up to you to determine the version of your assignment to be graded. You must weigh the late penalty against the completeness of your assignment.

Regrading Policy: If you are dissatisfied with a grade on any work handed in, you should consult the instructor directly within a week of the day the graded assignment was returned to you. No regrade requests will be considered after this week period.

Posting Grades: With your permission, grades will be posted periodically (by your secret code) on the course website. Questions about accuracy of recorded grades should be addressed to me.

Academic Dishonesty: You are permitted to consult with other students and professors on any conceptual problems and projects designated as group work. Any evidence of collaboration other than this kind will be handled as stated in the Official Student Handbook of the University of Delaware. If you are in doubt regarding the requirements, please consult with me before you complete any requirement of this course.

top of page

course calendar

Course Calendar
Date Topic Readings Assignment
7/13  Leave for Geneva
 
 
7/14  Arrive in Geneva!
Get Settled
Group Trip to ATM, downtown bus station, grocery store, mall 
   
7/15  Group Siteseeing in Geneva     
7/16 Access at CERN,
CERN Orientation
Software Installations  
Eclipse Website
Eclipse Overview article 
Eclipse Plugin Central
7/17 Overview and the Software Life Cycle
More Software Installations
First interviews with CERN project groups
3:30 PM CERN OpenLab Seminar
Eclipse Website
Eclipse Overview article 
Eclipse Plugin Central
Sign up for demos
Course Introduction/Eclipse plugin how to Slides
7/18 IDE's, Eclipse,
Java Development with Eclipse
First interviews with CERN project groups
Browsing sourceforge.net, Using "Eclipse for the life cycle" exercise
Class Set of Interview Questions for Visits
7/19 Train to Zurich;
afternoon ETHZ Visit;
Fondue Dinner
Overnight in Zurich
Review Interview Questions;
ETHZ webpages
Journal summary of ETHZ visit
7/20 Morning IBM Zurich Visit;
siteseeing in Zurich;
Return to Geneva or stay on own
IBM Zurich webpages Journal summary for IBM Zurich visit
7/21-7/22 On Your Own
7/23 Version Control: CVS Demo CVS "Using CVS " exercise
7/24  Comparison of CVS and Subversion; Overview on Software Testing  Subversion web sites
Excerpt on Software Testing Introduction 
 
7/25  JUnit Demo
3:30PM CERN OpenLab Seminar 
JUnit website
JUnit Tutorial
JUnit Tour
How to Use JUnit
"Using JUnit" exercise 
7/25  Emma Coverage Tool Demo  Emma web site  "Using Emma coverage tool" exercise 
7/26  Train through the Alps to Lugano
siteseeing in Lugano
Italian dinner
Overnight in Lugano 
Review interview questions;
SCSC web site 
Journal summary of SCSC visit 
7/27  Swiss Center for Scientific Computing visit
Return to Geneva, or travel on your own 
   
7/28-7/29  On Your Own     
7/30  Profiling and Debugging Tools
Eclipse TPTP Demo 
Refactoring with Eclipse
Eclipse TPTP web site
 
"Refactoring" exercise 
7/31  Findbugs
3:30PM CERN OpenLab Seminar 
Findbugs web site
Findbugs Plugin 
Using "Findbugs" exercise 
8/1  Holiday - Switzerland's birthday!    
8/2  Source Code Analyzers:
Metrics Demo
Poster and Journal Summaries
Feedback/Discussion
 
Metrics Plugin web site
 
Using "Metrics" exercise 
8/3  Excursion to Zermatt
Siteseeing in Zermatt
Dinner and Overnight in Zermatt 
 
8/4  Seeing the Matterhorn
 
 
8/5  On your own
 
 
8/6  Train to Lausanne; Swiss Technological Institute (EPFL) Visit
Siteseeing in Lausanne;  
Review interview questions;
EPFL web site
Journal summary of EPFL visit 
8/7  (starting at 1 pm) Presentation of Suade Article (Rosh, Zak)
3:30 CERN OpenLab Seminar  
Suade Article  
8/8  Documentation Generation
Doxygen demo  
Doxygen web site
eclox doxygen plugin for Eclipse
"Doxygen/Javadoc" exercise 
8/9  CERN Poster presentations to class
3:30 CERN OpenLab Seminar
 
 
8/10-8/12  8/11:Farewell Event: 10PM Fetes de Geneve Fireworks over Lake Geneve
On your own
 
 
8/13  Depart from Geneva for home
 
 

Tool Demo Signup - Sign up for one. Each demo is by 2 people unless otherwise specified.

  1. CVS Version Contol System
  2. Comparison of Subversion with CVS (non-demo presentation by those getting honors credit)
  3. JUnit Testing Tool
  4. Emma Coverage Tool
  5. Eclipse TPTP for Profiling and Tracing - 3 people
  6. Findbugs Debugging Tool
  7. Metrics Source Code Analyzer
  8. Doxygen (eclox) Documentation Generation Tool

top of page

helpful resources

Resources
Learning Resources
How will the student be most successful in the course? What resources are available? Study guides, lecture notes online, on reserve in library? TA? Peer tutors? Study groups? Academic Services Center? Writing Center? Evaluation of online resources? Citation of web resources?
Provide link to Academic Services Center, Writing Center
Student feedback on instruction
Anonymous suggestion box on the web? E-mail? Student feedback at midterm for improvement purposes? End-of-term student feedback? Supplement to departmental student feedback form?

 

Course Information | Course Requirements | Grading | Calendar | Helpful Resources
 
University of Delaware home page
University of Delaware