SlideShare ist ein Scribd-Unternehmen logo
1 von 9
Downloaden Sie, um offline zu lesen
www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 1 of 9
Case Study
Password Security System
www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 2 of 9
This is a Mobile application created to run on both
iOS (iphone / iPad) and Android (SmartPhones /
Tablets)-based operating systems. This application
can be used for multiple purposes including
corporate meetings and e-learning. Client wanted to
launch an innovative concept of automatic video
creation out of text written on the board. The
application is also capable of capturing audio.
PasswordBoss is a free password manager that
allows users to securely store, retrieve and share
usernames, passwords and other personal data
anytime, anywhere, on any device.
Client Requirement Client required the following:
 1-Tap login to mobile apps
and websites.
 Automatically saves your
logins while you browse
 Passwords encryption with
AES-256, the strongest
grade of encryption
 Secure SSL protection for
data during sync between
devices
 Create new strong
passwords and save them
while you browse
 Locked with a Master
Password that only YOU
know
 Optional Pin Code Lock for
additional security
 Secure password sharing
and management, for
sharing passwords with co-
workers or family
 Instant Login to your
accounts using our secure
in-app browser
 Encrypted Safe Notes for
sensitive personal
information
 Customizable StartPage for
accessing your most-
visited sites with 1-Tap
 Auto-Lock function to
safeguard against theft
ProjectChallenges
Team faced the following challenges:
 Recording of audio and text in the background to create MPEG Video.
 Timely Audio-video synchronization
 Sync between web application and phone device.
 Smooth writing on the board while video recording is occurring.
www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 3 of 9
Technologies Used
Manpower
IOS SDK: Xcode 5.1 Xcode is a tool, also called as IDE, used to develop iOS and Mac
applications. It is a main component of Xcode toolset. It groups most
of the tool needed to develop software in a streamlined and interactive
manner.
Core Data Framework The Core Data framework provides generalized and automated
solutions to common tasks associated with object life-cycle and object
graph management, including persistence.
Database: SQLite The SQLite database is a small, compact, and self-contained database
available on multiple platforms and available to the public. It has a
small footprint and is easy to install and administer. In addition, many
devices have the SQLite database already installed, including Android
and Blackberry devices.
Encryption: SQLCipher SQLCipher is an open source extension to SQLite that provides
transparent 256-bit AES encryption of database files.
Android ADT Eclipse
Plugin
Android Development Tools (ADT) is a plugin for the Eclipse IDE that
is designed to give you a powerful, integrated environment in which to
build Android applications.
Programing Languages IOS: Objective C
Android : Java
MVC The model–view–controller framework separates the representation of
information in a computer program from the user's interaction with
it.The model consists of application data and business rules, and the
controller mediates input, converting it to commands for the model or
view.
Project Leader 1
Developers 6
Designers 1
Quality Assurance Testers 2
www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 4 of 9
Planning
The following development approach was adopted to equip the site with numerous
features and functionality mentioned before:
 Development – High Level Coding Standards were followed for managing backup data volume.
Simultaneously, synchronization with server for recent data modulations was also performed.
 Syncing existing and newly available data for backup with our database required specific
attention. This helped in result generation.
 Designing the application interaction and flow for user-friendliness and interactivity.
 Introduced high level of server and data fetching technology.
 Syncing existing and newly available data for backup with our database required specific
attention. This helped in result generation.
 Maintained consistency in Graphical appearance with the help of given wireframe.
 Milestones were defined to complete each inter-linked assignment. Continuous data
synchronization between the mobile device and server was required at every interval.
 Research and analysis were scheduled at every project level to effectively manage the quality
and workflow processes for better and improved performance.
Architecture
 IOS
 Application Life Cycle
The application life cycle constitutes the sequence of events that occurs between the launch and
termination of your application. In iPhone/iPad OS, the user launches the application by tapping its
icon on the Home screen. Shortly after the tap occurs, the system displays some transitional
graphics and proceeds to launch your application by calling its main function. From this point on,
the bulk of the initialization work is handed over to UIKit, which loads the application’s user
interface and readies its event loop. During the event loop, UIKit coordinates the delivery of events
to your custom objects and responds to commands issued by your application. When the user
performs an action that would cause your application to quit, UIKit notifies your application and
begins the termination process.
The following figure depicts the simplified life cycle of an iPhone application. This diagram shows
the sequence of events that occur from the time the application starts up to the time it quits. At
initialization and termination, UIKit sends specific messages to the application’s delegate object to
let it know what is happening. During the event loop, UIKit dispatches events to your application’s
custom event handlers.
www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 5 of 9
Figure: Application life cycle
 Event Handling Cycle
After the UIApplication main function initializes the application, it starts the infrastructure needed
to manage the application’s event and drawing cycle, which is depicted in the following figure. As
the user interacts with a device, iPhone/iPad OS detects touch events and places them in the
application’s event queue. The event-handling infrastructure of the UIApplication object takes each
event off the top of this queue and delivers it to the object that best suited to handle it. For
example, a touch event occurring in a button would be delivered to the corresponding button
object. Events can also be delivered to controller objects and other objects indirectly responsible
for handling touch events in the application.
Figure: The event and drawing cycle
In the iPhone OS Multi-Touch event model, touch data is encapsulated in a single event object
(UIEvent). To track individual touches, the event object contains touch objects (UITouch), one for
each finger that is touching the screen. As the user places fingers on the screen, moves them
www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 6 of 9
around, and finally removes them from the screen, the system reports the changes for each finger
in the corresponding touch object.
When it launches an application, the system creates both a process and a single thread for that
application. This initial thread becomes the application’s main thread and is where the
UIApplication object sets up the main run loop and configures the application’s event-handling
code. Figure shows the relationship of the event-handling code to the main run loop. Touch events
sent by the system are queued until they can be processed by the application’s main run loop.
Figure: Processing events in the main run loop
 The MVC Architecture is a combination of Model-View-Controller.
