Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
On the criteria to be used in decomposing systems into modules
Communications of the ACM
The Elements of Computing Systems: Building a Modern Computer from First Principles
The Elements of Computing Systems: Building a Modern Computer from First Principles
Is abstraction the key to computing?
Communications of the ACM
A synthesis course in hardware architecture, compilers, and software engineering
Proceedings of the 40th ACM technical symposium on Computer science education
Virtual machines: abstraction and implementation
ITiCSE '09 Proceedings of the 14th annual ACM SIGCSE conference on Innovation and technology in computer science education
Project-based learning within a large-scale interdisciplinary research effort
Proceedings of the 18th ACM conference on Innovation and technology in computer science education
Hi-index | 0.00 |
Engaging students in large system development projects is an important educational objective, since it exposes design and programming challenges that come to play only with scale. Alas, large scale system projects can be monstrously complex - to the extent of being infeasible in academic settings. We describe a set of principles and a framework that enable students to develop large-scale systems, e.g. a complete hardware platform or a compiler, in several semester weeks.