25
© 2013 Codice Software Enterprise Version Control Platform for Modern Applications & Services Francisco Monteverde CEO Codice Software [email protected] @plasticscm www.plasticscm.com “The Cadillac of the SCMs” - eW

Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

Embed Size (px)

DESCRIPTION

Plastic SCM is a distributed version control system engineered for companies who require extensive branching and merging, distributed (multi-site/global) scenarios, and/or high performance. Plastic SCM is unique because it provides support for fully distributed and/or centralized repositories, a full graphical multiplatform user interface, a superior branching and merging technology, and provides security and management tools. Our Semantic Merge technology is the world’s first language-aware merge tool that fully supports C#, VB.NET, and Java, with additional languages soon to be supported. This tool facilitates complex refactoring while coders continue to work on their code. Contact us at [email protected]

Citation preview

Page 1: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Enterprise Version Control Platform

for Modern Applications & Services

Francisco Monteverde

CEO Codice [email protected]

@plasticscm www.plasticscm.com

“The Cadillac of the SCMs” - eWeek

Page 2: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Codice Software Company Background

Founded 2005

Products Plastic SCM & Semantic Merge

Our Customers from small (+5 developers) to large developer teams (hundreds)

Investors (VC): Bullnet Capital

HQ’s Valladolid (Spain) & Silicon Valley office

Distribution US, EU, Israel, South Korea , China

Page 3: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

TODAY SOFTWARE IS ALMOST EVERYWHERE….AND INCREASING

Computers, Mobile Phones, Tablets, Internet Services, Video Games, Consoles, Financial Services, Telecommunications, Automobiles, Transportation, Healthcare,

Commerce, Distribution, Industrial Manufacturing… …

Page 4: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

VERSION CONTROL IS AN ESSENTIAL FUNCTION WITHIN SOFTWARE DEVELOPMENT

Page 5: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

What is Version Control about?

:)

:)

:|

|:

t1

t2

total

:O

:S

?

1

32

64 5

Two developers need to work in

the same file

One works first and then the

next complete it

But what if the work in parallel

with a copy?

But now how can we merge both

jobs?

Total time used is the sum of

each indivicual’s time

Total time used is the largest of

one of the individuals

Page 6: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

… Version Control aka SCM

5

6

1. Manage every change and access2. Allow concurrent edits3. Guarantees merges are correct4. Enables coordination among

developers

Version Control makes all merges,

among other things

And it is a very complex operation when you have

hundreds of developers and tens of thousands files

Page 7: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Limited Productivity, Low Quality Code in Software Development today…

1. Development in serial mode (not parallel) creates many dependencies and continuous broken builds

2. Developers need to be connected to central server to use the Version Control tool

Page 8: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

¿Why SCM Matters? (@ RIM)

RIM declared $500M lost in Jun’125,000 employees outBlackBerry 10 launch delayed 2013

http://www.wired.com/gadgetlab/2012/06/down-goes-rim-blackberry-10-delayed-until-2013-5000-job-cuts/http://www.cio.com/article/print/710295

”We weren’t able to merge fast enough”Research In Motion CEO Thorsten Heins

June 2012

BlackBerry 10 was launched +7 months later than expected (Jan 30th 2013)

Page 9: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

The Vast Majority of Source Code is Developedin Serial Mode using a Centralized Repository

cset: 10474Fix core database query to retrieve customersdevel: pablo

cset: 10475Typo in about formdevel: john

cset: 10476New loading formdevel: pat

cset: 10478Fix a crash on the new loading formdevel: pat

cset: 10477Resource leak disposing GDI brushesdevel: pablo

main

Serial Development: Developing and Evolving in

One Code Line (Main, Dev…)Centralized

Code RepositoryOne single branch

One Central Repository

Page 10: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Problems of Yesterday’s SCMsTechnology

1. Broken Builds: because

everyone is working in the main

line (or one line)

2. Branching Limitations: prevent

embracing of agile methods and

true parallel development

3. Arcane Branching Patterns:

Lock teams (SVN, Perforce)

4. Can’t work in a distributed

manner

5. Not a flexible release cycle

Business1. Long development cycles: high

cost, lost opportunities

2. Unstable releases – too many

bugs, poor quality - causing

delays to market

3. Difficult Cooperation: among

heterogeneous or de-located

