SlideShare ist ein Scribd-Unternehmen logo
1 von 22
Downloaden Sie, um offline zu lesen
nexB - Software Audit for 

Acquisition Due Diligence
© 2014 nexB Inc.
© 2014 nexB Inc. 
Agenda
•  About nexB
–  What nexB does
–  Our experience
•  Software Audit: M&A
–  License Violation Risks & Recent Audit Issues
–  Software Audit Process 
–  Software Audit Tools
•  Additional Information
–  Why nexB?
–  Contact us
–  Lessons Learned
© 2014 nexB Inc. 
What nexB does
•  Enable component-based
software development
–  Software provenance
analysis services
–  Software asset management
tools
•  Software audit services
–  Acquisitions
–  Software product
releases

•  Active OSS developers
•  Expertise in all software IP
About nexB
© 2014 nexB Inc. 
Our experience is our difference
•  Recognized by the buyers and target companies as:
–  experts in software origin analysis
–  a fair and trusted intermediary
•  We identifies issues along with practical remediation steps
•  350+ software audit projects completed to-date
About nexB
© 2014 nexB Inc. 
License Violation Risks
Software audit: M&A
source code
available
source with
limitations
(Proprietary)
Copyleft
FOSS
Attribution
Binary-only
(Proprietary)
Free
Software
Freeware / 

Shareware
many Java

libraries
Microsoft 

shared source
Sun

SCSL
GNU GPL
GNU LGPL
MPL
CDDL
BSD
 MIT
Apache
EPL
Adobe 

Reader
© 2014 nexB Inc. 
Recent Audit Issue Examples
•  Dependency Issue “Workarounds”
•  License violation
Software audit: M&A
© 2014 nexB Inc. 
Emerging Audit Issue Examples
•  Cloud computing and Dual Licensing
•  Personal Devices and Application store markets
Software audit: M&A
© 2014 nexB Inc. 
Software Audit Process
Software audit: M&A
© 2014 nexB Inc. 
Software Analysis Scope
Software audit: M&A
Original
Code
Open Source Code
Commercial
Code
© 2014 nexB Inc. 
Software Analysis Deliverables
•  Complete inventory of OSS and third-party components in
Development codebase(s)
•  Bill of materials for Deployed product components
•  Specific Action items and recommended actions for
resolution that can be factored into the deal terms
–  Including possible exposure for older product versions
–  Detailed analysis for copyleft “contamination”
•  Checklist of commercial components as input to due
diligence for contract review
•  Analysis of how much code is original versus borrowed
(OSS) or purchased (Commercial)
Software audit: M&A
© 2014 nexB Inc. 
Preparation – 1 week (1/2)
•  Establish NDA with seller
–  Two-way or three-way
•  Scope audit effort
–  Audit profile (questionnaire)
–  Size of code base - # files and lines of source code
–  Disclosure of known third-party and open source software
–  Onsite or remote access to the code
•  Prepare/agree quote – always fixed fee, no surprises
•  Schedule project
Software audit: M&A
© 2014 nexB Inc. 
Preparation (2/2)
è Many targets are anxious about the process
–  General level of anxiety is inversely proportional to prior M&A
experience of executives
–  We do some hand holding to make them feel comfortable
–  Assure seller that they review all findings first so no surprises
–  Explain the process and tools to the seller
Software audit: M&A
© 2014 nexB Inc. 
License & Origin Analysis – 2 weeks (1/2)
Analysis Activities
•  Scan files for license, copyright and other origin clues
•  Match target code to reference code repository for origin and license
detection (based on digital “fingerprints”)
•  Map Deployed code to Development code to:
–  Validate that we have a complete Development codebase
–  Filter issues based on the effective Deployed/Distributed code
•  Analyze software interaction and dependency patterns for copyleft-
licensed components as needed
•  Additional domain-specific investigations typically for embedded
devices and applications of media codecs
Software audit: M&A
© 2014 nexB Inc. 
License & Origin Analysis (2/2)
Results
•  Software Inventory and Bill(s) of Materials
•  Draft Action items & recommendations
Software audit: M&A
© 2014 nexB Inc. 
Review & Report – 1 week (1/2)
Activities
•  Draft findings review with product team
–  Ask product team to respond to each Action item 
•  Accept recommended solution or propose another approach
•  Acknowledge & investigate
•  Not a request to fix anything during the audit
–  Incorporate feedback and answers from product team into the
Software BOM and Report
–  We may “agree to disagree” – e.g. we then present two points of
view: ours and the seller’s.
•  Complete final report
–  Second review cycle with product team
–  Release the report
–  Conference call with buyer to present findings & answer questions
Software audit: M&A
© 2014 nexB Inc. 
Review & Report (2/2)
Results
•  Final Software Inventory / BOM spreadsheets
•  Final Report - narrative with executive summary, project
data and summary of the Action items and Responses
Software audit: M&A
© 2014 nexB Inc. 
Software Audit Tools
•  nexB typically uses a combination of tools for a software
audit
–  Our own DejaCode™ toolkit is the primary tool
–  Other tools used as needed or as licensed by a customer (open
source or commercial)
•  Multiple layers of analysis
–  Direct scan for license and copyright notices
–  Component matching for open source and publicly available third-
party components (freeware/proprietary)
–  Analysis of source code and pre-built libraries (binary)
–  Interaction and dependency analysis as needed
•  Review and validation by software experts
•  All require expert humans to interpret the results!
Software audit: M&A
© 2014 nexB Inc. 
Why nexB (1/2)

