DCU Home | Our Courses | Loop | Registry | Library | Search DCU

Module Specifications..

Current Academic Year 2023 - 2024

Please note that this information is subject to change.

Module Title Mobile Application Development
Module Code SDA
School School of Electronic Engineering
Module Co-ordinatorSemester 1: Richard Bolger
Semester 2: Richard Bolger
Autumn: Richard Bolger
Module TeachersShirley O'Brien
Richard Bolger
Colette Kirwan
Valerie Farmer
NFQ level 8 Credit Rating 20
Pre-requisite C2, CA, CT1, HS1, MS001
Co-requisite None
Compatibles None
Incompatibles None
None
Description

This module covers a variety of key topics in software development including, XML, testing, documentation, version control, server and network communication, User Interface and User Experience design, developing using APIs and SDKS, developing for platforms with constrained resources, using input from sensors, and presentation of developed work to others in written and oral modes. Students will learn fundamental principles, methodologies and design patterns and apply them using Java and the Android mobile application development platform.

Learning Outcomes

1. Use XML to model data
2. Use design patterns to create event driven user interfaces for mobile applications
3. Debug and optimise a mobile application
4. Unit Test applications using appropriate tools
5. Document programmes using appropriate tools
6. Demonstrate, in designing and building applications, how to accommodate the key forces and constraints acting on handheld devices
7. Use version control to develop software
8. Develop applications that are capable of interfacing with smart phone hardware e.g. camera, compass, accelerometer and global positioning system (GPS) receiver.
9. Create network enabled applications for smart phone devices that are capable of connecting to the Internet and interacting with web services.
10. Develop smart phone applications with integrated support for multimedia.
11. Create applications that can persist, retrieve and share data.
12. Use the various features of the android development framework including UI, resources, security, multimedia, location, etc.
13. Deploy and manage your mobile application in the cloud.
14. Demonstrate and present the results of work



Workload Full-time hours per semester
Type Hours Description
Tutorial21Face-to-face tutorials are held in DCU on Saturdays and Virtual Classroom tutorials on weekday evenings according to the timetable
Online activity16Interaction with tutor and fellow students
Independent Study463Reading, study, research and problem solving
Total Workload: 500

All module information is indicative and subject to change. For further information,students are advised to refer to the University's Marks and Standards and Programme Specific Regulations at: http://www.dcu.ie/registry/examinations/index.shtml

Indicative Content and Learning Activities

UNIT 1:
INTRODUCTION TO THE ANDROID PLATFORM Android Architecture

UNIT 2:
VERSION CONTROL WITH GIT Using the Command Line (Bash Shell)Getting a GitHub Student Account Install Git`Create a repository Cloning a remote repository Working with files and repositories Further required reading on Git version control fundamentals Optional further reading

UNIT 3:
GETTING STARTED - THE ANDROID DEVELOPMENT FRAMEWORK Setting Up the Development Environment Installing Android Studio your first Project. Setting up an Android Device (phone or tablet) for Development Creating an Android Virtual Device (AVD) Android Developer Tools Accelerators Your Turn: Tasks to Complete

UNIT 4:
APPLICATION FUNDAMENTALS Application Fundamentals App Components The Manifest File

UNIT 5:
ACTIVITIES Activity Class Activity Life Cycle Android Tasks Starting an Activity Your Turn: Tasks to Complete

UNIT 6:
INTENTS Intent Class Intents and Activities Intent Resolution Your Turn: Tasks to Complete

UNIT 7:
USER INTERFACE XMLAttributes View ClassButton TextView EditText CheckBox RadioButton Some Common View Operations ViewGroup: LayoutsLinear Layout Your Turn Tasks to Do Relative Layout Your Turn Tasks to Do ViewGroups: Adapters ListView and ListActivity Your Turn: Tasks to Complete

UNIT 8:
MOBILE USER INTERFACE DESIGN Style and themes Design Patterns Action Bar, Navigation Drawer Notifications and Feedback Designing for Different Devices Fragments Internationalisation Architectural Design Patterns: MVC Using the tools of Mobile Interface Design Sketching and Wireframes Screen Map Prototypes

UNIT 9:
TESTING, DOCUMENTATION AND OPTIMISATION How do I test my code? Lesson 1: Setting Up Your Test Environment Your Turn Tasks To Complete: L Lesson 2: Creating and Running a Test Case Your Turn Tasks To Complete: Lesson 3: Testing UI Components Your Turn Tasks To Complete: Lesson 4 Unit Tests Your Turn Tasks To Complete: Lesson 5 : Creating Functional Tests Your Turn Tasks To Complete: Code Documentation : JavaDoc Hierarchy Viewer Your Turn Tasks to Complete Optimising your UI

UNIT 10:
PERMISSIONS Using Permissions Your Turn: Tasks to complete Declaring and Enforcing Permissions (Custom Permissions)

UNIT 11:
FRAGMENTS, ACTION BAR , NAVIGATION DRWAWER AND MENUS Fragments Fragment Lifecycle Lifecycle Events Add a Fragment to an Activity at Runtime Menus Setting up the Menu in the Action Bar Action Bar and Tabs

UNIT 12:
THREADS, ASYNCTASK CLASS Creating a new Asynchronous Task

UNIT 13:
STORAGE SharedPreferences Data Management Preference Fragment Using the Internal Storage Using the External Storage Using Databases Manipulating a SQLite database in Android: Content Providers Creating a Custom ContentProvider Cursor Loader

UNIT 14:
MULTIMEDIA Your Turn Tasks to complete: Playing Video Capturing Photo Request Camera Permission Recording Videos Simply, To Do Your Turn Performing Audio Capture

UNIT 15:
NOTIFICATIONS AND FEEDBACK Let’s Make some Toast Your Turn Tasks To do.Dialogs: Specialised Input Dialogs Introducing Notifications:Notify demo app Creating a Notification

UNIT 16:
SERVICES AND RECEIVERS Creating a service: Broadcast Receivers

UNIT 17:
NETWORKS Sockets HttpURLConnection AndroidHttpClient JSON and XML JSON XML

UNIT 18:
SENSORS Finding Sensors and Sensor Capabilities Monitoring Sensor EventsSensor Coordinate System Best Practices for Accessing and Using Sensors

UNIT 19:
LOCATION: Location-Based Services (LBS) Location Providers Location Manager Retrieving Location Updates: Location Listener Google Maps How to install the Google Maps 2.0 environment: STEP 1: Set up the Google Play services SDKSTEP 2: Obtain an API key for Google Maps v2.0STEP 3: Specify settings in Application Manifest STEP 4: Add a path to the Google Map APIs.

Assessment Breakdown
Continuous Assessment100% Examination Weight0%
Course Work Breakdown
TypeDescription% of totalAssessment Date
AssignmentSetup and coding5%Week 5
AssignmentMobile application coding10%Week 9
AssignmentMobile application coding10%Week 12
AssignmentMobile application coding15%Week 19
ProjectSubmission of mini-project according to specifications laid out in the Study Guide made available in Loop50%Week 29
PresentationPresentation on mini-project either face to face or online via virtual classroom10%Week 30
Reassessment Requirement Type
Resit arrangements are explained by the following categories;
1 = A resit is available for all components of the module
2 = No resit is available for 100% continuous assessment module
3 = No resit is available for the continuous assessment component
This module is category 1
Indicative Reading List

  • Deitel: 2014, Android for Programmers An App-Driven Approach, Pearson, 9780133570922
Other Resources

None
Programme or List of Programmes
HDSDHigher Diploma in Software Development
ITBSc in Information Technology
Archives:

My DCU | Loop | Disclaimer | Privacy Statement