Introduction to Middleware
Run by School of Computer Science and Electronic Engineering
10.000 Credits or 5.000 ECTS Credits
Organiser: Dr David Edward Perkins
Overall aims and purpose
This module will introduce learners to the fundamental concepts used in middleware development. Learners will develop an understanding of the process of program creation from examination of an initial problem through to designing and developing a final solution that will demonstrate how a website form interacts with a database held on the server side. This will require application of the program scripting language PHP in order to bring together the user interface and the server side.
Indicative content includes:
● Structured solutions to given problems using techniques such as pseudo code. ● Program development considering current good practice and development cycles including design, creation and testing, building on from programming skills that have already been acquired from previous modules. ● Build solutions using a range of programming to include: form handling, date and time functions, include statement, file handling, cookies, sessions, filters, JSON, OOP and PHP integration into databases using MySQL ● Code interaction with the user giving comprehensive and contextual response. ● Simple testing such as sample test data and testing tables for a given problem.
Equivalent to 40%. Uses key areas of theory or knowledge to meet the Learning Outcomes of the module. Is able to formulate an appropriate solution to accurately solve tasks and questions. Can identify individual aspects, but lacks an awareness of links between them and the wider contexts. Outputs can be understood, but lack structure and/or coherence.
Equivalent to the range 60%-69%. Is able to analyse a task or problem to decide which aspects of theory and knowledge to apply. Solutions are of a workable quality, demonstrating understanding of underlying principles. Major themes can be linked appropriately but may not be able to extend this to individual aspects. Outputs are readily understood, with an appropriate structure but may lack sophistication.
Equivalent to the range 70%+. Assemble critically evaluated, relevent areas of knowledge and theory to constuct professional-level solutions to tasks and questions presented. Is able to cross-link themes and aspects to draw considered conclusions. Presents outputs in a cohesive, accurate, and efficient manner.
Use the various features of PHP to gather user data and process the data as required.
Create comprehensive documentation for the solution.
Design and build an application using a range of programming techniques to provide a basic website which includes a user form and process the data which utilises a database held on a server.
Teaching and Learning Strategy
The tutor directed student learning will be supported by online learning materials hosted or signposted on the Grŵp VLE.
The classroom-based element will include student-centred learning methods such as interactive lectures, case studies, group discussions and practical workshops.
- Literacy - Proficiency in reading and writing through a variety of media
- Computer Literacy - Proficiency in using a varied range of computer software
- Self-Management - Able to work unsupervised in an efficient, punctual and structured manner. To examine the outcomes of tasks and events, and judge levels of quality and importance
- Exploring - Able to investigate, research and consider alternatives
- Information retrieval - Able to access different and multiple sources of information
- Critical analysis & Problem Solving - Able to deconstruct and analyse problems or complex situations. To find solutions to problems through analyses and exploration of all possibilities using appropriate methods, rescources and creativity.
Subject specific skills
- Knowledge and understanding of facts, concepts, principles & theories
- Use of such knowledge in modelling and design
- Problem solving strategies
- Deploy theory in design, implementation and evaluation of systems
- Knowledge of information security issues
- Specify, design or construct computer-based systems
- Deploy tools effectively
- Development of general transferable skills
- Deploy systems to meet business goals
- Methods, techniques and tools for information modelling, management and security
- Specify, deploy, verify and maintain information systems
- System Design
- Specify, deploy, verify and maintain computer-based systems
Talis Reading listhttp://readinglists.bangor.ac.uk/modules/icl-2202.html
Further reading Forbes A., 2015. The Joy of PHP: A Beginner's Guide to Programming Interactive Web Applications with PHP and mySQL. 3rd ed, CreateSpace Independent Publishing Platform Lockhart J., 2015. Modern PHP: New Features and Good Practices. O’Reilly Media McGrath M., 2014. PHP & MySQL, in easy steps, Easy Steps Limited. Tatroe K, MacIntyre P & Lerdorf R., Programming PHP: Creating Dynamic Web Pages. 3rd ed, O’Reilly
Websites W3Schools. 2019. PHP Tutorial [online]. Available at: https://www.w3schools.com/php/ Tutorialspoint. 2020. PHP Tutorial [online]. Available at: https://www.tutorialspoint.com/php/index.htm Home and Learn. n.d. Beginners PHP [online]. Available at: https://www.homeandlearn.co.uk/php/php.html Tutorial Republic. 2020. PHP Tutorial [online]. Available at: https://www.tutorialrepublic.com/php-tutorial/ Learn PHP. n.d. Interactive PHP Tutorial [online]. Available at: https://www.learn-php.org/
Courses including this module
Compulsory in courses:
- H115: BSc Applied Cyber Security (Degree Apprenticeship) year 2 (BSC/ACS)
- H119: BSc Applied Cyber Security (Coleg Cambria) year 2 (BSC/ACSC)
- H116: BSc Applied Data Science (Degree Apprenticeship) year 2 (BSC/ADS)
- H120: BSc Applied Data Science (Degree Apprentice - Coleg Cambria) year 2 (BSC/ADSC)
- H300: BSc Applied Software Engineering (Deg Apprenticeship GLlM) year 2 (BSC/ASE)