The purpose of the practicum is to provide a student with the experience of working on a large project emphasizing the synthesis of material covered in previous computer science courses.
The prerequisites to the practicum are CompSci 271 Data Structures and CompSci 251 Computer Organization and Assembly Language, both with a grade of "C" or better; six or more credits of computer science courses numbered 300 or above, all with a grade of “C” or better; senior standing. NOTE: Beginning in the Spring 2011 semester, all students enrolling in our practicum course will have to have completed or be concurrently enrolled in the following interdisciplinary course: INTRDSCP 208 -- Professional Career Skills in Math and Natural Science.
2. Course Content
The practicum is a laboratory course where each student will work independently on a project of realistic magnitude. The project will involve several of the following:
- Problem Definition
- Define the project in detail
- Identify specific project milestones
- Software Designs (software projects only)
- Define major modules of the software and describe each major data structure
- Define the purpose and content of each file
- Complete the specific activities of the project
- Insure the project is satisfactorily completed
- This includes extensive testing procedures
- Describe the validation methods
- Documentation (software projects only)
- Document the software at the detail level needed by the project supervisor. Assume that others will maintain your software after you finish it.
- Writing Emphasis
- one credit of the grade is based on written work done during the practicum
- the written assignments include: three progress reports, and the final report
- the written work will be submitted to the practicum coordinator for comments and revised until accepted by the practicum coordinator
- Oral Presentation
- An oral presentation on the project is required of all students.
- All students must complete a survey form and an exit interview with the practicum coordinator.
Although each project will be supervised, the student is to manage his or her project in an independent atmosphere and insure that the above project segments are completed in the time imposed.
3. Project Selection And Directions For Writing The Project Description
It is the responsibility of the student to propose candidate projects and to find a project supervisor willing to participate. The student should draft an outline of the proposed project and project outcomes and present this draft to the practicum coordinator for a judgment on project qualification. The practicum coordinator is a computer science department faculty member who is responsible for approving the project and evaluating the reports. The project supervisor could be a faculty member in any department, your manager at your job, or anyone qualified to evaluate your work.
The practicum proposal should be completed in the following manner:
- Prepare a description of the project. This should be a broad overview of what is to be accomplished in the practicum. You should discuss what the project does, how it will be used upon completion, how it relates to other software or procedures in the organization, etc. The description must be sufficiently detailed for the project coordinator to assess the appropriateness of the project as a practicum. A rule of thumb for such a project is that it requires at least 120 hours of work, excluding the report writing.
- Identify the deliverables of the project: all programs, files, documents and procedures that will be created or enhanced as part of this project. To be more specific, list the "products" that will be produced by this project that the project supervisor can examine to see what was accomplished under this project.
- Create a list of specific milestones, which lead toward the final project outcome and a tentative calendar for completing each. Make your dates realistic, as in aid to on-time completion.
- Determine how you will validate your project. Describe the testing procedure that is to be used to insure that the project has been successfully completed, if it is a software development project. The practicum coordinator must agree that your validation procedure is adequate.
- Create a list of criteria on which to evaluate the final project outcome.
This proposal will then be presented to the practicum coordinator for approval.
4. Writing Assignments During Project
- Submit intermediate and final reports to the practicum coordinator at the due dates they have established. Refer to the separate FAQ document for a description of the content of these reports.
- Revise drafts of intermediate reports until accepted by the practicum coordinator.
- Submission of a final report is mandatory.
- Inform the practicum coordinator promptly whenever there is any difficulty in the practicum.
5. Project Evaluation
Upon completion of the project, the student must submit a final report describing the project activities and discussing the outcome of the project to the practicum coordinator. The project will be evaluated and graded by the project supervisor based on such areas as:
- successful completion of the project as outlined in "Project Selection"
- timeliness of the project phases
- quality of the work performed
- correctness of the software
- ease of use
- quality of the written reports
The practicum coordinator will accept the grade from the on-site practicum supervisor as representing two-thirds of the final grade. The remaining one-third will be defined by the practicum coordinator based on the writing assignments. Note: be sure to remind the project supervisor to send a letter to the CS department chair that evaluates the work and recommends a grade. A grade reduction will be imposed in the event that project reports and/or the final report are submitted to the practicum coordinator after the due date. Due dates for reports are the first of each month in the period when the practicum is in progress.
6. Deadline for Approval
The deadline for approval of a computer science internship for the fall or spring semester is two weeks after the start of that semester. The deadline for a summer practicum is the last day of the first week of the first term of the summer semester.
Notation: PS (practicum supervisor), PC (practicum coordinator).
If the student receives a grade of Incomplete, unless an exception is granted, upon completion of the practicum the student’s final grade will be reduced by one full letter grade (e.g., A to B). If the status of the practicum remains incomplete at the end of the semester following the semester in which the student was registered for the practicum course, the automatic grade of ‘F’ will be allowed to stand.
- The PS letter was not submitted on time.
- There was an extended illness or emergency situation.
- The student, PS, and PC agree to an extension. In this case the student will rewrite the project milestones and submit them to the PS and PC for approval.
- Other exceptions approved by the PC and the Chair of the department.
- All exceptions must be documented, dated, and signed by the student, the PC, and the PS if appropriate.
- If a milestone will not have been met within one week of its date specified in the original proposal, it is mandatory that the student reschedule the remaining milestones and submit them to the PC for approval prior to the end of the three-week overrun. Failure to do this may affect the final grade.
- At least one oral interview of the student by the PC is mandatory prior to the approval of the Practicum project. In the interview the PC will review the practicum guidelines and the Guidelines for Written Reports. The PC will also discuss the professional and ethical responsibilities of the student.
- All students must complete an exit interview with the PC. Failure to do this will result in a grade reduction.
At least three written progress reports and a final report are required as specified in the guidelines for written reports. Progress reports are due on the milestone dates or on dates agreed to by the student and PC. If the dates are different than those of the milestones, the student will submit a list of report dates to the PC. The student and PC will sign and date the list, which will be added to the Practicum folder.
The final report is due on Monday of the last week of the 17-week semester. A letter grade will be assigned to each report. Each day that a report is late will result in a 10 percent deduction from the report grade. A progress report that is more than two weeks late will result in a final grade reduction. A final report that is more than one week late will result in an Incomplete grade for the course.
The PC must notify the student via email that either a revision or no revision is required. If a revision is required, it is due to the PC no later than three days after the sending of the email. It is the responsibility of the student to check the email after submitting a report to the PC. Each day that the revision is late will result in a 10 percent deduction from the report grade.
Outline for the Project Description
Do not limit your descriptions to the space shown in this outline.
Description of the Project (1 to 2 single-spaced pages)
The description should be a broad overview of what is to be accomplished in the practicum. You should discuss what the project does, how it will be used upon completion, how it relates to other software or procedures in the organization, etc. The description must be sufficiently detailed for the Project Coordinator to assess the appropriateness of the project as a Practicum. A rule of thumb for such a project is that it requires at lease 120 hours of work, excluding the report writing.
List the deliverables of the project. The items should be numbered or bulleted.
- C++ source code
- Oracle Forms files and hard copy of sample runs
- User manual
- Sample test output
List specific milestones in the form of a tentative calendar of events (at least 4).
- June 1 - ER diagram
- June 7 - Table design
- July 1 - Initial Oracle DB
- July 15 - DB data entered
- Aug 1 - Tests completed
List the validation activities.
- Preliminary tests on parts component
- Preliminary tests on construction component
- Test complete system with self-generated data
- Test system using current live data
- Test system using existing regression test suites
List the criteria for grading (at least 4).
- Robustness (tested via user error test suite)
- Clarity and completeness of Documentation
- Quality of the User Manual
- On-time completion of project and reports