Courses
- Software Engineering Methods (10214) תקציר הקורס:
- Computational Models (10215) תקציר הקורס:
Abstract:
Software engineering aims to facilitate the construction
of large and complicated software systems within well-defined bounds of quality, time and budget. Like other engineering disciplines software engineering uses models to analyze and reason about the systems under construction.
In this course, we teach the Unified Modeling Language (UML) and demonstrate how it may describe the different models that are used in the course of development of large software systems. The course structure follows the major phases of software development: requirements elicitation, system specification, architectural design, class design and finally the construction of the system. To assimilate these ideas and techniques you will form groups and develop a series of practical assignments
throughout the semester. Each meeting will contain a theoretical
part where we will learn new ideas and a practical part where we will implement them in context.Abstract:
Students will learn about models of computing machines: finite automata,
pushdown automata, and Turing machines. Students will demonstrate knowledge
of Formal languages, their descriptions, and their relationships to the
computational models; Students will learn the limits of the various models.