Chapter 1: A Brief History of Mobile Computing, Exercise - Coggle Diagram
Chapter 1: A Brief History of Mobile Computing
In the Beginning
Initially, it facilitated analog voice communication via electrical wire.
Wireless communication emerged, allowing electromagnetic signal-based phone communication.
Digital Signal Processing (DSP) facilitated the transmission of digital information.
2nd Generation wireless telephony (2G) introduced SMS, picture messages, MMS, and internet communication.
Mobile phones expanded beyond analog voice communication.
Telephone revolutionized communication across distances.
Evolution of Devices
Modern mobile phones transcend mere communication.
They boast processing power and high-resolution screens comparable to desktop computers.
Mobile phones are capable of nearly all desktop computer tasks.
They offer potential for greater relevance to daily activities.
Evolution of Mobile Devices
Brick Era (1975-1988) marked the first generation of mobile devices.
They were bulky with cords, dubbed as "suitcase phones" due to their size.
Large battery packs were necessary for enormous transmission power to reach distant cell towers.
Provided analog voice communication only, suitable mainly for constant communication needs or fieldwork.
Despite functionality limitations, they were expensive and catered to specific user groups.
Candy Bar Era
featured long, thin, rectangular mobile devices.
the transition to second-generation 2G technology and SMS.
Increased demand led to a proliferation of cell towers, reducing device power requirements.
Phones of this era became significantly smaller and more portable.
Affordability of devices increased, making them accessible to more people.
Feature Phone Era
introduced computing power to mobile devices.
It enabled various functions like music playback, photography, and basic internet access (post-WAP).
Customizable content became popular, including custom ringtones, applications, and games.
Smartphone Era coincided with the Feature Phone and Touch Era (2005-now?).
Smartphones have similar capabilities to Feature Phones but include multitasking operating systems.
They often share common operating systems, allowing applications to be shared across devices.
Example: Symbian applications can be shared across multiple phones running Symbian OS.
3G technology is prevalent, offering features like video calls and HSDPA for high-speed data and network capacity.
Touch Era commenced with the introduction of the first iPhone in 2008.
Its defining feature is the use of multi-touch touchscreen input.
Touch Era phones come with a standard set of sensors: accelerometer, magnetometer, gyroscope, GPS.
They share common operating system platforms with Smartphone era devices.
First Wireless Experiments
Heinrich Hertz's spark generator (1888)
Guglielmo Marconi's bell experiment (1894)
Broadcast radio (1920)
Radio-transmitted photographs (1924)
Mobile radio for police cars (1926)
Satellite systems for telephony (1962)
Cordless telephones (1980)
Mobile Network Generations
1G, 2G, 3G, 4G, 5G
1G: Analog cellular telephony (1983)
1G is an analog technology with poor battery life and voice quality.
Voice quality was often large, lacking security, and prone to dropped calls.
Nippon Telegraph and Telephone (NTT) launched the first 1G network in 1979.
The United States approved the first 1G operations with Motorola DynaTAC and Nokia Mobira Talkman.
2G: TDMA, GSM, CDMA (1987)
2G networks use digital radio signals, unlike analog signals in 1G.
Focus of 2G was on providing secure and reliable communication, introducing CDMA and GSM.
2G allowed cellular phones to handle data along with voice.
Fundamental services introduced in 2G include SMS, internal roaming, conference calls, call hold, and service-based billing.
Initially, 2G data transfer speed was around 9.6 kbit/sec.
With General Packet Radio Service (GPRS), 2G speed increased to a maximum of 50 Kbps, and up to 1 Mbps with Enhanced Data Rates for GSM Evolution (EDGE).
2.5G and 2.75G acted as interim standards bridging the gap between 2G and 3G networks.
2.5G: Faster data services, GSM extensions
3G: Packet-switched networks, caller location identification
3G standard utilizes UMTS (Universal Mobile Telecommunications System) for its core network architecture.
Combines aspects of 2G with new technology to deliver faster data rates.
IMT-2000 requirement: minimum speed of 200Kbps for 3G service.
3G supports multimedia services and streaming.
Improves frequency spectrum efficiency by compressing audio during calls, enabling more simultaneous calls.
IMT-2000 standard requires stationary speeds of 2Mbps and mobile speeds of 384kbps for "true" 3G.
Theoretical max speed for HSPA+: 21.6 Mbps.
3G phones cannot communicate through 4G networks, but newer phones are backward compatible.
Worldwide shutdown of 3G networks planned to free up spectrum for 5G.
Malaysia shutting down 3G networks by end of 2021, US by end of 2023.
Obsoletion of 3G may impact legacy embedded devices like home security, medical, and vehicle SOS systems.
4G: Higher data rates, wider bandwidth
4G, also known as Long-Term Evolution (LTE), is a significant advancement over 3G.
Provides high speed, high quality, and high capacity while enhancing security and reducing voice and data service costs.
Maximum speed of a moving 4G device is 100 Mbps, while stationary speeds reach 1 Gbps.
4G is based solely on packet switching, unlike the hybrid approach of 3G.
Introduces Voice over Long-Term Evolution (VoLTE) for enhanced voice and data capacity.
VoLTE offers superior voice quality compared to older 3G UMTS and 2G GSM networks.
5G: Advanced capabilities, higher speeds
5G supports data speeds ranging from 50Mbps to over 4Gbps.
Initial 5G deployment reduces latency to 30 milliseconds.
Standards bodies aim for 5G to deliver data at 20Gbps speed and 1ms latency.
5G networks utilize OFDM encoding, similar to 4G LTE.
Designed to support low power devices like sensors and embedded computing.
Aims to accommodate Virtual and Augmented Reality applications.
SMS (Short Message Service)
SMS (Short Message Service) is a messaging service for sending short text messages between mobile devices.
Supported by all GSM phones, but not necessarily by all CDMA or TDMA phones.
SMS encourages non-voice communication via mobile phones.
Messages are handled through a short message service center maintained by the cellular provider.
SMS Character Limit
SMSC sends SMS with a max payload of 140 octets, allowing for 160 characters using 7-bit encoding.
Candy Bar era phones are limited to 160 characters for SMS.
Twitter's pre-2012 character limit was 140 characters, with 20 reserved for advertisements.
Modern phones can send longer messages, split internally to fit the 160-character limit.
Sending a 363-character message results in 3 packets, charged as three SMS, but appears as one to the receiver.
SMS can transmit binary data wirelessly.
During the Feature Phone Era, custom ringtones and wireless bitmap graphics were commonly exchanged via binary SMS.
The SMS Protocol Stack comprises of FOUR (4)
Typical SMS Applications
Person-to-person messaging (chatting with friends).
Interactive information services (receiving weather forecasts).
Entertainment services (downloading ringtones).
Notification and alert services (emergency broadcast messages, ShortCode).
Managing contacts and appointments (Outlook Integration).
Content push (pushing information or content to subscribers).
Supports both modern and older devices, including embedded devices.
Programmatically send text messages.
Supports Application-to-Person (A2P) use cases and machine-based messaging.
Reliable and works on nearly all mobile devices.
Operates even without internet connection, if connected to a GSM network.
Messages can be sent to devices even if they're switched off.
Allows sending to multiple receivers and supports broadcasting.
Suitable for Application-to-Person (A2P) and Machine-to-Machine (M2M) applications.
Almost guaranteed to work on any mobile network.
Risks and Attack Associated with SMS
Unsolicited messages sent to users' devices.
SMS Subscription Fraud:
Unscrupulous companies subscribe mobile users to premium SMS services without consent.
Often combined with spoofing, users may be baited into sending private information or clicking on URLs.
Denial of Service (DoS) Attack:
Attackers install malware on affected devices to coordinate DoS attacks, sending thousands of SMS to jam functionality.
Attackers replace the Sender ID to misrepresent origin and impersonate legitimate senders.
MMS: Multimedia Messaging Service
MMS (Multimedia Messaging Service) sends and receives messages with text, sound, images, and video.
It's an advanced version of SMS (Short Messaging Service).
MMS is standardized by the 3rd Generation Partnership Project (3GPP).
Mobile Computing Concept
Mobile Device Characteristic
Mobile devices are designed for mobility and portability.
Users carry them and keep them close at hand.
Data stored in mobile devices should also be portable.
Usability and user interface should reflect portability, with concise information presentation and clear UI.
Mobile devices are designed for connectivity and are expected to be connected to any network.
Even basic mobile devices connect to GSM networks.
A mobile device without a connection is considered useless.
Modern smartphones extend connectivity expectations to applications like calendar syncing, Dropbox, Google Drive, and Facebook.
Mobile devices inherently have limited storage capacity, a trend that will persist.
Early phones stored limited contact names and numbers (256-512 slots).
Candy-bar era phones allowed storage of notes and reminders (typically up to 1024k).
Even modern phones still require additional storage.
Storage capacity is a key factor in phone purchase decisions.
Applications for mobile devices should minimize storage use or utilize cloud storage options.
Power in mobile devices is primarily limited by battery capacity.
Factors affecting battery drain include weak cell tower signal, processing cycles, sensor usage (GPS, NFC, etc.).
Connectivity options like mobile data, WiFi, and Bluetooth contribute to battery drain.
Screen activity and background processes also impact battery life.
Good applications should minimize battery drain to preserve power.
Resources in mobile devices include memory, processing capabilities, and connectivity.
Memory (RAM) is limited; applications should reuse objects and discard out-of-scope ones to conserve memory.
Devices may stall when memory runs out during use.
Processing power is constrained to conserve battery and reduce heat; extensive computations are offloaded to remote servers.
Mobile devices have limited connectivity due to unreliable network coverage, limited cell capacity, and interference.
They suffer from frequent disconnections.
Applications for mobile devices should tolerate unreliable speed and connectivity.
Mobile User Characteristic
Mobile users are frequently on the move while using applications.
Physical location and social context can change during travel.
Certain resources may not be available while mobile, such as internet connectivity, storage, notes, or familiar locations.
Information stored on remote computers may not be accessible while users are mobile.
Interruptible, Easily Distracted
Mobile users are prone to distractions.
Attention may be diverted by the environment or social cues.
For example, a user at a bus station writing an SMS may be distracted by a bus departure announcement.
Tasks on mobile devices should be expected to be interruptible.
Writing SMS or watching videos can be interrupted by a phone call.
Mobile users are always available to remote friends and contacts.
The purpose of mobile devices is to make users accessible.
Devices are likely to be near users wherever they go, including restrooms, bedrooms, classrooms, etc.
Many people feel uncomfortable when separated from their devices.
Voice calls are socially and technologically assumed between two or more people.
Sociability is a key metaphor in mobile app design.
Mobile phones facilitate communication, both verbally and in written form, and enable various forms of digital social interactions.
Sociability includes giving digital gifts, receiving invitations, playing games together, and sharing memorable photos.
Users may not be interested in applications that lack the element of sociability.
Mobile devices are typically unique to a single user, with exceptions being rare.
Unique identifiers include phone numbers, user accounts, SIM cards, email addresses, and contact lists.
Mobile devices are usually tied to a single user, with device sharing being extremely rare.
Applications designed for mobile devices should not prompt users for login credentials each time they access the app.
Platform proliferation and device fragmentation are prevalent in mobile devices.
Mobile devices have diverse architectures, leading to different operating systems and machine code binaries
Unlike desktops using Intel x86, mobile devices have varied architectures.
Manufacturers develop unique OS and system libraries (e.g., Samsung: Tizen, Bada, Windows Mobile, Android).
Application developers face difficulties supporting diverse devices, OS, and features.
Users' choices are divided among platforms.
Some applications are platform-specific.
Software maintenance complexity increases.
Compatibility and interoperability issues arise.
Examples of Mobile OS Platforms:
Android: Primarily uses Kotlin and Java.
iOS (iPhone, iPad): Primarily uses Swift and Objective-C.
Windows Mobile: Primarily uses C# (discontinued).
Sample Platform Proliferation:
Platform proliferation is unavoidable due to mobile device market dynamics.
Developers face challenges in supporting diverse platforms and device features.
Users may encounter limitations based on their chosen platform.
Software maintenance complexity increases with multiple platforms.
Compatibility and interoperability issues may arise among platforms.
Device Fragmentation occurs when devices within a platform have vastly different specifications, features, or capabilities
It also refers to variations in API implementation within the same OS platform.
Not all mobile devices are equal due to differences in implementation by platform vendors.
Vendors produce various device models targeting different market segments.
Market Segments: Entry-Level, Mid-Range, Premium, Flagship, Specialized/Targeted.
Examples: Varying sensor availability, screen size/density, camera configurations.
Applications should account for hardware differences (e.g., fingerprint sensor reliance).
Devices lacking certain features may not support specific applications (e.g., gyroscope for AR).
Screen size and resolution discrepancies affect UI elements.
API: Application Programming Interface for accessing OS features.
Occurs when changes in API behavior render older implementations incompatible.
Example: Incompatibilities between different Android API levels.
Abu's Galaxy A9 upgraded from Android 8.0 to 9.0.
Faisal's device plays a location-based game, but Abu's cannot due to API changes in Android 9.0.
e) Give TWO(2) examples of Device Fragmentation.
Variations in screen sizes and resolutions among smartphones, tablets, and phablets.
Devices running older OS versions lacking the latest features or security updates.
a) Define Platform Proliferation in Mobile Device
Refers to the availability of various operating systems and platforms like iOS, Android, Windows Phone, etc.
b) Describe problem poses by Platform Proliferation in Mobile Device
Market fragmentation leads to the need for developers to create multiple versions of apps for different platforms, increasing development complexity and cost.
c) Describe Mobile Device Fragmentation
Refers to the existence of numerous device models with different hardware specs, screen sizes, resolutions, and capabilities.
d) Differentiate between Device Fragmentation and Platform Proliferation
Device fragmentation relates to hardware diversity, while platform proliferation concerns software diversity.