100% of our customers
are repeat customers
and references

We have a balanced approach
–  Automated code analysis AND analysis by software experts
–  Direct consultation with engineering, management and legal teams
–  Concrete Action items with recommended nexB action resolution
and seller Responses
Additional Information
© 2014 nexB Inc. 
Why nexB (2/2)
•  Trusted third party
–  Mitigates confidentiality concerns of a seller company
–  Maintains proper segregation of information during acquisition
negotiations
–  Enables objective analysis with appropriate consideration of
feedback from all parties
Additional Information
© 2014 nexB Inc. 
Contact us
Contact person: 

Pierre Lapointe, Customer Care Manager

plapointe@nexb.com

+ 1 415 287-7643

More information:

http://www.nexb.com/
Additional Information
© 2014 nexB Inc. 
Lessons Learned – Acquisitions (1/2)
•  Schedule is always a major issue
•  Initiate a software audit early because
–  Seller company will probably not have done this before
–  Negotiation of an NDA takes longer than you expect
–  Negotiation of access to artifacts and people takes longer than you
think
•  The review of findings and recommendations may require
several iterations with target company
–  Get answers for open issues
–  Get agreement about remediation strategies
–  Get agreement that report is objective and reasonable
Additional Information
© 2014 nexB Inc. 
Lessons Learned – Acquisitions (2/2)
•  Identify the “crown jewels” and key platforms of the seller
technology
–  Concentrate the audit on the most important parts
–  For products with multiple operating system versions, focus on the
most important platforms
•  Some issues can be specific to the open source policies of
the Buyer
–  For instance tolerance for certain version of open source licenses
or proprietary Linux drivers varies among companies
–  We apply Buyer company policies if available,
–  Otherwise we apply “conservative” community standards 
–  Exceptional cases may require additional discussion with legal and
and business teams to evaluate the risks
Additional Information

Weitere ähnliche Inhalte

Was ist angesagt?

Reverse_Engineering_Thick-clients
Reverse_Engineering_Thick-clientsReverse_Engineering_Thick-clients
Reverse_Engineering_Thick-clients
Steve Markey
 

Was ist angesagt? (20)

IT due diligence and software quality for fintech startups
IT due diligence and software quality for fintech startupsIT due diligence and software quality for fintech startups
IT due diligence and software quality for fintech startups
 
Optimizing The Cost Of Open Source Software Management
Optimizing The Cost Of Open Source Software ManagementOptimizing The Cost Of Open Source Software Management
Optimizing The Cost Of Open Source Software Management
 
nexB - Software audit for product release
nexB - Software audit for product releasenexB - Software audit for product release
nexB - Software audit for product release
 
nexB - FOSS Introduction
nexB - FOSS IntroductionnexB - FOSS Introduction
nexB - FOSS Introduction
 
Open source governance with Dejacode
Open source governance with DejacodeOpen source governance with Dejacode
Open source governance with Dejacode
 
How to Manage Open Source requirements with AboutCode
How to Manage Open Source requirements with AboutCodeHow to Manage Open Source requirements with AboutCode
How to Manage Open Source requirements with AboutCode
 