1. Model: The model object knows about all the data that need to be displayed. It is model
who is aware about all the operations that can be applied to transform that object. It only
represents the data of an application. The model represents enterprise data and the business
rules that govern access to and updates of this data. Model is not aware about the
presentation data and how that data will be displayed to the browser.
2. View: The view represents the presentation of the application. The view object refers to the
model. It uses the query methods of the model to obtain the contents and renders it. The
view is not dependent on the application logic. It remains same if there is any modification in
the business logic. In other words, we can say that it is the responsibility of the view's to
maintain the consistency in its presentation when the model changes.
3. Controller: Whenever the user sends a request for something then it always go through the
controller. The controller is responsible for intercepting the requests from view and passes it
to the model for the appropriate action. After the action has been taken on the data, the
controller is responsible for directing the appropriate view to the user. In GUIs, the views
and the controllers often work very closely together.
www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 7 of 9
Android
 Android Architecture Diagram:
 The above figure shows the diagram of Android Architecture.
 The Android OS can be referred to as a software stack of different layers, where each layer
is a group of several program components.
 Together it includes operating system, middleware and important applications.
 Each layer in the architecture provides different services to the layer just above it. We will
examine the features of each layer in detail.
www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 8 of 9
 Linux Kernel
 The basic layer is the Linux kernel.
 The whole Android OS is built on top of the Linux 2.6 or higher Kernel with some further
architectural changes made by Google.
 It is this Linux that interacts with the hardware and contains all the essential hardware
drivers.
 Drivers are programs that control and communicate with the hardware. For example,
consider the Bluetooth function.
 All devices has a Bluetooth hardware in it. Therefore the kernel must include a Bluetooth
driver to communicate with the Bluetooth hardware.
 The Linux kernel also acts as an abstraction layer between the hardware and other
software layers.
 Android uses the Linux for all its core functionality such as Memory management, process
management, networking, security settings etc.
 As the Android is built on a most popular and proven foundation, it made the porting of
Android to variety of hardware, a relatively painless task.
 Libraries
 The next layer is the Android’s native libraries. It is this layer that enables the device to
handle different types of data.
 These libraries are written in java language and are specific for a particular hardware.
 Some of the important native libraries include the following:
o Surface Manager: It is used for compositing window manager with off-screen buffering. Off-screen buffering
means you can’t directly draw into the screen, but your drawings go to the off-screen buffer. There it is
combined with other drawings and form the final screen the user will see. This off screen buffer is the reason
behind the transparency of windows.
o Media framework: Media framework provides different media codecs allowing the recording and playback of
different media formats
o SQLite: SQLite is the database engine used in android for data storage purposes
o WebKit: It is the browser engine used to display HTML content
o OpenGL: Used to render 2D or 3D graphics content to the screen
 Android Runtime
 Android Runtime consists of Dalvik Virtual machine and Core Java libraries.
 Dalvik Virtual Machine
 It is a type of JVM used in android devices to run apps and is optimized for low processing
power and low memory environments.
 Unlike the JVM, the Dalvik Virtual Machine doesn’t run .class files, instead it runs .dex files.
.dex files are built from .class file at the time of compilation and provideshifger efficiency in
low resource environments.
 The Dalvik VM allows multiple instance of Virtual machine to be created simultaneously
providing security, isolation, memory management and threading support. It is developed
by Dan Bornstein of Google.
 Core Java Libraries
 These are different from Java SE and Java ME libraries. However these libraries provides
most of the functionalities defined in the Java SE libraries.
 Application Framework
 These are the blocks that our applications directly interacts with. These programs manage
the basic functions of phone like resource management, voice call management etc. As a
developer, you just consider these are some basic tools with which we are building our
applications.
 Important blocks of Application framework are:
o Activity Manager: Manages the activity life cycle of applications
www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 9 of 9
Content Providers: Manage the data sharing between applications
o Telephony Manager: Manages all voice calls. We use telephony manager if we want to
access voice calls in our application.
o Location Manager: Location management, using GPS or cell tower
o Resource Manager: Manage the various types of resources we use in our Application
DevelopmentHighlights
 This application for iPad is built around objective C and core data framework. This application
was also made compatible to iOSsdk 5.1 at a later stage. Almost all the modules are developed
using foundation, core graphics, UIKIT and AVAssetWriter framework. All the user interface
items are placed in view controllers and are linked with the controller files project along with
the outlets, actions of the UI element. Integration of various 3rd party tools was required. The
App was developed and fully functional within a span of 5 months.
 Special focus on interactivity and user friendliness of the app while designing the Android and
IOS application.
 Mobile and Tablet Compatibility with a single application build
 Database Encryption at Local and Server Side
 Agile development strategies implemented using various proven tools thus ensuring quick and
effective solutions.
 Optimal usage of open source technologies to reduce the total cost of android application
development.
 Unit testing applied to ensure the quality of the application.

Weitere ähnliche Inhalte

Was ist angesagt?

DEVELOPING CUSTOM APPS USING DYNAMIC XML PARSING
DEVELOPING CUSTOM APPS USING DYNAMIC XML PARSINGDEVELOPING CUSTOM APPS USING DYNAMIC XML PARSING
DEVELOPING CUSTOM APPS USING DYNAMIC XML PARSINGJournal For Research
 
Apple iPhone App Programming Guide
Apple iPhone App Programming GuideApple iPhone App Programming Guide
Apple iPhone App Programming GuideYusuf Karoma
 
Android Capstone Project, Final Deliverable Documentation
Android Capstone Project, Final Deliverable DocumentationAndroid Capstone Project, Final Deliverable Documentation
Android Capstone Project, Final Deliverable DocumentationNate Betz
 
