State University of New York at Oswego

  1. COURSE NUMBER AND CREDIT
  2. CSC 436 - 3 Semester Hours

  3. COURSE TITLE
  4. Networked Systems

  5. COURSE DESCRIPTION
  6. A project-based seminar in constructing and managing networked systems and services. Topics include configuration and maintenance of heterogeneous networks, name services, directory services, system management, security, and constructing web-based services and applications. The main course requirement is a term project establishing these capabilities in an isolated laboratory network.

  7. PREREQUISITES
  8. CSC 365

  9. COURSE JUSTIFICATION
  10. Networked system services and software (which are often together termed "middleware") are of increasingly central importance. Yet many of the particular services, their usage, and their underlying designs and properties are rapidly changing. Rather than teach transiently-useful skills, this course prepares students to continually learn about and apply them.

  11. COURSE OBJECTIVES
  12. Upon successful completion of this course, students will be able to:

    1. Construct, manage, and control a wide range of services on contemporary networked computer systems.
    2. Learn and teach others about particular services and systems, and associated skills.
    3. Work with others in planning and carrying out a semester-long system management project.
    4. Apply practical skills of installing and managing systems and software.

  13. COURSE OUTLINE
  14. NOTE: There are several approaches to organizing this course. However, they maintain the essential commonalities of

    1. An emphasis on learning how to learn: Rather than being taught transient technical skills, students should be required to themselves learn the theory of operation, design, implementation, and practical usage of systems and services.
    2. An emphasis on learning by doing: The pragmatics of establishing and managing services are best learned by applying them.

      The following sample outline demonstrates one means of delivery. The first phase of the course covers required preliminaries. The second phase is focused on projects. Alternatively, these two aspects could be interleaved throughout the course.

    1. Preliminary Lectures
      1. Operating system and networking architecture
        1. Brief survey of basic APIs and protocols
        2. The nature and role of middleware
      2. Systems programming
        1. Scripting with shells and system-level scripting languages
        2. Programming in languages such as Java and C
      3. Middleware design
        1. Client/server, peer-to-peer, object-oriented approaches
        2. Protocols
        3. Security
        4. Interoperability and Standards conformance
      4. Pragmatics
        1. Obtaining, installing, and configuring systems
        2. Using system administration tools
    2. Project Seminar
      1. Project Assignment. Examples include Directory services, Secure client services, sysadmin tools, distributed object services, and WWW services.
      2. Seminar-style presentations in which students teach others particular skills, or about the nature of particular services that they encounter in the course of their projects.
      3. Project demonstrations and evaluations.

  15. METHODS OF INSTRUCTION
    1. Lectures
    2. Project
    3. Tutorial presentations by students

  16. COURSE REQUIREMENTS
    1. Project
    2. Tutorial presentations by students

  17. MEANS OF EVALUATION
    1. Project demonstrations
    2. Tutorial presentations by students
    3. Associated project "deliverables", for example web pages and documentation.

  18. RESOURCES
  19. This course requires exclusive use of computers on isolated networks, as well as occasional use of other more normally configured computers. As of this writing, the CS dept has adequate facilities to offer this course during summer sessions when certain computers are otherwise unused and so can be dedicated for this course.

  20. BIBLIOGRAPHY
  21. The vast majority of readings and resources for this course are on the world-wide-web. Additionally, there are specialized books dealing with particular services that may be the subject of projects. All of these are of transient value. Books dealing with the preliminary material covered in this course include:

    Garfinkel, S., and Gene Spafford. Practical UNIX & Internet Security. O'Reilly, 1996.

    Robbins, Arnold. UNIX in a Nutshell. O'Reilly, 1999.

    Stevens, Richard. Advanced Programming in the UNIX Environment Addison-Wesley, 1992.


Document: Computer Science Course CSC436
URL: http://www.cs.oswego.edu/emma/outlines/csc/csc436.html
Last Update: Sat, 06 Mar 2004 16:24:57 GMT

 Last Updated: 7/9/07