Practicum Description

The objective of the Practicum is to demonstrate the material learned in the core courses, and from a combination of the electives you have taken, in solving a substantial practical problem in a realistic setting. The primary focus of the Practicum is to understand a major aspect of the software development life-cycle in detail.

The objective is accomplished with the help of a faculty member and their work supervisor, if the Practicum is being done at the work site as part of a job or internship.

The Practicum may also be done in very small teams of no more than three people. All the people on the team must have completed the core courses in the MSIT-SE Program prior to beginning the Practicum. A team project will be more significant than an individual project.

The student or teams of students define the project by presenting a formal proposal that will be the first deliverable of the Practicum. The rest of the deliverables will be defined at the beginning of the project and will be tailored to the project. However, a report will be required, discussing the strengths and weaknesses of the technique in the chosen domain and what went well and what went poorly during the Practicum.

Software Engineering Practicum

Examples of Projects On Campus

  • A very focused problem for an outside client. For example, a Practicum during the summer of 2000 had students work with an industry partner to develop a software system for analysis of forensic evidence of computer system intrusions. The study used traditional UML to describe the system design, but since the system's data artifacts could be used as evidence in a court of law, correctness had to be provable. The team validated the traditional UML design artifacts using Z and proved various properties about the system.

    Deliverables: The Java applets and the report.

  • Participation in the development phase of an existing MSE program Studio project.

    Deliverables: Work performed and the report.

Examples of Projects at the Work Site

  • A software specification has been created using structured English. It is rewritten in Z.

    Deliverables: The new specification and the report.

  • A software measurement program is established using ideas from the Managing Software Development core course and the Software Measurement elective.

    Deliverables: The new metrics policy and the report.

  • A design has been created using structured methods. A conversion to an object-oriented system is done using UML notation.

    Deliverables: The UML documentation and the report.

  • An experiment is conducted to determine the effectiveness of using three persons versus four persons per inspection.

    Deliverable: The report, including a reasonable data analysis.

  • Re-architecting an existing system.

    Deliverables: Results of an ATAM (Architecture Tradeoff Analysis Method) and the report.

This page is maintained by msit-info@cs.cmu.edu
Last modified: 09/28/2007