Curricula from DWC
Here is a mostly-complete list of the courses that I taught for Daniel Webster College in Nashua, NH during the years 1999-2011.
For those who don’t know, DWC was a leading aviation school that also had a pretty good computer curriculum (the Eaton-Richmond Center was an excellent “wired” facility with lots of good computer labs). Much of that changed when ITTESI purchased DWC in 2009 and the employment rules for both full-time and adjunct professors changed, making it extremely difficult to justify hiring “outside talent” to teach both in-class and on-line courses.
CS212 – File Design
This course introduces students to the concepts of database management systems, with concentration on database file design. The ANSI/SPARC and Entity-Relationship models and variants are introduced, and IDEF1X and UML diagramming are discussed. Data normalization techniques are emphasized. A brief introduction to SQL is presented, and students use SQL to create simple DB tables.
CS217 – Data Structures and Algorithms I
This course is intended to give the student a solid basis in simple and abstract data types. ADTs such as stacks, arrays, linked lists, and binary trees are discussed. Efficiencies and capabilities of different data types are compared and contrasted. Although there are no language prerequisites, C++ is used to demonstrate how data types are declared and used in a computer language.
CS218 – Data Structures and Algorithms II
This course is a follow-up to CS217. Additional data structures are discussed, and advanced techniques for data storage are introduced. Sorting and searching are more deeply discussed, as well as some simple data compression and encryption techniques. Although there is no language prerequisite, C++ is used to demonstrate how these concepts are declared and used in a computer language.
CS317 – Computer Networks
This course is intended to provide students with an understanding of the fundamentals and technologies of computer networking. It describes the reasons to interconnect computers, the problems encountered, and how they are solved. This course covers major styles of networking, such as wide-area networks, local area networks, and both connected and wireless telephone networks. This course presents overviews of hardware and software configurations, general protocol requirements for communication, common network software offerings, and common network applications.>
CS405 – Introduction to Compiler Design
This course gives the student an overview of the concepts of compiler design using both lecture and programming assignments. The text is Compilers – Principles, Techniques, and Tools, by Aho, Sethi, and Ullman (also known as the “dragon” book).
CS411 – Artificial Intelligence
This course provide an introduction to the theories, methods, and problems of AI. Expert systems knowledge representation, natural language processing, computer vision, and machine learning will be covered. The text is Artificial Intelligence – A Modern Approach, by Russell and Norvig.
CT232 – Introduction to UNIX
This course is an introduction to the UNIX operating system, probably the most widely used “non-desktop” operating system. Time is also spent describing UNIX-like operating systems such as LINUX. The text is The Unix Operating System, Third Edition, by Christian and Richter, published by Wiley.
CT234 – Unix System Administration
This course presents a complete overview of UNIX system administration methods, from adding/removing user accounts to device handling, and from local system to network administration. When complete, the student should be able to perform most common Unix system management tasks. The text is Unix System Administration Handbook, Third Edition, by Nemeth, Snyder, Seebass and Hein, published by Prentice Hall.
CT252 – Advanced Unix Programming
This course presents advanced UNIX programming methods, and concentrates on kernel-level routines. Upon completion, the student should be able to write complex UNIX processes using multiple interprocess communication mechanisms. The text is Advanced Unix Programming, by Rochkind, published by Prentice Hall.
CT263 – Multimedia Web Programming
This course examines the efficient use of multimedia (sound, audio, video, multiframe graphics, etc.) in Web pages. The student will be expected to create a well-managed site programmed in HTML, Java, Perl, which properly uses multimedia to best effect. Case studies of existing sites will be examined to analyze what makes a “good” site, and what makes a “bad” site.; Two texts are used in this course: Designing Web Usability, by Nielsen, published by New Riders, and Web Design Development, by Valqui and Freriere, published by Charles River Media.
CT265 – Introduction to C++
This course discusses programming concepts in C++. The course consists of both lectures and labs, with lab work specifically designed to assist the student in understanding how C++ is used in everyday programming: students are given working executable programs and “broken” source code, with the object of fixing the source code so it works properly. The text is C++ Primer, by Lippman and Lajoi, published by Addison-Wesley.
CT375 – Client-Server Systems
The materials cover subjects from networking protocols to windowing systems, as well as the different methods used to get computer systems to talk to each other. As a part of the course, the students will take a pre-existing MS Windows framework and create their own client-server system in class. The text is Client/Server Computing for Technical Professionals, by Hart and Rosenberg, published by Addison-Wesley.
IS223 – Database Applications I
This course will give the student an overview of application development using Data Base Management Systems (DBMS). Conceptual database design, data modeling, and data normalization will be studied. SQL (Structured Query Language) will be presented and utilized throughout the course.
Students will design, document, and present a database application to automate an existing manual business system. To do this, database development tools such as Microsoft Access and MySQL will be presented and utilized throughout the course.
IS224 – Database Applications II
This course builds on the skills taught in IS223, and continues database development using MySQL and Microsoft Access. Advanced SQL (Structured Query Language) commands will be presented and utilized throughout the course. Students will design and implement multiple database applications using server-side stored procedures, web-based query, and command line tools.