Skip to main content
Razieh Fathi

faculty

Razieh Fathi, PhD she/her

Assistant Teaching Professor

Computer & Information Science

Contact

508-910-6893

508-999-9144

Education

University at BuffaloPhD in Computer Science and Engineering

Teaching

Courses

Basic concepts in programming, and introduction to the object paradigm. The course introduces the concept of the object paradigm and teaches how to design and implement simple programs in an object-oriented language. The course also covers the basics of how to use a computer and basic software tools, including libraries of components, in the process of developing programs.

Basic concepts in programming, and introduction to the object paradigm. The course introduces the concept of the object paradigm and teaches how to design and implement simple programs in an object-oriented language. The course also covers the basics of how to use a computer and basic software tools, including libraries of components, in the process of developing programs.

Basic concepts in programming, and introduction to the object paradigm. The course introduces the concept of the object paradigm and teaches how to design and implement simple programs in an object-oriented language. The course also covers the basics of how to use a computer and basic software tools, including libraries of components, in the process of developing programs.

Models of sequential, parallel, and distributed computations. The Chomsky hierarchy of formal languages and their accepting machines are studied in detail. The relationship of these languages and machines to computer programs is presented. Influence of a Turing machine and related formalisms on modern computing are studied. Decidability of decision problems is explained. Several models of parallel and distributed computations are introduced and compared.

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.

Offered as needed to present advanced material to graduate students.

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.

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.

      Back to top of screen