Building solutions on the Microsoft platform that target iPhone, iPad, and An...
Building solutions on the Microsoft platform that target iPhone, iPad, and An...Building solutions on the Microsoft platform that target iPhone, iPad, and An...
Building solutions on the Microsoft platform that target iPhone, iPad, and An...Simon Guest
 
Online News Portal System
Online News Portal SystemOnline News Portal System
Online News Portal SystemRajib Roy
 
CSE Final Year Project Presentation on Android Application
CSE Final Year Project Presentation on Android ApplicationCSE Final Year Project Presentation on Android Application
CSE Final Year Project Presentation on Android ApplicationAhammad Karim
 
Internship Project Report
Internship Project ReportInternship Project Report
Internship Project ReportRishabh Shukla
 
Loyalty & Rewards Points Application on your mobile, iPhone, Android
Loyalty & Rewards Points Application on your mobile, iPhone, AndroidLoyalty & Rewards Points Application on your mobile, iPhone, Android
Loyalty & Rewards Points Application on your mobile, iPhone, AndroidMike Taylor
 
Android Application Development for Intel Platform
Android Application Development for Intel PlatformAndroid Application Development for Intel Platform
Android Application Development for Intel PlatformAtifAliHaral
 
Location Tracking of Android Device Based on SMS.
Location Tracking of Android Device Based on SMS.Location Tracking of Android Device Based on SMS.
Location Tracking of Android Device Based on SMS.iCreateWorld
 
Android Application Development Using Java
Android Application Development Using JavaAndroid Application Development Using Java
Android Application Development Using Javaamaankhan
 
Android Security: A Survey of Security Issues and Defenses
Android Security: A Survey of Security Issues and DefensesAndroid Security: A Survey of Security Issues and Defenses
Android Security: A Survey of Security Issues and DefensesIRJET Journal
 
Know all about android development
Know all about android developmentKnow all about android development
Know all about android developmentDeepika Chaudhary
 
Detect sqli attacks in web apps using nvs
Detect sqli attacks in web apps using nvsDetect sqli attacks in web apps using nvs
Detect sqli attacks in web apps using nvsijcseit
 

Was ist angesagt? (18)

Android report
Android reportAndroid report
Android report
 
DEVELOPING CUSTOM APPS USING DYNAMIC XML PARSING
DEVELOPING CUSTOM APPS USING DYNAMIC XML PARSINGDEVELOPING CUSTOM APPS USING DYNAMIC XML PARSING
DEVELOPING CUSTOM APPS USING DYNAMIC XML PARSING
 
Dm36678681
Dm36678681Dm36678681
Dm36678681
 
Apple iPhone App Programming Guide
Apple iPhone App Programming GuideApple iPhone App Programming Guide
Apple iPhone App Programming Guide
 
Android Capstone Project, Final Deliverable Documentation
Android Capstone Project, Final Deliverable DocumentationAndroid Capstone Project, Final Deliverable Documentation
Android Capstone Project, Final Deliverable Documentation
 
Building solutions on the Microsoft platform that target iPhone, iPad, and An...
Building solutions on the Microsoft platform that target iPhone, iPad, and An...Building solutions on the Microsoft platform that target iPhone, iPad, and An...
Building solutions on the Microsoft platform that target iPhone, iPad, and An...
 
Online News Portal System
Online News Portal SystemOnline News Portal System
Online News Portal System
 
CSE Final Year Project Presentation on Android Application
CSE Final Year Project Presentation on Android ApplicationCSE Final Year Project Presentation on Android Application
CSE Final Year Project Presentation on Android Application
 
Internship Project Report
Internship Project ReportInternship Project Report
Internship Project Report
 
Loyalty & Rewards Points Application on your mobile, iPhone, Android
Loyalty & Rewards Points Application on your mobile, iPhone, AndroidLoyalty & Rewards Points Application on your mobile, iPhone, Android
Loyalty & Rewards Points Application on your mobile, iPhone, Android
 
Android Application Development for Intel Platform
Android Application Development for Intel PlatformAndroid Application Development for Intel Platform
Android Application Development for Intel Platform
 
Location Tracking of Android Device Based on SMS.
Location Tracking of Android Device Based on SMS.Location Tracking of Android Device Based on SMS.
Location Tracking of Android Device Based on SMS.
 
Android Application Development Using Java
Android Application Development Using JavaAndroid Application Development Using Java
Android Application Development Using Java
 
Android Security: A Survey of Security Issues and Defenses
Android Security: A Survey of Security Issues and DefensesAndroid Security: A Survey of Security Issues and Defenses
Android Security: A Survey of Security Issues and Defenses
 
20120130406025
2012013040602520120130406025
20120130406025
 
Android Report
Android ReportAndroid Report
Android Report
 
Know all about android development
Know all about android developmentKnow all about android development
Know all about android development
 
Detect sqli attacks in web apps using nvs
Detect sqli attacks in web apps using nvsDetect sqli attacks in web apps using nvs
Detect sqli attacks in web apps using nvs
 

Andere mochten auch

Digital Media Across Asia - Government Uses Of Social Media
Digital Media Across Asia - Government Uses Of Social MediaDigital Media Across Asia - Government Uses Of Social Media
Digital Media Across Asia - Government Uses Of Social MediaCOMM215AY0910NZWiki
 
Career in IT - HMTIF UB Platform 2014
Career in IT - HMTIF UB Platform 2014Career in IT - HMTIF UB Platform 2014
Career in IT - HMTIF UB Platform 2014Eryk Budi Pratama
 
Incidence Tracking System for Media Companies - Times Group
Incidence Tracking System for Media Companies - Times GroupIncidence Tracking System for Media Companies - Times Group
Incidence Tracking System for Media Companies - Times GroupMike Taylor
 
