MODULE TITLE MODULE CODE EFFECTIVE FROM MODULE LEVEL CREDIT POINTS Mobile Technology COM594 July 2016 6 20 MODULE INSTANCE(S) HOURS Location Semester Magee 1 Lectures Tutorials Practicals Independent study TOTAL EFFORT HOURS ACADEMIC SUBJECT Module Coordinator Yogarajah, Pratheepan Teaching Staff Yogarajah, Pratheepan 22 4 36 138 200 hrs hrs hrs hrs hrs Computing RATIONALE The cellular digital mobile phone network has been the most rapid infrastructural development of the 20 and so far the 21 century and its evolution has been the result of an unprecedented process of convergence of new and emerging technologies. This evolution has created both opportunities and a rapidly growing demand, for professionals skilled in developing the next generation new and innovative mobile software systems, popularly known as Apps. Mobile information access is rapidly becoming the norm and a major consequence of this trend is that it creates the need for the adaptation of traditional Software Engineering techniques and practice to meet the peculiar demands and constraints of a new and rapidly developing mobile infrastructure. Apps are built to run on a hybrid infrastructure comprising aspects of the traditional fixed Internet as well as integrating with new and emerging mobile and wireless technologies. It is therefore imperative, that graduates of electronics and computer science understand the requirements for the production of safe secure and reliable software systems running on this hybrid infrastructure. It follows that students should have a level of proficiency in the concepts of the underlying mobile and wireless environment and understand the software protocols and interfaces specific to mobile and pervasive wireless communication systems. This module provides a rigorous treatment of these technologies and protocols and also develops detailed knowledge and skills in the use of mobile software development tools and techniques. st th AIMS Developing leading-edge curriculum to teach the Software Engineers of tomorrow is a challenge faced by universities around the world. Wireless computing is emerging to be the standard platform supporting the implementation of computing and communication 1 July 2016 applications. The wireless infrastructural components of this module are based on the Intel Higher Education Curriculum Forum project, which aims to provide an internationally recognized curriculum for the subject. The Software Development components of the module aim to provide the student with experience of using current and evolving industry standard SDKs and IDEs to develop complex apps. The module is a multidisciplinary, project-orientated design module that integrates topics at all layers of wireless and mobile systems, from wireless physical layer constraints through mobile application software design, development implementation and testing. The module emphasizes "hands-on' learning through experiments, case studies and design projects to enable a clear understanding of the “state of the art” of mobile communications systems and to extend the students’ software development skills to encompass the software development process for the mobile arena. LEARNING OUTCOMES Successful students will be able to KNOWLEDGE AND UNDERSTANDING K1 Be equipped with a sound knowledge of the fundamentals and principles involved in mobile communications technologies. K2 Understand the design of key mobile communications systems protocols and explain why and how these protocols impact on mobile software application development. K3 Understand the key tools and techniques that enable mobile software applications development and make appropriate choices for specific target platforms. INTELLECTUAL QUALITIES I1 Comprehend the techniques of mobile applications development and be able to explain the unique challenges faced by the developer. PROFESSIONAL/PRACTICAL SKILLS P1 Gain practical experience in the implementation of software applications targeted at ‘Smart-phone’ and other evolving platforms. TRANSFERABLE SKILLS T1 Work effectively as part of a team. T2 Prepare technical reports to a high standard. T3 Create Mobile Software applications using current APIs and IDEs. CONTENT Context and Background ● 2 GSM Evolution July 2016 Wireless Networks ● ● ● ● Characteristics and operation of contemporary wireless network technologies IEEE 802.11 wireless local area network; Bluetooth wireless personal area network; Cellular Network Characteristics Protocols • The TCP/IP protocol suite in a mobile environment ● ● ● Mobile IP Mobile ad hoc routing protocols Roaming and Handover protocols Performance of Wireless Systems ● ● ● Performance characteristics of wireless local area networks Mobile routing protocols, and mobile applications; Mobile network protocols and applications monitoring tools Security ● Security issues and current solutions for wireless networks and mobile systems; Mobile Applications Development Environments and OS Issues ● Android DevelopmentEclipseIntelliJ ● ● Windows Phone 8 Visual Studio 2010/2012.NET Compact Framework ● ● HTML5 ● ● iPhone Development ● ● 3 Ubuntu Mobile Development July 2016 ● ● Mobile Python ● ● Adobe AIR ● ● Cross-Platform Development ● ● Web Brower Apps versus Native apps. ● Categories of Mobile Apps ● ● ● ● ● ● ● ● ● Accessing the Mobile Internet Mobile Database Communication Multimedia and Social Network Apps Location Aware Applications GPS and GIS Applications Mobile Web Development Mobile payments SMS and Telephony apps Wireless Sensor Networks Software Engineering and Mobile Apps ● ● ● ● ● Creating Smartphone Applications Characteristics of Mobile Apps Mobile Design Methodologies Performance Considerations Designing the UI HCI and Mobile Applications ● ● Web and Web 2.0 Applications Web Accessibility Testing and Evaluation ● ● 4 Design for Testing Deploying Mobile Applications July 2016 ● Emulators versus Devices LEARNING AND TEACHING METHODS Lectures will be used to present all the relevant theory and concepts. Lecture supplementary material will be accessible via the web. Tutorials will be used to present practical problems associated with mobile systems and concepts presented in the lectures. Practical exercises will be designed to introduce the student to mobile applications software development construction and simulation using Visual Studio and the relevant Emulators. Emphasis is placed on the development of first class programming skills and techniques and on understanding how knowledge of the mobile infrastructure is an essential component in the mobile application software developer’s arsenal. Students will be directed to read the recommended textbook from the Reading List for the module in order to reinforce a deep understanding of the topics covered in the lectures, tutorials and practical sessions. The module is offered by Blended Learning. ASSESSMENT AND FEEDBACK Written examination [50%] The examination will address the theoretical aspects of the module and there will be an element of choice. Typically a candidate will be required to attempt 3 questions from a choice of 5. All questions will carry equal overall marks. The examination will be of 3-hours duration. Practical skills assessment [50%] Coursework will comprise the building of mobile and pervasive applications and the generation of technical reports on directed topics. These are kept current year-on-year. There are typically three coursework elements: These are: Coursework 1: Technical report 1 (Week 6; 25% of overall coursework mark) Coursework 2: Technical Report 2 (Week 10; 25% of overall coursework mark) 5 July 2016 Coursework 3: Mobile and Pervasive App Design and Implementation (Week 12; 50% of overall coursework mark). Students are provided with detailed requirements specifications and assessment criteria for the work. For Coursework 1 and 2, students are required to produce two technical reports on directed key concepts studied in the module. For Coursework 3, Mobile Application Design and Implementation, students are required to design implement and test a mobile/pervasive application to meet a generic specification.Within the constraints of the generic specification, students are encouraged to generate their own idea for the app. The generic specification will specify essential characteristics of the app. For example, Location-Awareness, Sensor Integration, Geolocation/Mapping functionality, Augmented Reality etc., In the context of these characteristics, the student may generate an app which incorporates some specific concept or area of knowledge in which they have a particular and personal interest. This serves to generate a sense of ownership of the work and encourages diversity amongst the group. Feedback: For the reports, summative and formative feedback is provided to each individual student via an electronically annotated copy of the submission. There is also a group discussion on the report topics, typically at the beginning of the class following the submission date. For the Mobile Application Design and Implementation, formative feedback is provided at three stages during the development process, with summative feedback on completion: (I) Following the initial selection of the topic by email (typically about week 3). (ii) At an interim checkpoint to monitor progress. This is typically in week 6 and is done via a face-to-face meeting in the labs. (iii) Following the final submission. This is by verbal comments at the demo and by an individual emailed commentary. The students may also request feedback in the form of support and encouragement at any stage during the development of the app and this is dealt with variously by email or by oneto-one or group discussions in the laboratory sessions as appropriate as the module progresses. 6 July 2016 50% Coursework 50% Examination READING LIST Recommended: Collins C., Galpin, M. and Kappler, M 2012 Android in Practice Manning Conder, Shane., and Darcey, Lauren 2012 Android Wireless Application Development Volume 1: Android Essentials 3rd Addison-Wesley Funk, Jeffrey 2010 Mobile Disruption Wiley Publications Lecrenski, N., Watson, K. and Fonseca-Ensor. R Windows Phone 7 Application Development Wrox Mehta N 2010 Mobile Web Development Packy Olewena, Jorge and Ciampa, Mark. 2007 Wireless# Guide to Wireless Communications, 2nd UK Cengage Learning Rischpater Ray 2008 Beginning Java ME Platform Apress Rodger, Richard 2012 Beginning Mobile Application Development in the Cloud, Wrox Schiller, J 2003 Mobile Communications 2nd Addison-Wesley Thatcher J. et al 2006 Web Accesibility: Web Standards Regulatory Compliance Apress SUMMARY DESCRIPTION This module addresses and develops key and emerging concepts in Mobile Software Applications Development and is essential knowledge for electronic and computer science graduates 7 July 2016