teams and offices

They are ALL solved by Plastic SCM

Page 11: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Enabling Parallel and Distributed Development with DVCS *

/main/task113 fix core database query

devel: pablo

devel: john

/main/task115New loading form

devel: pat

devel: pablo

/main/task114Typo in about form

/main/task116GDI resource leak

main

BL130Released to customer

BL131Internal

Parallel Development Using Branching and Merging

Distributed Code Repositories

Multiple and Frequent Branches

and Merges (the green lines)

(*) a.k.a Distributed Version Control System

Distributed Repositories

Page 12: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

The Only Commercial Enterprise Distributed

Version Control Systems (DVCS) for Teams of Any

Size, Enabling Parallel and Distributed

Development that works

Introducing Plastic SCMBranching and Merging is GOOD!

“The Cadillac of the SCM’s”eWeek editor Jeff Cogswell  published on July 27, 2012Plastic SCM Pays Attention to Detail in Source Code Management

The Coolness that is Plastic SCM (MSDN Blog reference, December 5, 2011)http://blogs.msdn.com/b/saveenr/archive/2011/12/03/the-coolness-that-is-plastic-scm.aspx

“Codice provides a solid platform that supports DVCS and provides a strong set of tools for managing the source tree that is lacking in open-source solutions”Gartner Cool Vendors in Application Development -Apr. 2011

Page 13: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Plastic SCM is Different Because…

1. Fully Distributed or Centralized Repositories2. Branching and Merging Made Simple & Powerful3. Rich Graphical User Interface or Straight CLI4. Security Management of the Source Code5. Reliable & Scalable Repositories Storage with the

RDBMS of Your Choice

Page 14: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Plastic SCM: Main Drivers Reducing Costs, Increasing Productivity & Quality

A.- Reduce Cost B.- Increase Productivity C.- Enhance Quality

1. Licenses, Installation, Deployment and Training are lower than traditional Centralized SCM systems

1. Enabling parallel development reducing overall time to complete a release, moreover, it significant reduce broken builds

2. Merge efficacy reduces manual interventions

1. Flexible release cycles: allowing to select independently what changes need to be included (merged) in a particular release

2. Infrastructure: minimizes server horsepower since work can be distributed among servers not at a "Central Server"

3. Enables working remotely (or offline to a central server); from anywhere. Work can always continue regardless of the availability of the network

4. Experiences significant performance gains because work is done locally with no network latency issues or server bottlenecks

2. Permits the developer's work to be completed locally without affecting other users until the developer has completed all work

3. “Shifts" merge responsibility to the most knowledgeable developer or dedicated role, thus significantly reducing total merge effort

5. Works with your desired workflow, rather than dictating it

6. Enables point to point communication between developers, not requiring a "central server" to collaborate

3. Code Reviews and Unit Tests can be passed at a task-branch level, before merge is complete to the main line

Page 15: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Plastic SCM Integrates with Many Third-party Tools

Codice Software is open to integrate with other tools upon customer demand

Issue Trackers or Project Management Tools

• Atlassian Jira• Version One • Axosoft OnTime • Bugzilla

• Mantis, • Trac,RallyDev• DevTrack• FogBugz

IDE Tools• Visual Studio• Eclipse• IntelliJIDEA (JetBrains)

• Powerbuilder• Visual Fox Pro• Others with SCC interface

Relational Databases (RDBMS) for Plastic SCM Repositories

• MySQL• SQL Server & SQL Server Express• SQL Server Compact Edition• Oracle

• Firebird Server• Firebird Embedded• SQLite• PostgreSQL

Continuous Integration Tools

• Cruise Control• Final Builder• Pulse

• Jenkins / Hudson• TeamCity• Atlassian Bamboo

Others • Red Gate (database versioning) • Inedo (Release Management)

Page 16: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Plastic SCM Licensing Model

Type of License Price

Perpetual License 595 USD / DeveloperMaintenance 119 USD / Developer (after the 2nd year)

Subcription License 279 USD / Year / Developer

Community Edition Free to use for Team <15 Members Optiona lSupport Package available 645 USD / Year

Page 17: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Some Customers Worldwide

Page 18: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Impact of Plastic SCM: Customer Case

Software Manufacturer500 Fortune Company

• They use agile methodologies and branch per task in the development of large Operating System Components.