job placement case study
job placement case studyjob placement case study
job placement case studygaggan sidhu
 
Toolbar Integrated With Directories Pertaining to Business
Toolbar Integrated With Directories Pertaining to BusinessToolbar Integrated With Directories Pertaining to Business
Toolbar Integrated With Directories Pertaining to BusinessMike Taylor
 
Emboldened Individuals/Platform Institutions
Emboldened Individuals/Platform InstitutionsEmboldened Individuals/Platform Institutions
Emboldened Individuals/Platform InstitutionsJohnCr8on
 
FundLinked™ - The Official Fund Placement Platform™
FundLinked™ - The Official Fund Placement Platform™FundLinked™ - The Official Fund Placement Platform™
FundLinked™ - The Official Fund Placement Platform™Michael Herlache, MBA
 

Andere mochten auch (8)

Digital Media Across Asia - Government Uses Of Social Media
Digital Media Across Asia - Government Uses Of Social MediaDigital Media Across Asia - Government Uses Of Social Media
Digital Media Across Asia - Government Uses Of Social Media
 
Career in IT - HMTIF UB Platform 2014
Career in IT - HMTIF UB Platform 2014Career in IT - HMTIF UB Platform 2014
Career in IT - HMTIF UB Platform 2014
 
Incidence Tracking System for Media Companies - Times Group
Incidence Tracking System for Media Companies - Times GroupIncidence Tracking System for Media Companies - Times Group
Incidence Tracking System for Media Companies - Times Group
 
job placement case study
job placement case studyjob placement case study
job placement case study
 
Base protection
Base protectionBase protection
Base protection
 
Toolbar Integrated With Directories Pertaining to Business
Toolbar Integrated With Directories Pertaining to BusinessToolbar Integrated With Directories Pertaining to Business
Toolbar Integrated With Directories Pertaining to Business
 
Emboldened Individuals/Platform Institutions
Emboldened Individuals/Platform InstitutionsEmboldened Individuals/Platform Institutions
Emboldened Individuals/Platform Institutions
 
FundLinked™ - The Official Fund Placement Platform™
FundLinked™ - The Official Fund Placement Platform™FundLinked™ - The Official Fund Placement Platform™
FundLinked™ - The Official Fund Placement Platform™
 

Ähnlich wie Password Security System Case Study

Application for Data Sync Between Different geo Locations
Application for Data Sync Between Different geo LocationsApplication for Data Sync Between Different geo Locations
Application for Data Sync Between Different geo LocationsMike Taylor
 
Community App for Promoting Cross-Cultural Interaction
Community App for Promoting Cross-Cultural InteractionCommunity App for Promoting Cross-Cultural Interaction
Community App for Promoting Cross-Cultural InteractionMike Taylor
 
Case study on tablet application for real time video, audio and ppt conversion
Case study on tablet application for real time video, audio and ppt conversionCase study on tablet application for real time video, audio and ppt conversion
Case study on tablet application for real time video, audio and ppt conversionGrey Matter India Technologies PVT LTD
 
Free advertising platform for businesses with IOS & Android Apps development
Free advertising platform for businesses with IOS & Android Apps developmentFree advertising platform for businesses with IOS & Android Apps development
Free advertising platform for businesses with IOS & Android Apps developmentMike Taylor
 
Free advertising platform for businesses with IOS & Android Apps development
Free advertising platform for businesses with IOS & Android Apps developmentFree advertising platform for businesses with IOS & Android Apps development
Free advertising platform for businesses with IOS & Android Apps developmentMike Taylor
 
demystifying_the_architectures_of_a_mobile_app_development.pdf
demystifying_the_architectures_of_a_mobile_app_development.pdfdemystifying_the_architectures_of_a_mobile_app_development.pdf
demystifying_the_architectures_of_a_mobile_app_development.pdfsarah david
 
Android Application For Decentralized Family Locator
Android Application For Decentralized Family LocatorAndroid Application For Decentralized Family Locator
Android Application For Decentralized Family LocatorIRJET Journal
 
Digitally Record videos & Track Incidents on IPAD Application
Digitally Record videos & Track Incidents on IPAD ApplicationDigitally Record videos & Track Incidents on IPAD Application
Digitally Record videos & Track Incidents on IPAD ApplicationMike Taylor
 
demystifying_the_architectures_of_a_mobile_app_development.pptx
demystifying_the_architectures_of_a_mobile_app_development.pptxdemystifying_the_architectures_of_a_mobile_app_development.pptx
demystifying_the_architectures_of_a_mobile_app_development.pptxsarah david
 
Rfid based job tracking mobile application
Rfid based job tracking mobile applicationRfid based job tracking mobile application
Rfid based job tracking mobile applicationMike Taylor
 
RFID Based Job Tracking Mobile Application that Eliminates Handwritten Notes
RFID Based Job Tracking Mobile Application that Eliminates Handwritten NotesRFID Based Job Tracking Mobile Application that Eliminates Handwritten Notes
RFID Based Job Tracking Mobile Application that Eliminates Handwritten NotesMike Taylor
 
Embedded Systems.pdf
Embedded Systems.pdfEmbedded Systems.pdf
Embedded Systems.pdfruvabebe
 
Session 7 - Overview of the iOS7 app development architecture
Session 7 - Overview of the iOS7 app development architectureSession 7 - Overview of the iOS7 app development architecture
Session 7 - Overview of the iOS7 app development architectureVu Tran Lam
 
OS in mobile devices [Android]
OS in mobile devices [Android]OS in mobile devices [Android]
OS in mobile devices [Android]Yatharth Aggarwal
 
Iphone app programming guide
Iphone app programming guideIphone app programming guide
Iphone app programming guideClickBank
 
Cloud computing in iot seminar report
Cloud computing in iot seminar reportCloud computing in iot seminar report
Cloud computing in iot seminar reportSKS
 
