COMPUTER 5030 3 credits Artificial Intelligence
A study of knowledge representation, search techniques, expert systems, predicate calculus, and natural languages. Discussion of the successes and limitations of past and current AI programs. Programming assignments in LISP and Prolog illustrate formal topics. P: COMPUTER 2630 and MATH 2730.
COMPUTER 5430 3 credits Object-Oriented Analysis and Design
Requirements engineering, analysis, and specification using the object-oriented paradigm. Object-oriented architectural and detailed design. Use of an OOA&D modeling language such as UML. Investigation of OOA&D patterns. Moderate size, group project. P: SOFTWARE 2730 and COMPUTER 2430. Fall
COMPUTER 5520 3 credits Programming Language Structures
A study of programming language topics which include data objects, data types, storage management, syntax, BNF descriptions, semantics, lexical analysis and parsing. Examples taken from traditional languages as well as more modern languages. P: COMPUTER 2630, Object-oriented Programming and Data Structures II.
COMPUTER 5730 3 credits Software Quality
Study of topics related to producing quality software, including software quality assurance, quality metrics, configuration management, verification and validation, reviews, inspections, audits, and software process improvement models. Individual and team projects. P: COMPUTER 2630 and SOFTWARE 2730.
COMPUTER 5860 3 credits Software Maintenance and Reengineering
Study of the topics related to maintaining large-scale software systems. Study of software engineering topics such as estimation, software quality assurance, metrics, configuration management, verification and validation, inspections, and personal and team software process as they relate to software maintenance projects. Coverage of traditional analysis and design methods such as structured analysis and design. Two, semester-long, team-based projects: reengineering a small system to be object-oriented and making changes to a moderate sized existing software project. P: SOFTWARE 3430/COMPUTER 5430 Object-Oriented Analysis and Design, COMPUTER 2630 Object-Oriented Programing and Data Structures II.
COMPUTER 5870 3 credits Web Protocols, Technologies, and Applications
This course will introduce the students to protocols and technologies in Web Applications and Web Services. The Client/ Server concept and some advanced database concepts will also be covered. The emphasis of the course will be using tools such as ASP.NET for rapid development of Web Applications and Web Services. P: COMPUTER 3340; C: COMPUTER 3630.
COMPUTER 5920 3 credits Computer Graphics
An introduction to computer graphics including raster hardware, standard graphics software packages and important algorithms such as window-to-viewport mapping; clipping of lines, characters and polygons; 2D and 3D transformations and hidden line/surface removal. P: COMPUTER 2630 and MATH 3230.
COMPUTER 6130 3 credits Real-time Embedded Systems Programming
An exploration of programming techniques and constructs used to develop reliable software systems capable of responding in real time to environmental changes. An overview of the platforms, tools, and processes used in developing software for embedded systems. Hands-on lab projects experimenting with real-time embedded systems programming details. P: COMPUTER 2630 and SOFTWARE 3430 and (ELECTENG 3780 or COMPUTER 3230).
COMPUTER 6830 1-3 credits Special Topics in Computer Science
The subject matter and instructor for each instance of this class will be listed in the class schedule. Students should check with the instructor for details.
COMPUTER 7120 2 credits Software Project I
Participation in a semester-long software development group project at the student's home university. Application of software engineering techniques and principles to the development of the project. P: COMPUTER 2630 and SOFTWARE 2730
COMPUTER 7220 2 credits Software Project II
Participation in a semester-long software development group project. This course is only open to JIM-CS students in their "abroad" semester. Application of software engineering techniques and principles to the development of the project. P: COMPUTER 2630 and SOFTWARE 2730
COMPUTER 7460 3 credits Computer Security
Introduction to the concepts, theory, and application of Computer Security. Topics include cryptography, digital signatures, authentication and identification schemes, viruses, worms, firewalls, and electronic commerce. P: COMPUTER 3830
COMPUTER 7630 3 credits Compiler Construction
Study of the theory and design techniques used in compiler construction, including lexical analysis, parsing, grammars, semantic analysis, code generation, and optimization. P: COMPUTER 3520
COMPUTER 7830 1-3 credits Special Topics in Computer Science
Specific contemporary issues or other issues related to Computer Science will be explored in depth. Topics vary. P: Consent of instructor
COMPUTER 7920 1-3 credits Seminar Paper Research
The student will be required to carry out a project and write a technical paper in computer science. The student must demonstrate the ability to survey a field of knowledge and assemble, organize, evaluate, interpret, and present evidence in a logical and intelligent manner. P: Completion of at least 15 credits of computer science graduate courses.
COMPUTER 7980 1-4 credits Independent Study in Computer Science
The amount of graduate credit allowed for independent study may not exceed a total of four credits except with the special permission of the student's advisor and the dean of the School of Graduate Studies. Approval must be secured before independent study courses are begun. Students registering for independent study must submit at or before registration a description signed by the instructor conducting the independent study of the subject to be covered. Independent study may not be used for collecting information for the seminar paper.
COMPUTER 7990 3-6 credits Thesis Research
The thesis may be an outgrowth of a research course (e.g. TEACHING 7000 Research Procedures) or may be developed independently within the program area. The thesis will report the results of original and independent student research on a given problem or topic, by systematic and impartial methods, and will demonstrate the student’s ability to use techniques customarily employed in the particular field of investigation. Although a thesis for the master’s degree may not always be expected to make a significant contribution to existing knowledge, it should be a scholarly document that is accurate, verifiable, objective, and impartial. In consultation with the program advisor, the student proposes a committee of three faculty members. The committee normally includes the thesis advisor, one additional major department member, and one faculty member from another department. In some instances, a student may prefer a thesis advisor who is different from the program advisor assigned at the time of admission. An approved thesis proposal must be submitted and approved prior to registration. There is a website with useful links to guide the graduate student in grammar, style, evaluating web resources, and formats. (Thesis students will find the Texas A and M link useful for formatting procedures and other technical assistance.) The thesis advisor will provide guidance regarding the site. The site may be accessed through the University’s Karrmann Library.