«Vermont Technical College Catalog 2009-2010 Bachelor of Science Architectural Engineering Technology Business Technology and Management Computer ...»
CIS 1120 Introduction to Information Technology (3) fall
Prerequisite: None CIS 1152 Advanced Website Development (3) spring Students learn intermediate skills and techniques used in webpage development. Topics include applying sophisticated formatting to text; creating documents that automatically display another page and that contain interactive JAVA Scripts; creation of and work with frames documents; examination of document styles and recommendations on improvements; HTML document creation/conversion tools; using XML to manage content; an introduction to database theory; use of basic SQL programming; use of Cold Fusion to reformat text and databases and dynamic web pages; and use of style sheets; 2 hours of lecture, 2 hours of laboratory per week. Prerequisite: CIS 1151 CIS 1160 Fundamentals of Programming in C (1) spring Fundamentals of programming in C is a course intended to be a gentle introduction to writing programs in a Windows environment. It is taught using the C programming language, but focuses primarily on concepts such as variable declarations, if statements, and loops that are common to most popular programming languages. Students also learn how to manage files and directories, run programs, edit text files, and use a computer. This course is open to all majors who would like to take an introductory programming course; 3 hours of laboratory per week. Prerequisite: None
CIS 2010 Computer Organization (4) spring In this course, students gain a basic understanding of computer hardware. The students are introduced to binary data representation, pointers, and memory through the C language. This understanding expands to include the functioning of the CPU (including registers, ALU, and simple I/O) culminating in an introduction to assembly language; 3 hours of lecture, 2 hours of laboratory per week. Prerequisite: CIS 2271 CIS 2025 C Programming (4) fall/spring/on-line This course teaches students to write programs using the C language. All fundamental features of C are covered, including arrays, functions, pointers, file I/O, string manipulation, and preprocessor directives.
In addition, this course will emphasize good software design techniques, programming style, and documentation. No prior programming experience is required. This course is offered in both classroom and on-line versions. Sufficient internet skills and the permission of the instructor are required to take the course on-line; 3 hours of lecture, 3 hours of laboratory per week. Prerequisite: None CIS 2151 Computer Networks I (4) fall/spring This course introduces the student to network protocols. The course covers physical, data link, network, transport, and application layer protocols. The TCP/IP protocol suite is discussed in detail. IPX/SPX is also discussed. Topics include Ethernet and token ring networks, connectionless protocols, connectionoriented protocols, and application protocols such as SMTP, NNTP, and HTTP. Students learn about both hardware and software troubleshooting tools, security issues, and current topics such as IPv6. The way network software is written, both on the server side and the client side, is also covered; 3 hours of lecture, 3 hours of laboratory per week. Prerequisite: CIS 2025 or 2271 CIS 2230 System Administration (4) spring In this course the student explores the basics of system management. The course provides the student with enough theory to understand how operating systems work and to interpret the output of various management tools. It also covers practical issues in system administration including process, memory, and file system monitoring and performance tuning. Some topics in computer security are also discussed. Unix and Windows NT/2000 are the specific systems studied; 3 hours of lecture, 3 hours of laboratory per week.
Prerequisite: CIS 2025, 2271, or 2280 CIS 2235 Advanced System Administration (4) spring This course provides an investigation into the issues involved in managing information technology systems at the enterprise level. Topics covered may include global authentication mechanisms, shared file systems, mail servers, backup/restore, license servers, application servers, and firewalls; 3 hours of lecture, 2 hours of laboratory per week. Prerequisite: CIS 2151 and 2230 CIS 2260 Object-Oriented Programming (3) fall This course introduces students to the concepts of programming with
data types and object-oriented programming. It uses C++ to cover classes, inheritance, and polymorphism. The course also builds on the prerequisites to provide students with more advanced exposure to software design, implementation, debugging, and documentation; 3 hours of lecture per week. Prerequisite: CIS 2010, 2025, or 2271 CIS 2271 JAVA Programming (4) fall This course will introduce the student to basic concepts of JAVA and Object Oriented Programming (OOP).
The course begins with basic concepts of OOP. These include classes, objects, inheritance, polymorphism, and
object oriented design. The course will then cover the language features of JAVA. The topics in this section are:
program structure; statement and field types; operators; expressions; and control structures. The course then returns to OOP features of JAVA, focusing on object data types, strings, methods, classes, and constructors.
The final section addresses graphical user interface (GUI). The topics are: applets, GUI components (e.g.
buttons), event processing, and frames; 3 hours of lecture, 2 hours of laboratory per week. Prerequisite: None Course Descriptions CIS 2280 Perl Programming (2) spring This course continues the student’s training in programming by introducing the use of the scripting language, Perl. Students are introduced to the Linux operating system. The basic concepts of programming are reviewed using Perl to demonstrate those concepts. Concepts unique to Perl, such as regular expression handling and hashes, are introduced. The emphasis in the course is on using Perl as a tool to get things done rather than only as a vehicle to explain how to program. Examples and assignments are drawn from topics related to system administration, web programming, and application programming; 2 hours of lecture per week. Prerequisite: CIS 2010, 2025, or 2271 CIS 2320 Software Quality Assurance and Testing (3) fall Students are introduced to the concepts, techniques, and tools used for evaluating and ensuring the quality of computer software. Topics include dimensions and implications of quality, code reviews, test construction, test coverage metrics, partition testing, user interface testing, and current test support tools; 3 hours of lecture per week. Prerequisite: CIS 2010, 2271, or 2025
CIS 2720 Current Topics in Computer Engineering (3) spring This course provides students the opportunity to integrate the topics presented throughout the curriculum as well as to explore additional specific topics that are relevant to the current state of the field. Recent topics have included HTML authoring, JAVA, CGI scripting, Windows programming, X11/Qt programming, and databases. At the discretion of the instructor, students may work on a semester-long project, do library research, give an oral presentation, write a significant program, or build significant electrical hardware. The precise content and nature of this course varies from year to year, depending on current industry needs; 2 hours of lecture, 3 hours laboratory per week. Prerequisite: ELT 1080 and 2050, CIS 2151 and 2260, concurrent enrollment in CIS 2230 [Course Fee: $50] CIS 2730 Software Engineering Projects (3) fall/spring This capstone course involves the development of a group project. The development effort will be combined with an introduction to systems development and life cycle. Students will also receive an introduction to orally presenting technical information to a technical audience. Each group will present their project design and the final project; 2 hours of lecture and 2 hours of laboratory per week. Prerequisite: CIS 2025 and 2271 CIS 3010 Database Systems (4) spring In this course, students study a method for designing relational databases, the use of SQL to access data stored in a relational database, and the use of a commercial database management system to implement a relational database system. Students are required to implement a real-world example relational database as a project. Additional topics that may be discussed as time and class interest permit include: VBA, DAO and ActiveX, ODBC, and JDBC; 3 hours of lecture, 3 hours of laboratory per week. Prerequisite: CIS 2230 or equivalent CIS 3030 Programming Languages (3) fall This course introduces the student to a variety of important or current languages. The idea is to give the student more exposure and experience with programming by showing the student how various languages can be used to solve various problems. The intent is to cover languages of practical and theoretical importance.
Some software engineering techniques are also introduced; 3 hours of lecture per week. Prerequisite:
Concurrent enrollment in CIS 3050 Course Descriptions CIS 3050 Algorithms and Data Structures (3) fall This course focuses primarily on the implementation of various important algorithms and data structures.
It contains some theory, but the theory content is minimized in favor of a more rigorous treatment of implementation techniques. The course covers classic topics such as lists, trees, hash tables, sorting, and string matching. It also covers selected other topics such as encryption, data compression, and image processing. The language used is C++ with an emphasis on the C++ Standard Template Library; 3 hours of lecture per week. Prerequisite: CIS 2260 or instructor permission CIS 3080 Issues in Information Technology (3) as required This course is an in-depth study of the uses of and issues related to computers and information systems in society. Topics explore the benefits and professional impact of continuing career preparation, career progression, and outreach to the community, ethical development, and ethical behavior. Controversies and alternative points of view are evaluated on issues such as professional ethics and professional responsibility.
Students research and write extensively on course topics; 3 hours of lecture per week. Prerequisite: Junior standing or instructor permission CIS 3152 Networks II (4) spring This is a second course in networks with an emphasis on the upper layers of the OSI model and network programming. Topics include TCP/IP protocol behavior (including coverage of IPv6), client/server programming, and an application level protocol such as HTTP or SMTP/MIME. An introduction to character sets and XML is also presented. In addition, RPC and a distributed object system such as CORBA are covered; 3 hours of lecture, 3 hours of laboratory per week. Prerequisite: CIS 2151 CIS 3170 History of the Theory of Computation (3) spring In this course, the history of computers and early calculators will be examined. Students will learn the principles of early computational devices and investigate how the concepts utilized in these devices are implemented in modern computers. Particular attention is focused on Boolean logic. Frege formula language, Turing machines, implications of Shannoan’s Limit, and Moore’s Law will be studied. The course is also offered on-line; 3 hours of lecture per week. For non-computer students (General Education: SS) Prerequisite: Junior standing CIS 3310 Artificial Intelligence (3) as required Students learn the algorithms and data structures used in artificial intelligence and to program a range of approaches that computers use to emulate intelligence, such as planning, knowledge representation, learning, decision-making, and game-playing; 3 hours of lecture per week. Prerequisites: CIS 2260 and MAT 2120 CIS 3311 Budgeting and Planning IT Infrastructure (3) fall This course is an introduction to the budgeting and planning for a major information technology infrastructure change or upgrade. Topics covered include capacity planning, technology requirements, RFP/ RFQ processes, technology appropriateness, and lifecycle considerations. Students will develop a complete information technology proposal; 3 hours of lecture per week. Prerequisite: ACC 1020 or 2121, CIS 2235 CIS 3312 Deploying and Monitoring IT Infrastructure (3) spring This course is an introduction to deploying and monitoring substantial information technology infrastructure systems and considers issues such as rolling versus big bang deployments, transition periods, heterogeneous versus homogeneous environments, optimizing deployments, and monitoring tools for all forms of software and hardware information technologies; 3 hours of lecture per week. Prerequisite: CIS 2151 and 3311