2081

BIT406 · TU past paper

Mobile Application Development 2081 question paper

The complete TU 2081 exam paper for Mobile Application Development (BIT406), all 12 questions with solved model answers written to the mark scheme.

Past Papers2081

Tap a question to open its answer.

  1. 110 marksMobile development life cycleAnswer

    Explain mobile development life cycle. Describe mobile computing architecture.[10]

    Mobile Development Life Cycle and Mobile Computing Architecture

    Mobile Development Life Cycle

    The mobile development life cycle (MDLC) is a structured process for creating mobile applications. It follows these key phases:

    1. Planning and Requirements Analysis

    • Define project scope, objectives, and feasibility
    • Identify target mobile platforms (iOS, Android, Windows)
    • Analyze user requirements and business goals
    • Assess resource requirements and budget

    2. Design

    • Create UI/UX mockups and wireframes
    • Design system architecture and database schema
    • Plan for mobile-specific constraints (screen size, battery, connectivity)
    • Define API specifications and data flow

    3. Development

    • Write code using appropriate mobile development frameworks
    • Implement features according to design specifications
    • Follow mobile development best practices
    • Manage version control and code repositories

    4. Testing

    • Perform unit testing on individual components
    • Conduct integration testing across modules
    • Test on multiple devices and screen sizes
    • Perform performance, security, and usability testing
    • Test offline functionality and network resilience

    5. Deployment

    • Prepare application for app store submission
    • Configure deployment environments
    • Submit to app stores (Google Play, Apple App Store, etc.)
    • Monitor initial release and user feedback

    6. Maintenance and Updates

    • Monitor application performance and crashes
    • Fix bugs and security vulnerabilities
    • Release updates with new features
    • Provide user support

    Mobile Computing Architecture

    Mobile computing architecture consists of the following layers and components:

    1. Client Layer (Mobile Device)

    • Hardware: Processor, memory, storage, sensors (GPS, accelerometer, camera)
    • Operating System: iOS, Android, or other mobile OS
    • Mobile Application: User-facing application interface
    • Local Storage: Database and cache for offline functionality

    2. Middleware Layer

    • Communication Protocols: HTTP/HTTPS, TCP/IP, WebSocket
    • Synchronization Services: Data sync between client and server
    • Security Services: Encryption, authentication, authorization
    • API Gateway: Manages API requests and responses

    3. Server Layer (Backend)

    • Application Server: Processes business logic
    • Web Server: Handles HTTP requests
    • Database Server: Stores and manages data
    • Authentication Server: Manages user credentials and sessions

    4. Network Layer

    • Wireless Networks: WiFi, 4G/5G, Bluetooth
    • Network Management: Handles connectivity and handover between networks
    • Quality of Service (QoS): Ensures reliable data transmission

    5. Data Layer

    • Cloud Storage: Remote data storage and backup
    • Database Management: Relational or NoSQL databases
    • Data Synchronization: Keeps data consistent across devices

    Key Characteristics of Mobile Architecture:

    • Lightweight: Optimized for limited resources
    • Offline Capability: Functions without constant connectivity
    • Security: Protects sensitive user data
    • Scalability: Handles growing user base
    • Cross-platform Compatibility: Works across different devices and OS

    This layered architecture enables efficient communication between mobile clients and backend services while managing resource constraints inherent to mobile devices.

  2. 210 marksUI elements and componentsAnswer

    Describe the elements of user interface. How do you design right UI? Explain.[10]

    Model Answer: Elements of User Interface and UI Design

    Elements of User Interface

    A user interface (UI) comprises several key components that enable interaction between users and computer systems:

    1. Input Devices/Controls

    • Text fields, buttons, checkboxes, radio buttons
    • Dropdown menus, sliders, and input boxes
    • Allow users to provide commands and data to the system

    2. Output Display Elements

    • Windows, dialog boxes, and panels
    • Labels, icons, and images
    • Text areas and status bars
    • Convey information and feedback to users

    3. Navigation Components

    • Menus (main, context, dropdown)
    • Toolbars and navigation bars
    • Breadcrumbs and tabs
    • Help users move through the application

    4. Feedback Mechanisms

    • Error messages and alerts
    • Progress indicators
    • Tooltips and help text
    • Confirm user actions and system status

    5. Layout and Organization

    • Logical grouping of related elements
    • Consistent spacing and alignment
    • Visual hierarchy to guide attention

    How to Design the Right UI

    1. User-Centered Design

    • Understand user needs, goals, and behaviors
    • Conduct user research and usability testing
    • Design for the target audience, not for developers

    2. Consistency

    • Use consistent terminology, colors, and layouts
    • Follow established design patterns and conventions
    • Maintain uniform button sizes, fonts, and spacing across the application

    3. Simplicity and Clarity

    • Minimize cognitive load by reducing unnecessary elements
    • Use clear, concise language
    • Avoid clutter; follow the principle of "less is more"
    • One primary action per screen when possible

    4. Accessibility

    • Ensure readable font sizes and high contrast
    • Provide keyboard navigation alternatives
    • Support screen readers and assistive technologies
    • Design for users with varying abilities

    5. Feedback and Responsiveness

    • Provide immediate visual feedback for user actions
    • Use loading indicators for long operations
    • Display clear error messages with solutions
    • Confirm critical actions before execution

    6. Efficiency

    • Minimize steps to complete tasks
    • Provide shortcuts for experienced users
    • Use progressive disclosure (show advanced options only when needed)
    • Remember user preferences and previous actions

    7. Aesthetic Appeal

    • Use appropriate color schemes and typography
    • Maintain visual balance and harmony
    • Follow modern design trends while ensuring timelessness
    • Use whitespace effectively

    8. Testing and Iteration

    • Conduct usability testing with real users
    • Gather feedback and iterate on designs
    • A/B test different UI approaches
    • Monitor user behavior and analytics

    Summary

    Effective UI design balances functionality, usability, and aesthetics. By understanding user needs, maintaining consistency, ensuring clarity, and continuously testing, designers create interfaces that are intuitive, efficient, and pleasant to use. The goal is to make technology accessible and enjoyable for all users.

  3. 310 marksMobile TCP protocolAnswer

    What is mobile TCP? Explain the methods for testing mobile applications.[10]

    Mobile TCP and Testing Methods for Mobile Applications

    Mobile TCP (5 marks)

    Definition

    Mobile TCP refers to the adaptation and optimization of the standard TCP (Transmission Control Protocol) to work effectively in mobile and wireless network environments where traditional TCP performs poorly.

    Why Mobile TCP is Needed

    Standard TCP was designed for wired networks with:

    • Low latency
    • Low error rates
    • Stable connections

    Mobile networks have:

    • High latency and variable delays
    • Higher packet loss rates
    • Frequent disconnections
    • Bandwidth fluctuations
    • User mobility

    Key Characteristics of Mobile TCP

    1. Congestion Control Adaptation

    • Standard TCP interprets all packet losses as congestion
    • Mobile networks lose packets due to wireless errors, not congestion
    • Mobile TCP distinguishes between congestion loss and wireless loss

    2. Handling Disconnections

    • Maintains connection state during temporary disconnections
    • Allows seamless reconnection without resetting TCP state
    • Implements local retransmission at base stations

    3. Bandwidth Management

    • Adapts to varying bandwidth availability
    • Implements selective acknowledgments (SACK)
    • Uses adaptive timeout mechanisms

    Methods for Testing Mobile Applications (5 marks)

    1. Functional Testing

    • Verify core features work correctly on target devices
    • Test user interface responsiveness
    • Validate business logic and workflows

    2. Performance Testing

    • Measure application response time
    • Monitor CPU and memory usage
    • Test battery consumption
    • Evaluate network bandwidth utilization

    3. Compatibility Testing

    • Test across different devices (phones, tablets)
    • Verify functionality on various OS versions (Android, iOS)
    • Test on different screen sizes and resolutions

    4. Network Testing

    • Test behavior under different network conditions (WiFi, 3G, 4G, 5G)
    • Simulate network latency and packet loss
    • Test application behavior during network transitions
    • Verify offline functionality

    5. Usability Testing

    • Evaluate user interface intuitiveness
    • Test touch gestures and interactions
    • Verify accessibility features
    • Assess user experience on small screens

    6. Security Testing

    • Test data encryption and transmission security
    • Verify authentication mechanisms
    • Test authorization controls
    • Check for vulnerabilities in data storage

    7. Installation and Update Testing

    • Test application installation process
    • Verify update mechanisms
    • Test uninstallation and cleanup

    8. Interruption Testing

    • Test behavior when calls interrupt the app
    • Verify recovery from app suspension
    • Test handling of notifications

    Note: Reference notes were not provided for this topic. The answer is based on standard computer science knowledge of mobile networking and software testing practices aligned with typical BSc CSIT curriculum.

  4. 45 marksFrequency spectrum and allocationAnswer

    Define frequency spectrum. Compare 2G, 3G and 4G. [5]

    Model Answer: Frequency Spectrum and Mobile Generations (5 marks)

    Definition of Frequency Spectrum

    The frequency spectrum is the range of frequencies available for wireless communication, typically measured in Hertz (Hz). It represents the electromagnetic frequencies allocated by regulatory authorities for different communication services such as mobile networks, broadcasting, and satellite communications. The spectrum is a finite resource that must be efficiently allocated and managed.


    Comparison of 2G, 3G, and 4G

    Aspect2G3G4G (LTE)
    TechnologyGSM (Global System for Mobile)WCDMA/UMTS (Wideband CDMA)LTE (Long Term Evolution)
    Data Rate9.6-14.4 kbps384 kbps - 2 Mbps100 Mbps - 1 Gbps
    Frequency Band900 MHz, 1800 MHz800 MHz, 900 MHz, 1800 MHz, 2100 MHz700 MHz - 2600 MHz
    ModulationTDMA/FDMACDMAOFDMA (Orthogonal Frequency Division Multiple Access)
    Core NetworkCircuit-switchedPacket-switched (mixed)Fully packet-switched (IP-based)
    LatencyHigh (~100-500 ms)Medium (~100-200 ms)Low (~50 ms)
    ApplicationsVoice, SMSVoice, Video calls, Mobile dataHigh-speed internet, HD video, IoT
    Spectrum EfficiencyLowMediumHigh

    Key Differences Summary

    • 2G was primarily voice-oriented with limited data capability
    • 3G introduced mobile broadband with improved data speeds
    • 4G provides ultra-high-speed data with lower latency, enabling multimedia streaming and real-time applications
  5. 55 marksMaps integration in mobile applicationsAnswer

    How do you integrate maps and locations in mobile app? Explain. [5]

    To integrate maps and locations, developers use third-party map services and their corresponding APIs: - Google Maps API - Most widely used for Android and web platforms - Apple Maps - Native for iOS applications - Mapbox - Alternative o...

  6. 65 marksMobile development frameworks and toolsAnswer

    Describe any three mobile application development frameworks. [5]

    Since reference notes are not provided, this answer draws on standard CS knowledge of widely-used mobile frameworks: React Native is a cross-platform framework developed by Facebook that allows developers to build mobile applications usi...

  7. 75 marksData synchronization in mobile applicationAnswer

    Explain the synchronization and replication of mobile data. [5]

    Model Answer: Synchronization and Replication of Mobile Data

    Definition and Context

    Data synchronization in mobile systems refers to the process of keeping data consistent across multiple copies stored on different devices (mobile device, server, other clients). Data replication is the technique of maintaining multiple copies of data across distributed locations to ensure availability and reliability.

    Key Aspects of Mobile Data Synchronization

    1. Purpose of Synchronization

    • Ensures consistency between mobile device local storage and remote server
    • Maintains data integrity when users work offline
    • Resolves conflicts when the same data is modified on multiple devices
    • Enables seamless transition between online and offline modes

    2. Synchronization Mechanisms

    Pull-based Synchronization:

    • Mobile device requests updates from server
    • Device checks for changes at intervals
    • Reduces server load but may have latency

    Push-based Synchronization:

    • Server notifies mobile device of updates
    • More immediate but requires persistent connection
    • Higher resource consumption

    Bi-directional Synchronization:

    • Changes flow both from device to server and server to device
    • Most common in modern mobile applications

    3. Data Replication Strategy

    • Master-Slave Model: Server holds authoritative copy; mobile devices hold replicas
    • Eventual Consistency: Replicas become consistent over time rather than immediately
    • Partial Replication: Only relevant/frequently-used data replicated locally on mobile device

    4. Conflict Resolution

    When same data modified on multiple devices:

    • Last-write-wins: Most recent change overwrites others
    • Version vectors/timestamps: Track modification history
    • User intervention: Prompt user to choose correct version

    5. Challenges

    • Limited bandwidth and intermittent connectivity
    • Battery constraints during sync operations
    • Storage limitations on mobile devices
    • Network latency and failures

    In summary: Mobile data synchronization and replication maintain data consistency across distributed devices through coordinated update mechanisms, while handling offline scenarios and resolving conflicts that arise in disconnected environments.

  8. 85 marksVoice UI advantages and implementationAnswer

    What do you mean by generic UI? Explain the advantages of voice UI on mobile app. [5]

    Model Answer: Generic UI and Voice UI Advantages

    Generic UI (2 marks)

    Generic UI refers to a user interface design approach that is platform-independent and adaptable across multiple devices and operating systems.

    A generic UI is designed with:

    • Universal design principles that work across different screen sizes, resolutions, and input methods
    • Flexible layouts that can scale and reflow without losing functionality
    • Standard UI components that are recognizable and usable on any platform (web, mobile, desktop, etc.)
    • Minimal platform-specific customization, allowing the same interface logic to function across iOS, Android, web browsers, and other platforms

    This approach reduces development time and maintenance costs by avoiding the need to build separate UIs for each platform.


    Advantages of Voice UI on Mobile Apps (3 marks)

    Voice User Interface (VUI) offers several key advantages for mobile applications:

    1. Hands-Free Operation

      • Users can interact with the app without touching the screen
      • Useful while driving, cooking, or performing other tasks requiring both hands
      • Improves accessibility for users with motor disabilities
    2. Faster Interaction

      • Voice commands are often quicker than typing or navigating menus
      • Reduces the number of taps/swipes needed to complete tasks
      • Improves user efficiency, especially for complex queries
    3. Natural Communication

      • Voice is the most natural form of human communication
      • Lower learning curve for new users
      • More intuitive than memorizing button locations or menu hierarchies
    4. Accessibility

      • Enables use by visually impaired users
      • Supports users with limited literacy
      • Reduces screen dependency
    5. Reduced Screen Fatigue

      • Minimizes eye strain from prolonged screen use
      • Particularly valuable for extended mobile app usage
  9. 95 marksNon-GPS location solutionsAnswer

    What do you mean by non GPS solution? Discuss about mobile eco system. [5]

    Model Answer: Non-GPS Solution and Mobile Ecosystem

    Non-GPS Solution

    Non-GPS solutions refer to alternative positioning and location-based technologies that do not rely on Global Positioning System (GPS) satellites. These are methods used to determine the location of mobile devices and users when GPS is unavailable, unreliable, or unsuitable.

    Common Non-GPS Solutions:

    1. Cell-based Positioning (Network-based)

      • Uses cellular tower triangulation
      • Determines location based on signal strength from multiple base stations
      • Less accurate than GPS but works indoors
    2. WiFi Positioning

      • Uses WiFi access point signal strength
      • Maintains database of WiFi hotspot locations
      • Suitable for indoor navigation
    3. Bluetooth/BLE (Bluetooth Low Energy)

      • Short-range positioning technology
      • Used for proximity-based services
      • Energy efficient for mobile devices
    4. Assisted GPS (A-GPS)

      • Combines GPS with network assistance
      • Faster acquisition and improved accuracy
      • Uses cellular network for initial position estimate

    Mobile Ecosystem

    The mobile ecosystem comprises all interconnected components, services, and stakeholders that enable mobile computing and communication.

    Key Components:

    1. Hardware Layer

      • Mobile devices (smartphones, tablets)
      • Network infrastructure (base stations, routers)
      • Sensors and processors
    2. Software Layer

      • Operating systems (Android, iOS)
      • Applications and middleware
      • System utilities and drivers
    3. Service Providers

      • Telecom operators
      • Internet service providers
      • Content and application providers
    4. Users and Developers

      • End users
      • Application developers
      • Device manufacturers

    Characteristics:

    • Highly interconnected and interdependent
    • Rapidly evolving with new technologies
    • Supports diverse applications (communication, commerce, entertainment)
    • Enables ubiquitous computing and connectivity
  10. 105 marksWAP proxies and gatewaysAnswer

    Explain about WAP proxies and gateways. [5]

    WAP (Wireless Application Protocol) proxies and gateways are intermediary servers that act as bridges between mobile devices and internet content servers. They translate, compress, and optimize data for transmission over wireless network...

  11. 115 marksText to speech techniquesAnswer

    What are form factors? Describe about text to speech techniques. [5]

    Form factors refer to the physical size, shape, and design specifications of computing devices. They define how a device is constructed and what physical space it occupies. Common form factors include: - Desktop - Full-sized computers wi...

  12. 125 marksGSM and CDMA technologiesAnswer

    What is mobile IP network? Differentiate between GSM and CDMA. [5]

    Mobile IP is a protocol that allows mobile devices (mobile nodes) to maintain continuous network connectivity and seamless communication while moving between different networks or subnets. Key characteristics: - Enables a mobile device t...