CSC 415 Past Question Answers
CSC 415 Past Question Answers
1a. Mobile computing has had numerous impacts on the way we live our lives today. With clear
examples, explain three positive impacts of mobile computing (3 marks) and six negative ones (3 marks).
Positive Impacts:
1. Enhanced Communication: Mobile computing has revolutionized communication by making it possible
to stay connected anywhere and anytime. Examples include video calls, instant messaging, and social
media platforms.
2. Access to Information: Mobile devices provide quick access to information through the internet. For
instance, educational apps and online libraries enable students to learn on the go.
3. Convenience in Transactions: Mobile banking and e-commerce apps have simplified financial
transactions, making it easy to pay bills, transfer money, and shop online from mobile devices.
Negative Impacts:
1. Health Issues: Prolonged use of mobile devices can lead to health problems such as eye strain, poor
posture, and repetitive strain injuries.
2. Privacy Concerns: Mobile computing increases the risk of data breaches and privacy invasion due to the
amount of personal information stored on devices.
3. Distraction: Mobile devices can be a major source of distraction, affecting productivity and focus,
particularly in educational and work environments.
4. Security Risks: The prevalence of malware and phishing attacks on mobile devices poses significant
security threats.
5. Social Isolation: Overreliance on mobile devices for communication can lead to reduced face-to-face
interactions, contributing to social isolation.
6. Digital Divide: Not everyone has access to advanced mobile technologies, which can widen the gap
between different socio-economic groups.
1b. With a minimum of three examples, discuss mobile software and their role in mobile computing (3
marks).
1. Operating Systems: Examples include Android and iOS. These systems manage the hardware and
software resources of mobile devices, providing a platform for applications to run.
2. Applications (Apps): Examples include WhatsApp for messaging, Instagram for social networking, and
Google Maps for navigation. Apps provide specific functionalities to meet user needs.
3. Middleware: Examples include mobile device management (MDM) software and mobile application
management (MAM) tools. Middleware facilitates communication between different software
components and ensures efficient performance and security.
1c. What do you think are going to be the features of future mobile computing systems? (Minimum of
one page). (3 marks)
Future mobile computing systems are likely to feature significant advancements in several areas, driven by
ongoing technological innovations and user demands. These features may include:
1. Enhanced Connectivity: With the rollout of 5G and beyond, future mobile devices will offer faster and
more reliable internet connectivity. This will enable seamless streaming, real-time communication, and
improved online experiences.
2. Artificial Intelligence (AI) and Machine Learning (ML): AI and ML will become integral to mobile
computing, enhancing personalization and automation. Devices will be able to learn user preferences,
provide predictive recommendations, and automate routine tasks, making the user experience more
intuitive and efficient.
3. Augmented Reality (AR) and Virtual Reality (VR): AR and VR technologies will be more prevalent,
transforming how users interact with their environments. Applications in gaming, education, and
professional training will offer immersive experiences, blending the digital and physical worlds.
4. Edge Computing: To reduce latency and improve performance, more processing will be done on the
device (edge computing) rather than relying solely on cloud services. This will be crucial for applications
requiring real-time data processing, such as autonomous driving and IoT integrations.
5. Advanced Biometrics: Security features will evolve to include more sophisticated biometric
authentication methods, such as facial recognition, voice recognition, and even behavioral biometrics,
ensuring enhanced security for users.
6. Extended Battery Life: Innovations in battery technology and energy-efficient components will lead to
longer battery life, reducing the need for frequent charging and enabling prolonged usage.
7. Flexible and Foldable Displays: Future mobile devices may feature flexible and foldable screens,
allowing for more versatile form factors. This will provide users with larger displays in a compact device,
enhancing portability without compromising on screen real estate.
8. Environmental Sensors: Mobile devices will be equipped with advanced sensors capable of monitoring
environmental conditions such as air quality, temperature, and humidity. This data can be used for health
and safety applications, providing users with real-time information about their surroundings.
9. Enhanced Privacy and Security: As data privacy concerns grow, future mobile systems will incorporate
robust security measures, including encrypted communications, secure enclaves for sensitive data, and
greater control over app permissions.
10. Integration with Wearables and IoT Devices: Mobile devices will serve as central hubs for a wide range
of connected devices, from smartwatches and fitness trackers to home automation systems and industrial
IoT applications. This integration will create a seamless ecosystem for users, enabling synchronized and
coordinated functionality across all devices.
These features will collectively enhance the functionality, security, and user experience of mobile computing
systems, making them more indispensable in our daily lives.
2a. Explain the role of the following components of a mobile hardware device:
i. Microphone: The microphone captures audio input from the user, enabling voice commands, phone calls,
audio recordings, and voice-activated applications.
ii. Sensor: Sensors, such as accelerometers, gyroscopes, and proximity sensors, detect and respond to various
physical properties (e.g., motion, orientation, and proximity). They are essential for features like screen
rotation, step counting, and gesture recognition.
iii. SIM card: The Subscriber Identity Module (SIM) card stores the user’s mobile number and network
information, enabling the device to connect to cellular networks for communication and data services.
iv. Memory: Memory in mobile devices includes both RAM (Random Access Memory) and storage memory.
RAM provides space for running applications and processes, while storage memory holds the operating
system, apps, and user data.
v. Speaker: The speaker outputs audio from the device, allowing users to hear phone calls, music,
notifications, and other sounds from multimedia applications.
2b. Explain in detail why unguided transmission is most suitable for mobile computing. (4 marks)
Unguided transmission, such as radio waves, microwaves, and infrared, is most suitable for mobile computing
due to its flexibility and convenience. This type of transmission does not require physical cables, allowing for
mobility and broad coverage. Mobile devices rely on unguided transmission to connect to cellular networks,
Wi-Fi, and Bluetooth, enabling users to access the internet, make calls, and share data wirelessly. The ability
to move freely while maintaining connectivity is essential for the portability and practicality of mobile
computing. Additionally, advancements in unguided transmission technologies, like 5G, further enhance
speed, capacity, and reliability, making them ideal for modern mobile applications.
2c. With ample examples, explain any four mobile applications. (4 marks)
1. WhatsApp: A messaging app that allows users to send text messages, voice messages, make voice
and video calls, and share images, documents, and other media.
2. Google Maps: A navigation app that provides real-time GPS navigation, traffic conditions, and route
planning for drivers, bikers, and pedestrians.
3. Instagram: A social networking app where users can share photos and videos, follow others, and
engage with content through likes, comments, and direct messaging.
4. Spotify: A music streaming app that gives users access to millions of songs, podcasts, and playlists,
allowing them to stream music online or download it for offline listening.
3a. What are the benefits of Utility computing (4 marks)
Utility computing offers several benefits, including:
1. Cost Efficiency: Users only pay for the computing resources they consume, which reduces the need
for large upfront investments in hardware and software.
2. Scalability: Resources can be easily scaled up or down based on demand, providing flexibility and
ensuring optimal resource utilization.
3. Accessibility: Computing resources are available on-demand over the internet, making them
accessible from anywhere at any time.
4. Maintenance and Management: The service provider handles maintenance, updates, and
management of the infrastructure, allowing users to focus on their core activities without worrying
about IT management.
3b. State and write on the features of Android Technology (4 marks)
Android technology includes several key features:
1. Open Source: Android is based on the Linux kernel and is open source, allowing developers to modify
and distribute the operating system freely.
2. Customizable User Interface: Users can personalize their home screens, widgets, and themes,
providing a flexible and user-friendly experience.
3. Wide App Ecosystem: The Google Play Store offers millions of apps across various categories,
ensuring a rich and diverse app ecosystem for users.
4. Integration with Google Services: Android devices seamlessly integrate with Google services like
Gmail, Google Drive, and Google Maps, enhancing productivity and user experience.
3c. With a suitable diagram, explain the five (5) sectors of Android Operating System Architecture (4
marks)
The Android Operating System Architecture consists of five main layers:
1. Linux Kernel: The foundation of the Android OS, providing core system services such as security,
memory management, and process management.
2. Libraries: A set of C/C++ libraries used by various components of the Android system, providing
functionality such as graphics rendering, database management, and web browsing.
3. Android Runtime: Includes the Dalvik Virtual Machine (or ART in newer versions) and core
libraries, enabling apps to run on Android devices.
4. Application Framework: Provides higher-level services and APIs for building applications, such as
activity management, resource handling, and content providers.
5. Applications: The top layer, consisting of system and user-installed applications that interact with the
underlying layers to provide the user interface and functionality.
4a. Write succinctly on Cloud Computing (4 marks)
Cloud computing refers to the delivery of computing services—including servers, storage, databases,
networking, software, and analytics—over the internet (the cloud). It enables flexible resources, faster
innovation, and economies of scale. Users can access cloud services from anywhere with an internet
connection, paying only for what they use. Cloud computing offers various models such as Infrastructure as a
Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS), each catering to different
business needs. Key benefits include cost savings, scalability, performance, and security.
4b. With respect to cloud computing, define the following terminologies (4 marks):
i. Utility Computing: A model where computing resources are provided as a metered service, similar to
utilities like electricity or water, allowing users to pay only for the resources they consume. ii. Grid
Computing: A distributed computing model that involves a network of computers working together to
perform large-scale tasks, leveraging their combined processing power to solve complex problems. iii. Service
Oriented Architecture (SOA): An architectural pattern where services are provided to other components
over a network, allowing different systems to communicate and share functionality through well-defined
interfaces. iv. Virtualization: The creation of virtual instances of physical hardware, such as servers, storage
devices, and networks, allowing multiple virtual machines to run on a single physical machine, optimizing
resource utilization and flexibility.
4c. State two (2) each of the Advantages and Disadvantages of the Android Operating System (4 marks)
Advantages:
1. Customizability: Android offers a high degree of customization, allowing users to personalize their
devices with different home screens, widgets, and themes.
2. Wide Range of Devices: Android is available on a variety of devices across different price ranges,
providing options for users with different budgets and preferences.
Disadvantages:
1. Fragmentation: The wide range of devices and versions can lead to fragmentation, where apps and
updates may not be compatible with all devices, causing inconsistencies in user experience.
2. Security Concerns: The open nature of Android can make it more susceptible to malware and security
vulnerabilities compared to more controlled environments like iOS.
Mobile App Development: Native vs. Cross-Platform
a. Factors to consider and advantages/disadvantages of each approach (7 marks):
Factors to Consider:
1. Performance: Native apps generally offer better performance and responsiveness.
2. Development Cost and Time: Cross-platform development can save time and reduce costs as a single
codebase can be used for multiple platforms.
3. User Experience: Native apps provide a more consistent and optimized user experience tailored to
each platform.
4. Maintenance: Cross-platform apps are easier to maintain with a single codebase.
5. Access to Device Features: Native development provides better access to device-specific features and
APIs.
Advantages of Native Development:
1. Optimal Performance: Native apps are optimized for specific platforms, ensuring high performance
and speed.
2. Better Integration: Full access to platform-specific features and APIs for a seamless user experience.
Disadvantages of Native Development:
1. Higher Cost: Developing separate apps for iOS and Android can be more expensive.
2. Longer Development Time: Separate codebases require more time to develop and maintain.
Advantages of Cross-Platform Development:
1. Cost-Effective: Single codebase reduces development and maintenance costs.
2. Faster Development: Simultaneous development for multiple platforms speeds up the release process.
Disadvantages of Cross-Platform Development:
1. Performance Issues: Cross-platform apps may not perform as well as native apps.
2. Limited Access to Features: Some platform-specific features may not be fully accessible.
b. How to optimize the app's performance in areas with weak network connectivity (5 marks):
1. Efficient Data Handling: Minimize data transfer and use data compression techniques to reduce the
amount of data exchanged with the server.
2. Caching: Implement local caching to store frequently accessed data on the device, reducing the need
for repeated network requests.
3. Asynchronous Operations: Use asynchronous programming to handle network requests without
blocking the main thread, ensuring a smooth user experience.
4. Offline Mode: Provide offline functionality, allowing users to access and interact with the app even
without an internet connection.
5. Progressive Loading: Load content progressively, displaying essential information first and loading
additional data in the background.
IoT Integration and Security in Mobile App Development
a. Approach to ensure real-time data updates, security of the IoT data, and a seamless user experience
(5 marks):
1. Real-Time Data Updates: Use WebSockets or MQTT protocols for efficient real-time
communication between IoT devices and the mobile app.
2. Data Security: Implement strong encryption methods (e.g., TLS) for data in transit and secure storage
mechanisms (e.g., AES) for data at rest.
3. Seamless User Experience: Design a user-friendly interface that provides real-time feedback and
intuitive controls for interacting with IoT devices. Use efficient data synchronization techniques to
ensure timely updates.
b. Implementing security measures to protect the data both in transit and at rest (7 marks):
1. Data Encryption: Use end-to-end encryption to protect data during transmission and storage.
Implement industry-standard encryption algorithms like AES for data at rest and TLS for data in
transit.
2. Authentication and Authorization: Ensure secure authentication methods (e.g., OAuth, multi-factor
authentication) and proper authorization checks to restrict access to sensitive data.
3. Regular Security Audits: Conduct regular security assessments and vulnerability scans to identify
and mitigate potential security risks.
4. Secure APIs: Use secure API design practices, including input validation, rate limiting, and secure
authentication mechanisms, to prevent unauthorized access and data breaches.
5. Data Anonymization: Anonymize sensitive data where possible to protect user privacy and reduce
the impact of potential data breaches.
6. Secure Storage: Use secure storage solutions, such as encrypted databases and secure storage APIs,
to protect data at rest on mobile devices.
7. Monitoring and Logging: Implement robust monitoring and logging mechanisms to detect and
respond to security incidents promptly.
FEDERAL UNIVERSITY OF TECHNOLOGY OWERRI
SCHOOL OF INFORMATION AND COMMUNICATION TECHNOLOGY
DEPARTMENT OF COMPUTER SCIENCE
HARMATTAN SEMESTER EXAMINATION 2021/2022 SESSION
CSC 415-MOBILE COMPUTING SYSTEMS DESIGN
TIME: 2 HOURS 30 MINUTES
DATE: 06/04/23
INSTRUCTION: Answer any 5 questions.
1a. Define mobile computing. (2 marks)
1b.
i. Explain in detail why unguided transmission is most suitable for mobile computing. (4 marks)
ii. Discuss the major challenge of unguided transmission. (2 marks)
1c. Security is one of the major issues of mobile computing. Discuss. (4 marks)
2a. Explain any four components of mobile devices. (4 marks)
2b. Discuss mobile computing protocols under the following headings:
i. GSM
ii. GPRS
iii. IMAP
iv. Near Field Communication (NFC) (4 marks)
2c. With ample examples, explain any four mobile applications. (4 marks)
3a. Write succinctly on Cloud Computing (4 marks)
3b. With respect to cloud computing, define the following terminologies:
i. Utility Computing
ii. Grid Computing
iii. Service Oriented Architecture
iv. Virtualization (8 marks)
4a. What are the benefits of Utility computing? (4 marks)
4b. State and write on the features of Android Technology. (6 marks)
4c. State one (1) each of the advantages and disadvantages of the Android Operating System. (2 marks)
5a. Imagine you are part of a team tasked with building a mobile computing system for a company with
employees who often work remotely. What are some key considerations you would take into account when
designing and implementing this system? (4 marks)
5b. What are some of the challenges associated with designing and implementing a mobile computing
system? (3 marks)
5c. Explain the concept of a MANET, and provide an example of a real-world scenario where it might be
used. (5 marks)
ANSWERS TO 2022 PAST QUESTION
1a. Define mobile computing. (2 marks)
Mobile Computing: Mobile computing refers to the use of portable computing devices (such as smartphones,
tablets, and laptops) in conjunction with mobile communication technologies (like Wi-Fi, cellular networks,
and Bluetooth) to enable users to access information and perform tasks while on the move.
1b.
i. Explain in detail why unguided transmission is most suitable for mobile computing. (4 marks)
Unguided Transmission: Unguided transmission, such as radio waves, microwaves, and infrared, is most
suitable for mobile computing due to its flexibility and convenience. This type of transmission does not require
physical cables, allowing for mobility and broad coverage. Mobile devices rely on unguided transmission to
connect to cellular networks, Wi-Fi, and Bluetooth, enabling users to access the internet, make calls, and share
data wirelessly. The ability to move freely while maintaining connectivity is essential for the portability and
practicality of mobile computing. Additionally, advancements in unguided transmission technologies, like 5G,
further enhance speed, capacity, and reliability, making them ideal for modern mobile applications.
ii. Discuss the major challenge of unguided transmission. (2 marks)
Major Challenge: The major challenge of unguided transmission is interference. Since unguided signals
travel through the air, they are susceptible to various forms of interference from physical obstacles, other
wireless devices, and environmental factors. This can lead to signal degradation, data loss, and reduced
communication quality, affecting the reliability and performance of mobile computing systems.
1c. Security is one of the major issues of mobile computing. Discuss. (4 marks)
Security in Mobile Computing: Security is a significant concern in mobile computing due to the increased
risk of data breaches, unauthorized access, and malware attacks. Mobile devices often store sensitive personal
and business information, making them attractive targets for cybercriminals. Security challenges include:
1. Data Encryption: Ensuring data is encrypted both in transit and at rest to prevent unauthorized access.
2. Authentication: Implementing strong authentication methods, such as biometrics and multi-factor
authentication, to verify user identities.
3. App Security: Ensuring that mobile applications are free from vulnerabilities and do not leak sensitive
data.
4. Network Security: Protecting data transmitted over wireless networks from interception and
tampering. Security measures must be continuously updated to address emerging threats and protect
user data.
2a. Explain any four components of mobile devices. (4 marks)
1. Microphone: Captures audio input from the user, enabling voice commands, phone calls, audio
recordings, and voice-activated applications.
2. Sensor: Includes accelerometers, gyroscopes, and proximity sensors that detect and respond to various
physical properties (e.g., motion, orientation, and proximity). They are essential for features like screen
rotation, step counting, and gesture recognition.
3. SIM Card: Stores the user’s mobile number and network information, enabling the device to connect
to cellular networks for communication and data services.
4. Memory: Comprises both RAM (Random Access Memory) for running applications and processes,
and storage memory for holding the operating system, apps, and user data.
2b. Discuss mobile computing protocols under the following headings: (4 marks)
i. GSM
Global System for Mobile Communications (GSM): GSM is a standard for mobile networks that provides
voice and data services. It uses time division multiple access (TDMA) to divide frequency bands into time
slots, allowing multiple users to share the same frequency channel.
ii. GPRS
General Packet Radio Service (GPRS): GPRS is an extension of GSM that enables packet-switched data
transmission. It allows for continuous internet connectivity and supports services such as web browsing, email,
and multimedia messaging.
iii. IMAP
Internet Message Access Protocol (IMAP): IMAP is a protocol used by email clients to retrieve messages
from a mail server. It allows users to access and manage their email from multiple devices, with messages
stored on the server rather than locally.
iv. Near Field Communication (NFC)
Near Field Communication (NFC): NFC is a short-range wireless communication technology that enables
data exchange between devices within close proximity (typically a few centimeters). It is commonly used for
contactless payments and data transfer between devices.
2c. With ample examples, explain any four mobile applications. (4 marks)
1. WhatsApp: A messaging app that allows users to send text messages, voice messages, make voice
and video calls, and share images, documents, and other media.
2. Google Maps: A navigation app that provides real-time GPS navigation, traffic conditions, and route
planning for drivers, bikers, and pedestrians.
3. Instagram: A social networking app where users can share photos and videos, follow others, and
engage with content through likes, comments, and direct messaging.
4. Spotify: A music streaming app that gives users access to millions of songs, podcasts, and playlists,
allowing them to stream music online or download it for offline listening.
3a. Write succinctly on Cloud Computing (4 marks)
Cloud Computing: Cloud computing refers to the delivery of computing services—including servers, storage,
databases, networking, software, and analytics—over the internet (the cloud). It enables flexible resources,
faster innovation, and economies of scale. Users can access cloud services from anywhere with an internet
connection, paying only for what they use. Cloud computing offers various models such as Infrastructure as a
Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS), each catering to different
business needs. Key benefits include cost savings, scalability, performance, and security.
3b. With respect to cloud computing, define the following terminologies: (8 marks)
i. Utility Computing
Utility Computing: A model where computing resources are provided as a metered service, similar to utilities
like electricity or water, allowing users to pay only for the resources they consume.
ii. Grid Computing
Grid Computing: A distributed computing model that involves a network of computers working together to
perform large-scale tasks, leveraging their combined processing power to solve complex problems.
iii. Service Oriented Architecture
Service Oriented Architecture (SOA): An architectural pattern where services are provided to other
components over a network, allowing different systems to communicate and share functionality through well-
defined interfaces.
iv. Virtualization
Virtualization: The creation of virtual instances of physical hardware, such as servers, storage devices, and
networks, allowing multiple virtual machines to run on a single physical machine, optimizing resource
utilization and flexibility.
4a. What are the benefits of Utility computing? (4 marks)
Benefits of Utility Computing:
1. Cost Efficiency: Users only pay for the computing resources they consume, reducing the need for
large upfront investments in hardware and software.
2. Scalability: Resources can be easily scaled up or down based on demand, providing flexibility and
ensuring optimal resource utilization.
3. Accessibility: Computing resources are available on-demand over the internet, making them
accessible from anywhere at any time.
4. Maintenance and Management: The service provider handles maintenance, updates, and
management of the infrastructure, allowing users to focus on their core activities without worrying
about IT management.
4b. State and write on the features of Android Technology. (6 marks)
Features of Android Technology:
1. Open Source: Android is based on the Linux kernel and is open source, allowing developers to modify
and distribute the operating system freely.
2. Customizable User Interface: Users can personalize their home screens, widgets, and themes,
providing a flexible and user-friendly experience.
3. Wide App Ecosystem: The Google Play Store offers millions of apps across various categories,
ensuring a rich and diverse app ecosystem for users.
4. Integration with Google Services: Android devices seamlessly integrate with Google services like
Gmail, Google Drive, and Google Maps, enhancing productivity and user experience.
5. Multiple Device Support: Android is available on a variety of devices, including smartphones, tablets,
smartwatches, and TVs, offering a consistent experience across different form factors.
6. Regular Updates: Google provides regular updates to the Android operating system, ensuring security
patches, new features, and improvements to enhance user experience.
4c. State one (1) each of the advantages and disadvantages of the Android Operating System. (2 marks)
Advantage:
Customizability: Android offers a high degree of customization, allowing users to personalize their
devices with different home screens, widgets, and themes.
Disadvantage:
Fragmentation: The wide range of devices and versions can lead to fragmentation, where apps and
updates may not be compatible with all devices, causing inconsistencies in user experience.
5a. Imagine you are part of a team tasked with building a mobile computing system for a company with
employees who often work remotely. What are some key considerations you would take into account
when designing and implementing this system? (4 marks)
Key Considerations:
1. Security: Ensuring robust security measures, such as data encryption, secure authentication, and
regular security audits, to protect sensitive company data.
2. Connectivity: Providing reliable internet connectivity options, including support for both Wi-Fi and
cellular networks, to ensure employees can work efficiently from various locations.
3. Device Compatibility: Ensuring the system is compatible with a wide range of devices and operating
systems to accommodate the diverse hardware used by remote employees.
4. User Experience: Designing an intuitive and user-friendly interface to enhance productivity and
minimize the learning curve for employees.
5b. What are some of the challenges associated with designing and implementing a mobile computing
system? (3 marks)
Challenges:
1. Security: Protecting data and systems from unauthorized access, malware, and other cyber threats.
2. Connectivity: Ensuring consistent and reliable network connectivity, especially in areas with poor
signal coverage or limited infrastructure.
3. Compatibility: Addressing the diverse range of devices and operating systems to ensure seamless
integration and functionality across all platforms.
5c. Explain the concept of a MANET, and provide an example of a real-world scenario where it might
be used. (5 marks)
Mobile Ad Hoc Network (MANET): A MANET is a self-configuring network of mobile devices connected
without any fixed infrastructure or centralized administration. Each device in a MANET is free to move
independently and can act as both a host and a router, forwarding data to other devices. MANETs are
characterized by their dynamic topology, decentralized nature, and the ability to establish communication on-
the-fly.
Real-World Scenario: A real-world example of a MANET is its use in disaster recovery operations. When a
natural disaster, such as an earthquake or hurricane, disrupts traditional communication infrastructure, a
MANET can be quickly deployed by emergency responders to establish communication among rescue teams.
This allows for real-time coordination, information sharing, and efficient management of rescue efforts in
areas where traditional networks are unavailable or have been destroyed.
POSSIBLE QUESTION FOR TOMORROW EXAM
Question Set 1
1. Mobile Computing and Its Impacts
1a. Define mobile computing and provide three examples of its applications in daily life. (3 marks)
Mobile computing is a technology that allows the transmission of data, voice, and video, enabling seamless
communication over a network. It involves infrastructure that ensures reliable connectivity and
communication through protocols, services, and bandwidth.
Examples of Applications:
1. Smartphones: Used for communication, internet browsing, and accessing applications.
2. Mobile Banking: Allows users to perform banking transactions via mobile apps.
3. GPS Navigation: Provides real-time navigation and location tracking through mobile devices.
1b. Explain three positive impacts of mobile computing and six negative ones. (6 marks)
Positive Impacts:
1. Portability: Users can work and communicate from virtually anywhere, enhancing flexibility.
2. Increased Productivity: Access to information and tools on-the-go allows for efficient work and
learning.
3. Entertainment Access: Streaming services and mobile games provide entertainment anytime and
anywhere.
Negative Impacts:
1. Security Risks: Increased vulnerability to cyber threats due to constant internet connectivity.
2. Connectivity Issues: Dependence on WiFi or mobile networks can limit functionality in low-signal
areas.
3. Battery Life Limitations: Mobile devices require frequent charging, restricting usage duration.
4. Device Size Limitations: Smaller devices may compromise processing power and features.
5. Health Hazards: Potential distractions while driving and concerns over radiation.
6. Dependency: Over-reliance on devices can hinder basic skills and navigation.
1c. What are the expected features of future mobile computing systems? (3 marks)
Future mobile computing systems are expected to feature:
High-Speed Connectivity: The widespread adoption of 5G and Li-Fi technology will enhance data
transmission speeds and reliability.
Advanced AI Integration: Artificial Intelligence will improve user experience through personalized
services and smarter applications.
Enhanced Security Measures: Future systems will incorporate advanced security protocols to protect
user data and privacy.
2. Components and Transmission in Mobile Devices
2a. Explain the role of the following components of a mobile hardware device: (5 marks)
i. Microphone: Converts sound waves into electrical signals, enabling voice communication and voice
recognition features.
ii. Sensor: Detects changes in the environment (e.g., light, motion) and provides input to the device for various
functionalities like screen rotation.
iii. SIM Card: Stores subscriber information and allows devices to connect to mobile networks for calls, SMS,
and internet services.
iv. Memory: Stores data and applications for quick access by the device, including both primary (RAM) and
secondary storage.
v. Speaker: Converts electrical audio signals into sound, enabling users to hear notifications, calls, and media
playback.
2b. Explain why unguided transmission is most suitable for mobile computing and discuss the major
challenge of unguided transmission. (6 marks)
Unguided transmission is suitable for mobile computing because it allows signals to be transmitted wirelessly
through the air, enabling mobility and flexibility. This method supports omnidirectional communication,
making it ideal for portable devices that move between different locations.
Major Challenge: The primary challenge of unguided transmission is interference. Signals can be disrupted
by physical obstacles (like buildings), weather conditions, and other electronic devices transmitting on similar
frequencies, leading to poor reception and connectivity issues.
2c. Discuss the importance of security in mobile computing and highlight common security threats. (4
marks)
Security is crucial in mobile computing due to the sensitive nature of data stored on mobile devices and the
constant connectivity to the internet. Protecting user data from unauthorized access and cyber threats is
essential to maintain privacy and trust.
Common Security Threats:
1. Data Breaches: Unauthorized access to personal information stored on devices or in the cloud.
2. Malware: Malicious software that can infect devices, leading to data loss or theft.
3. Phishing Attacks: Attempts to trick users into revealing personal information through deceptive
messages.
4. Network Vulnerabilities: Risks associated with using unsecured WiFi networks, which can expose
devices to attacks.
3. Mobile Software and Applications
3a. Discuss mobile software and their role in mobile computing. (3 marks)
Mobile software includes operating systems and applications that run on mobile devices. It enables the
functionality of the hardware, allowing users to perform tasks such as communication, browsing, and
accessing services.
Examples of Mobile Software:
1. Operating Systems: Android and iOS manage device resources and provide a platform for
applications.
2. Applications: Mobile apps like social media, productivity tools, and games extend the capabilities of
mobile devices.
3b. Explain any four mobile applications and their functionalities. (4 marks)
1. Social Media Apps (e.g., Facebook, Twitter): Allow users to connect, share content, and
communicate with others.
2. Mobile Banking Apps: Enable users to perform banking transactions, check balances, and transfer
funds securely.
3. Navigation Apps (e.g., Google Maps): Provide real-time location tracking and directions for users
traveling to various destinations.
4. Streaming Apps (e.g., Netflix, Spotify): Allow users to access and stream movies, shows, and music
on their mobile devices.
3c. Describe the benefits and challenges of integrating Internet of Things (IoT) devices with mobile
applications. (5 marks)
Benefits:
1. Real-Time Data Access: Users can monitor and control IoT devices remotely through mobile
applications.
2. Enhanced Automation: Mobile apps can automate tasks based on data collected from IoT devices,
improving efficiency.
3. Improved User Experience: Seamless integration provides users with a unified interface to manage
multiple devices.
Challenges:
1. Security Risks: Increased connectivity raises concerns about data privacy and unauthorized access to
IoT devices.
2. Interoperability Issues: Different IoT devices may use various protocols, making integration with
mobile applications complex.
3. Data Overload: Managing and processing large volumes of data from multiple IoT devices can strain
mobile applications and networks.
Question Set 2
1. Mobile Computing Protocols and Applications
1a. Define mobile computing. (2 marks)
Mobile computing is a technology that facilitates the transmission of data, voice, and video through a wireless
network, allowing users to communicate and access information from portable devices without being tied to
a physical location.
1b. Discuss mobile computing protocols under the following headings: (4 marks)
i. GSM (Global System for Mobile Communications): A standard for 2G mobile networks that enables
voice and data communication.
ii. GPRS (General Packet Radio Service): An enhancement to GSM that allows for packet-switched data
transmission, enabling internet access on mobile devices.
iii. IMAP (Internet Message Access Protocol): A protocol used by email clients to retrieve messages from
a mail server, allowing users to access their emails from multiple devices.
iv. Near Field Communication (NFC): A set of communication protocols that enables two electronic devices
to communicate when they are close together, commonly used for contactless payments.
1c. Explain any four components of mobile devices and their functions. (4 marks)
1. CPU (Central Processing Unit): Acts as the brain of the device, executing instructions and processing
data.
2. Battery: Provides power to the device, enabling it to function without being plugged into a power
source.
3. Display Screen: Allows users to interact with the device visually, displaying information and enabling
touch input.
4. Camera: Captures images and videos, allowing users to take photos and participate in video calls.
2. Cloud Computing and Related Terminologies
2a. Write succinctly on Cloud Computing and discuss its key benefits. (4 marks)
Cloud computing refers to the delivery of computing services over the internet, allowing users to access and
store data remotely rather than on local devices.
Key Benefits:
1. Scalability: Users can easily scale resources up or down based on demand.
2. Cost Efficiency: Reduces the need for physical infrastructure and maintenance costs.
3. Accessibility: Users can access data and applications from anywhere with an internet connection.
4. Automatic Updates: Cloud services often include automatic software updates, ensuring users have
the latest features.
2b. Define the following terminologies with respect to cloud computing: (8 marks)
i. Utility Computing: A service model where computing resources are provided as a metered service, similar
to utilities like electricity.
ii. Grid Computing: A distributed computing model that uses a network of computers to work on a task,
sharing resources and processing power.
iii. Service-Oriented Architecture (SOA): A design pattern that allows different services to communicate
and interact over a network, promoting interoperability.
iv. Virtualization: The creation of virtual versions of physical resources, such as servers or storage, allowing
for more efficient resource utilization.
2c. What are the benefits and challenges of Utility computing? (4 marks)
Benefits:
1. Cost Savings: Users pay only for the resources they consume, reducing waste.
2. Flexibility: Users can easily adjust resource usage based on changing needs.
Challenges:
1. Vendor Lock-In: Users may become dependent on a specific provider, making it difficult to switch
services.
2. Data Security: Storing sensitive data with third-party providers raises concerns about data protection
and privacy.
3. Android Technology and Its Features
3a. State and write on the features of Android Technology. (6 marks)
Android technology is an open-source operating system based on the Linux kernel, designed primarily for
touchscreen mobile devices.
Features:
1. User-Friendly Interface: Intuitive design that enhances user experience.
2. Multitasking: Allows users to run multiple applications simultaneously.
3. Customization: Users can personalize their devices with widgets and themes.
4. Rich App Ecosystem: Access to a vast library of applications through the Google Play Store.
5. Support for Multiple Devices: Compatible with various hardware manufacturers and device types.
3b. State two (2) each of the advantages and disadvantages of the Android Operating System. (4 marks)
Advantages:
1. Open Source: Allows developers to modify and distribute the software freely.
2. Wide Device Compatibility: Available on a variety of devices from different manufacturers.
Disadvantages:
1. Fragmentation: Different devices run various versions of Android, leading to inconsistent user
experiences.
2. Security Vulnerabilities: Open-source nature can lead to increased exposure to malware and security
threats.
3c. Explain the five (5) sectors of Android Operating System Architecture with a suitable diagram. (4
marks)
The Android Operating System Architecture consists of five main sectors:
1. Linux Kernel: The foundation that manages core system services such as security, memory
management, and process management.
2. Hardware Abstraction Layer (HAL): Provides a standard interface for hardware components,
allowing the Android framework to communicate with the hardware.
3. Android Runtime (ART): Executes applications and manages memory, providing a runtime
environment for Android apps.
4. Application Framework: Offers higher-level services to applications, including activity
management, resource management, and content providers.
5. Applications: User-facing applications that run on the Android platform, including system apps and
third-party apps.
4. Designing Mobile Computing Systems
4a. Key considerations for building a mobile computing system for remote employees. (4 marks)
1. Connectivity: Ensure reliable internet access through WiFi or mobile networks.
2. Security: Implement strong security measures to protect sensitive data.
3. User Experience: Design intuitive interfaces that enhance usability for remote workers.
4. Scalability: Plan for future growth and the ability to add more users or features.
4b. Challenges associated with designing and implementing a mobile computing system. (3 marks)
1. Security Risks: Protecting data from unauthorized access while ensuring user privacy.
2. Connectivity Issues: Ensuring consistent and reliable network access for all users.
3. Device Compatibility: Supporting a wide range of devices and operating systems can complicate
development.
4c. Explain the concept of a MANET, and provide an example of a real-world scenario where it might
be used. (5 marks)
A Mobile Ad-hoc Network (MANET) is a self-configuring network of mobile devices that communicate
with each other without a fixed infrastructure. Each device can act as a router, forwarding data to other devices.
Example Scenario: MANETs can be used in disaster recovery situations where traditional communication
infrastructure is unavailable. Emergency responders can quickly establish a network to coordinate rescue
efforts and share information in real-time.
5. Developing Mobile Apps
5a. Compare and contrast native development with cross-platform development for mobile apps. (7
marks)
Native Development:
Languages: Swift for iOS, Java/Kotlin for Android.
Performance: Generally offers better performance and responsiveness.
User Experience: Provides a more tailored user experience with platform-specific features.
Access to Device Features: Easier access to hardware features (camera, GPS).
Cross-Platform Development:
Frameworks: Flutter, React Native.
Development Time: Faster development as one codebase can be used for multiple platforms.
Cost-Effective: Reduces costs by minimizing the need for separate teams for iOS and Android.
Performance: May have slightly lower performance compared to native apps.
Factors to Consider:
Project budget and timeline.
Target audience and device compatibility.
Required features and performance expectations.
5b. How would you optimize the app's performance to ensure it isn't slow, especially in areas with weak
network connectivity? (5 marks)
1. Data Caching: Store frequently accessed data locally to reduce the need for constant network requests.
2. Optimize Network Requests: Minimize the number of API calls and use efficient data formats (e.g.,
JSON) to reduce payload size.
3. Background Syncing: Implement background syncing to update data when network connectivity is
available rather than in real-time.
4. Lazy Loading: Load data and images only when they are needed, rather than all at once.
5. Use of Compression: Compress data before transmission to reduce load times and bandwidth usage.
6. IoT and Mobile App Integration
6a. Approach to developing a mobile app that integrates data from IoT devices. (5 marks)
1. Real-Time Data Processing: Implement WebSocket or MQTT protocols for real-time data updates
from IoT devices.
2. Data Security: Use encryption for data in transit and at rest, ensuring that sensitive information is
protected.
3. User Interface Design: Create an intuitive UI that allows users to easily interact with and control IoT
devices.
4. Testing and Validation: Rigorously test the app with various IoT devices to ensure compatibility and
reliability.
5. Feedback Mechanism: Incorporate user feedback to continuously improve the app's functionality and
user experience.
6b. Security measures to protect data both in transit and at rest. (7 marks)
1. Encryption: Use strong encryption protocols (e.g., AES) for data stored on devices and transmitted
over networks.
2. Authentication: Implement multi-factor authentication to verify user identities before granting access
to sensitive data.
3. Regular Updates: Keep the application and its dependencies updated to protect against known
vulnerabilities.
4. Secure APIs: Use secure API design practices, including authentication tokens and rate limiting, to
protect against unauthorized access.
5. Data Anonymization: Anonymize personal data to protect user privacy in case of data breaches.
6. Access Controls: Implement strict access controls to limit who can view or manipulate sensitive data.
7. Monitoring and Logging: Continuously monitor and log access to data to detect and respond to
potential security incidents promptly.