Academic Catalog - Virginia Military Institute Admissions
Academic Catalog - Virginia Military Institute Admissions
Academic Catalog - Virginia Military Institute Admissions
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