course number instructor title
CS 6704 M Gulzar Software Engineering for Emerging Applications

The type of software we write today has dramatically changed in the last decade, from sequential java applications to data-intensive applications integrated with ML/AI components. The prevalence of these emerging applications was mainly because of platforms such as Apache Spark, TensorFlow, and  SparkML, which have almost removed the development and deployment barrier.

However, frameworks once used by domain experts are now being leveraged by data scientists, business analysts, and researchers. This shift in user demographics calls for immediate advancements in developing, debugging, and testing practices for emerging applications.

This class will discuss several aspects of these emerging applications' development cycle and the corresponding advances made by the software engineering research community. By the end of the seminar, students will be well-versed in: