School of Computing

CP SC 215:  Tools and Techniques for Software Development

Fall 2008

 

Instructor: Murali Sitaraman

Contact Information: McAdams 210; Phone: 656-6738;

E-mail: murali@cs.clemson.edu.

Web page: Listed under www.cs.clemson.edu/~murali

Lecture Hours: TTh 2:00PM; Daniel 408

Office Hours: MW: 1:30PM – 2:30PM; Th: 10:30AM – 11:30AM;

                      other hours by appointment.

Prerequisites: CP SC 102, CP SC 210, or equivalent.

 

Final Exam will be given from 9:30AM to 10:30AM at Daniel 408 (regular classroom).

 

Reference Materials

 

C. S. Horstmann and G. Cornell, Core Java: Volume 1 (Foundations), Java series of Sun Microsystems Press, Prentice-Hall, 2003.

C. S. Horstmann, Big Java, 3rd Edition, Wiley, 2008.

J. Bloch, Effective Java, Addison-Wesley, 2004

Hand-outs and instructor notes; Please see “Fair Use Guidelines” at: http://www.lib.clemson.edu/copyright/

 

Please check here for Lecture slides and check here for hand-outs.

 

Lab and Project Information

 

Please check here for lab information.  Eclipse plug-in for the labs and project of week November 17, 2008 is here.  If you have trouble with Eclipse go to the verifier site here.  Use the Unix set up and follow instructions #5 and #6 under “Running the compiler and verifier  to generate verification conditions.  The first 4 instructions have to do with the compiler.

 

Course Description and Content

 

Intensive study of software development foundations; advanced coverage of programming language primitives, function-level design principles, and standard development and debugging tools. Introductory coverage of module-level design principles, program specification and reasoning principles, and validation and verification techniques.

 

Grading Policy

 

Performance in this course will be evaluated by class participation, exams, lab and project assignments, and quizzes.  Requests for makeup exams are discouraged.  NO MAKEUP EXAMS will be given without prior approval or valid medical emergency.  Assignments are due beginning of the class or lab when they are due, and they need to be submitted in the classroom. Later submissions will not get any credit at all.    (Only selected parts may be graded for quizzes, labs, and projects; the entire grade for the assignments will be based on those parts.)

 

   Breakdown of points is given below:

        Class participation                                               5%                                  

Lab Assignments, Quizzes, and Projects                    45%

Exam #1 (Date TBA)                                                  20%

Exam #2 (Date TBA)                                                  20%

Final Exam                                                                  10%

 


Letter grades will be assigned as shown below:

                  90% - 100%                                                        A- to A+

                  80% -  89%                                                         B- to B+

                  70% -  79%                                                         C- to C+

                  60% -  69%                                                         D- to D+

              < 60%                                                                    F

 

Attendance Policy

 

Attendance in this class is mandatory.  Specifically lab attendance and lecture attendance are both mandatory.  In addition, a quiz and a lab assignment will be given in every lab for 2% of the points.  Class participation is worth 1% for every three weeks of the course for a total of 5% points.  You may miss a maximum of two lecture classes and one lab session with reason.  Any absences beyond this will result in an F grade. 

 

Academic Integrity

 

All exams and lab assignments are individual tasks, unless specifically designated as group tasks. It is expected that you will work ALONE on exams and quizzes. Evidence to the contrary will be regarded as academic dishonesty and will be dealt with according to the University policies on academic dishonesty.  For details, please see http://www.cs.clemson.edu/html/academics/academic_integrity_2002.html.

 

Learning and Feedback

 

I expect to foster a nurturing learning environment based upon communication and mutual respect in this class.  I will give serious consideration to any suggestion as to how to further such a positive and open environment. 

 

I encourage you to give feedback on various aspects of the course, including but not limited to contents, assignments and exams, style, and treatment.  I encourage active participation in the class.  Your feedback is important for improving the quality of this course and that of undergraduate education in computer science, in general. 

 

If you have a special need and feel that you need assistance with regard to lectures, reading assignments, or testing, please advise me of your needs as soon as possible.  Student Disability Services is located in G-20 Redfern (telephone number: 656-6848; e-mail: sds-l@clemson.edu).

 


This course is undergoing redesign to include foundational software engineering principles with the introduction of Java.  Therefore, the syllabus listed below is tentative and subject to change.  The course will introduce and use several software engineering tools. The last few weeks of the course will cover more advanced topics in software development techniques and tools.

 

Week

Tuesday

Thursday

Aug 21

 

Course introduction

Aug 26-28

 

Introduction to Java.

Parameter passing, values vs. references.

Sep 2-4

Introduction to the Eclipse IDE.

 

Classes and objects.

Sep 9-11

Classes and objects.

Interfaces. 

Sep 16-18

Interfaces. 

Generics.

Sep 23-25

Generics/Inheritance.

Inheritance.

Sep 30-Oct 2

Exam Review

Exam #1

Oct 7-9

Java docs

Testing 

Oct 14-16

Interface design and specification

Interface design and specification

Oct 21-23

Extensions

Specification-based testing and tracing.

Oct 28-30

Principles of reasoning.

Analytical reasoning continued.

Nov 4-6

Fall break.

Additional component examples.

Nov 11-13

 

Exam Review.

Exam #2.

Nov 18-20

TBA 

TBA

Nov 25-27

TBA 

Thanksgiving break.

Dec 2-4

TBA

TBA