The document discusses the challenges of developing mobile applications for enterprises. It notes the issues with current development models, including high costs, long development times, and difficulties supporting new devices. It introduces TejaSoft's Mobile Development Framework (TezzMDF) which aims to address these challenges through a single source approach that eliminates device-specific code and simplifies adding support for new devices. TezzMDF is presented as a potential solution to help enterprises reduce mobile application development costs and time to market.
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
Mobile Single Source Strategy
1. Enterprise Mobile Strategy (EMS) Series
by
Raja Nagendra Kumar
Founder & C.T.O
(Released to public on 2nd Nov 2009)
2. • Enterprise Series is aimed to bringing Enterprise
aware processes and systems to Small, Mid Size,
Startup Mode Companies/Groups in MNC’s
• It is aimed at CTO’s and Decision Makers to
look on the product manageability from
‘GoTo Market’ Time and at Optimum Cost
perspective
• The Series is based on TejaSoft’s experience
and expertise gained though the solutions we
delivered.
4. • Mobile world for Enterprises
- Opportunity vs Need
• Challenges
• A view of existing development models
• Cost Factors
• Why Mobile Strategy
• TejaSoft expertise-solutions
5. • Is Mobile Version of the Product
Need or Opportunity?
6. Is Mobile version of the product is
Need or Opportunity?
• The mobile industry is the world’s latest
trillion dollar baby. Can’t ignore
• More than billion phones are smart phones
• Smart Phones are more powerful than i386
desktops.
• More and more GPRS connected phones
• Technologies have close to a decade of
history.
7. It is a demanding need…
Hence enterprises can’ t lag behind competition.. Close to a
decade that these technologies have taken shape and business
principles are established.. It is a need game rather than
opportunity
Let customer aware of what is happening when they are away
Provide core features, reliability so that it attracts him to
continue to use your product in different forms.
Urban Population and Service Providers are educated enough to
use rich features of mobiles
Alerts to the customers including rural pollution is a must have
feature
Need is forced as people started to expect things to be mobile
way
Opportunity for enterprises is for sure very huge..
But needs to be done right.
9. Business Challenges
• Every thing has to be cheap or close to zero cost
to capture market/users
• Operators would always want to eat a pie of the
revenues, can still control your success
Should reach to millions of users with diverse
cultures, phones and education levels to before
one sees the revenues
10. Technical Challenges
• Technicalities exist over a decade but none of
them is still close to be called as Universal
Mantra
• May have to use more than one technology
versions of the product and even with in a
Technologies one has to dependent on, more
than one 3rd party libraries
• Device Fragmentation
11. Fragmentation Categories
• by Manufacturer
• by OS
• by witin OS, Firmware Releases, JRT Versions
• In JavaME
• Supported JSR’s
• Optional JSR’s support
• JVM Impl. issues
• by Hardware Capabilities
• Memory
• CPU
• Battery Power
• by Operators
• CDMA (versions exists)
• GPRS (versions exists)
…more and more keep cropping up..
12. People Challenges
• Most of these challenges are effect of Device Fragmentation
• Developers
• Developers apart from the business needs, they have keep all the
issues which arise out of Fragmentation
• Release Management
• Should take care of Release on
• Various devices
• Various versions
• Various configurations
• Dev
• Q.A
• Staging
• Production
• Marketing and Support
• Marketing to be aware of reaching to so many diversified devices
• Support should be aware of issues related to each of these devices
Can’t avoid it but can be optimized
13. Fragmentation Is a Big Opportunity
Fragmentation would stay.. And more fragmentation is inevitable
due to market demands
• Users want new and newer devices
• Users want powerful and also cheap cost
• Users want Varity of devices
• Users want to Varity of applications
• Tremendous pressure to release new phone models
TejaSoft thinks fragmentations to be a big opportunity when
products know how to overcome the challenges it brings
14. SME’s Current Development Model
• Follow a Framework
• This assumes that framework would take care of the
fragmentation
• J2ME Polish
• Mobile Distillery
• Pre Processing approach
• Evolve Own Framework from roots
• Always good but it costs too huge
• If rich/every where Programming
• Novice Approach
• Bound to fail in development and in market
• Porting Approach
• Develop for few models and let porting house take care of
porting
15. Issues in current Model
• Porting approach costs
• Per device $500 to $1000
• Every release costs anywhere between $150k and beyond
• O.k for Games, which are mostly one time
• Not for applications which would have multiple releases 2
to 3 release per year
• There is Nothing like magic of automatic porting (though many
claims exists)
• Unless you learn their api and work with in such features
• It adds more if’s too
• Learning Curve is huge
• All these framework take the approach of we are there to do
labor work for you
• Use our API or wrappers
• Vendor Lock in
• If you follow one guy, you may not be able to use other good
3rd party ones, unless they are certified
16. Sample Case
• Treat this as a sample and apply most to SME’s and is based on
TejaSoft experience so far.
• For big enterprises in some place it may be less or in some
places more. Hope one could correlate and make the
necessary adjustments
• An average every application is around 25000+ JavaME lines of
code by the time is production ready.
• A version exists for low end phones
• A versions exists for high end phones
• For each of the dev, qa and stating each developer has to do at
least 10 steps
• Development time at least 10 versions of the code exists
• Device specific codes for each of the ported devices
• Average of 4 Developers and 1 Fulltime tester would be
working 6 to 8 months.
17. TejaSoft Observations
• Developers are under tremendous pressures
• Have barely have clues on which versions they are working
• Unable to trace where the fix was made
• In all each of them has to manage more 15000 lines of code
• Last minute build issues, wrong builds going to next stage keep happening to manual
configurations they have to do
• If a bug comes, there is no way to trace back and hence more and more duplicate codes
come in
• Graphical issues or media issues were more
• Surprisingly, they were using IDE’s and what ever the IDE pluggins provided to do all
these.
• 25 to 30% of the time gets wasted in managing the versions and configurations or writing
the device specific code
• Hardcode and clue less if’s if (device.id=n73) etc was making the next release more un
predictable.
• All the solutions solved in one product were to be redone exactly the same way on another
product. No real time dependency compilation of common code logic… due to the magic of
hardcode.
• Mix of Technologies were used
• Pre Processing
• Ant
• J2ME Polish
• If’s every where
• Hard coded values
18. Cost factors for Enterprises
• Instead of average of 25,000 lines, enterprise has to
manage at min 10 times more code
• If another product needs similar code, it has to be
managed on a separate product branch
• Instead of testing it very often, they have to resort
what ever the builds provided by developers.
• Entire System is slow at least by 25% and more as
the days pass by
• Cost of going to market with bugs
• Time taken to fix the bugs gets doubled in 3rd version
• Cost of Localization on ‘x’ number of languages,
repeatedly paying for translations of 70 to 80% of
common content
19. TejaSoft believes in there is no prefect solutions but
There is a near perfect one, which could
for sure keep these costs at minimum
and keep going down as
the more code gets written.
20. TejaSoft Expertise in this area
We can support in two ways
• Services Approach
• Take the existing code base and convert it into
single source and give it back for future releases
• Product Approach
• We sell the build tools, associated framework
• We provide the need consulting to client teams, to
bringing the right development culture for Mobile
Applications.
22. TezzMDF Guarantees
Single Source with
• No Pre Processing
• No Proprietary API
• No Limitations on using any 3rd party api
• 100% elimination of Magic Numbers
• 100% Unicode compliance
• No Device Specific if’s i.e no ifN73() etc..
• Total Reducing of if’s at least by 15% for a code base of 15000 lines of
code
• Reduction in total code by 10%
• Pure OOAD
• 100% IDE Friendly
• Ability for junior developer to quickly adopt
• Build varies builds with zero configuration changes needed
• Reusable Entities/Code/Knowledge
• Across the Project Modules (J2EE, J2ME, Web)
• Across the different Products
• Would allow the developer to add new devices at ease (not more than
10 minutes for a trained engineer.)
23. TezzMDF Design Feelers
• We learned things over a period of 6 years
• Which is more than 25 years of mobile product development
Experience
• Our expertise in Porting for more than 100+ devices
• Our Architecture has undergone see changes over these years in a
incremental and in agile way to become better and better. More than
10 iterations and many releases cycles are done.
• Our vision is to eliminate porting time and cost and bring it with in the
development timeframes and with little extra efforts.
• Core of our design is
• We add more fragmentation to already existing fragmentation of
real devices.
• We call them as Virtual Devices
• TejaSoft expects the Developers to write code for one ideal
devices
• What ever is the variation for each device is to be spread across
these virtual devices
• Our Framework knows how to mix and match this distributed
knowledge for a real device during the build time
24. Summary
• Enterprises focused on mobile applications.
Single Source approach is challenging but can
save huge costs and drastically brings down the
time of going to market.
• No popular framework exists, to make the additions
of new devices easy and be handled by developers
at ease.
• TejaSoft’s ‘TezzMDF’ is the first of its kind.
• Interested to know more or for a demo of TezzMDF..
contact ‘sales@tejasoft.com’