Lecture7 - Software-Construction-BSSE5

Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 19

Software Construction

(Lecture 7)
Concept of Mobile Applications, Tools, and Trends
Mobile Application Development Process
• Initiation
• Design
• Development
• Acceptance
• Support
Initiation
• Initiation talks about the transition of the project from sales team to
technical team
• Where they do initial project kick off with the client and sales team to
understand the requirement.
DESIGN
• PROCESS FLOW
• The Process Flow chart provides a visual representation of the steps in a
process.
• Flow charts are also referred to as Process Mapping or Flow Diagrams.
• WIRE FRAME
• Elements visible on each of the screen of the mobile application are discussed
and noted down as wireframes.
DESIGN
• STORYBOARD
• Everything including the images to be shown, icons appearing, theme, color,
background, etc is a part of storyboard.
• ARCHITECTURE DESIGN
• Planning and development of application architecture is performed.
• Coding is done to transform the idea to a real application.
• TEST PLANNING
• The application is tested for bugs by running various programs, performing
checks at different conditions to ensure it is robust and flawless.
DEVELOPMENT
• PROTOTYPE
• The app is still in proof-of-concept phase and only core functionality, or
specific parts of the application are working.
• Major bugs are possible.
• ALPHA
• Core functionality is generally completed (built, but no fully tested).
• Major bugs are still possible in ALPHA release
• Outlying functionality may still not be present.
DEVELOPMENT
• BETA
• Most of the functionality completed in this release.
• Implementation of some light testing and bug fixing.
• Major known issues may still be present.
• RELEASE CANDIDATE
• All functionality is completed and tested.
• With the exception of new bugs.
TESTING
• FINAL BUILD
• It’s incredibly important to test your application early and often on actual
devices.
• Even devices with the same hardware specs can vary widely in their behavior.
• FINAL RELEASE
• Thoroughly tested the application during this phase
• Finally made available to end users.
SUPPORT
• Customer support is a range of customer services to assist customers
in making cost effective and correct use of a product.
• It includes assistance in planning, installation, training,
troubleshooting, maintenance, upgrading, and disposal of a product.
What A Client Wants??
• Fast And Transparent Communication
• Excellent UI/UX Designs
• Bug Free Coding
• ROI (Return on Investment) Optimization
• Tech Expertise
• Fast Time to Market
• Customer Support or Life Time Support
Benefits of Mobile Apps
• Business point of view • Customers / Users point of view
• Accessibility • Easy to Use
• Loyalty and Customer Retention • Instant notifications
• Visibility • Different apps with different
• Brand Recognition benefits
• One stop interaction platform • Time effectiveness
• Information on finger tips
3 Types of Mobile Apps
• Web Apps
• Runs on web browsers on mobile phones (Chrome, Mozilla Firefox, Safari)
• Build using HTML / CSS / JavaScript
• Advantages
• Easy to build and maintain
• Use any web technology / web programming language
• Cheaper than native and hybrid apps
• Single app for all platforms
• Disadvantages
• Need to run in a browser (High level dependency)
• Slower than native apps
• Less interactive and less intuitive
• No application start icon on mobile desktop (Bad user experience)
• Cannot be submitted to app store
• Cannot interact with device utilities
Responsive Web Apps
3 Types of Mobile Apps
• Native Apps
• Most common types of mobile apps
• Build for specific platform (Android, iOS, Windows Phones)
• Build using native programming languages (Java, Swift, Objective C)
• Advantages:
• Faster than web and hybrid apps
• Distributed in app store
• Interactive and intuitive
• Interacts with device utilities
3 Types of Mobile Apps
• Native Apps
• Disadvantages:
• Single platform
• Developed in complex and harder programming languages
• Expensive
• Hard to maintain
3 Types of Mobile Apps
• Hybrid Mobile Apps
• Combination of web and native mobile apps
• Build in HTML / CSS / JavaScript
• Runs inside of container / webview
• Advantages:
• Easy to build
• Much cheaper than native apps
• Single app for all platforms (Cross-platform apps)
• No browser needed
• Usually access device utilities using APIs
• Faster to develop than native apps
3 Types of Mobile Apps
• Hybrid Mobile Apps
• Disadvantages:
• Slightly slower than native apps
• More expensive than web apps
• Less interactive than native apps
• Not as many plugins to interact with devices
3 Types of Mobile Apps
Technologies for Hybrid Apps
• React Native
• Flutter
• Xamrine
• Ionic
• Mobile Angular UI
• Cordova / Phonegap
• Sencha Touch

You might also like