CSS 534: Parallel Programming in Grid and Cloud
Exploration of theoretical programming methodology and practical middleware design used for parallel programming in grid and cloud systems. Use of different programming models, parallelizing patterns, and middleware systems for designing application-specific fault-tolerant parallel software.
CSS 552: Topics in Rendering
Studies core algorithms and technologies in synthesizing high quality images, including: camera models, 3D viewing, visibility sampling and approximation, light source models, material property approximation, illumination models, human vision system, and texture synthesis. (Next Offered: Spring 2013)
CSS 572: Evidence-Based Design
Provides a foundation in evidence-based user-centered design theory, methods, and practices for creating innovative software-enabled products.
CSS 577: Secure Software Development
Augmenting standard software engineering practices with practices to develop applications with low security risks. Covers security risk analysis and assessment, design practices, STRIDE, threat modeling, secure coding practices, fuzz and penetration testing, security response, and security-analysis tools.
CSS 583: Knowledge Management Systems
Explores contemporary theoretical and practical implications of how to create and manage knowledge as acquired using technology. Uses different strategies such as XML, RDF, RDFS, and other approaches to provide methods and structures to organize and reference data for use within a variety of knowledge domains. (Next Offered: Winter 2013)
CSS 587: Advanced Topics in Computer Vision
Covers advanced topics in computer vision. Includes image and video databases, object recognition, video processing, scene reconstruction and robot vision. Students implement projects on current topics in computer vision research.
CSS 590: Mobile Computing (Special Topics for Spring '12)
The general direction behind the class is to identify concepts relating to and systems one can build based on the intersections of pocket size computing device; cloud storage/computing; integrated sensors and touch/gesture-based UI; working with web-services: taking advantage of what's out there; and developing our own. The class will explore each of these areas, define programming projects to explore the concepts and application in each area, and enable student groups to define a final project to combine and intersect the above areas. (Instructor: Kelvin Sung)
CSS 600: Independent Study or Research
Independent study or research on computing topics conducted under the direction of one or more instructors.
Future Course Offerings (Currently Under Development)
Introduction to Compilers
Introduces the structures and organizations of programming languages; fundamentals of translation; regular expressions and context free-grammars; syntac and lexical analysis; symbol tables, semantics and parsing, code generation; translation techniques such as LR, LL, and recursive descent. (Intended Offer Date: Autumn 2012)
Algorithm Design & Analysis
Examines algorithms and the applications that motivate them. Covers theoretical and practical issues in algorithm design and analysis.
Introduction to Data Provenance
Introduces the domain of e-Science to students, to survey data provenance techniques and tools (e.g. scientific workflows), and to provide students with hands-on experience with developing provenance software for various scientific domains.
Intermediate Data Provenance
Studies current challenges in data provenance and allows students to develop solutions from existing technology or from techniques outside of Computer Science and Software Engineering.
Topics in Health Information Technology
An investigation into the design of computer applications than can empower individuals to effectively utilize the growing availability of health-related data and information in order to lead healthier lives.