19.01.2013 Views

Duke University 2008-2009 - Office of the Registrar - Duke University

Duke University 2008-2009 - Office of the Registrar - Duke University

Duke University 2008-2009 - Office of the Registrar - Duke University

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.

The Department <strong>of</strong> Computer Science <strong>of</strong>fers programs leading to <strong>the</strong> MS and PhD<br />

degrees in areas <strong>of</strong> concentration including algorithms, artificial intelligence, scientific<br />

computing and numerical analysis, and systems and architecture. The MS program consists<br />

<strong>of</strong> coursework (30 credits) and a research <strong>the</strong>sis or project under <strong>the</strong> supervision <strong>of</strong> a faculty<br />

advisor. The PhD program consists <strong>of</strong> coursework and a sequence <strong>of</strong> research milestones<br />

culminating in a doctoral dissertation. Course programs for both degrees include a breadth<br />

requirement, advanced courses in <strong>the</strong> declared area <strong>of</strong> concentration, and two courses in a<br />

related field <strong>of</strong> study. For <strong>the</strong> PhD program <strong>the</strong> breadth requirement is satisfied by earning<br />

qualifying credit in four <strong>of</strong> six core areas <strong>of</strong> subject knowledge. All entering graduate<br />

students participate in a special seminar course (Computer Science 300) to introduce <strong>the</strong>m<br />

to <strong>the</strong> discipline and pr<strong>of</strong>ession <strong>of</strong> computer science. A student entering graduate study in<br />

computer science should have a strong undergraduate grounding in <strong>the</strong> fundamentals <strong>of</strong><br />

calculus, linear algebra, and discrete ma<strong>the</strong>matics, and basic knowledge <strong>of</strong> data structures,<br />

assembly language, and one or more higher-level computing programming languages; some<br />

undergraduate research experience is preferred. Students should consult <strong>the</strong> <strong>of</strong>ficial<br />

departmental documents Graduate Degree Requirements and Addendum: Graduate<br />

Research in Computer Science for a full explanation <strong>of</strong> requirements not listed in this<br />

bulletin.<br />

Outstanding programs in geometric computing; internet systems, networking and<br />

security; biological computing and nanotechnologies; memory systems and massive data<br />

management; learning and modeling, computer graphics and visualization, sensor networks,<br />

numerical analysis, s<strong>of</strong>tware engineering, complexity <strong>the</strong>ory, and robotics provide exciting<br />

and challenging research opportunities to students in computer science. The research<br />

interests <strong>of</strong> our faculty overlap with <strong>the</strong>se areas and with researcher areas in o<strong>the</strong>r disciplines<br />

such as biology, engineering, nanotechnology, environmental sciences and medicine.<br />

210. Operating Systems. Fundamental principles <strong>of</strong> operating system design applied to<br />

state-<strong>of</strong>-<strong>the</strong>-art computing environments (multiprocessors and distributed systems)<br />

including process management (coscheduling and load balancing), shared memory<br />

management (data migration and consistency), and distributed file systems. Instructor:<br />

Chase or Cox. 3 units.<br />

212. Distributed Information Systems. Principles and techniques for sharing information<br />

reliably and efficiently in computer networks, ranging from high-speed clusters to globalscale<br />

networks (e.g., <strong>the</strong> Internet). Topics include advanced distributed file systems,<br />

distributed programming environments, replication, caching and consistency, transactional<br />

concurrency control, reliable update and recovery, and issues <strong>of</strong> scale and security for<br />

Internet information services. Prerequisites: Computer Science 110 or 210 and Computer<br />

Science 214, or consent <strong>of</strong> <strong>the</strong> instructor. Instructor: Chase. 3 units.<br />

214. Computer Networks and Distributed Systems. Basic systems support for processto-process<br />

communications across a computer network. The TCP/IP protocol suite and <strong>the</strong><br />

Berkeley sockets application programs interface. Development <strong>of</strong> network application<br />

programs based on <strong>the</strong> client-server model. Remote procedure call and implementation <strong>of</strong><br />

remote procedure call. Prerequisite: knowledge <strong>of</strong> <strong>the</strong> C programming language. Instructor:<br />

Staff. 3 units.<br />

215. Wireless Networking and Mobile Computing. 3 units. C-L: see Electrical and<br />

Computer Engineering 256<br />

216. Advanced Database Systems. Advanced database management system design<br />

principles and techniques. Materials drawn from both classic and recent research literature.<br />

Possible topics include access methods, query processing and optimization, transaction<br />

processing distributed databases, object-oriented and object relational databases, data<br />

warehousing, data mining, web and semistructured data, search engines. Programming<br />

projects required. Prerequisites: An introductory database course or consent <strong>of</strong> instructor.<br />

Instructor: Babu or Yang. 3 units. C-L: Computational Biology and Bioinformatics 233<br />

Courses <strong>of</strong> Instruction 107

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

Saved successfully!

Ooh no, something went wrong!