faculty
Razieh Fathi, PhD
Assistant Teaching Professor
Computer & Information Science
Contact
508-910-6893
508-999-9144
sgbuijAvnbtte/fev
Dion 303A
Education
| University at Buffalo | PhD in Computer Science and Engineering |
Teaching
Courses
Fundamentals of programming and object-oriented design. The course introduces basic programming concepts and the object-oriented paradigm, including the design and implementation of programs in an object-oriented language. It also covers the use of development environments, component libraries, and basic testing in program development.
Fundamentals of programming and object-oriented design. The course introduces basic programming concepts and the object-oriented paradigm, including the design and implementation of programs in an object-oriented language. It also covers the use of development environments, component libraries, and basic testing in program development.
Fundamentals of programming and object-oriented design. The course introduces basic programming concepts and the object-oriented paradigm, including the design and implementation of programs in an object-oriented language. It also covers the use of development environments, component libraries, and basic testing in program development.
Designed to provide students with a solid background in data mining and knowledge discovery concepts, tools, and methodology, as well as their applicability to real world problems. A variety of data mining techniques will be explored including memory-based reasoning, cluster detection, classification, neural networks, and finding understandable knowledge in large sets of real world examples. Some related topics such as web and multimedia mining will be discussed. Students will gain hands-on experience in data mining techniques using various data mining software packages and tools.
Theory and principles for constructing usable software systems. Cognitive and effective aspects of users. The impact of user characteristics on design decisions. The construction and evaluation of the user interface. Sensory and perceptual aspects of interfaces, task structure, input modalities, screen layout, and user documentation. Individual concerns for systems such as personal productivity tools, real-time control systems, instructional software, and games.
Principles, methodologies, and techniques in designing software architecture. The course introduces the fundamental elements of software systems in the context of the design process. Architectural patterns, design patterns, and software frameworks are covered in depth. How to document design work to an acceptable standard is also covered.
An introduction to data analysis with a focus on visualization. Topics include: visualization of scalar, vector and tensor data; software tools for image, volume and information visualization and analysis; descriptive statistics; time dependent data; data patterns; analyzing propositions, correlations, and spatial relationships. Application of these topics to natural sciences and engineering are discussed. This course will also introduce programming basics including data types, variable declarations, arithmetic expressions, conditional statements, function prototypes, standard libraries, stacks, queues, file processing, structures, unions, unix systems, file systems, and some I/0.
Online and Continuing Education Courses
Offered as needed to present advanced material to graduate students.