Service Records - The "Service" Field

The "service" field is a client-oriented categorization of our work intended to facilitate presentation and planning. Presentation implies topics that our clients can relate to. It should be about the computing they experience, and their expectations. So it shouldn't involve technical details. It should admit to broad overviews as well as increased (non-technical) detail.

We must divide the big list of details into sets small enough to be comprehensible, and big enough to avoid having too many sets. Work that is of high visibility/importance/interest may deserve a sub-category which would otherwise result in an overly small set.

The name "service" is value-laden for many, with differing interpretations. However an alternative has yet to be found.

Infrastructure activities are usually not associated with one service. For those, a service isn't specified, only a component is specified. It is important, and sometimes challenging, to not confuse the two concepts when defining services, and selecting the service that some work is supporting.

The usual cause for such confusion is that many services have a major technical component that people relate to, when in fact most services require multiple components for their provision. So the temptation is to pick what is in fact a component as a service. E.g. we don't offer a "Mac" service, we offer a student "Mac Labs" service, that uses "MacOS" as one of the many components to provide the overall service.

Name Description
Desktop Computing The computing environment used in a typical office. We include laptops here as the idea is the same; where one does one's typical "office" work. It also includes equipment for the home office. In practice, it's workstations, displays, and sometimes printers and UPSes.

Faculty members are expected to purchase their own equipment. Support subscriptions can be purchased from CSCF, who will then help with any technology selection, purchase, installation and maintenance related to their research interests. The result is often heavily customized.

For admin staff, a workstation (almost always a Mac) is provided. A UPS, and possibly a printer, is supplied as well. There isn't too much variation, although in some cases administrative access is allowed.

For others, a "thin client" (a.k.a. Nettop) is provided, for connection to the CS "general" computing environment.

    Std Grad PC/Laptop The standard workstation environment supplied to graduate students, that are supported by the research support group, starts off as a standard (powerful, dual-boot) workstation, or a laptop, or an iMac, which they can then customize any way they like. We spend a non-trivial amount of time providing and updating these systems.
    Terminal Room We have one room (DC3335) for the course master's programs. It currently provides Mac workstations. We include this as a separate service because of its visibility, and its being a distinctively different approach to providing a "desktop" computing environment.
Specialized Computing Environments There is a wide variety of specialized computing environments, typically used by research groups that subscribe to CSCF support. The activities involved with supporting them include all aspects of computing support, for technically unconstrained systems. They aren't further subcategorized to avoid this list becoming too large. For researchers, each Subscription Code can imply a completely different set of needs. There is no simple description for this.
General Computing Environment We provide a general purpose computing environment, often called the "cs-general" environment, usable by all SCS people with the exception of undergraduate students. It is deliberately distinct from the SCS teaching environment, to address concerns such as load, software licensing, and security.
    Databases The environment provides database systems for various administrative and infrastructure data. That includes student registration data used in planning courses.
    File Storage Central to the environment is an increasingly redundant file server, used by SCS servers and workstations.
    Mail There is an email service that implements the address. While we're engaged in the long term project of moving personal email from here to the IST provided service, it could be a very long time before it can be eliminated (if ever). E.g.
  • a history from the dawn of email of email addresses, present not only on campus, but across the world.
  • a few faculty who insist that their email and the rest of their data belong together.
  • software systems that send email for logging purposes, which is then processed by log analysis software.
We're also expected to maintain a variety of mailing lists, which for lists with computed contents is mostly easily done with the current system.
    Printing There are printer rooms scattered about the DC that are driven by print servers, providing spooling, access control, and accounting.
    Unix The Linux (currently Ubuntu) servers provide casual computing resources. This isn't intended for resource intensive computing, that being done on research machines. It's an absolute requirement for those using "thin clients".
    Windows A "Windows Terminal Server" is provided for casual access to a Windows environment. Aside from providing a general use environment, it has proven necessary when use of external systems require a Microsoft Windows environment to function properly.
    WWW There is a WWW service which provides access to/for:
  • around 30 different WWW sites, many for research groups
  • personal WWW pages
  • those SCS (typically administrative) WWW pages that have yet to move to Drupal elsewhere
  • various WWW interfaces to systems and data
  • a development environment
Student Computing Environment The student computing environment is varied. The variety changes with pedagogical needs.

The environment provides various general and specialized teaching labs, together with non-trivial computing resources; mostly Linux based (currently Ubuntu). The latter is an absolute requirement for those using "thin clients". In addition to computing done by students for assignments, it also provides the horsepower to run the assignment processing systems. Access to a Windows environment is provided via a "Windows Terminal Server".

