CS 395: Advanced Networked Software Design
- Douglas C. Schmidt
- d.schmidt@vanderbilt.edu
- Department of Electrical Engineering and Computer Science
- School of Engineering
- Vanderbilt University
Locations
- Classroom -- Featheringill Hall 306, MW from 4:35pm to 5:50pm
- Office Hours -- Featheringill Hall 226, MW from 3:00pm to 4:30pm
- Programming assignment submission guidelines
- Students
- TAs
- Joe Hoffert jhoffert@dre.vanderbilt.edu.
Office Hours -- Featheringill Hall 226, Monday from 3:00pm to
4:30pm, Tuesday from 3:00pm to 4:00pm, and Thursday from 2:00pm to 3:00pm.
- Final exam time: TBD.
Philosophy
Developing high quality communication software is hard; developing
high quality reusable communication software is even harder. The
principles, methods, and skills required to develop reusable software
cannot be learned by generalities. Instead, developers must learn
through experience how reusable software components and frameworks can
be designed, implemented, optimized, validated, maintained, and
enhanced by applying good development practices and patterns.
Prerequisites
- CS 251 (C++, OO Design, and Patterns)
- CS 281 (Operating Systems)
- Basic proficiency in C++
and UNIX and/or Windows
- Knowledge of email, WWW, and USENET newsgroups
The following are electronic versions of my course handouts. Most of
these handouts are stored in PDF 4-up on a page.
- Course Overview Material
The CS 395 syllabus is available as HTML in the following sections:
- Patterns and Frameworks for Object-Oriented Network Programming
- Programming Assignments
Please see the online help for
information on how to download a development environment for ACE on your laptop. See
online instructions for how to
build ACE for Windows.
Back to CS Courses home page.