Don't Let Open Source be the Deal Breaker In Your M&A
Don't Let Open Source be the Deal Breaker In Your M&A Don't Let Open Source be the Deal Breaker In Your M&A
Don't Let Open Source be the Deal Breaker In Your M&A
 
Flight WEST 2018 Presentation - A Buyer Investor Playbook for Successfully Na...
Flight WEST 2018 Presentation - A Buyer Investor Playbook for Successfully Na...Flight WEST 2018 Presentation - A Buyer Investor Playbook for Successfully Na...
Flight WEST 2018 Presentation - A Buyer Investor Playbook for Successfully Na...
 
FLIGHT Amsterdam Presentation - Open Source License Management in the Black D...
FLIGHT Amsterdam Presentation - Open Source License Management in the Black D...FLIGHT Amsterdam Presentation - Open Source License Management in the Black D...
FLIGHT Amsterdam Presentation - Open Source License Management in the Black D...
 
Customer Case Study: ScienceLogic - Many Paths to Compliance
Customer Case Study: ScienceLogic - Many Paths to ComplianceCustomer Case Study: ScienceLogic - Many Paths to Compliance
Customer Case Study: ScienceLogic - Many Paths to Compliance
 
BlackDuck Suite
BlackDuck SuiteBlackDuck Suite
BlackDuck Suite
 
PCI and Vulnerability Assessments - What’s Missing
PCI and Vulnerability Assessments - What’s MissingPCI and Vulnerability Assessments - What’s Missing
PCI and Vulnerability Assessments - What’s Missing
 
Integrating Black Duck into your Agile DevOps Environment
Integrating Black Duck into your Agile DevOps EnvironmentIntegrating Black Duck into your Agile DevOps Environment
Integrating Black Duck into your Agile DevOps Environment
 
