Professional Documents
Culture Documents
Development
Dr. Usman Nasir
Today
■ I will talk about
– The course
– Assignment
– Deadlines
– Mobile devices
– Desktop vs Mobile Apps
– Types of mobile app
Course Introduction
Course Responsible & Lecturer
■ Hej, I am Dr. Usman Nasir (Universitetsadjunkt)
■ and I would manage the PA1469 course
– deliver lectures
– evaluate an assignment,
– and resolves any (and all) issues.
– usman.nasir@bth.se
– English language only please, I am learning Swedish but have not gotten past
Hej and Tack yet.
Lecturer & Evaluator
■ Andreas Bauer (Doktrand)
■ and he
– delivers lectures
– Evaluate three major assignments
– and helping you with technical issues with assignment 1-3.
– andreas.bauer@bth.se
– English language please.
Let’s get to know each other better!!
■ Please tell us
– Your name
– Degree program/Cohort
– Background in programming
■ Programming languages
■ Development machine (laptop/android devices)
The Course & Assignments
What do you know about?
Mobile Application
Development
Course Objectives
■ The course is planned to ensure that by the end of this course, you (the
student)
– Understand differences between desktop and mobile application
development from a software engineering perspective.
– You can read the the official kursplan for more details!!
Schedule: Lectures
■ 31.10.22 10-12 Course introduction and Mobile App Development
■ 01.11.22 10-12 Android: Platform and Application Fundamentals
■ 02.11.22 13-15 An introduction to Android Studio
■ 07.11.22 10-12 User Experience and Application Design
■ 09.11.22 10-12 Android: Developing UI and Event Handling
■ 09.11.22 13-15 Android: Jetpack Compose
■ 14.11.22 10-12 Android: App Architecture
■ 15.11.22 10-12 Android: Threading and Local Storage
■ 15.11.22 13-15 Testing an Android App
■ 21.11.22 10-12 Android: Accessing Network and Sensors
■ 22.11.22 13-15 Android: Using Firebase
■ 24.11.22 15-17 Guest Lecture: Industrial Expert
■ 29.11.22 13-15 Open-Source projects on GitHub
■ 30.11.22 13-15 Security Deployment and Course Closure
■ 05.12.22 13-15 Reserve Lecture slot (if required)
Schedule: Project & Project Demo
■ Group member's names 06.11.22
■ Group Assignment 1 13.11.22
■ Group Assignment 2 04.12.22
■ Group Assignment 3 05.01.23
■ Project Demonstration and oral presentation 05.01.23
Literature
■ Books, Developer Guidelines & Documentations,
– Android Programming: The Big Nerd Ranch Guide, Fifth Edition, Authors: Bill
Phillips, Chris Stewart and Marsicano Kristin, Publisher: Big Nerd Ranch
Guides, 2021.
The final grade is the weighted average of the grades for assignment 3
(oral presentation) and assignment 4 (individual written report).
Assignment 1-3
■ Assignments 1, 2 and 3 are group assignments where the student groups
will work to develop a mobile application.
– Assignment 1 (1.0 ECTS): Written report proposing and describing the mobile
app to be developed by group.
– Assignment 2 (2.0 ECTS): Written report describing architecture and design
of the proposed app.
– Assignment 3 (2.5 ECTS): Oral Presentation where the working app deployed
on a mobile device/emulator is demonstrated.
Free Pictures:
https://unsplash.com/
Truly mobile!!
Ray-Ban
Stories
NIST’s definition!
■ Official definition of a mobile device, the American version!
– A portable computing device that: (i) has a small form factor such that it can easily be
carried by a single individual; (ii) is designed to operate without a physical connection (e.g.,
wirelessly transmit or receive information); (iii) possesses local, non-removable data storage;
and (iv) is powered-on for extended periods of time with a self-contained power source.
– Mobile devices may also include voice communication capabilities, on board sensors that
allow the device to capture (e.g., photograph, video, record, or determine location)
information, and/or built-in features for synchronizing local data with remote locations.
Note: If the device only has storage capability and is not capable of processing or
transmitting/receiving information, then it is considered a portable storage device, not a mobile
device
Source: NIST SP 800-53 Rev. 4 National Institute of Standards and Technology USA Government
Mobile vs. Desktop: Key Differences
■ Smaller screens
– Compared to Laptops/desktops
– Limited Pixels
■ Slower processors
– Comparatively slower!! But slowly catching up.
– Many things differ (e.g. Heat/GPU)
– “Mobile processor”
■ Every mobile manufacturer
has their own chip
nowadays
■ Samsung’s Exynos 9
■ Apple A13
■ Qualcomm’s Snapdragon 888
https://www.youtube.com/watch
?v=2SdIMiEjKD4
■ Less bandwidth
– (again comparatively)
– https://www.speedtest.net/global-index
■ Touch input
– No hover events.
– Less Precision
– Gestures: One finger, two fingers,
– stylus etc.. Half screen is taken by keyboard
■ Tricky keyboards
– Lesser keys, error prone and
even considered intrusive
development
– They have their own
■ Web mobile apps (aka Progressive Web App - PWA) are websites optimized
for mobile browsers or web content based mobile apps.
– JavaScript and HTML5
■ Hybrid mobile apps combine features of native and web apps.
– Website packaged in a native wrapper
– Use HTML5 and JavaScript
– Kenju UI, Ionic
Cross platform
■ Develop once and run on multiple platforms (iOS or Android)
– Flutter (Google’s)
– Kotlin Multiplatform Mobile (Jetbrain’s)
– Xamarin (Microsoft’s)
– Axway Appcelerator (owner’s)
– Svelte Native
Low code or No Code Mobile Apps
■ Low-code (where coding effort is less) mobile app development are a
variant of hybrid app with specific platform
■ Cons
– Dependency on a cloud platform
– Limitations
– Do not support complex functionalities
So lets sum it up!
■ Mobiles are different beasts altogether
– It is not mobile phone only