Topics for Software Systems Architecture:
- Caching, latency, Caching as a principle, Processor cache structure , operation, Pipelining, Principles of pipelining, Implementation of a processor pipeline , Pipelining requirements , Pipelining limitations
- multi threading principles, Simultaneous multithreading, MultiCore, Motivation for multicore, Possible multicore structures, Cache coherence, File System Support, Implementation of file systems, RAID.
- Virtual Machines, Motivation for Virtual Machines, Language Virtual Machines, System Virtual Machines, Virtual Machine implementation, Binary Translation
- Goal oriented requirements engineering, requirements engineering in agile projects, Software Architecture, Architecture modelling, architectural styles, quality requirements
Complex Topics for Software Systems Architecture:
- Computer Architecture , Computer Organization, origins of computer science, Elements of a computer, Von Neumann architecture, Data representation, binary system Operating Systems, Operating system architecture, Memory management, Process scheduling, Semaphores , deadlocks, Networking, Network fundamentals, TCP/IP reference model,Fault-tolerant architecture.
- Internet protocols , World Wide Web, Programming language generations, Algorithms, pseudocode, object-oriented programming paradigm, Programming with Java, Structure, components of a Java program, Objects, attributes, Arithmetic expressions, Boolean expressions, Performance Evaluation , Benchmarking , Enhancing Performance with Pipelining.
- Exploiting Memory Hierarchy, cache, virtual memory, Interfacing Processors, Peripherals , Multiprocessors , Pipelining, Pipelined Datapath , Dealing with Pipeline Hazards, Advanced Pipelining Techniques, Memory-mapped IO , Interrupts in SPIM,Domain-specific architectures,Reference architecture, Distributed systems architecture,Client-server architecture.
- Software Architectures,Modular design,Object-Oriented design,Design patterns,Object-Oriented design patterns,Pattern-oriented software architectures,Interactive Systems architecture,Layered architecture,Pipes and Filters architecture,Model Driven Architecture,Repository architecture,Event-based architecture,Adaptable systems architecture