page 2 Master of Science in Distributed Computing Systems Engineering TAE
About Technische Akademie Esslingen e. V. (TAE)For 60 years TAE has been a partner for professionalsand managers in companies providing continuingeducation and training. With 8 business areas, fromengineering to it-management, TAE offers up to 1000events per year with more than 2000 high caliberspeakers from research and business practice.
Course ConceptionTAE in collaboration with the Brunel University London runs the Master Course in Distributed Computing Systems Engineering. Brunel UniversityLondon is an internationally respected English Uni-versity which has offered similar master programsfor many years, and has collaborated successfullywith TAE since 1994.
This Masters course is targeted at students whowish to undertake their studies in while in full-timeemployment. Eight taught modules are offered over16 weekends with accompanying hands on labora-tory assignments over a further 7 weekends. There-fore the Masters course has a good mixture ofpractical and theoretical lessons. Also studentgroups are small so that they can work effectively.Lessons on Friday are from 09:00 am 6:00 pm andon Saturday from 08:00 am 05:00 pm. The examswill take place in the scheduled exam period. Toget-her these constitute the taught part of the 18 monthMSc degree, but individual modules may be atten-ded. For those students who wish to complete theBrunel Masters degree, the fee is 11.700 .Course Aims and ObjectivesThe aim of the programme is to equip high qualityand ambitious engineering graduates with the ne-cessary advanced technical and professional skillsfor an enhanced career either in industry or lea-ding edge research in the areas of distributed com-puting and embedded systems. Specifically, the main objectives of the programme are:> To critically appraise advanced software techno -
logies and principles for large scale distributedsystems such as grid and cloud computing systems;
> To practically examine recent developments indistributed and embedded systems.
> To critically investigate the problems and pitfallsof distributed and embedded systems in business,commerce, and industry.
SyllabusThe modules of the MSc course cover a range of essential topics related to distributed systems. Yet these modules are not isolated; each one takes its place in the field in relation to others. The emphasis inthe course is to build the connections between topics,enabling software engineers to achieve coherence between distinct autonomous systems under constraints of cost and performance requirements.
ModulesModule EE5573: Software Engineering (15 Credits)Lecturers: Prof P. Hobson and Dr P. Kyberd
The main aims of this module are to build knowledgeon analysis methodologies for software system designand to raise awareness of the challenges in the designof complex software systems. Topics to be covered inthis module include Requirements Engineering (docu-menting requirements, user stories, use cases andscenarios); Universal Modelling Language (UML)(UML use case, class, sequence, activity, state, com-ponent and deployment diagrams, UML models),Analysis and Design Process (user story realisation,object-oriented modelling, incremental refinement);Design Principles (software architecture, separation of concerns, design patterns, object-oriented designpractices, refactoring); Testing (unit testing, test-drivendevelopment, functional testing).
Module EE5610: Network Security and Encryption (15 Credits) Lecturers: Dr T. Owens and Dr T. ItagakiThe main aims of the module are to introduce the fun d -amental theory that enables what is achievable throughthe use of Security Engineering to be determined, andto present the practical techniques and algorithms thatare currently important for the efficient and secure useof distributed/cloud computing systems. Topics to becovered in this module include Introduc tion to SecurityEngineering, Classical Cryptography (Monoalphabeticand Polyalphabetic Ciphers, Transposition, Substitution,Linear Transformation), Computational Fundamentalsof Cryptosystems (Computational Complexity and In-tractability, Modular Arithmetic and Elementary Num-ber Theory), Modern Symmetric Key Cryptography(Feistel Ciphers, DES, Triple-DES and AES), Public KeyCryptography (The Diffie-Hellman Key Exchange Algo-rithm, Public Key Infrastructures, X.509 Certificates, PKSystems such as RSA and Elliptic Curves), MultilevelSecurity (the Bell-LaPadula Security Policy Model, the Biba Model, the NRL Pump), Multilateral Security(Compartmentation and the Lattice Model, the ChineseWall, the BMA Model), Protecting e-Commerce Systems.
page 3 Master of Science in Distributed Computing Systems Engineering TAE
Module EE5503: Computer Networks (15 Credits)Lecturers: Prof M. Zieher and Prof M. LiThis module advances knowledge on computer net-works. Topics to be covered in this module includeOSI reference model, Physical and Data Link LayerProtocols, TCP/IP Networking, IPV6, Routing Protocols,Asynchronous Transfer Mode (ATM) Networks, PacketDelay and Queuing Analysis, IP Quality of Services(Integrated Service Model and Differentiated ServiceModel), Resource Reservation Protocol (RSVP), Multi-Protocol Label Switching (MPLS), IP Multicasting, Net-work Application Layer Protocols such as HTTP, DNS,SNMP.
Module EE5531: Distributed Systems Architecture (15 Credits) Lecturers: Dr P. Kyberd and Dr R. PowellThe main aim of the module is to present a compre-hensive evaluation of the design philosophies, funda-mental constructs, performance issues and operationalprinciples of distribut ed systems architectures, coveringapplica tions, algorithms and software architecture, en-gineering issues and implementation technology. Topicsto be covered in this module include System Architec -ture (Bus Systems, High Performance I/O, MemoryHierarchies, Memory Coherence and File Coherence), Distributed Database, Processor Architec ture, File Ser-vices, Inter-Process Communication, Naming Services,Resource Allocation and Scheduling, Distributed Sys-tem Case Studies.
Module EE5572: High Performance Computing and Big Data (15 Credits) Lecturers: Prof M. Li and Prof A. KhanThe main of this module is to provide students with a solid foundation in High Performance Computing(HPC) and its role in data intensive science and engi-neering applications. Topics to be covered in this module include Introduction (high performance com-puting, high throughput computing, highly scalablecomputing), Parallel programming concepts (data partition and granularity, load balancing, programmingmodels), HPC paradigms (cluster computing, gridcomputing and cloud computing), Shared memoryprogramming (OpenMP), Distributed memory pro-gramming (MPI), MapReduce programming model,NoSQL database systems (Cassandra and MongoDB),Cloud computing infrastructures (Amazon EC2 Cloud)and HPC applications.
Module EE5571: Embedded Systems Engineering (15 Credits) Lecturer: Dr H. Meng The main aim of the module is to provide a detailedknowledge of real-time computing for embedded andcontrol computer systems. Topics to be covered in this module include the design of embedded softwarecomputer systems, embedded system design usinghardware description languages (HDL) such as VHDLin the design of embedded systems, advanced designtools (e.g. System C, MATLAB) to specify, simulate,and synthesize designs; implementations strategiesand limitations e.g. FPGA, DSP chips and micro pro-cessors, performance measurement, benchmarking
and tools for system simulation testing and debugging;applications and case studies for embedded FPGAsbased systems will be presented; design of low-cost,high-performance embedded systems; hard and softreal-time computer system design for uniprocessorembedded system applications and distributed real- time systems; characterising real-time systems, per-formance measure, task assigning, scheduling, faulttolerant scheduling, run-time, real-time data bases,real-time communication (CAN, FlexRay, Realtime-Ethernet) and inter process communication and synchronization.
Module EEXXXX: Project Control and Management(15 Credits)Lecturer: Dr A. MousaviThe main aims of this module are to help students develop skills in project management including agilemethods (e.g. SCRUM), and to build the capabilitiesfor teamwork.
Module EE5654: Intelligent Systems (15 Credits)Lecturer: Dr M. AbbodThe main aims of the module are to understand a fullrange of state-of-the-art intelligent systems techniques,and to raise critical awareness of the issues affectingthe performance of intelligent systems. Topics to becovered in this module include Intelligent ComputationTechniques (fuzzy logic: concepts, membership functi-ons, inference methods and design; neural networks(NN): representations, topology, learning methods;neuro-fuzzy systems (NF): design, topology, training,comparison to NN; genetic algorithms: representations,genetic operators, selection schemes, fitness & popu-lation evaluation, constraint handling, learning andevolution; swarm intelligence: particle swarm, ant colony optimisation); Intelligent Data Processing Techniques (data classification: supervised learning of classifiers; clustering: fuzzy c-mean clustering; datamining: utilisation of NN and GA to explore new features in the data; genome data processing: geneanalysis based on NN, gene analysis based on NF;signal processing: adaptive filter design using geneticalgorithms); and Applications (bioinformatics, medicalimaging & visualisation, pattern recognition & b