Btec Business Level 3 Unit 14 M1
Btec Business Level 3 Unit 14 M1Btec Business Level 3 Unit 14 M1
Btec Business Level 3 Unit 14 M1Rachel Phillips
 
Functional Requirements Of System Requirements
Functional Requirements Of System RequirementsFunctional Requirements Of System Requirements
Functional Requirements Of System RequirementsLaura Arrigo
 

Ähnlich wie Password Security System Case Study (20)

Application for Data Sync Between Different geo Locations
Application for Data Sync Between Different geo LocationsApplication for Data Sync Between Different geo Locations
Application for Data Sync Between Different geo Locations
 
Community App for Promoting Cross-Cultural Interaction
Community App for Promoting Cross-Cultural InteractionCommunity App for Promoting Cross-Cultural Interaction
Community App for Promoting Cross-Cultural Interaction
 
Case study on tablet application for real time video, audio and ppt conversion
Case study on tablet application for real time video, audio and ppt conversionCase study on tablet application for real time video, audio and ppt conversion
Case study on tablet application for real time video, audio and ppt conversion
 
ios basics
ios basicsios basics
ios basics
 
Free advertising platform for businesses with IOS & Android Apps development
Free advertising platform for businesses with IOS & Android Apps developmentFree advertising platform for businesses with IOS & Android Apps development
Free advertising platform for businesses with IOS & Android Apps development
 
Free advertising platform for businesses with IOS & Android Apps development
Free advertising platform for businesses with IOS & Android Apps developmentFree advertising platform for businesses with IOS & Android Apps development
Free advertising platform for businesses with IOS & Android Apps development
 
demystifying_the_architectures_of_a_mobile_app_development.pdf
demystifying_the_architectures_of_a_mobile_app_development.pdfdemystifying_the_architectures_of_a_mobile_app_development.pdf
demystifying_the_architectures_of_a_mobile_app_development.pdf
 
Android Application For Decentralized Family Locator
Android Application For Decentralized Family LocatorAndroid Application For Decentralized Family Locator
Android Application For Decentralized Family Locator
 
Digitally Record videos & Track Incidents on IPAD Application
Digitally Record videos & Track Incidents on IPAD ApplicationDigitally Record videos & Track Incidents on IPAD Application
Digitally Record videos & Track Incidents on IPAD Application
 
demystifying_the_architectures_of_a_mobile_app_development.pptx
demystifying_the_architectures_of_a_mobile_app_development.pptxdemystifying_the_architectures_of_a_mobile_app_development.pptx
demystifying_the_architectures_of_a_mobile_app_development.pptx
 
Rfid based job tracking mobile application
Rfid based job tracking mobile applicationRfid based job tracking mobile application
Rfid based job tracking mobile application
 
RFID Based Job Tracking Mobile Application that Eliminates Handwritten Notes
RFID Based Job Tracking Mobile Application that Eliminates Handwritten NotesRFID Based Job Tracking Mobile Application that Eliminates Handwritten Notes
RFID Based Job Tracking Mobile Application that Eliminates Handwritten Notes
 
Embedded Systems.pdf
Embedded Systems.pdfEmbedded Systems.pdf
Embedded Systems.pdf
 
iot
iotiot
iot
 
Session 7 - Overview of the iOS7 app development architecture
Session 7 - Overview of the iOS7 app development architectureSession 7 - Overview of the iOS7 app development architecture
Session 7 - Overview of the iOS7 app development architecture
 
OS in mobile devices [Android]
OS in mobile devices [Android]OS in mobile devices [Android]
OS in mobile devices [Android]
 
Iphone app programming guide
Iphone app programming guideIphone app programming guide
Iphone app programming guide
 
Cloud computing in iot seminar report
Cloud computing in iot seminar reportCloud computing in iot seminar report
Cloud computing in iot seminar report
 
Btec Business Level 3 Unit 14 M1
Btec Business Level 3 Unit 14 M1Btec Business Level 3 Unit 14 M1
Btec Business Level 3 Unit 14 M1
 
Functional Requirements Of System Requirements
Functional Requirements Of System RequirementsFunctional Requirements Of System Requirements
Functional Requirements Of System Requirements
 

Mehr von Mike Taylor

Latest trends for mobile apps development
Latest trends for mobile apps developmentLatest trends for mobile apps development
Latest trends for mobile apps developmentMike Taylor
 
Features of B2C Travel eCommerce system
Features of B2C Travel eCommerce systemFeatures of B2C Travel eCommerce system
Features of B2C Travel eCommerce systemMike Taylor
 
Steps to Grow Your eCommerce Business
Steps to Grow Your eCommerce BusinessSteps to Grow Your eCommerce Business
Steps to Grow Your eCommerce BusinessMike Taylor
 
Reasons to choose php for web application development
Reasons to choose php for web application developmentReasons to choose php for web application development
Reasons to choose php for web application developmentMike Taylor
 
Unique Shopoping Experience with eCommerce Gamification Extension
Unique Shopoping Experience with eCommerce Gamification Extension Unique Shopoping Experience with eCommerce Gamification Extension
Unique Shopoping Experience with eCommerce Gamification Extension Mike Taylor
 
Android Application Development with Apple's Swift Technology
Android Application Development with Apple's Swift TechnologyAndroid Application Development with Apple's Swift Technology
Android Application Development with Apple's Swift TechnologyMike Taylor
 
New Amazing Things about AngularJS 2.0
New Amazing Things about AngularJS 2.0New Amazing Things about AngularJS 2.0
New Amazing Things about AngularJS 2.0Mike Taylor
 
Gamification - The Trending Things of eCommerce Business
Gamification - The Trending Things of eCommerce BusinessGamification - The Trending Things of eCommerce Business
Gamification - The Trending Things of eCommerce BusinessMike Taylor
 