Increase Productivity & Ease of Adoption

1. Efficient: Plastic SCM requires 2-3 minutes a day of interaction with the developer, when other SCM’s tested required from 30-50 min per developer, only to include changes made outside de SCM tool. Plastic SCM detects changes made outside de SCM transparently.

2. Fast and efficient: Bad merges (not resolved automatically by the SCM tool) take 5min a day by the developers ,with previous system took 50min in average.

3. Easy of use and adoption: Plastic SCM Branch Explorer (the GUI) is one of the most valuable features in Plastic SCM: allows new developers to come on board, familiarize with the tools in 2-3 days, and then then do not want to work with any other one. But they thought beforehand, the previous tools they were using (/Perforce) was the best and only thing they wished to use.

Impact on Business

• In total, a project that could have last 6 months, saved 1 month. And Plastic SCM and automated processes implemented with the integration with the CI engine was the responsible.

• Developers saved more than 100min a day in just two operations made more efficient by Plastic SCM. That makes +$650K ROI in a year for 35 highly skilled developers

Page 19: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Development Productivity gains made by Plastic SCM translated into business metrics

- Time to Market • Less time to update/integrate device code -> More updated

devices to market• Delivering more updated Smartphones to operators

+ SLA with customers• Support to Parallel development for multiple customers• Flexible Change Management increasing quality and flexibility.

COMPANY CONFIDENTIAL

2nd Largest Mobile Manufacturer in South

Korea

Healthcare Information Systems Division

Page 20: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Plastic SCM embraces Open Standards and Drives Innovation

Initiative Explanation

Open: Plastic SCM GitSync

• Plastic SCM GitSync launched in March 2013, http://plasticscm.com/gitsync/index.htm

• Plastic SCM users can now interact natively with Git repositories, including direct connection with github, bitbucked or codeplex

Innovation: Plastic SCM is launching a “Semantic Merge”

• “Semantic Merge“ is a unique language aware merge technology (launched in April 2013) www.semanticmerge.com

• Semantic merge, among other benefits, will facilitate and automate software refactors, even the most complex ones that require today a lot of manual work.

Excellence: Plastic SCM has the strongest merge technology

• Plastic SCM provides the strongest merge technology, several steps ahead from competitors.

• No other version control, including ClearCase, Perforce and Git, can compare to the merge capabilities provided by Plastic SCM: this increase productivity and increase software quality

• http://www.plasticscm.com/mergemachine/index.html

Page 21: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Providing Value to Different Roles

For developers who love the freedom of distributed and simple branching and merging

For managers who lead distributed teams, manage access and understand project status

For release builders who need to create stable software releases

Page 22: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Codice Software in US Developer’s Press

Jeff Cogswell

Plastic SCM is the Cadillac of the SCM’s

Adrian Bridgwater

Heavy Refactoring In Parallel? No Problem.

Semantic Merge World's: First 'Language-Aware' Source Code Merge Tool

Eric Caoili

Plastic SCM 4.0 solution for game developers, designed in

collaboration with Digital Legends Entertainment”

Anand Narayanaswamy

GitSync for Plastic SCM with Native Git Protocols and

Visual Studio 2012 SupportPlastic SCM to push and pull

code changes to not only GitHub but also Codeplex,

BitBucket or any Git server

Alex Handy

As GDC opened on March 25, Codice announced a new tool that allows this SCM system

to integrate with Git repositories

WireNews

Codice Software Launches First Language-Aware Source

Code Merge Tool

Page 23: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Semantic Merge 7,000 downloads in 2 weeks with reputed tweets worldwide

unbuffered4:26pm via Web When semanticmerge.com becomes a standard part of every IDE, it will make manual git/svn merging look like coding with punchcards

Page 24: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Codice Software Core Values

1. Proven Technology• Leading DVCS implementation for Enterprises• 50 man years development • Key Enterprise references

2. Customer Focused• Flexible to customer improvement demands • Professional support and quick turn around • Assistance in the deployment and to improve

the development processes.

3. Strive for Excellence • Experienced, professional and passionate team fully dedicated to make the best DVCS.

Page 25: Plastic SCM: Entreprise Version Control Platform for Modern Applications and Services

© 2013 Codice Software

Thank you…

You may contact us at [email protected]

Francisco MonteverdeCEO Codice [email protected]