29.01.2015 Views

Academic Catalog - Virginia Military Institute Admissions

Academic Catalog - Virginia Military Institute Admissions

Academic Catalog - Virginia Military Institute Admissions

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

<strong>Virginia</strong> <strong>Military</strong> <strong>Institute</strong><br />

12-13 <strong>Catalog</strong>ue<br />

CE 423. STRUCTURAL STEEL DESIGN 3—0—3<br />

Structural steel design: beams, columns, trusses, frames, and connections using design<br />

codes and specifications. Prerequisite: a C or better in CE 301.<br />

CE 428. TOPICS IN STRUCTURAL DESIGN 3—0—3<br />

Analysis and design of structural systems in reinforced concrete, pre-stressed concrete,<br />

steel, aluminum, or timber. Computer applications. Prerequisite: a C or better in CE 301.<br />

CE 429. ADVANCED STRUCTURAL THEORY 3—0—3<br />

Analysis of structures by the matrix force and displacement methods. Use of digital<br />

computers in structural analysis. Prerequisite: a C or better in CE 301.<br />

CE 436. TRANSPORTATION PLANNING AND DESIGN 3—0—3<br />

An overview of the highway transportation modeling process and the relationship of<br />

accessibility and urban development highway designs. A special emphasis is placed<br />

on intersection planning and design. Field data collecting methods are performed and<br />

microscopic transportation modeling packages are utilized to evaluate and analyze<br />

intersections. Prerequisite: CE 333.<br />

CE 437. CONSTRUCTION METHODS AND MANAGEMENT 3—0—3<br />

Applications of civil engineering principles to realistic construction projects using a team<br />

approach. Topics include: earth moving operations, dewatering, rock excavation, concrete<br />

and asphalt production, concrete formwork design, heavy equipment production, trenchless<br />

technology, compressed air systems, construction planning, and safety. Prerequisite: CE 350.<br />

CE 443. INDEPENDENT RESEARCH 0—6—3<br />

For cadets engaged in research projects under faculty supervision. Prerequisite: Permission<br />

of department head and faculty research adviser.<br />

CE 448. CIVIL ENGINEERING DESIGN 3—0—3<br />

Application of civil engineering principles to comprehensive engineering problems. Planning<br />

and design of realistic projects. Prerequisite: First class standing or permission of instructor.<br />

CE 451. CIVIL ENGINEERING SEMINAR 1—0—1<br />

Seminars on topics of professional interest. Prerequisite: First class standing or permission<br />

of instructor. Writing Intensive (W).<br />

CE 270-279, CE 370-379, CE 470-479. TOPICS IN CIVIL ENGINEERING 3—0—3<br />

Special topics in civil engineering and related areas as suggested by members of the faculty<br />

or cadets. Subject and content announced before the semester begins. Not necessarily<br />

offered each year. Prerequisite: Permission of instructor.<br />

CE 461. INDEPENDENT SUMMER RESEARCH 0—2—1 to 0—6—3<br />

Offered in the summer session to cadets engaged in research projects under faculty<br />

supervision. Credits may be substituted for appropriate civil engineering courses offered in the<br />

regular session. Prerequisites: Permission of department head and faculty research adviser.<br />

COMPUTER SCIENCE<br />

DEPARTMENT OF MATHEMATICS AND COMPUTER SCIENCE<br />

DEPARTMENT HEAD: ColONEl SIEMERS<br />

Requirements for a degree in computer science are specified on page 48.<br />

CS 121. PROGRAMMING I 2—2—3<br />

An introduction to fundamental data types and programming concepts using a modern<br />

algorithmic language. Emphasis is on programming style, documentation, and implementation<br />

of standard elementary algorithms and data structures.<br />

CS 122. PROGRAMMING II 3—0—3<br />

Program design methods, encapsulation, program maintenance. Run-time behavior and<br />

efficiency. Real-time considerations and recovery techniques. Large-scale programming,<br />

group management, testing. Language ambiguities and insecurities, subset and superset<br />

languages. Includes unit on ethics and professionalism in computer science. Prerequisite:<br />

C or better in CS 121.<br />

CS 201. CONTEMPORARY COMPUTER CONCEPTS 3—0—3<br />

This course provides software experiences leading to enhanced mastery in the use of<br />

popular computer packages. It also includes topics related to functioning of computers<br />

and peripheral devices. Hands-on assignments involve projects using multiple products<br />

chosen based on the interests of students and faculty. Typical product explorations include<br />

components of Microsoft Office and advanced web searching techniques. Ethics and<br />

responsibility associated with computer use are also discussed. Non-credit course for<br />

computer science majors.<br />

CS 221. DISCRETE MATHEMATICS 3—0—3<br />

Introduction to discrete mathematics covering logic, sets, functions, algorithmic complexity,<br />

basic matrix operations, mathematical reasoning and proof, permutations, combinations,<br />

and discrete probability as well as graphs and trees.<br />

