Concurrent and Distributed Devices

This is a final year module on the BSc in Software Development.

Credits

10

Teaching & Learning Strategies:

Learners will be expected to activity participate in class on the materials covered and work throughout each scheduled lab session to accomplish assigned tasks.

Module Aim:

To provide learners with a theoretical knowledge and practical skills of developing concurrent and distributed systems, with particular emphases on the Internet of Things.

Learning Outcomes

LO1Assess the different approaches to developing concurrent and distributed systems.
LO2Design, develop and test concurrent and distributed systems.
LO3Demonstrate the principles of design and development of Internet of Things systems and applications.
LO4Evaluate proposed concurrent and distributed architectural designs.
Indicative Content
Architecture Flynn’s Taxonomy, Multicore, Manycore and Stream Processors
Concurrency Shared Memory Model, Message Passing Model,
Software Transactional Memory and Actors
Distribution Replication, Fault Tolerance, Load Balancing and Scalability
Internet of Things Architecture, Software and middleware platforms, Interfaces,
Communication and Cooperation, Security, Sensing,
Embedded Devices, Testing and Standardisation
Business Models IoT Governance, Societal and Ethical Implications
Assessment Breakdown%
Continuous Assessment30.00%
Practical30.00%
End of Module Formal Examination40.00%

Module Resources

Recommended Book Resources
Logan Martin, Merritt Eric, Carlsson Richard, Erlang and OTP in Action, Manning Publications [ISBN: 9781933988788]

Maurice Herlihy, Nir Shavit, The Art of Multiprocessor Programming, Revised Reprint, Morgan Kaufmann [ISBN: 0123973376]

Michael McCool, James Reinders, Arch Robison, Structured Parallel Programming, Morgan Kaufmann [ISBN: 9780124159938]

Clay Breshears, The art of concurrency, Beijing ; O’Reilly, c2009. [ISBN: 9780596521530]

Multicore and GPU Programming, San Diego; Morgan Kaufmann [Imprint] [ISBN: 9780124171374]

Jan Holler, Vlasios Tsiatsis, Catherine Mulligan, Stephan Avesand, Stamatis Karnouskos, David Boyle 2014, From Machine-to-Machine to the Internet of Things: Introduction to a New Age of Intelligence, Academic Press [ISBN: 9780080994017]
Supplementary Book Resources
P. Butcher 2014, Seven Concurrency Models in Seven Weeks, Pragmatic Bookshelf
George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair, Distributed Systems: Concepts and Design, Addison Wesley [ISBN: 0132143011]

Nancy A. Lynch 1997, Distributed algorithms, Morgan Kaufmann San Francisco, Calif. [ISBN: 9781558603486]

Ovidiu Vermesan, Peter Friess 2013, Internet of Things: Converging Technologies for Smart Environments and Integrated Ecosystems, River Publishers [ISBN: 9788792982735]

Olivier Hersent, David Boswarthick, Omar Elloumi, The Internet of Things, Wiley [ISBN: 9781119994350]

Holger Karl, Andreas Willig 2007, Protocols and Architectures for Wireless Sensor Networks, Wiley