We have 3 types of service in the following, all sorted together.

    Assignment Processing That part of the environment that provides technology in aid of providing, submitting and marking assignments. Markus, Marmoset, and MOSS are some current examples.
    Course Accounts The accounts, named after courses, used by instructional staff to provide materials and services in aid of course presentation. E.g.
  • course-specific software, maintained by course staff.
  • course specific WWW pages.
  • a course-specific mail address, although the direction is to move that to IST services.
  • historical continuity.
At most, they should be used to augment, rather than replace, the use of Waterloo LEARN.
    Databases There are database system(s) provided for various courses. DB2, MySQL, and PostgreSQL are available.
    Printing Students are expected to print use the campus printing service. An interface is providing to allow these printers to appear in the print menu of the various systems.
    File Storage There is an (increasingly redundant) file service used by (almost) all of the servers and workstations in the environment, as well as by remote access (off and on campus).
    Labs Multiple general access and special purpose teaching labs are supported. The general access labs can be used by all students taking CS courses, and by all Math Faculty students.
        Graphics Lab There is a Graphics Lab (in MC3007) used in teaching the graphics course. It's mostly good workstations with instructor specified graphics cards. Physical Access is restricted.
        Mac Labs There are multiple rooms of MacOS workstations. These are fundamental to the delivery of lower year courses. As such, there is a double lab with audio and dual projection systems for use by instructors.
        Mobile A few courses (e.g. CS349 and CS446) use mobile devices, such as tablets (e.g. iPads), smart phones, and smart watches. This is can be thought of as a virtual lab. CSCF does the buying, which takes longer that expected, as stores tend to rate limit purchases. The Library handles the loaning of the devices to students.
        Networks Lab There is a networks lab (MC3007a), containing workstations and networking equipment. It is suitably isolated from the campus network, allowing only `ssh` access for instructors. Physical Access is restricted.
        Real-Time The (MC3018) lab for the real-time course. It traditionally contains remote controlled trains, and the hardware needed to drive them, although it's not always been limited to that. It also contains lightweight workstations ("Nettops"), and power for laptops. Physical Access is restricted.
        Software Engineering SCS is responsible for support of the environment needed for the teaching side of the Software Engineering program. There is a Software Engineering lab (in DC2577), with a small number of Linux workstations. Physical Access is restricted.
        Thin Clients There are multiple rooms of "thin clients" providing access to the student Unix and Windows servers. They have evolved into very lightweight workstations (a.k.a. Nettops), that satisfy all of the criteria for thin clients; especially suited to the lab environment. They are used mostly for upper year courses.
    Mail There is a remnant of the @student.cs mail service. The primary remaining use of it is "course account" mail.
    Podiums There are podiums in many undergraduate lecture rooms across campus. They run Windows with Nexus. We provide a Nexus accessible fileserver (smb-nexus.student.cs) so that CS instructors can access their cs-teaching filespace.
    Seashell Seashell is a WWW based interface to the Unix CPU servers. It's used for lower year courses, avoiding the need to login directly.
    Tutorial Centre CSCF provides workstations for the MC4065 CS student tutorial centre.
    Unix The environment has multiple server class Linux (Ubuntu) systems, used directly for assignments, and indirectly via assignment processing systems.
    Utility (ugster) There is a set of (currently 28) machines that can be used to form a cluster, or run whatever specialty OS instructors need. Configuration changes from term to term. Specific courses may have a subset of the machines allocated to them.
    Windows There is a Windows Terminal Server (windows.student.cs) that provides casual access to a Windows environment. It isn't a course resource requirement.
    WWW The student WWW service provides access to/for:
  • course specific WWW pages
  • personal student WWW pages
  • a development environment for instructors and students
  • course specific software (currently MediaWiki)
  • assignment handling systems (currently Markus, Marmoset, MOSS)
  • tools specific to the environment (e.g. for password resetting)
Instructional Support We provide technical support for teaching that doesn't involve any specific student computing environment. Much of this is for CS "Undergraduate Operations". It often involves student data and data regarding instructors, and the related databases and WWW interfaces.
    Course Evaluation We have worked on software that provides reports based upon student course evaluation data. Some of this has moved into the Science "Evaluate" system.
    Exam Seating We develop and maintain an "Exam Seating" system, used both by CS and others:
  • Arts - AFM (almost all exams)
  • Science - Chemistry
  • Engineering - ECE, CHE
  • Math - MATH, STAT
  • Extended Learning - all PAC examinations
    Loaner Laptops We have a small pool of laptops for loan to instructors, on a per-term basis, intended to augment the systems in the podiums in campus lecture rooms.
    OAT CSCF provides the database aspect of "OAT" (Online Academic Tools) and the needed servers for the rest of the system. Application development for it is done by CS, although not by CSCF.
    Online Course Support There have been times when we've had to support technology for the creation of online courses. Adobe Connect is an example, as is classroom setup for online course creation.
