Institutionalizing Open Source - Puneet Sachdev - Nasscom Tech Series - June 6th 2013


Published on

Institutionalising Open Source has its challenges. From solving the choice problem to understanding the licence implications are the real barriers in Open Source Adoption. The solution is to adopt a structured approach towards evaluating open source, defining and adopting a reference framework as a guideline and setting up clear and simple governance mechanisms.

Published in: Technology, Education
1 Like
  • Be the first to comment

No Downloads
Total Views
On Slideshare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Institutionalizing Open Source - Puneet Sachdev - Nasscom Tech Series - June 6th 2013

  1. 1. June 6th, 2013Puneet Sachdev, Enterprise ArchitectHead - Open Source
  2. 2. © 2013 NIIT Technologies Ltd. 2Three Types of Enterprise Adopters
  3. 3. © 2013 NIIT Technologies Ltd. 3IT Service VendorsReduced Cost of DevelopmentBetter QualityFlexibility / Multiple Options
  4. 4. © 2013 NIIT Technologies Ltd. 4Product VendorsBetter Quality SoftwareCompetitive FeaturesFreedom, No Vendor Lock InReduced Cost
  5. 5. © 2013 NIIT Technologies Ltd. 5End User EnterprisesBetter QualitySecurityOpen Standards SupportNo Vendor Lock-InReduced TCO
  6. 6. © 2013 NIIT Technologies Ltd. 7Barrier 1 – Too Many ChoicesForges (e.g: SourceForge)Foundations (e.g: Apache)Project Specific Repositories (e.g: Drupal)1 Million+ FOSS Projects> 38K Ajax Libraries
  7. 7. © 2013 NIIT Technologies Ltd. 8Barrier 2 – LicensingDiverse LicensesViral NatureUnknown Licenses
  8. 8. © 2013 NIIT Technologies Ltd. 10Structured Evaluation ProcessAge License TeamCommunity Release Calendar Success Stories
  9. 9. © 2013 NIIT Technologies Ltd. 11Operating SystemDatabaseMiddleware (Containers, MOM)Core Services (Logging, caching, Persistence, Security etc)Application FrameworksInfrastructure Applications (Portals, ERP/CRM, Mail Server, Http Server, SecurityProxy Servers, Reverse Proxy Servers, Integration)ApplicationsReference FrameworkLifecycle MgmtIDEAPPMODELLINGVERSIONCONTROLBUILDTOOLSTESTING
  10. 10. © 2013 NIIT Technologies Ltd. 12Reference FrameworkOSCentOS Ubuntu Lifecycle MgmtDatabase MySQL MongoDB CassandraJBossActiveMQ JBOSS MessagingAxis2Web ServicesMOMJEEIntegrationMiddlewareSpringWSSpring Integration MuleDrools ActivitiBRS/BPMSpring MVC Struts1.3.x/Struts 2.xApplication Framework CakePHPjQuery YUIGWTRIA FrameworksFlexESAPIWeb SecurityEclipseRCPSMART ClientSocial Spring SocialECLIPSEANT/MAVENHUDSONCRUISESUBVERSIONBUGZILLASONARTPTP/LAMBDASOAPUIOPENSTASELENIUMJUNITDRUPPALIDEBUILDVERS.BUGSREVTESTCOLLABCache MemCacheHibernateSpring3.xAspectJPersistenceLoggingIoC/DIAOPScheduleApache VelocityTemplatingCommons Suite of LibrariesLibrariesJACOB – Java COM BridgeBridgeCoreServicesFreemarkerLog4j LogBackRXTXCommHazelCastQuartz Spring BatchHadoop and Related ProjectsPortal, CMS, SearchBig DataApache HTTP Server TomcatHTTP/WebServerInfrastructureJasperBIDrupal Solr LiferayD3Storm
  11. 11. © 2013 NIIT Technologies Ltd. 13E-Commerce WebsiteCentOSOSLifecycle MgmtMySQLDatabaseMiddlewareMemCacheHibernateSpring3.xAspectJCachePersistenceLoggingIoC/DIAOPCommons Suite of LibrariesLibrariesCoreServicesLog4jSpring MVCApplication FrameworkRIA FrameworksESAPIWeb SecurityApache HTTP Server TomcatHTTP/WebServerInfrastructureECLIPSEANT/MAVENHUDSONSUBVERSIONBUGZILLASONARTPTP/LAMBDAOPENSTASELENIUMJUNITIDEBUILDVERS.BUGSREVTESTjQuery
  12. 12. © 2013 NIIT Technologies Ltd. 14BigDataCentOSOSLifecycle MgmtDatabase CassandraJBossJ2EEMiddlewareSpring3.xCacheLoggingIoC/DIScheduleTemplatingJakarta Commons Suite of LibrariesLibrariesBridgeCoreServicesLog4jCommHazelCastSpring MVCApplication FrameworkjQueryRIA FrameworksWeb SecuritySMART ClientSocialHadoop and Related ProjectsPortal, CMS, SearchBig DataApache HTTP ServerHTTP/WebServerInfrastructureBISolrECLIPSEANT/MAVENHUDSONSUBVERSIONBUGZILLASONARJUNITIDEBUILDVERS.BUGSREVTESTD3Spring Batch
  13. 13. © 2013 NIIT Technologies Ltd. 15Web Services/IntegrationCentOSOSLifecycle MgmtMySQLDatabaseJBossActiveMQWeb ServicesMOMJ2EEIntegrationMiddlewareSpringWSSpring Integration MuleDrools ActivitiBRS/BPMSpring3.xCachePersistenceLoggingIoC/DIJakarta Commons Suite of LibrariesLibrariesCoreServicesLog4jSpring MVCApplication FrameworkECLIPSEANT/MAVENHUDSONSUBVERSIONBUGZILLASONARSOAPUIJUNITIDEVERS.BUGSREVTEST
  14. 14. © 2013 NIIT Technologies Ltd. 16Integrate with Architecture Methodology
  15. 15. © 2013 NIIT Technologies Ltd. 17RecommendationsStructured EvaluationReference FrameworkPrescriptive StacksStarter ApplicationsIn-House RepositoriesApproved VersionsCustomized LibrariesCentralized Lifecycle Management Tools
  16. 16. © 2013 NIIT Technologies Ltd. 19Development ScenariosCodeInternalUseIP –LicenseCustomer’sInternal UseIP –SaaS/ASPCustomer’sIP
  17. 17. © 2013 NIIT Technologies Ltd. 20RisksInternal Use• No Distribution• Minimal Risk. Obligations need to be complied.Customer’sInternal Use• Distribution  Customer• Minimal to Medium Risk. Obligations need to be complied.Internal IP –Hosted/ASP• No Distribution/Distribution• IP can get infected• Loss of IPIP - License• Distribution  Multiple Customers• IP can get infected• Loss of IPCustomer’s IP• Distribution to  Customer  Multiple end Customers• Customer’s IP can get infected• Loss of Customer’s IP
  18. 18. © 2013 NIIT Technologies Ltd. 21Usage ScenariosOS UsageLinkedCodeFragment/SnippetModifiedUnmodified
  19. 19. © 2013 NIIT Technologies Ltd. 22License Specific ImplicationsAlmost half of projects on GitHub do not have clearly identifiablelicense information
  20. 20. © 2013 NIIT Technologies Ltd. 23RecommendationsOpen Source PolicyLicense White ListReference FrameworkGovernance BoardWell Documented Procedure & ChecklistsCheckpoints and Audits to ensure compliance
  21. 21. © 2013 NIIT Technologies Ltd. 24THANK YOUPuneet Sachdev, Enterprise ArchitectHead - Open Source