Module Specifications.
Current Academic Year 2024 - 2025
All Module information is indicative, and this portal is an interim interface pending the full upgrade of Coursebuilder and subsequent integration to the new DCU Student Information System (DCU Key).
As such, this is a point in time view of data which will be refreshed periodically. Some fields/data may not yet be available pending the completion of the full Coursebuilder upgrade and integration project. We will post status updates as they become available. Thank you for your patience and understanding.
Date posted: September 2024
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
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 ArchitectureUNIT 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 readingUNIT 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 CompleteUNIT 4:APPLICATION FUNDAMENTALS Application Fundamentals App Components The Manifest FileUNIT 5:ACTIVITIES Activity Class Activity Life Cycle Android Tasks Starting an Activity Your Turn: Tasks to CompleteUNIT 6:INTENTS Intent Class Intents and Activities Intent Resolution Your Turn: Tasks to CompleteUNIT 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 CompleteUNIT 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 PrototypesUNIT 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 UIUNIT 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 TabsUNIT 12:THREADS, ASYNCTASK CLASS Creating a new Asynchronous TaskUNIT 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 LoaderUNIT 14:MULTIMEDIA Your Turn Tasks to complete: Playing Video Capturing Photo Request Camera Permission Recording Videos Simply, To Do Your Turn Performing Audio CaptureUNIT 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 NotificationUNIT 16:SERVICES AND RECEIVERS Creating a service: Broadcast ReceiversUNIT 17:NETWORKS Sockets HttpURLConnection AndroidHttpClient JSON and XML JSON XMLUNIT 18:SENSORS Finding Sensors and Sensor Capabilities Monitoring Sensor EventsSensor Coordinate System Best Practices for Accessing and Using SensorsUNIT 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. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Indicative Reading List
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Other Resources None | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||