Gamification - Enhance Customers shopping experience with latest Big things i...
Gamification - Enhance Customers shopping experience with latest Big things i...Gamification - Enhance Customers shopping experience with latest Big things i...
Gamification - Enhance Customers shopping experience with latest Big things i...Mike Taylor
 
Benefit of Web Application Development with Zend Framework
Benefit of Web Application Development with Zend FrameworkBenefit of Web Application Development with Zend Framework
Benefit of Web Application Development with Zend FrameworkMike Taylor
 
The Importance Things of Full Stack Development
The Importance Things of Full Stack DevelopmentThe Importance Things of Full Stack Development
The Importance Things of Full Stack DevelopmentMike Taylor
 
Most useful features for windows 10 developer
Most useful features for windows 10 developerMost useful features for windows 10 developer
Most useful features for windows 10 developerMike Taylor
 
Have a look Google next operating system update : Android Marshmallow
Have a look Google next operating system update : Android MarshmallowHave a look Google next operating system update : Android Marshmallow
Have a look Google next operating system update : Android MarshmallowMike Taylor
 
Top 20 Questions Ask Before Hire Android App Development Company
Top 20 Questions Ask Before Hire Android App Development CompanyTop 20 Questions Ask Before Hire Android App Development Company
Top 20 Questions Ask Before Hire Android App Development CompanyMike Taylor
 
Multi vendor marketplace extension
Multi vendor marketplace extensionMulti vendor marketplace extension
Multi vendor marketplace extensionMike Taylor
 
25 Famous Websites using Wordpress
25 Famous Websites using Wordpress25 Famous Websites using Wordpress
25 Famous Websites using WordpressMike Taylor
 
Bring Healthcare to fingertips - How Apps changed Medical Industry
Bring Healthcare to fingertips - How Apps changed Medical IndustryBring Healthcare to fingertips - How Apps changed Medical Industry
Bring Healthcare to fingertips - How Apps changed Medical IndustryMike Taylor
 
Have you played this Symfony? Why Symfony is great choice for Web development
Have you played this Symfony? Why Symfony is great choice for Web developmentHave you played this Symfony? Why Symfony is great choice for Web development
Have you played this Symfony? Why Symfony is great choice for Web developmentMike Taylor
 
9 vitals in business websites
9 vitals in business websites9 vitals in business websites
9 vitals in business websitesMike Taylor
 
How Technology Can Change Real Estate Industry In 2015
How Technology Can Change Real Estate Industry In 2015How Technology Can Change Real Estate Industry In 2015
How Technology Can Change Real Estate Industry In 2015Mike Taylor
 

Mehr von Mike Taylor (20)

Latest trends for mobile apps development
Latest trends for mobile apps developmentLatest trends for mobile apps development
Latest trends for mobile apps development
 
Features of B2C Travel eCommerce system
Features of B2C Travel eCommerce systemFeatures of B2C Travel eCommerce system
Features of B2C Travel eCommerce system
 
Steps to Grow Your eCommerce Business
Steps to Grow Your eCommerce BusinessSteps to Grow Your eCommerce Business
Steps to Grow Your eCommerce Business
 
Reasons to choose php for web application development
Reasons to choose php for web application developmentReasons to choose php for web application development
Reasons to choose php for web application development
 
Unique Shopoping Experience with eCommerce Gamification Extension
Unique Shopoping Experience with eCommerce Gamification Extension Unique Shopoping Experience with eCommerce Gamification Extension
Unique Shopoping Experience with eCommerce Gamification Extension
 
Android Application Development with Apple's Swift Technology
Android Application Development with Apple's Swift TechnologyAndroid Application Development with Apple's Swift Technology
Android Application Development with Apple's Swift Technology
 
New Amazing Things about AngularJS 2.0
New Amazing Things about AngularJS 2.0New Amazing Things about AngularJS 2.0
New Amazing Things about AngularJS 2.0
 
Gamification - The Trending Things of eCommerce Business
Gamification - The Trending Things of eCommerce BusinessGamification - The Trending Things of eCommerce Business
Gamification - The Trending Things of eCommerce Business
 
Gamification - Enhance Customers shopping experience with latest Big things i...
Gamification - Enhance Customers shopping experience with latest Big things i...Gamification - Enhance Customers shopping experience with latest Big things i...
Gamification - Enhance Customers shopping experience with latest Big things i...
 
Benefit of Web Application Development with Zend Framework
Benefit of Web Application Development with Zend FrameworkBenefit of Web Application Development with Zend Framework
Benefit of Web Application Development with Zend Framework
 
The Importance Things of Full Stack Development
The Importance Things of Full Stack DevelopmentThe Importance Things of Full Stack Development
The Importance Things of Full Stack Development
 
Most useful features for windows 10 developer
Most useful features for windows 10 developerMost useful features for windows 10 developer
Most useful features for windows 10 developer
 
Have a look Google next operating system update : Android Marshmallow
Have a look Google next operating system update : Android MarshmallowHave a look Google next operating system update : Android Marshmallow
Have a look Google next operating system update : Android Marshmallow
 
Top 20 Questions Ask Before Hire Android App Development Company
Top 20 Questions Ask Before Hire Android App Development CompanyTop 20 Questions Ask Before Hire Android App Development Company
Top 20 Questions Ask Before Hire Android App Development Company
 
Multi vendor marketplace extension
Multi vendor marketplace extensionMulti vendor marketplace extension
Multi vendor marketplace extension
 
25 Famous Websites using Wordpress
25 Famous Websites using Wordpress25 Famous Websites using Wordpress
25 Famous Websites using Wordpress
 
