Andreas Stefik, Ph.D.

Assistant Professor of Computer Science at the University of Nevada, Las Vegas


This page is for students looking for more information on my courses. I have taught a wide variety of courses, including Software Engineering, Human-Computer Interaction, Automata Theory, Compiler Theory, Data Structures, Assembly, or a variety of others. My current class is listed below:

CS 472: Software Engineering I

Current techniques in software design presented with emphasis on architecture first development. Introduction to the processes involved in development. Practice architectural design through a series of homework problems. Students work in teams to prepare the architecture for a software product.

Prerequisites: CS 326 and CS 370


The purpose of this course is to give students an introduction to developing software in a more realistic setting. In the first semester of the course (CS 472), students gather requirements; creating mockups and prototypes, while in the second (CS 473), they predominately implement and deploy their software. During both courses, students are required to choose and follow standard software engineering processes.