Undergraduate Courses CSE 100: Fluency In Information Technology - TopicsExpress



          

Undergraduate Courses CSE 100: Fluency In Information Technology Introduces skills, concepts, and capabilities necessary to effectively use information technology. Includes logical reasoning, managing complexity, operation of computers and networks, and contemporary applications such as effective Web searching and database manipulation, ethical aspects, and social impacts of information technology. Offered: jointly with INFO 100. CSE 120: Computer Science Principles Introduces fundamental concepts of computer science and computational thinking. Includes logical reasoning, problem solving, data representation, abstraction, the creation of “digital artifacts” such as Web pages and programs, managing complexity, operation of computers and networks, effective Web searching, ethical, legal and social aspects of information technology. CSE 131: Science and Art of Digital Photography Digital Photography is a unique technological activity that is totally dependent on its roots in digital sensing and computational imaging. It has many functions—scientific, artistic, documentary and social—and its historical development is a fascinating study in scientific innovation. This course will give students the tools and technological understanding to make better pictures. We will concentrate on four areas: the history and development of photography; the science of optics and digital imaging; the elements of photographic composition and design; and the future of internet-enabled photography. CSE 142: Computer Programming I Basic programming-in-the-small abilities and concepts including procedural programming (methods, parameters, return values) , basic control structures (sequence, if/else, for loop, while loop), file processing, arrays and an introduction to defining objects. Offered: AWSpS. CSE 143: Computer Programming Ii Continuation of 142. Concepts of data abstraction and encapsulation including stacks, queues, linked lists, binary trees, recursion, instruction to complexity and use of predefined collection classes. Prerequisite: CSE 142. Offered: AWSpS. CSE 154: Web Programming Covers languages, tools, and techniques for developing interactive and dynamic web pages. Topics include page styling, design, and layout; client and server side scripting; web security; and interacting with data sources such as databases. Prerequisite: 2.0 in CSE 142; recommended: CSE 143. CSE 190a: WICSE Seminar A one-credit seminar linked to one section of CSE 142. An exploration of the world of women in computer science & computer engineering. Through weekly group discussions, hands-on activities, and special guests, we will focus on the stories of women who are at different stages of their careers in Computer Science and Engineering. (Was CSE 490W, CSE 490E.) CSE 190b: Direct Admission Seminar Seminar for freshmen admitted to CSE through Direct Freshman Admission. CSE 190m: Web Programming This course will expose students to the techniques used in programming web pages for interactive content. In particular, the course builds on the power of AJAX (Asynchronous Javascript and XML) to design web pages that dynamically interact with databases that reside on a server. The course begins by reviewing basic web technologies (HTML, CSS stylesheets) and exploring the use of event-driven programming in Javascript to add interactive elements such as buttons and text fields to web pages. Next, students will use AJAX tools to build web pages that connect to servers like Google to dynamically access data (maps, search results, videos, images, etc). Finally, the course will show students how to write their own server-side code to provide access to a custom database. The course ends with a two-week group project. CSE 311: Foundations Of Computing I Examines fundamentals of logic, set theory, induction, and algebraic structures with applications to computing; finite state machines; and limits of computability. Prerequisite: CSE 143; either MATH 126 or MATH 136. CSE 312: Foundations Of Computing Ii Examines fundamentals of enumeration and discrete probability; applications of randomness to computing; polynomial-time versus NP; and NP-completeness. Prerequisite: CSE 311; CSE 332, which may be taken concurrently. CSE 331: Software Design And Implementation Explores concepts and techniques for design and construction of reliable and maintainable software systems in modern high-level languages; program structure and design; program-correctness approaches, including testing; and event-driven programming (e.g., graphical user interface). Includes substantial project and software-team experience. Prerequisite: CSE 143. CSE 332: Data Abstractions Covers abstract data types and structures including dictionaries, balanced trees, hash tables, priority queues, and graphs; sorting; asymptotic analysis; fundamental graph algorithms including graph search, shortest path, and minimum spanning trees; concurrency and synchronization; and parallelism. Not available for credit for students who have completed CSE 373. Prerequisite: either CSE 311 or CSE 321. CSE 333: Systems Programming Includes substantial programming experience in languages that expose machine characteristics and low-level data representation (e.g., C and C++); explicit memory management; interacting with operating-system services; and cache-aware programming. Prerequisite: CSE 351. CSE 341: Programming Languages Basic concepts of programming languages, including abstraction mechanisms, types, and scoping. Detailed study of several different programming paradigms, such as functional, object-oriented, and logic programming. No credit if CSE 413 has been taken. Prerequisite: CSE 143. CSE 344: Introduction To Data Management Introduces database management systems and writing applications that use such systems; data models (e.g., relational, semi-structured), query languages (e.g., SQL, XQuery), language bindings, conceptual modeling, transactions, security, database tuning, data warehousing, parallelism, and Web-data management. Prerequisite: either CSE 311 or CSE 321. CSE 351: The Hardware/software Interface Examines key computational abstraction levels below modern high-level languages; number representation, assembly language, introduction to C, memory management, the operating-system process model, high-level machine architecture including the memory hierarchy, and how high-level languages are implemented. Prerequisite: CSE 143. CSE 352: Hardware Design And Implementation Covers digital circuit design, processor design, and systems integration and embedded-systems issues. Include substantial hardware laboratory. Prerequisite: CSE 311; CSE 351. CSE 373: Data Structures And Algorithms Fundamental algorithms and data structures for implementation. Techniques for solving problems by programming. Linked lists, stacks, queues, directed graphs. Trees: representations, traversals. Searching (hashing, binary search trees, multiway trees). Garbage collection, memory management. Internal and external sorting. Intended for non-majors. Not open for credit to students who have completed CSE 326 or CSE 332. Prerequisite: CSE 143. CSE 374: Intermediate Programming Concepts And Tools Covers key software development concepts and tools not in introductory courses. Concepts of lower-level programming (C/C++) and explicit memory management; techniques and tools for individual and group software development; design, implementation, and testing strategies. Intended for non-majors. Can not be taken for credit if credit received for CSE 303 or CSE 333. Prerequisite: CSE 143. CSE 390a: System and Software Tools System and Software Tools CSE 390l: Leadership Seminar Series The UW CSE Leadership Seminar Series, CSE 390L, is a one-credit (CR/NC) seminar series, primarily targeted at undergraduates, that brings CSE alumni and friends to campus to describe how to be effective in a startup, small company, large company, or less common environment. Course requirements: Regular attendance, active participation, and some preparation on a wiki in advance of each course session. CSE 399: CSE Foreign Study Upper division computer science or computer engineering course, taken through an approved study abroad program, which there are no direct University of Washington equivalents. Credit/no credit only. CSE 401: Introduction To Compiler Construction Fundamentals of compilers and interpreters; symbol tables; lexical analysis, syntax analysis, semantic analysis, code generation, and optimizations for general purpose programming languages. No credit to students who have taken 413. Prerequisite: either CSE 326 and CSE 378 or CSE 332 and CSE 351. CSE 403: Software Engineering Fundamentals of software engineering using a group project as the basic vehicle. Topics covered include the software crisis, managing complexity, requirements specification, architectural and detailed design, testing and analysis, software process, and tools and environments. Prerequisite: either CSE 303 or CSE 331; either CSE 332 or CSE 326; recommended: either CSE 331 or project experience in a work setting. CSE 410: Computer Systems Structure and components of hardware and software systems. Machine organization, including central processor and input-output architectures; assembly language programming; operating systems, including process, storage, and file management. Intended for non-majors. No credit to students who have completed CSE 351, CSE 378, or CSE 451. Prerequisite: CSE 373. CSE 413: Programming Languages & Their Implementation Basic concepts and implementation strategies for modern functional and object-oriented programming languages such as Scheme and Java. Intended for non-majors. No credit to students who have completed CSE 341 or CSE 401. Prerequisite: CSE 373. CSE 415: Introduction To Artificial Intelligence Principles and programming techniques of artificial intelligence: LISP, symbol manipulation, knowledge representation, logical and probabilistic reasoning, learning, language understanding, vision, expert systems, and social issues. Intended for non-majors. Not open for credit to students who have completed CSE 473. Prerequisite: CSE 373. CSE 417: Algorithms And Computational Complexity Design and analysis of algorithms and data structures. Efficient algorithms for manipulating graphs and strings. Fast Fourier Transform. Models of computation, including Turing machines. Time and space complexity. NP-complete problems and undecidable problems. Intended for non-majors. Prerequisite: CSE 373. CSE 421: Introduction To Algorithms Techniques for design of efficient algorithms. Methods for showing lower bounds on computational complexity. Particular algorithms for sorting, searching, set manipulation, arithmetic, graph problems, pattern matching. Prerequisite: either CSE 312 or CSE 322; either CSE 326 or CSE 332. CSE 427: Computational Biology Algorithmic and analytic techniques underlying analysis of large-scale biological data sets such as DNA, RNA, and protein sequences or structures, expression and proteomic profiling. Hands-on experience with databases, analysis tools, and genome markers. Applications such as sequence alignment, BLAST, phylogenetics, and Markov models. Prerequisite: either CSE 32 or CSE 332. CSE 428: Computational Biology Capstone Designs and implements a software tool or software analysis for an important problem in computational molecular biology. Prerequisite: either CSE 303 or CSE 331; either CSE 326 or CSE 332. CSE 431: Introduction To Theory Of Computation Models of computation, computable and noncomputable functions, space and time complexity, tractable and intractable functions. Prerequisite: either CSE 312 or CSE 322. CSE 440: Intro To Hci: User Interface Dsgn, Prototype, Eval Human-Computer Interaction (HCI) theory and techniques. Methods for designing, prototyping, and evaluating user interfaces to computing applications. Human capabilities, interface technology, interface design methods, and interface evaluation tools and techniques. Prerequisite: either CSE 326 or CSE 332. CSE 441: Advanced Hci: User Interface Dsgn, Prototype, Eval Human-Computer Interaction (HCI) theory and techniques. Advanced methods for designing, prototyping, and evaluating user interfaces to computing applications. Novel interface technology, advanced interface design methods, and prototyping tools. Prerequisite: CSE 440. CSE 444: Database Systems Internals The rational data model and the SQL query language. Conceptual modeling: entity/relationships, normal forms. XML, XPath, and XQuery. Transactions: recovery and concurrency control. Implementation of a database system. A medium sized project using a rational database backend. Prerequisite: CSE 344; either CSE 326 or CSE 332. CSE 446: Machine Learning Methods for designing systems that learn from data and improve with experience. Supervised learning and predictive modeling: decision trees, rule induction, nearest neighbors, Bayesian methods, neural networks, support vector machines, and model ensembles. Unsupervised learning and clustering. Prerequisite: either CSE 326 or CSE 332; either STAT 390, STAT 391, or CSE 312. CSE 450: Animation Production Seminar Open to all students who have an interest in digital animation. Reviews and analyzes films, animated feature films, and television commercials. Emphasizes the technical and aesthetic basics of animation production in industry studio environments. CSE 451: Introduction To Operating Systems Principles of operating systems. Process management, memory management, auxiliary storage management, resource allocation. No credit to students who have completed 410 or E E 474. Prerequisite: CSE 351 or CSE 378; CSE 326 or CSE 332; CSE 333. CSE 452: Distributed Systems Covers abstractions and implementation techniques in the construction of distributed systems, including cloud computing, distributed storage systems, and distributed caches. Prerequisites: either CSE 444, CSE 451, or CSE 461. CSE 454: Advanced Internet And Web Services Design of Internet search engines, including spider architecture, inverted indices, frequency rankings, latent semantic indexing, hyperlink analysis, and refinement interfaces. Construction of scalable and secure web services. Datamining Webserver logs to provide personalized and user-targeted services. Large project. Prerequisite: CSE 326 or CSE 332. CSE 455: Computer Vision Introduction to image analysis and interpreting the 3D world from image data. Topics may include segmentation, motion estimation, image mosaics, 3D-shape reconstruction, object recognition, and image retrieval. Prerequisite: CSE 303 or CSE 333; CSE 326 or CSE 332; recommended: MATH 308; STAT 391. CSE 456: Story Design For Computer Animation Animation principles and production for story development and design. Design, development, and production of several storyreels, which are a tool for the pre-production of animated features and shorts. Student use authoring tools to present finished work. CSE 457: Computer Graphics Introduction to computer image synthesis, modeling, and animation. Topics may include visual perception, displays and framebuffers, image processing, affine and projective transformations, hierarchical modeling, hidden surface elimination, shading, ray-tracing, anti-aliasing, texture mapping, curves, surfaces, particle systems, dynamics, character animation, and animation principles. Prerequisite: CSE 303 or CSE 333; CSE 326 or CSE 332; recommended: MATH 308. CSE 458: Computer Animation Introduction to basic principles of computer generated animation. Focus on the modeling and lighting of animated characters. Students from Art, CSE, and Music team up on projects to be built on commercially-available modeling and lighting packages. Prerequisite: either CSE 457, ART 380, or MUSIC 403. CSE 459: Pre-production For Collaborative Animation Pre-production of collaboratively designed animated shorts. In-depth analysis of classical and computer generated works. Character design and pre-planning, model sheets, character rigging, storyreel and animatics, character motion, design for multiple characters, and principles of animation as applied to character motion and effects. Prerequisite: CSE 458. CSE 460: Animation Capstone Apply the knowledge gained in previous animation courses to produce a short animated film. Topics include scene planning, digital cinematography, creature and hard surface modeling, animatics and basics of character animation, and rendering techniques. Prerequisite: CSE 458, CSE 459. CSE 461: Introduction To Computer Communication Networks Computer network architectures, protocol layers, network programming. Transmission media, encoding systems, switching, multiple access arbitration. Network routing, congestion control, flow control. Transport protocols, real-time, multicast, network security. Prerequisite: either CSE 326 or CSE 332; either CSE 303 or CSE 333. CSE 464: Advanced Topics In Digital Animation Students design individual animated works for professional quality demo reels. 2- and 3-D animatics, special effects design, advanced character animation techniques, 3-D paint techniques and integration, short design, sequence planning, non-photorealistic rendering options, interactive animation for pre-planning, and advanced production techniques and strategies. Prerequisite: CSE 458. CSE 466: Software For Embedded Systems Software issues in the design of embedded systems. Microcontroller architectures and peripherals, embedded operating systems and device drivers, compilers and debuggers, timer and interrupt systems, interfacing of devices, communications and networking. Emphasis on practical application of development platforms. Prerequisite: either CSE 352 or CSE 378; either CSE 303 or CSE 333. CSE 467: Advanced Digital Design Advanced techniques in the design of digital systems. Hardware description languages, combinational and sequential logic synthesis and optimization methods, partitioning, mapping to regular structures. Emphasis on reconfigurable logic as an implementation medium. Memory system design. Digital communication including serial/parallel and synchronous/asynchronous methods. Prerequisite: either CSE 352 or CSE 370; either CSE 326 or CSE 332. CSE 468: Very Large Scale Integration Introduction to CMOS technology and circuit design; implementation of combinational and sequential logic; VLSI design methodologies; CAD tools for layout, simulation, and validation. Students design a VLSI chip using modern CAD tools. Prerequisite: either CSE 352 or CSE 370. CSE 471: Computer Design And Organization CPU instruction addressing models, CPU structure and functions, computer arithmetic and logic unit, register transfer level design, hardware and microprogram control, memory hierarchy design and organization, I/O and system components interconnection. Laboratory project involves design and simulation of an instruction set processor. Prerequisite: either CSE 352 or CSE 378. CSE 472: Introduction To Computational Linguistics Introduction to computer applications of linguistic theory, including syntactic processing, semantic and pragmatic interpretation, and natural language generation. Prerequisite: either LING 200 or LING 400; either LING 461, CSE 311, or CSE 321. Offered: jointly with LING 472. CSE 473: Introduction To Artificial Intelligence Principal ideas and developments in artificial intelligence: Problem solving and search, game playing, knowledge representation and reasoning, uncertainty, machine learning, natural language processing. Not open for credit to students who have completed 415. Prerequisite: CSE 326 or CSE 332; recommended: CSE 312, STAT 390, or STAT 391. CSE 476: Embedded System Design System building course to provide students with a complete experience in embedded system design. Students will design, simulate, construct, debug, and document a substantial project of their choosing. Lectures will focus on case studies and emerging components and platforms. Prerequisite: CSE 451; CSE 466. CSE 477: Digital System Design Capstone design experience. Prototype a substantial project mixing hardware, software, and communication components. Focuses on use of embedded processors and programmable logic in digital system design, case studies, and emerging components and platforms. Provides a complete experience in embedded system design and management. Prerequisite: CSE 451; CSE 466; CSE 467. CSE 481: Capstone Software Design Students work in teams to design and implement a software project involving multiple areas of the CSE curriculum. Emphasis is placed on the development process itself, rather than on the product. Prerequisite: CSE 331 or CSE 341; CSE 326 or CSE 332; CSE 351 or CSE 378; substantial programming experience such as CSE 451 or CSE 457. CSE 481a: Capstone Software: Operating Systems Students work in substantial teams to design, implement, and release a software project involving multiple areas of the CSE curriculum. Emphasis is placed on the development process itself, rather than on the product. Teams are expected to develop a work plan, and to track and document their progress against it. CSE 481b: Capstone Software - Tablet PC Students work in substantial teams to design, implement, and release a software project involving tablet PCs. CSE 481c: Robotics Capstone Students work in teams to design and implement algorithms for robotic perception and control. CSE 481d: Capstone Software: Games Students work in substantial teams to design, implement, and release a software project involving multiple areas of the CSE curriculum. Emphasis is placed on the development process itself, rather than on the product. Teams are expected to develop a work plan, and to track and document their progress against it. CSE 481e: Capstone Software: UrbanSim UrbanSim Capstone CSE 481g: Capstone Software: Distributed Systems Distributed systems capstone. CSE 481h: Capstone Software: Accessibility Accessibility capstone. CSE 481i: Sound Capstone Sound Capstone CSE 481k: Capstone Software: Designing Tech. for Resource-Constrained Envs. Students form interdisciplinary project groups to scope and design projects for resource-constrained environments. The emphasis is on group work leading to the creation of testable realizations and completion of initial evaluations of the software and hardware artifacts produced. Students work in inter-disciplinary groups with a faculty or graduate student manager. Groups document their work in the form of posters, verbal presentations, videos, and written reports. CSE 481m: Home Networking Capstone Home Networking Capstone CSE 481O: Capstone Software - Kinect Students work in teams to design and implement a software project that makes use of RGB-D sensors (e.g. Microsoft Kinect, ASUS Xtion Pro Live) CSE 484: Computer Security Foundations of modern computer security, including software security, operating system security, network security, applied cryptography, human factors, authentication, anonymity, and web security. Prerequisite: either CSE 326 or CSE 332; either CSE 351 or CSE 378. CSE 486: Introduction To Synthetic Biology Studies mathematical modeling of transcription, translation, regulation, and metabolism in cell; computer aided design methods for synthetic biology; implementation of information processing, Boolean logic and feedback control laws with genetic regulatory networks; modularity, impedance matching and isolation in biochemical circuits; and parameter estimation methods. Prerequisite: either MATH 136 or MATH 307, AMATH 351, or CSE 321 and MATH 308 or AMATH 352. Offered: jointly with BIOEN 423/E E 423. CSE 487: Advanced Systems And Synthetic Biology Introduces advanced topics in systems and synthetic biology. Topics include advanced mathematical modeling; computational standards; computer algorithms for computational analysis; and metabolic flux analysis, and protein signaling pathways and engineering. Prerequisite: either BIOEN 401, BIOEN 423,E E 423, or CSE 486. Offered: jointly with BIOEN 424/E E 424; W. CSE 488: Laboratory Methods In Synthetic Biology Designs and builds transgenic bacterial using promoters and genes taken from a variety of organisms. Uses construction techniques including recombination, gene synthesis, and gene extraction. Evaluates designs using sequencing, fluorescence assays, enzyme activity assays, and single cell studies using time-lapse microscopy. Prerequisite: either BIOEN 423, E E 423, or CSE 486; either CHEM 142, CHEM 144, or CHEM 145. Offered: jointly with BIOEN 425/E E 425. CSE 490ab: Computers, Ethics, and Society Computers, Ethics, and Society CSE 490as: Animation Production Seminar Animation Production Seminar CSE 490b: Software Entrepreneurship Provides an overview of the major elements of entrepreneurial activity in software, including market identification and analysis, evaluation and planning of the business, financing, typical operating and administrative problems, and alternatives for growth or sale. CSE 490d: Hardware Capstone Project Exploration Hardware Capstone Project Exploration CSE 490dc: Character Animation Character Animation CSE 490dv: Story Design for Computer Animation Animation principles and production for story development and design. Design, development, and production of several storyreels, which are a tool for the pre-production of animated features and shorts. Student use authoring tools to present finished work. CSE 490g: Introduction to Data Compression Basic information theory: entropy. Lossless data compression techniques: Huffman coding, arithmetic coding, and dictionary methods. Use of context, structure, and prediction to improve compression. Basic signal processing: Fourier and discrete cosine transforms, wavelet transforms, quantization. Fidelity and distortion metrics, rate-distortion analysis. Image compression: vector quantization, DCT coding, wavelet coding. Video compression: motion compensation and prediction. Audio compression. Image, video, and audio compression standards. CSE 490h: Problem Solving on Large Scale Clusters Problem Solving on Large Scale Clusters CSE 490i: Neurobotics The field of Neurobotics lies at the intersection of robotics and medicine. It aims to build a robot-human closed loop system to alter the neural control of movement as a way to rehabilitate, assist, and enhance human motor control and learning capabilities. Typically, the primary target population is individuals with strokes, spinal cord injuries, traumatic brain injuries, and other injuries that inhibit daily activities. However, it could also target sports medicine, military, and entertainment applications. This course is an introductory design course in Neurobotics focusing on learning about human neural control of movement, using physiological signals as inputs, and controlling a mechanical device. Students will learn simple control laws, hands on experience and programming in controlling robots, and applying knowledge of human movements to move the robot. There is a design project competition at the end of quarter. CSE 490j: Special Topics in Computer Animation Special Topics in Computer Animation CSE 490jl: User Interface Design, Prototyping, and Evaluation User Interface Design, Prototyping, and Evaluation CSE 490k: Computer Telephony Computer Telephony CSE 490st: Educational Software Capstone Software to support learning comprises a wide variety of styles and scales of programming. From games for children to large online learning systems, educational software not only touches on many areas of computer science but depends also on psychology, communication, design, and the fields of study the software is to support. Developing software for learning can be both highly exciting and very challenging. This capstone course will blend a study of key aspects of educational software with group projects that allow students to explore the issues in a hands-on manner. Key issues include: identifying learning objectives, design of simulations and construction sets, managing the learning curve for the software itself, interface design, supporting motivation, supporting collaborative learning and communication, educational assessment, connecting to standards, integration with environments and platforms, evaluation methods, and deployment approaches. CSE 490t: Intellectual Property Law for Engineers This course will provide a survey of intellectual property law for a technical (non-legal) audience, with a primary focus on patent law. The purpose of the course is to assist engineers and scientists in navigating and utilizing various intellectual property regimes effectively in the business context. In the patent realm, topics will include patent preparation and prosecution, patent claim interpretation, and assessing patent validity and infringement. Other intellectual property areas that may be covered, time permitting, include copyright, trademark, and trade secret law. Where possible, the course will also endeavor to balance the discussion of practical legal
Posted on: Tue, 10 Sep 2013 18:26:44 +0000

Trending Topics



Recently Viewed Topics




© 2015