CS 222. DISCRETE STRUCTURES 3—0—3<br />

Recurrence Relations, Equivalence Relations, Partial Orderings, Graphs, Trees, Boolean<br />

Algebra, Modeling Computation. Prerequisite: C or better in CS 221.<br />

CS 316. COMPUTER SYSTEMS 3—0—3<br />

Computer architecture; assembly and machine code; peripheral devices; interfacing and<br />

subroutines. Project work will include oral and written presentations. Prerequisite: C or<br />

better in CS 122.<br />

CS 326. DATA STRUCTURES 3—0—3<br />

Mathematical models of linear data structures, trees, directed graphs, networks,<br />

and computer implementations of such models. Prerequisite: C or better in CS 122<br />

and CS 221.<br />

CS 327. NETWORK COMPUTING 3—2—4<br />

An intermediate level course discussing the background and history of networking and<br />

the Internet, network standards, OSI 7-layer model, TCP/IP, web technologies, and network<br />

security. Prerequisite: C or better in CS 122.<br />

CS 340. C PROGRAMMING 3—0—3<br />

An introduction to programming concepts and fundamental data types using the C<br />

programming language. Dynamic memory allocation, I/O, standard libraries, and common<br />

data structures.<br />

CS 345. SOFTWARE ENGINEERING 3—0—3<br />

The software development process and life cycle: design and implementation, documentation<br />

and maintenance, verification and validation, CASE tools, and project management. Social<br />

and ethical issues faced by the computing professional. Course includes a collaborative<br />

team project with oral and written presentations. Prerequisite: CS 326.<br />

CS 346. HUMAN COMPUTER INTERACTION 3—0—3<br />

An introduction to theories and methods for developing and analyzing human-computer<br />

interactions. Students will be introduced to the use of graphic, audio, and haptic tools for<br />

design and implementation of computer interfaces. The course philosophy is user-centered<br />

design. Emphasis is on cognitive factors including information load and learning imposed<br />

on users, and modeling user behavior. Application of techniques to both web-based and<br />

more traditional user interfaces by implementing a prototype team project. Prerequisites:<br />

C or better in CS 122 and CS 221.<br />

CS 347. WEB APPLICATION DEVELOPMENT 3—0—3<br />

A survey of contemporary software tools, languages and techniques for Web application<br />

development. Software design, interface design, and use of current technologies in developing<br />

client-side and server-side web applications. Technologies include HTML and XHTML, CSS,<br />

CGI programming, widely-used scripting languages such as JavaScript and Perl, and XML/<br />

XSL. Prerequisite: C or better in CS 122.<br />

CS 348. DATABASE AND INFORMATION RETRIEVAL 3—0—3<br />

Introduction to database management systems with emphasis on the relational model.<br />

Database system architecture, storage structures, access methods, relational model theory,<br />

security and integrity, locking, query optimization, and database and retrieval systems<br />

design. Hands-on experience with a SQL-type relational system. Prerequisite: C or better<br />

in CS 122 or equivalent.<br />

CS 411. ALGORITHMS 3—0—3<br />

Algorithms for unordered and ordered sets, matrices, graphs, and trees; string processing;<br />

pattern matching. Sorting and searching; recursion. Divide-and-conquer and backtracking;<br />

dynamic programming; NP-completeness; intractability and heuristics. Prerequisite: CS 326.<br />

CS 412. INTRODUCTION TO OPERATING SYSTEMS 3—0—3<br />

An introduction to the major concepts of operating systems and their relationship to<br />

computer architecture. Topics will include operating systems, concurrency, scheduling and<br />

dispatch, memory management, file systems, and security and protection, including ethics<br />

and professionalism. Prerequisites: CS 316 and CS 326.<br />

CS 418. IMPLEMENTATION OF PROGRAMMING LANGUAGES 3—0—3<br />

Language features, design principles, implementation; compilers and interpreters;<br />

optimization; storage management; runtime considerations; binding times; syntax; semantics;<br />

and different programming paradigms. Prerequisite: CS 316 and CS 326.<br />

CS 421. COMPUTER GRAPHICS 3—0—3<br />

Display and input devices, primitives and attributes, transformations, windowing and<br />

clipping, segments, projection techniques, hidden line and hidden surface removal, shading<br />

methods, user interface, and standards. Prerequisites: MA 305 and CS 326<br />

CS 422. C++ AND OBJECT ORIENTED PROGRAMMING 3—0—3<br />

Introduction to C++, a language which supports the object oriented programming paradigm.<br />

The contributions of data abstraction, encapsulation, inheritance, and polymorphism to the<br />

reusability of code and programming in the large. Prerequisite: CS 340.<br />

CS 430. ARTIFICIAL INTELLIGENCE 3—0—3<br />

Historical background of Al, knowledge representations and selected topics in search,<br />

logic, machine learning, planning, and vision. Discussion of Turning’s test for intelligence;<br />

programming projects in an appropriate language. Prerequisite: CS 326.<br />

85

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!