Bring Healthcare to fingertips - How Apps changed Medical Industry
Bring Healthcare to fingertips - How Apps changed Medical IndustryBring Healthcare to fingertips - How Apps changed Medical Industry
Bring Healthcare to fingertips - How Apps changed Medical Industry
 
Have you played this Symfony? Why Symfony is great choice for Web development
Have you played this Symfony? Why Symfony is great choice for Web developmentHave you played this Symfony? Why Symfony is great choice for Web development
Have you played this Symfony? Why Symfony is great choice for Web development
 
9 vitals in business websites
9 vitals in business websites9 vitals in business websites
9 vitals in business websites
 
How Technology Can Change Real Estate Industry In 2015
How Technology Can Change Real Estate Industry In 2015How Technology Can Change Real Estate Industry In 2015
How Technology Can Change Real Estate Industry In 2015
 

Kürzlich hochgeladen

Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfMounikaPolabathina
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rick Flair
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxLoriGlavin3
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 

Kürzlich hochgeladen (20)

Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
What is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdfWhat is DBT - The Ultimate Data Build Tool.pdf
What is DBT - The Ultimate Data Build Tool.pdf
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 
Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...Rise of the Machines: Known As Drones...
Rise of the Machines: Known As Drones...
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
The State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptxThe State of Passkeys with FIDO Alliance.pptx
The State of Passkeys with FIDO Alliance.pptx
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 