Best practice recommendations for utilizing open source software (from a lega...
Best practice recommendations for utilizing open source software (from a lega...Best practice recommendations for utilizing open source software (from a lega...
Best practice recommendations for utilizing open source software (from a lega...
 
Ensuring Design Quality in Mixed Signal IP
Ensuring Design Quality in Mixed Signal IPEnsuring Design Quality in Mixed Signal IP
Ensuring Design Quality in Mixed Signal IP
 
The How and Why of Container Vulnerability Management
The How and Why of Container Vulnerability ManagementThe How and Why of Container Vulnerability Management
The How and Why of Container Vulnerability Management
 
How Pratt & Whitney Streamlined Their ABAP Security and Quality Code Review P...
How Pratt & Whitney Streamlined Their ABAP Security and Quality Code Review P...How Pratt & Whitney Streamlined Their ABAP Security and Quality Code Review P...
How Pratt & Whitney Streamlined Their ABAP Security and Quality Code Review P...
 
Filling your AppSec Toolbox - Which Tools, When to Use Them, and Why
Filling your AppSec Toolbox - Which Tools, When to Use Them, and WhyFilling your AppSec Toolbox - Which Tools, When to Use Them, and Why
Filling your AppSec Toolbox - Which Tools, When to Use Them, and Why
 
Streamline Open Source Compliance with Package Pre-Approval
Streamline Open Source Compliance with Package Pre-ApprovalStreamline Open Source Compliance with Package Pre-Approval
Streamline Open Source Compliance with Package Pre-Approval
 
Reverse_Engineering_Thick-clients
Reverse_Engineering_Thick-clientsReverse_Engineering_Thick-clients
Reverse_Engineering_Thick-clients
 

Andere mochten auch

Andere mochten auch (20)

Software assessment and audit
Software assessment and auditSoftware assessment and audit
Software assessment and audit
 
Electronic Data Interchange
Electronic Data InterchangeElectronic Data Interchange
Electronic Data Interchange
 
Specialised audit
Specialised auditSpecialised audit
Specialised audit
 
Information Systems & IT Audit (BML303)
Information Systems & IT Audit (BML303)Information Systems & IT Audit (BML303)
Information Systems & IT Audit (BML303)
 
Software assessment by example (lecture at the University of Bern)
Software assessment by example (lecture at the University of Bern)Software assessment by example (lecture at the University of Bern)
Software assessment by example (lecture at the University of Bern)
 
The humane software assessment (Choose Forum 2009)
The humane software assessment (Choose Forum 2009)The humane software assessment (Choose Forum 2009)
The humane software assessment (Choose Forum 2009)
 
Edi 2Ecommerce data interchange
Edi 2Ecommerce data interchangeEdi 2Ecommerce data interchange
Edi 2Ecommerce data interchange
 
E D I
E  D  IE  D  I
E D I
 
Software assessment essentials (lecture at the University of Bern 2013)
Software assessment essentials (lecture at the University of Bern 2013)Software assessment essentials (lecture at the University of Bern 2013)
Software assessment essentials (lecture at the University of Bern 2013)
 
Software audit strategies: how often is enough?
Software audit strategies: how often is enough? Software audit strategies: how often is enough?
Software audit strategies: how often is enough?
 
Assessing youragility
Assessing youragilityAssessing youragility
Assessing youragility
 
Identifying third party software with ScanCode
Identifying third party software with ScanCodeIdentifying third party software with ScanCode
Identifying third party software with ScanCode
 
Electronic data interchange
Electronic data interchangeElectronic data interchange
Electronic data interchange
 
Lean, six sigma and lean six sigma
Lean, six sigma and lean six sigmaLean, six sigma and lean six sigma
Lean, six sigma and lean six sigma
 
Technical Due Diligence for M&A: A Perspective from Corporate Development at ...
Technical Due Diligence for M&A: A Perspective from Corporate Development at ...Technical Due Diligence for M&A: A Perspective from Corporate Development at ...
Technical Due Diligence for M&A: A Perspective from Corporate Development at ...
 
Due Diligence - What You Don’t Find Out Will Hurt You
Due Diligence - What You Don’t Find Out Will Hurt YouDue Diligence - What You Don’t Find Out Will Hurt You
Due Diligence - What You Don’t Find Out Will Hurt You
 
Managing OSS license obligations
Managing OSS license obligationsManaging OSS license obligations
Managing OSS license obligations
 
Control and audit of information System (hendri eka saputra)
Control and audit of information System (hendri eka saputra)Control and audit of information System (hendri eka saputra)
Control and audit of information System (hendri eka saputra)
 
Information system and control audit – lecture i
Information system and control audit – lecture iInformation system and control audit – lecture i
Information system and control audit – lecture i
 
Generalized audit-software
Generalized audit-softwareGeneralized audit-software
Generalized audit-software
 

Ähnlich wie nexB: Software Audit for Acquisition Due Diligence

lecture_5 (2).ppt hjhrrgjbgrmgrhbgrgghjd
lecture_5 (2).ppt hjhrrgjbgrmgrhbgrgghjdlecture_5 (2).ppt hjhrrgjbgrmgrhbgrgghjd
lecture_5 (2).ppt hjhrrgjbgrmgrhbgrgghjd
AqeelAbbas94
 
Analysis concepts and principles
Analysis concepts and principlesAnalysis concepts and principles
Analysis concepts and principles
saurabhshertukde
 

Ähnlich wie nexB: Software Audit for Acquisition Due Diligence (20)

Agile Software Development
Agile Software DevelopmentAgile Software Development
Agile Software Development
 
Synerzip Agile Software Development
Synerzip Agile Software DevelopmentSynerzip Agile Software Development
Synerzip Agile Software Development
 
requirements analysis and design
requirements analysis and designrequirements analysis and design
requirements analysis and design
 
lecture_Analysis Phase.ppt
lecture_Analysis Phase.pptlecture_Analysis Phase.ppt
lecture_Analysis Phase.ppt
 
lecture_5 (2).ppt hjhrrgjbgrmgrhbgrgghjd
lecture_5 (2).ppt hjhrrgjbgrmgrhbgrgghjdlecture_5 (2).ppt hjhrrgjbgrmgrhbgrgghjd
lecture_5 (2).ppt hjhrrgjbgrmgrhbgrgghjd
 
Our approach
Our approachOur approach
Our approach
 
Rovi Apttus CPQ
Rovi Apttus CPQ Rovi Apttus CPQ
Rovi Apttus CPQ
 
Analysis concepts and principles
Analysis concepts and principlesAnalysis concepts and principles
Analysis concepts and principles
 
Chapter 7 Development Strategies
Chapter 7 Development StrategiesChapter 7 Development Strategies
Chapter 7 Development Strategies
 
Winning the Cage-Match: How to Successfully Navigate Open Source Software iss...
Winning the Cage-Match: How to Successfully Navigate Open Source Software iss...Winning the Cage-Match: How to Successfully Navigate Open Source Software iss...
Winning the Cage-Match: How to Successfully Navigate Open Source Software iss...
 
Software Audit Strategies - How often is good enough for a software audit?
Software Audit Strategies - How often is good enough for a software audit? Software Audit Strategies - How often is good enough for a software audit?
Software Audit Strategies - How often is good enough for a software audit?
 
1.4 Software Project Acquisition.pptx
1.4 Software Project Acquisition.pptx1.4 Software Project Acquisition.pptx
1.4 Software Project Acquisition.pptx
 
Requirement engineering
Requirement engineeringRequirement engineering
Requirement engineering
 
How to Write an RFP
How to Write an RFPHow to Write an RFP
How to Write an RFP
 
Ravikumar_Resume
Ravikumar_ResumeRavikumar_Resume
Ravikumar_Resume
 
Agile 101
Agile 101Agile 101
Agile 101
 
Agile dashboard
Agile dashboardAgile dashboard
Agile dashboard
 
Requirements engineering process in software engineering
Requirements engineering process in software engineeringRequirements engineering process in software engineering
Requirements engineering process in software engineering
 
1.4 ContractAcceptance.pptx
1.4 ContractAcceptance.pptx1.4 ContractAcceptance.pptx
1.4 ContractAcceptance.pptx
 
Requirement Analysis
Requirement AnalysisRequirement Analysis
Requirement Analysis
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
Earley Information Science
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Kürzlich hochgeladen (20)

08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 

nexB: Software Audit for Acquisition Due Diligence

  • 1. nexB - Software Audit for 
 Acquisition Due Diligence © 2014 nexB Inc.
  • 2. © 2014 nexB Inc. Agenda •  About nexB –  What nexB does –  Our experience •  Software Audit: M&A –  License Violation Risks & Recent Audit Issues –  Software Audit Process –  Software Audit Tools •  Additional Information –  Why nexB? –  Contact us –  Lessons Learned
  • 3. © 2014 nexB Inc. What nexB does •  Enable component-based software development –  Software provenance analysis services –  Software asset management tools •  Software audit services –  Acquisitions –  Software product releases •  Active OSS developers •  Expertise in all software IP About nexB
  • 4. © 2014 nexB Inc. Our experience is our difference •  Recognized by the buyers and target companies as: –  experts in software origin analysis –  a fair and trusted intermediary •  We identifies issues along with practical remediation steps •  350+ software audit projects completed to-date About nexB
  • 5. © 2014 nexB Inc. License Violation Risks Software audit: M&A source code available source with limitations (Proprietary) Copyleft FOSS Attribution Binary-only (Proprietary) Free Software Freeware / 
 Shareware many Java
 libraries Microsoft 
 shared source Sun
 SCSL GNU GPL GNU LGPL MPL CDDL BSD MIT Apache EPL Adobe 
 Reader
  • 6. © 2014 nexB Inc. Recent Audit Issue Examples •  Dependency Issue “Workarounds” •  License violation Software audit: M&A
  • 7. © 2014 nexB Inc. Emerging Audit Issue Examples •  Cloud computing and Dual Licensing •  Personal Devices and Application store markets Software audit: M&A
  • 8. © 2014 nexB Inc. Software Audit Process Software audit: M&A
  • 9. © 2014 nexB Inc. Software Analysis Scope Software audit: M&A Original Code Open Source Code Commercial Code
  • 10. © 2014 nexB Inc. Software Analysis Deliverables •  Complete inventory of OSS and third-party components in Development codebase(s) •  Bill of materials for Deployed product components •  Specific Action items and recommended actions for resolution that can be factored into the deal terms –  Including possible exposure for older product versions –  Detailed analysis for copyleft “contamination” •  Checklist of commercial components as input to due diligence for contract review •  Analysis of how much code is original versus borrowed (OSS) or purchased (Commercial) Software audit: M&A
  • 11. © 2014 nexB Inc. Preparation – 1 week (1/2) •  Establish NDA with seller –  Two-way or three-way •  Scope audit effort –  Audit profile (questionnaire) –  Size of code base - # files and lines of source code –  Disclosure of known third-party and open source software –  Onsite or remote access to the code •  Prepare/agree quote – always fixed fee, no surprises •  Schedule project Software audit: M&A
  • 12. © 2014 nexB Inc. Preparation (2/2) è Many targets are anxious about the process –  General level of anxiety is inversely proportional to prior M&A experience of executives –  We do some hand holding to make them feel comfortable –  Assure seller that they review all findings first so no surprises –  Explain the process and tools to the seller Software audit: M&A
  • 13. © 2014 nexB Inc. License & Origin Analysis – 2 weeks (1/2) Analysis Activities •  Scan files for license, copyright and other origin clues •  Match target code to reference code repository for origin and license detection (based on digital “fingerprints”) •  Map Deployed code to Development code to: –  Validate that we have a complete Development codebase –  Filter issues based on the effective Deployed/Distributed code •  Analyze software interaction and dependency patterns for copyleft- licensed components as needed •  Additional domain-specific investigations typically for embedded devices and applications of media codecs Software audit: M&A
  • 14. © 2014 nexB Inc. License & Origin Analysis (2/2) Results •  Software Inventory and Bill(s) of Materials •  Draft Action items & recommendations Software audit: M&A
  • 15. © 2014 nexB Inc. Review & Report – 1 week (1/2) Activities •  Draft findings review with product team –  Ask product team to respond to each Action item •  Accept recommended solution or propose another approach •  Acknowledge & investigate •  Not a request to fix anything during the audit –  Incorporate feedback and answers from product team into the Software BOM and Report –  We may “agree to disagree” – e.g. we then present two points of view: ours and the seller’s. •  Complete final report –  Second review cycle with product team –  Release the report –  Conference call with buyer to present findings & answer questions Software audit: M&A
  • 16. © 2014 nexB Inc. Review & Report (2/2) Results •  Final Software Inventory / BOM spreadsheets •  Final Report - narrative with executive summary, project data and summary of the Action items and Responses Software audit: M&A
  • 17. © 2014 nexB Inc. Software Audit Tools •  nexB typically uses a combination of tools for a software audit –  Our own DejaCode™ toolkit is the primary tool –  Other tools used as needed or as licensed by a customer (open source or commercial) •  Multiple layers of analysis –  Direct scan for license and copyright notices –  Component matching for open source and publicly available third- party components (freeware/proprietary) –  Analysis of source code and pre-built libraries (binary) –  Interaction and dependency analysis as needed •  Review and validation by software experts •  All require expert humans to interpret the results! Software audit: M&A
  • 18. © 2014 nexB Inc. Why nexB (1/2) 100% of our customers are repeat customers and references We have a balanced approach –  Automated code analysis AND analysis by software experts –  Direct consultation with engineering, management and legal teams –  Concrete Action items with recommended nexB action resolution and seller Responses Additional Information
  • 19. © 2014 nexB Inc. Why nexB (2/2) •  Trusted third party –  Mitigates confidentiality concerns of a seller company –  Maintains proper segregation of information during acquisition negotiations –  Enables objective analysis with appropriate consideration of feedback from all parties Additional Information
  • 20. © 2014 nexB Inc. Contact us Contact person: Pierre Lapointe, Customer Care Manager
 plapointe@nexb.com
 + 1 415 287-7643 More information: http://www.nexb.com/ Additional Information
  • 21. © 2014 nexB Inc. Lessons Learned – Acquisitions (1/2) •  Schedule is always a major issue •  Initiate a software audit early because –  Seller company will probably not have done this before –  Negotiation of an NDA takes longer than you expect –  Negotiation of access to artifacts and people takes longer than you think •  The review of findings and recommendations may require several iterations with target company –  Get answers for open issues –  Get agreement about remediation strategies –  Get agreement that report is objective and reasonable Additional Information
  • 22. © 2014 nexB Inc. Lessons Learned – Acquisitions (2/2) •  Identify the “crown jewels” and key platforms of the seller technology –  Concentrate the audit on the most important parts –  For products with multiple operating system versions, focus on the most important platforms •  Some issues can be specific to the open source policies of the Buyer –  For instance tolerance for certain version of open source licenses or proprietary Linux drivers varies among companies –  We apply Buyer company policies if available, –  Otherwise we apply “conservative” community standards –  Exceptional cases may require additional discussion with legal and and business teams to evaluate the risks Additional Information