Indicative Content
This module addresses the following topics:
Agile software approaches used in the real world
Real world techniques for software development
Web Servers and Hosting (development, and deploying to cloud v traditional client server/multi-tier architecture)
Interface design principles
Accessibility principles and techniques
Designing for a target audience
Designing for different devices (including mobile and desktop)
Web Standards
HTML (Hypertext Markup Language), CSS (Cascading Style Sheets), and JavaScript
Server-side implementation in a language such as ASP.NET, and PHP
Introduction to problem solving and algorithms
Current coding practices
Programming concepts (variables, inputs, outputs, sequence, selection, iteration, and data structures)
Classes and objects, and associated techniques
Event-driven programming
OO (Object Oriented) programming
Accessing simple data sources (e.g., databases and JSON data)
Testing web applications across multiple issues
Testing for increased user satisfaction
Testing of web-based code
Debugging tips when problems are found
Artificial Intelligence
Main AI concepts
Introduction to C++ Windows platform application
Interface of AI bots such as pepper, Alexa or Siri
Human language interface Ai bots.
Python Programming
Assessment Details
Assessment
1. Exploration and design of a first draft prototype to solve a given design brief related to web computing. (Learning Outcome 1 and 2).
2. Development of a final implemented solution and its testing to ensure what has been created is technically sound, and equally works for its user group (Learning Outcomes 3 to 5).
3. Reflection on what has been built and the subsequent results from testing it. Part of the reflection needs to detail how the application would work if fully completed and scaled (Learning Outcome 6).
Learning Strategies
The module will utilise both lectures and practical sessions to deliver subject content. On joining the module in the first week there will be an introduction session which will provide students with a schedule of teaching and delivery locations.
Learning Outcomes
Utilise an agile software engineering approach to design a web application.
Utilise design concepts and current trends in web design to design a web application fit for a specific target audience and devices.
Develop web applications, with appropriate web standards, utilising current client-side and server-side languages.
Utilise style to enhance a web site for the intended target audience and device.
Design a small AI component adhering to current industry standard.
Reflect upon industry working practices in web, AI and software development fields.
Texts
Gawdat, M. (2022), Scary Smart: The Future of Artificial Intelligence and How You Can Save Our World, Bluebird; Main Market editions
Walsh, T. (2022), Machines Behaving Badly: The Morality of AI, Flint Publishers
Tombs, N. (2022), Reflections of a Robot: Dialogues on Artificial Intelligence, Independently published¿
Black, R. (2022), Artificial Intelligence and Software Testing: Building systems you can trust, BCS, The Chartered Institute for IT
Blokdyk, G (2022) Mobile Web Design Standard Requirements, 5STARCooks
Panzarella, L (2021) Mobile design: How to design responsive websites and mobile apps that work (Manuals for web designers), Independently published
Price, M, (2021). C# 10 and .NET 6 – Modern Cross-Platform Development: Build apps, websites, and services with ASP.NET Core 6, Blazor, and EF Core 6 using Visual Studio 2022 and Visual Studio Code, 6th Edition, Publisher Packt Publishing, ISBN-13 978-1801077361 Flanagan, D (2020). JavaScript The Definitive Guide O’Reilly ISBN-10 : 1491952024
Frisbie, M., (2018). Professional JavaScript for Web Developers. Wrox. ISBN: 9781119366447
Price, M, (2021). C# 10 and .NET 6 – Modern Cross-Platform Development: Build apps, websites, and services with ASP.NET Core 6, Blazor, and EF Core 6 using Visual Studio 2022 and Visual Studio Code, 6th Edition, Publisher Packt Publishing, ISBN-13 978-1801077361
Panzarella, L (2021) Mobile design: How to design responsive websites and mobile apps that work (Manuals for web designers), Independently published
Enache, I (2022) Mobile UX/UI App Design Sketchbook and Notebook: For App/Web Designers and Developers, Independently published
Ater, T (2017). Building Progressive Web Apps O’Reilly ISBN-10 : 1491961651
Resources
Students will need access to:
A standard laptop
A web server (connected to virtually by students)
Current IDEs (connected to virtually by students)
Web browsers (latest versions of Chrome, Microsoft Edge, and Internet Explorer)
Web Descriptor
This module will introduce you to programming concepts in a web environment. It will look specifically at the approaches taken in the real world (industry focused) to design, develop, test, and deploy web applications successfully (and with inbuilt efficiency). It will explore how agile approaches are used in the industry and what are the specific benefits to developers using these. The module as part of its programming focus will address AI and related concepts. As a final topic the module will investigate different testing approaches used for interface and functionality test acceptance.