Password Security System Case Study

  • 1. www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 1 of 9 Case Study Password Security System
  • 2. www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 2 of 9 This is a Mobile application created to run on both iOS (iphone / iPad) and Android (SmartPhones / Tablets)-based operating systems. This application can be used for multiple purposes including corporate meetings and e-learning. Client wanted to launch an innovative concept of automatic video creation out of text written on the board. The application is also capable of capturing audio. PasswordBoss is a free password manager that allows users to securely store, retrieve and share usernames, passwords and other personal data anytime, anywhere, on any device. Client Requirement Client required the following:  1-Tap login to mobile apps and websites.  Automatically saves your logins while you browse  Passwords encryption with AES-256, the strongest grade of encryption  Secure SSL protection for data during sync between devices  Create new strong passwords and save them while you browse  Locked with a Master Password that only YOU know  Optional Pin Code Lock for additional security  Secure password sharing and management, for sharing passwords with co- workers or family  Instant Login to your accounts using our secure in-app browser  Encrypted Safe Notes for sensitive personal information  Customizable StartPage for accessing your most- visited sites with 1-Tap  Auto-Lock function to safeguard against theft ProjectChallenges Team faced the following challenges:  Recording of audio and text in the background to create MPEG Video.  Timely Audio-video synchronization  Sync between web application and phone device.  Smooth writing on the board while video recording is occurring.
  • 3. www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 3 of 9 Technologies Used Manpower IOS SDK: Xcode 5.1 Xcode is a tool, also called as IDE, used to develop iOS and Mac applications. It is a main component of Xcode toolset. It groups most of the tool needed to develop software in a streamlined and interactive manner. Core Data Framework The Core Data framework provides generalized and automated solutions to common tasks associated with object life-cycle and object graph management, including persistence. Database: SQLite The SQLite database is a small, compact, and self-contained database available on multiple platforms and available to the public. It has a small footprint and is easy to install and administer. In addition, many devices have the SQLite database already installed, including Android and Blackberry devices. Encryption: SQLCipher SQLCipher is an open source extension to SQLite that provides transparent 256-bit AES encryption of database files. Android ADT Eclipse Plugin Android Development Tools (ADT) is a plugin for the Eclipse IDE that is designed to give you a powerful, integrated environment in which to build Android applications. Programing Languages IOS: Objective C Android : Java MVC The model–view–controller framework separates the representation of information in a computer program from the user's interaction with it.The model consists of application data and business rules, and the controller mediates input, converting it to commands for the model or view. Project Leader 1 Developers 6 Designers 1 Quality Assurance Testers 2
  • 4. www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 4 of 9 Planning The following development approach was adopted to equip the site with numerous features and functionality mentioned before:  Development – High Level Coding Standards were followed for managing backup data volume. Simultaneously, synchronization with server for recent data modulations was also performed.  Syncing existing and newly available data for backup with our database required specific attention. This helped in result generation.  Designing the application interaction and flow for user-friendliness and interactivity.  Introduced high level of server and data fetching technology.  Syncing existing and newly available data for backup with our database required specific attention. This helped in result generation.  Maintained consistency in Graphical appearance with the help of given wireframe.  Milestones were defined to complete each inter-linked assignment. Continuous data synchronization between the mobile device and server was required at every interval.  Research and analysis were scheduled at every project level to effectively manage the quality and workflow processes for better and improved performance. Architecture  IOS  Application Life Cycle The application life cycle constitutes the sequence of events that occurs between the launch and termination of your application. In iPhone/iPad OS, the user launches the application by tapping its icon on the Home screen. Shortly after the tap occurs, the system displays some transitional graphics and proceeds to launch your application by calling its main function. From this point on, the bulk of the initialization work is handed over to UIKit, which loads the application’s user interface and readies its event loop. During the event loop, UIKit coordinates the delivery of events to your custom objects and responds to commands issued by your application. When the user performs an action that would cause your application to quit, UIKit notifies your application and begins the termination process. The following figure depicts the simplified life cycle of an iPhone application. This diagram shows the sequence of events that occur from the time the application starts up to the time it quits. At initialization and termination, UIKit sends specific messages to the application’s delegate object to let it know what is happening. During the event loop, UIKit dispatches events to your application’s custom event handlers.
  • 5. www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 5 of 9 Figure: Application life cycle  Event Handling Cycle After the UIApplication main function initializes the application, it starts the infrastructure needed to manage the application’s event and drawing cycle, which is depicted in the following figure. As the user interacts with a device, iPhone/iPad OS detects touch events and places them in the application’s event queue. The event-handling infrastructure of the UIApplication object takes each event off the top of this queue and delivers it to the object that best suited to handle it. For example, a touch event occurring in a button would be delivered to the corresponding button object. Events can also be delivered to controller objects and other objects indirectly responsible for handling touch events in the application. Figure: The event and drawing cycle In the iPhone OS Multi-Touch event model, touch data is encapsulated in a single event object (UIEvent). To track individual touches, the event object contains touch objects (UITouch), one for each finger that is touching the screen. As the user places fingers on the screen, moves them
  • 6. www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 6 of 9 around, and finally removes them from the screen, the system reports the changes for each finger in the corresponding touch object. When it launches an application, the system creates both a process and a single thread for that application. This initial thread becomes the application’s main thread and is where the UIApplication object sets up the main run loop and configures the application’s event-handling code. Figure shows the relationship of the event-handling code to the main run loop. Touch events sent by the system are queued until they can be processed by the application’s main run loop. Figure: Processing events in the main run loop  The MVC Architecture is a combination of Model-View-Controller. 1. Model: The model object knows about all the data that need to be displayed. It is model who is aware about all the operations that can be applied to transform that object. It only represents the data of an application. The model represents enterprise data and the business rules that govern access to and updates of this data. Model is not aware about the presentation data and how that data will be displayed to the browser. 2. View: The view represents the presentation of the application. The view object refers to the model. It uses the query methods of the model to obtain the contents and renders it. The view is not dependent on the application logic. It remains same if there is any modification in the business logic. In other words, we can say that it is the responsibility of the view's to maintain the consistency in its presentation when the model changes. 3. Controller: Whenever the user sends a request for something then it always go through the controller. The controller is responsible for intercepting the requests from view and passes it to the model for the appropriate action. After the action has been taken on the data, the controller is responsible for directing the appropriate view to the user. In GUIs, the views and the controllers often work very closely together.
  • 7. www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 7 of 9 Android  Android Architecture Diagram:  The above figure shows the diagram of Android Architecture.  The Android OS can be referred to as a software stack of different layers, where each layer is a group of several program components.  Together it includes operating system, middleware and important applications.  Each layer in the architecture provides different services to the layer just above it. We will examine the features of each layer in detail.
  • 8. www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 8 of 9  Linux Kernel  The basic layer is the Linux kernel.  The whole Android OS is built on top of the Linux 2.6 or higher Kernel with some further architectural changes made by Google.  It is this Linux that interacts with the hardware and contains all the essential hardware drivers.  Drivers are programs that control and communicate with the hardware. For example, consider the Bluetooth function.  All devices has a Bluetooth hardware in it. Therefore the kernel must include a Bluetooth driver to communicate with the Bluetooth hardware.  The Linux kernel also acts as an abstraction layer between the hardware and other software layers.  Android uses the Linux for all its core functionality such as Memory management, process management, networking, security settings etc.  As the Android is built on a most popular and proven foundation, it made the porting of Android to variety of hardware, a relatively painless task.  Libraries  The next layer is the Android’s native libraries. It is this layer that enables the device to handle different types of data.  These libraries are written in java language and are specific for a particular hardware.  Some of the important native libraries include the following: o Surface Manager: It is used for compositing window manager with off-screen buffering. Off-screen buffering means you can’t directly draw into the screen, but your drawings go to the off-screen buffer. There it is combined with other drawings and form the final screen the user will see. This off screen buffer is the reason behind the transparency of windows. o Media framework: Media framework provides different media codecs allowing the recording and playback of different media formats o SQLite: SQLite is the database engine used in android for data storage purposes o WebKit: It is the browser engine used to display HTML content o OpenGL: Used to render 2D or 3D graphics content to the screen  Android Runtime  Android Runtime consists of Dalvik Virtual machine and Core Java libraries.  Dalvik Virtual Machine  It is a type of JVM used in android devices to run apps and is optimized for low processing power and low memory environments.  Unlike the JVM, the Dalvik Virtual Machine doesn’t run .class files, instead it runs .dex files. .dex files are built from .class file at the time of compilation and provideshifger efficiency in low resource environments.  The Dalvik VM allows multiple instance of Virtual machine to be created simultaneously providing security, isolation, memory management and threading support. It is developed by Dan Bornstein of Google.  Core Java Libraries  These are different from Java SE and Java ME libraries. However these libraries provides most of the functionalities defined in the Java SE libraries.  Application Framework  These are the blocks that our applications directly interacts with. These programs manage the basic functions of phone like resource management, voice call management etc. As a developer, you just consider these are some basic tools with which we are building our applications.  Important blocks of Application framework are: o Activity Manager: Manages the activity life cycle of applications
  • 9. www.brainvire.com | © 2013 Brainvire Infotech Pvt Ltd Page 9 of 9 Content Providers: Manage the data sharing between applications o Telephony Manager: Manages all voice calls. We use telephony manager if we want to access voice calls in our application. o Location Manager: Location management, using GPS or cell tower o Resource Manager: Manage the various types of resources we use in our Application DevelopmentHighlights  This application for iPad is built around objective C and core data framework. This application was also made compatible to iOSsdk 5.1 at a later stage. Almost all the modules are developed using foundation, core graphics, UIKIT and AVAssetWriter framework. All the user interface items are placed in view controllers and are linked with the controller files project along with the outlets, actions of the UI element. Integration of various 3rd party tools was required. The App was developed and fully functional within a span of 5 months.  Special focus on interactivity and user friendliness of the app while designing the Android and IOS application.  Mobile and Tablet Compatibility with a single application build  Database Encryption at Local and Server Side  Agile development strategies implemented using various proven tools thus ensuring quick and effective solutions.  Optimal usage of open source technologies to reduce the total cost of android application development.  Unit testing applied to ensure the quality of the application.