Case study - Application Re architecture (ODC)

Post on 07-Dec-2014

272 views 0 download

description

Setting up of Offshore development center for the client using Agile project management methodology.

Transcript of Case study - Application Re architecture (ODC)

©2014 Faichi Solutions Pvt. Ltd.

Offshore Development Center (ODC) setup up by Faichi Solutions

Project Type: Product Development & Maintenance

©2014 Faichi Solutions Pvt. Ltd.

©2014 Faichi Solutions Pvt. Ltd. 2

About Client’s Product Domain: PLM, Client Location: California, USA

• Provides the solutions that enable you to collect, organize, and manage product requirements, ideas, product strategies and portfolios, and agile project execution information all in one place.

• Base requirements on quantifiable market data with full context as to their rationale, tradeoffs, and strategic priority.

• Get products out faster by seamlessly connecting requirements with all product planning and development activities.

©2014 Faichi Solutions Pvt. Ltd. 3

Challenges with old System

• Old technology used in the existing product (XUL) was not supported by many latest browsers and hence needed to be replaced.

• Old system had lot of performance issues. It was not multi-tenant.

• The architecture had became very complex and was hard to maintain.

• Support for concurrent users was very limited. Scalability was a major issue.

• Sync between Ideas product and Requirements Management product was a nightmare with the old architecture.

• Migration on new infrastructure was difficult due to old technology stack.

©2014 Faichi Solutions Pvt. Ltd. 4

Faichi’s Proposal

New

Sol

ution

Re-architecture of the application based on: - Latest version of Tomcat & Java JDK - Spring MVC framework - Auto-deployment using UrbanDeploy

Multi-tenant architecture – Multiple application instances are supported by the same web server

and Database.

New Front Technologies Created ExtJS framework to have reliable UI support

all kind of browsers.

Cross Platform ImplementationCreated a Platform where 2 different systems with 2 different technologies can interact with each other .

©2014 Faichi Solutions Pvt. Ltd.

Database

MemCache 1 MemCache 2

Tomcat Instance 1 Tomcat Instance 2 Tomcat Instance 4

Apache Apache Apache

Hardware Load Balancer

Tomcat Instance 3

Apache

Technology Flow

User User User

©2014 Faichi Solutions Pvt. Ltd. 6

Technology Stack

Client’sProduct

Spring MVC

API Integration

Java (Core Java, JMS,

JDBC, JNDI)

Apache Tomcat,EXT JS,

XUL

White Security Testing

Eclipse, Maven

Oracle DB, My SQL,

Ruby on Rails

Logi Reporting

engine

Team City for Continuous Integration

Selenium / Soasta

/Jmeter/Test complete

©2014 Faichi Solutions Pvt. Ltd. 7

Ideas approved

Web Server(Apache/Tomcat)

Ideas DB(My SQL)

DB(My SQL)Reporting

Web Server(Apache/Tomcat)

Web Services

Logi Reporting Server

ETL (Extract, Transform & Load)

Requirements Management

DB(Oracle)Transactions

Schema 1For Client 1

Schema 2For Client 2

Ideas ManagementPost Requirements

Check Requirements

Database Management

©2014 Faichi Solutions Pvt. Ltd. 8

Oracle functionalities

Client’sProduct

Indexes

Views

ETL (Extract, Transform, and Load)

Import / Export

Multi-tenant database

design

Data migration

Upgrade to Oracle 10gR2

Third party integration

Functions / Stored

Procedures

©2014 Faichi Solutions Pvt. Ltd. 9

ODC Model – Cost Plus

Java Development

Enabling Success

Engagement Overview

Setup India development center with highly skilled resources to provide high quality, low risk and high impact outsourced technical development

Quality Assurance Automation UI (JavaScript)

Database Engineering and

Management

Web Server Support

Development Engagement Portfolio

System Support Engagements

Application Server Support

Linux Administrator

Support

Key Successes

• Assigned dedicated Product Owners for Agile / Scrum development. Leveraged best practices for rapid development and high quality delivery. Average work experience of team was 10+ years, with flexibility for client to choose resources

• Reduced attrition and well defined career paths for all team members along with cost and skill transparency for client

• Mastered Agile and Scrum processes. Faichi team customized processes and systems to best suit client environment and development needs, while maintain development budget constraints

• Delivered 60% improvement in time-to-value that enabled the client to deliver market defining product innovation solutions

©2014 Faichi Solutions Pvt. Ltd. 10

Engagement overview

Database Support

• Ongoing maintenance (installation, backup, DBA, DBE activities) for multiple product lines.

• Dedicated team of Database Engineers and DBAs in India to handle development and

production support.

• Team used tools effectively to manage remote Databases.

• DBAs handled DB installation, configuration, performance tuning, backup/restoration.

Outcome

• Major Performance Improvement.

• Horizontal Scaling capabilities enhanced.

• Increased capabilities of integrating Ideas with Requirements Management.

• Ease of maintenance (Technical debugging / troubleshooting).

©2014 Faichi Solutions Pvt. Ltd. 11

Faichi Difference

• Successful remote team coordination:– Entire Architect, Dev & QA team in India– Product Owner in US & India– Weekly standup, sprint demo/planning calls.

• End-to-end ownership– Team handled entire Architecture/Design, R&D, Implementation,

Production Rollout, Project Management.

• Agile Project Management– Used Asana for managing Scrum effectively.

©2014 Faichi Solutions Pvt. Ltd. 12

About Faichi Solutions

We are a technology company in Pune, India specializing in outsourced product engineering & setting up offshore development centers

We hold expertise in technologies such as Drupal, Java, Mobile and UI/UX development

Established in 2009, with a vision to transform the outsourced product engineering landscape through technical excellence and delivery model innovation

Faichi Solutions has successfully delivered some of the most complex technology projects through partner collaboration & agile processes

©2014 Faichi Solutions Pvt. Ltd.

©2014 Faichi Solutions Pvt. Ltd. 13

To read more case studies of Faichi Solutions, please visit: www.faichi.com/success-stories

For more information please visit: www.faichi.com or mail us at sales@faichi.com

USA India Faichi Solutions Inc Faichi Solutions Pvt. Ltd. 2023 Mandelay Pl 504, Accord IT Park, Baner Road, San Jose, CA 95138 Pune, Maharashtra – 411045 Tel: +1 (408) 769-4941 Tel: +91-20-65291435 ©2014 Faichi Solutions Pvt. Ltd.