600.118 or 600.121 recommended. This course is an introduction to the theory of computing. In this context, design involves the modeling of the problem domain with the specification of a software-supported solution, the transformation of that solution into product design, and the realization of that design as an implemented product. The topics covered include models of the software process and methods for design. Emphasis is placed on the underlying concepts, the methods widely used in practice, and the alternatives being explored.
Speed is a function of architecture, technology, software, and algorithms.
We observe their impact on and interplay with technology, software, and algortihms. This course covers the design, implementation and interpretation of agent-based simulations and the use of adaptive programming techniques, such as genetic algorithms, in such simulations. Course work includes significant practical implementation experience. This course covers the fundamental topics related to operating systems theory and practice. Course work includes the implementation of operating systems techniques and routines, and critical parts of a small but functional operating system.