ABOUT THE COURSE:The students will learn the mechanics of building large software applications using object-oriented languages. Topics covered in this course include: Writing Makefiles and using Make to compile large programs; source code revision control; documentation generation from code; systematic and organized approaches to software testing; and. introduction to software testing tools. Also, this course covers certain software utilities that help write very fast parsers for almost arbitrary file formats: Flex and Bison. Furthermore, this course exposes students to using UML notation for object-oriented design. The course concludes with an assignment on reverse engineering of a large open-source software application.INTENDED AUDIENCE: B.Tech studentsPREREQUISITES: Programming courseINDUSTRY SUPPORT: Software Development Companies, Information Technology (IT) Companies, Technology Consulting Firms, Open-Source Software Organizations, etc
Overview
Syllabus
Week 1: Use of Make and Makefiles for OOP languages and versioning systems (e.g., CVS, Git, SVN)Week 2:Document Generation using Open source software (Doxygen, Natural Docs) & Software Testing for Object-Oriented Code (Jester)Week 3:Parsing Context-Free Grammar using Flex/BisonWeek 4:Application of UML Notation & Diagrams for Object-Oriented Design and an Introduction to Reverse Engineering
Taught by
Prof. Varun Dutt