We will study various aspects of component-based software engineering including, but not limited to, specification, design and implementation, selection, compositional reasoning, and testing. Students will read research papers in these areas and understand the problems. They will identify a problem area and do a course project in that area.
Students will learn the process of conducting scientific research in software engineering. They will:
Prerequisites: | CS514 or CS517, or permission of instructor |
Location: | USC 310A/310B Note the change!! |
Meeting days: | TR |
Meeting time: | 9:30 - 10:45 AM |
Name: | Sudipto Ghosh |
Office location: | USC 224 |
Office hours: | TR 2:00-3:15 PM |
Phone: | (970) 491-4608 |
Email: | ghosh aT cs DoT colostate DoT edu |
Required text: Component-Based Software Engineering: Putting the Pieces Together, George T. Heineman and William T. Councill, Editors, Addison-Wesley, Boston, MA, June 2001.
Research papers: Course materials will also be based on technical publications in software engineering journals and conferences. This material may be obtained using WebCT. You can get access to more publications through the ACM and IEEE digital libraries from CSU.
The course has three components: lectures, seminars and project presentations.
Lectures: Formal lectures will be presented, if needed, to introduce new topics.
Seminars: Seminars are a major component of this course. In a seminar, a student will give a presentation concerning an assigned paper. The presentation must discuss what the authors accomplished, what the contribution was, how important their contribution was, what open questions are still unresolved, etc. A discussion of the paper's content and other related topics will follow. Class participation will count toward a small percentage of the final grade.
Each student in the class is expected to maintain records of the discussions that take place in seminars. A record should clearly summarize the papers discussed during the week and state the contributions that the students made to each discussion and give a synopsis of each discussion that highlights the major points made. Each weekly record may be 2 pages long.
Each student will write critiques for two papers presented in class. Each critique will be 10 pages long (11 pt, single spaced) and will state what the authors accomplished, how important their contribution was, what open questions are still unresolved, how one would go about solving them, etc. The first critique will be due in the first week of October, and the second one in the last week of November.
Project: By early October, each student must select a project topic and write a 3-page project proposal (11pt, single-spaced). Towards the end of the semester, students will present their project work. They will also write a research report. The report will be between 10 and 15 pages (11pt size, single spaced).
October 4 | First critique due |
October 11 | Project proposal due |
November 29 | Second critique due |
December 8 | Project reports due |
Final letter grades will be based on the relative distribution of total scores and not on any preset numerical grade. Grades will be allocated as follows:
Research project (proposal (5%), report (30%), and presentation (7%)): | 42% |
Seminar weekly records (5): | 5% |
Seminar discussion participation: | 5% |
Seminar presentations (4): | 28% |
Paper critiques (2): | 20% |
Late work will not be accepted without prior permission. Extensions may be granted when permission is sought in advance for reasons that are unexpected and beyond your control. You will need to submit paper summaries at the beginning of class.
You are responsible for any announcements made in class and on WebCT.
All written work must be typed on 8.5 by 11 paper, have at least 1 inch margins and be printed in 10, 11 or 12 point type. Work should be single-spaced. All work must be neat and legible.
All work needs to be your own. We take cheating very seriously. Make sure you read and understand the departmental policy on cheating, incompletes and class attendance. If you reference other people's work, make sure you cite them appropriately. If you use text verbatim, put quotation marks around the text.