natc 2013 - mobility solutions - an engineering perspective by souvanik sarkar, cto, interrait

20
Mobility Solutions An Engineering Perspective Souvanik Sarkar NASSCOM Annual Technology Conference 2013

Upload: nasscom

Post on 04-Jul-2015

216 views

Category:

Technology


0 download

DESCRIPTION

NASSCOM Annual Technology Conference 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

TRANSCRIPT

Page 1: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Mobility Solutions – An Engineering Perspective

Souvanik Sarkar

NASSCOM Annual Technology Conference 2013

Page 2: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Mobile application development is an exciting, sexy and challenging landscape.

NASSCOM Annual Technology Conference 20132

Page 3: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

NASSCOM Annual Technology Conference 20133

iPhone

C#

Page 4: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

I will be sharing some of our experiences in bringing order, and thereby revenue, to the chaos.

NASSCOM Annual Technology Conference 20134

Page 5: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Defining the boundaries

• Enterprise Mobile application An application on a mobile platform that requires periodic (frequent?) connectivity with an enterprise application in the data center to do its job.

• CustomerThe company contracting services from an IT service provider to develop applications for its customers.

NASSCOM Annual Technology Conference 20135

Page 6: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Mobile App Scenario #1

• Customer is a US $3B+ enterprise

• Required a mobile application on Android and iPhone for directly connecting with end-customers of their product‒ This would be their first mobile application for end-customers

• Key challenges during development‒ Freezing on the detailed requirements did not happen till very late in the

development cycle‒ Freezing on the User Experience and look-and-feel took much too long‒ Connectivity with their enterprise applications in the data center required an

enormous amount of heartburn‒ Deployment of the middleware on the datacenter required deploy-test-redeploy

cycles

NASSCOM Annual Technology Conference 20136

Page 7: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Mobile App Scenario #2

• Customer is a US $5B+ enterprise automobile manufacturer

• Required a browser application on the iPad for their dealers that would assist in the sales process‒ This would be their first browser application for dealers

• Key challenges during development‒ Freezing on the User Experience and look-and-feel took much too long‒ Freezing on the detailed requirements did not happen till very late in the

development cycle‒ Browser compatibility issues between Safari and IE on the desktop‒ Sizing of servers incorrect – production cut-over resulted in very long

response times

NASSCOM Annual Technology Conference 20137

Page 8: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Mobile App Scenario #3

• Customer is a US $40B+ enterprise, manufacturing consumer products

• Required a mobile application on Android and Windows for their field service to directly access customers and product information

• Key challenges during development‒ Freezing on the detailed requirements took a long time

‒ Freezing on the User Experience and look-and-feel took much too long

‒ Connectivity with their enterprise applications required a lot of time; no request for changes at the server application were entertained

‒ Development and UAT environments were not in sync

NASSCOM Annual Technology Conference 20138

Page 9: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Key Challenges faced

• Freezing Requirements

• Managing customer expectations of the mobile application‒ Time to development

‒ User interface

‒ Features in the initial version of the application

• User Experience‒ Quality of UI design

‒ Number of clicks to achieve task

‒ Number of pages to navigate to reach desired information

NASSCOM Annual Technology Conference 20139

Page 10: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Key Challenges faced …2

• Testing‒ Done manually – too much effort to automate, not enough payback

‒ All features not tested – short-cuts when trying to meet a delayed milestone

‒ Connectivity with the enterprise application always an issues – did it return the data

• Architecture‒ Additional features sometimes required rework of design

• Deployment‒ Keeping Development, Test and UAT environments in sync almost never

happened‒ Production environment is never under our control

NASSCOM Annual Technology Conference 201310

Page 11: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Lessons Learned

• User Experience and UI design‒ Has the most impact on the engineering of a new mobile application

‒ Budget sufficient time for this phase, and then some

‒ Separate look-and-feel from function – use wireframes for sign-off

‒ Plan for offline mode in native apps – this is a key user experience item

NASSCOM Annual Technology Conference 201311

Page 12: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Lessons Learned …2

• Requirements‒ Write Requirements down

‒ Separate Business Requirements from Technical Requirements

‒ Define use cases as much as possible, but don’t let it drag you down

NASSCOM Annual Technology Conference 201312

Page 13: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Lessons Learned …3

• Architecture‒ Spend time on architecture – it will payback during scope creep (with or

without change requests!!)

‒ Use OS framework for screen management as much as possible, rather than writing custom code

NASSCOM Annual Technology Conference 201313

Page 14: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Lessons Learned …4

• Testing‒ Create unit tests using JUnit or NUnit

‒ Create a small application to test connectivity with the enterprise application

‒ Always test the main use cases and business requirements

‒ Have manual testers comment on navigation and user experience

NASSCOM Annual Technology Conference 201314

Page 15: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Lessons Learned …5

• Deployment‒ Have multiple releases – customers like to play with mobile apps

‒ Plan for deployment early on in the development cycle

‒ Have a test deployment in the middle of the development, and repeat it if all the key issues are not sorted out

‒ Plan for approaches to App Store discovery

NASSCOM Annual Technology Conference 201315

Page 16: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Lessons Learned …6

• Application version control‒ Ensure that the application has strict numbering, linked to source code

versions

• Team composition‒ Have a mix of people in the core team –

UI, architecture, testing, deployment, enterprise connectivity

NASSCOM Annual Technology Conference 201316

Page 17: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Lessons Learned …7

• Manage Customer Expectations‒ Have regular and frequent discussions with the customer about the progress

of the development

‒ Keep providing the customer with deliverables – wire-frames, look & feel, initial build of the app with no functionality, limited functionality, initial connectivity to enterprise application

‒ Continually relate features with business requirements

NASSCOM Annual Technology Conference 201317

Page 18: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Mobile Application Development Cycle

NASSCOM Annual Technology Conference 2013

Business Requirements

Design Develop Test Release

User Interface Requirements

UI Wireframe

Graphics

1 2 3 4 5

18

Page 19: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Developing enterprise mobile applications is a very creative and satisfying venture.

It has its own challenges that are unique, and inherent to this landscape in software development.

Successfully navigating through this landscape requires a focus on engineering, at least as much as on creativity.

NASSCOM Annual Technology Conference 201319

Page 20: NATC 2013 - Mobility Solutions - An Engineering perspective by Souvanik Sarkar, CTO, InterraIT

Thank You

NASSCOM Annual Technology Conference 2013