Other There are various expectations that aren't specific to the major identifiable computing environments. They aren't so visible that a top-level category would be appropriate.
    Backups Backups are generally considered to be an implementation detail, as part of a reliable computing environment. However we have clients who provide their own computing resources, and expect us to provide backups as a distinct service. In practice that's CS research groups.

CSCF does backups of many workstations, for both faculty and staff.

CSCF also does backups of parts of the Math teaching environment.

    CS Information Some of the documentation CSCF provides involves technology in its production, typically involving a database of some kind.
    CS Graduate Office Database We support the database system used by the CS Graduate Office to record graduate student data. Support is currently limited to the server, as opposed to the use of Filemaker.
    External At times we have to support services provided by others. The most common example is supporting the use of IST services. We
  • support the client side of IST services that CS is required to use, as IST expects some degree of that,
  • diagnose, report, and when practical compensate for local problems with IST services,
  • and augment IST services where appropriate.
The typical example is assisting someone dealing with IST's email service.
        Mail We are directed to stop providing an email service to the extent possible. As a result all admin staff, all students, and most faculty and grads use an external service (often IST's). In practice, the additional work this requires is in maintaining local mailing lists using the IST provided mailing list service (, and moving mailboxes (shared and personal) to either Connect or, dealing with different filtering mechanisms that can't always do what's needed. As of 2015, we have yet to resolve the problem of an existing course account system that relies upon direct mailbox access.
        Sharepoint Much of CS (access controlled) administrative documentation is present on the campus Sharepoint system. CSCF provides basic advice, and updates permissions as needed.
    Faculty Recruiting CSCF provides a system in aid of faculty recruiting for the CS SACA committee. This started as a result of participating in the Management Sciences OFAS project some time ago.
    Graduate Admissions The CS graduate admissions system exists to augment the central GAP (Graduate Admissions Project) system. It is sometimes referred to as OGSAS or GrAd.
    Grant Support We provide assistance in support of producing grant proposals. It includes sourcing, estimating, planning, ...
    Kiosk There have been self-serve Kiosks that provided information about CS to the public. We expect that this may include digital signs. The number varies, depending upon staff time to keep them functional. As of 2014-06 there is a small slide show on a monitor.
    Machine Rooms Machine rooms are generally an implementation detail for the computing environments we provide. However for researchers, they are an expectation. Some research equipment resides in CSCF machine rooms, some resides in researcher machine rooms. In either case, CSCF is involved in the support.
    MFCF Support CSCF provided WWW support to MFCF. This category exists only for historical reasons, as the agreement ended some time ago.
    Network We rely upon IST to provide networking. However, when clients perceive a problem as networking, or need help with machine room networking design, we may be involved. It applies to both wired and wireless. This isn't often needed, mostly for problems with wireless. For typical office network connections or problems, the service is "Desktop Computing", networking being one of several components of that service.
    Nexus We are expected to provide initial handling of login problems involving the campus Nexus Active Directory, for CS clients. We also must support a Nexus compatible student fileserver (smb-nexus.student.cs).
    OFIS CSCF has participated in the OFIS project. This category exists only for historical reasons, as there is no direct involvement now.
    Printers/Scanners CSCF supports some of the printers in the shared printing rooms. More of the printers are being provided by Retail Services. Printers in private staff and faculty offices are in the "Desktop Computing" category above. This can include auxiliary functions of printers, typically scanning. The work for this is generally client side and server side configuration to use the printers.
    Renovations CSCF supports the (apparently ongoing) renovation of SCS space, typically machine rooms, research labs, and presentation rooms. This often involves providing detailed diagrams of the space involved. This isn't considered as the Service when the space is specific to CSCF. This is also an implementation detail (Component).
    Rooms - presentation/meeting CSCF provides computing resources and/or support in presentation/meeting rooms (i.e. in addition to the teaching labs). This usually involves dealing with workstations and/or projection systems, and assistance with network and projector connections for laptops. This doesn't include classrooms in the student computing labs, which is considered part of the teaching lab services.
    Special Events Various forms of support is provided for "special events", such as the IOI, CCC, ESQ, Computer Science High School Liaison events, ...

When specifying this field in a customized sort or display, use the name "service". The values to use for services in custom queries are part of the database schema.