CSCI 306: Software Engineering
Course Information (Spring 2012)
Instructor:
Cyndi Rader, crader@mines.edu , website: www.mines.edu/~crader
Where and When:
T-Th, 9:30-10:45, BB 316A
Course Goals:
This course is intended to make you a better software programmer by providing an introduction to the processes and considerations of Software Engineering. You will learn to plan and execute iterative programming projects in groups, critique (and improve) existing code, and learn the basics of widely used software engineering processes and techniques (including Agile Development and UML). Assignments will not be restricted to coding, and should encourage students to think as software engineers, rather than individual programmers.
Textbooks:
- Agile Software Development, Principles, Patterns and Practices, by Robert C Martin, Prentice Hall, ISBN 0-13-597444-5 (required)
- Big Java, Third Edition, by Cay Horstmann, Wiley and Sons, 2008, ISBN 0-471-10554-2 OR Java Concepts, by Cay Horstmann, Wiley and Sons, 2008, ISBN 978-0-470-10555-9 (recommended)
Student Evaluation:
| Labs, exercises, class participation and projects | Quizzes | Final Exam |
|---|---|---|
| 50% | 30% | 20% |
Late Policy:
Late work is strongly discouraged. Late assignments will be penalized 2 points per day and no assignments will be accepted more than 3 days late.
Attendance
Attendance is required on days when we're beginning or continuing work on a pair or team project. Attendance is worth 1 point. If you notify me and your teammates in advance, you will not be penalized. If you simply miss class, you will receive -1 for that day.