We follow the standardized mobile application development methodology which helps
us to provide very cost-effective and efficient business solutions. The overall
application development is carried out in seven different steps.
- Requirements and the scope of the project
- Project planning and Schedule
- Set the Project Goals
GRAPHIC DESIGN AND PROTOTYPING
Graphic design includes landing and homepage page layout, various inner pages layout
& theme creation which will be applied to the proposed application. In addition
to that all graphic elements are designed. After completion of 'Graphic Design'
phase, prototyping is being done. In this phase a working model of the App is created.
The working model or the prototype consists of all the modules present in the actual
scope of the project. The prototype of the application is done just to give the
overview of the actual application and therefore the prototype mostly runs on the
static data or hard coded data which often resides within the app.
ARCHITECTURE DESIGN
After all the screens are designed and prototyping is completed, the solution architects
design the system architecture and prepare the system design for the overall development
process. The architecture design includes:
- Database architectures including fields, tables & relationships
- Business logic document for non-obvious logic and business flow
- Screen layout & navigation description
Once all are formalized, Business Rule and System Test Plan are created which covers
each features of the application. The Business Rule and System Test Plan document
will be validated from Client and then only the programming starts.
DEVELOPMENT
After the prototyping and architecture design stage is completed all the screens
are being programmed according to the schedule in multiple passes. In the prototyping
stage, all the functionalities are done using the static data. However, in the development
phase we create web-services which are an interface between the Apps and the backend.
Web-services are created in order to feed data to Apps.
The development of both, the backend and the Apps carried out in parallel with each
other. Based on the database structure prepared during architecture design, XML
format is designed. All the data provided to the App is in the XML format. Once
these things are in place the web-services are developed. While the web-services
are being developed the application Screens are developed using the local XMLs and
once the web-services are developed they are integrated with the Apps. After the
web-services are completed the backend section pages are designed and developed.
Until the backend section is complete the data entry into the database is done manually.
There are some records entered into the database for testing and once the functionality
of the backend section is completed all the data entry part is done using the backend
Section. Meanwhile the Application development is carried normally. All the modules
are integrated as a final system once they are complete and later follow the debugging
process and the testing process.
TESTING QA
All the Applications are tested and quality assurance is done on daily basis. Primarily
the developers themselves do the unit testing. The testing team does a rigorous
testing of the app by testing all the individual modules and the finally the App
as a whole product. The App is QA'ed every day by the Project Leads themselves.
While the developers do the unit testing it's assured that they perform real time
testing using the tools given by apple. We connect the device to use debugger, or
collect real-time performance data. These powerful optimization tools allow us to
identify and address any performance issues that might be present. The testing team
then performs the tests on the devices. We test the performance of the applications
connected to a Wi-Fi or carrier's network for a real world user experience. Apart
from this we do a weekly/biweekly audit of the source code to ensure that all the
best practices are being followed and the code is well written and managed.
PREPARATION SUBMISSION
In this phase the App is tested for performance, stability and the memory leaks.
We have tools that help us identify the memory leaks and the applications performance.
Any issues that might arise in these are addressed and the whole system is QA'd
to keep a check on the system's integrity.
DEPLOYMENT SUBMISSION
The final phase of the whole development process is deployment. In this stage we
carry out App installation, create the distribution build and upload the binary
to the Store for the review process.
MOBILE APPLICATION PORTING
WINIT is one of the largest mobile porting specialist in the world and has ported
several major applications such as M-commerce, infotainment applications, sports
applications, media applications both for intra-device porting as well as for inter-device
porting. We have ported applications between iPhone, iPad, Android, Blackberry,
J2ME and Symbian devices.
Our experience converting web to mobile apps and extensive experience developing
applications across all available smartphone platforms makes us a porting expert
of choice.
Besides we do support full applications development functionality - thus ensuring
whatever the device, we likely support it.
WHY PORTING IS IMPORTANT
As new mobile devices, OS platforms and improved marketing techniques arrive, it
becomes a challenge for companies to follow one traditional method of generating
revenue, either through a website or iPhone application. The necessity to port from
one mobile device or OS platform to multiple platforms is very important to attract
more end users and generate higher revenues.
TYPES OF PORTING
Cross platform or Intra platform porting:
J2ME to BREW, Symbian to Blackberry, J2ME to iPhone, iPhone to Android or Blackberry
or iPad and Vice versa.
Operator or Carrier specific porting:
Most USAT&T (Formerly Cingular), (T-Mobile, Sprint, Verizon), European (Vodafone,
Orange, Virgin Mobile etc.) and Canadian Carriers (Rogers, Telus etc.)
Inter platform porting:
Up-gradation of OS versions, new device compatibility, new features addition or
enhancement, etc.