Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Case Study: Creating a DocOps/Docs-As-Code DevPortal for C3.ai

128 views

Published on

C3.ai had an interesting problem, as they needed a developer portal to host documentation that that was sourced from a very complex documentation set:

Some of the documentation existed as markdown docs
Guides were composites of several markdown docs
but the majority of the reference documentation is generated from the code itself. We generated thousands of reference docs for various versions of this platform.
Additionally, the developer portal needed to interface with their external community forum.

And it needed to be delivered very quickly: the project started in mid-October, 2019, and was delivered in time for C3.ai’s Transform conference, an annual customer event held in February, 2020. This talk shares the journey of the portal with challenges and milestones.





Published in: Technology
  • Be the first to comment

  • Be the first to like this

Case Study: Creating a DocOps/Docs-As-Code DevPortal for C3.ai

  1. 1. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE2 • A Platform as a Service • A Data Integration Platform • A Rapid AI and Application Development Platform • A Massively Scalable Distributed Processing Platform
  2. 2. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE3 A Software Suite for Digital Enterprise Transformation
  3. 3. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE4 Elastic Cloud Computing
  4. 4. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE5 Big Data
  5. 5. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE Internet of Things 6
  6. 6. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE7 AI / Machine Learning
  7. 7. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE8 Digital Transformation Internet of Things Elastic Cloud Computing Big Data Learning AI / Machine
  8. 8. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE9
  9. 9. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE10
  10. 10. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE11
  11. 11. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE C3 AI Suite for Digital Transformation RDBMS Key Value Store NoSQL Storage HDFS Cloud Object Storage File Systems Distributed File System Data Persistence Expressions Source Transform Canonical IoT Connectors, Extensions Queue Map ReduceBatch Stream Continuous Analytics Processing ML Pipeline Ex Machina Machine Learning Framework and Services Micro Strategy Alteryx Domo Qlik Tableau UI and Data Visualization Tools React Angular JS UI Frameworks R Studio EclipseJupyter Application Development Tools Salesforce IBM Maximo OSI PI AWS IoT Amazon Kinesis SAP Hana Azure Data Lake GE Weather Commodity Data Data Integration Oracle DataIn Insights&ActionOut C3.ai DevOps Studio C3.ai Data Studio C3.ai Applications Studio C3.ai Integrated Development Studio (IDS) C3.ai ML Studio Extensible Data Models Predictive Maintenance Cross-Industry Foundation Inventory Supply Chain CRM Energy Management Aerospace Manufacturing Telco Utilities Oil and Gas Fraud Access Control Authentication Roles & Responsibilities Users Auto Scaling APIs Time Series Logging Multitenancy Monitoring Encryption Deployment Auditing Scheduler Systems Management Profiling Platform Management Services Analytics 13
  12. 12. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE #1 in Analytics and Data #1 in Platform Differentiation #1 in Security #1 in Connect Functions #1 in Partner Strategy #1 in Strength of Market Offering Industrial IoT Software Platforms Q4 2019 The Forrester Wave 14
  13. 13. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE Source: Omdia Decision Matrix: Selecting an Enterprise ML Development Platform, 2020–21 Leader in Enterprise ML Development Platform OMDIA #1 Ranked Technology 15
  14. 14. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE C3.ai Applications Manufacturing | Oil and Gas | Utilities | Aerospace & Defense | Intelligence 16
  15. 15. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE C3.ai Reliability System of systems Prioritize investigation of risks at the systems level System health visibility Anomaly detection Failure mode identification 17
  16. 16. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE C3.ai Inventory Optimization Optimization by Confidence Level Real-Time Recommendations Scenario Generation and Analysis Bill of Materials Impact Analysis Parts Benchmarking 18
  17. 17. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE C3.ai New Technology Stack 19
  18. 18. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE C3.ai New Technology Stack 20
  19. 19. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE AWS IoT Events AWS Lambda Azure Data Lake HDInsight Azure Data Catalog Azure Data Explorer AWS Lake Formation Amazon Firehose Azure ML Amazon RDS Azure Event Hubs AWS IoT Search Azure Blob Azure Data Lake SQL Data Warehouse IBM MQ Amazon CloudFront Amazon CloudWatch AWS CloudTrail Azure Data Factory Amazon SQS Amazon S3 Amazon Kinesis AWS CloudFormation Amazon API Gateway Amazon DynamoDB Amazon Aurora Elastic Load Balancing Amazon SNS Azure Analysis Services Amazon SageMaker ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Stream Analytics AI Software Cluster 21
  20. 20. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE Amazon SageMaker 22
  21. 21. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE AWS IoT Events AWS Lambda Azure Data Lake HDInsight Azure Data Catalog Azure Data Explorer AWS Lake Formation Amazon Firehose Azure ML Amazon RDS Azure Event Hubs AWS IoT Search Azure Blob Azure Data Lake SQL Data Warehouse IBM MQ Amazon CloudFront Amazon CloudWatch AWS CloudTrail Azure Data Factory Amazon SQS Amazon S3 Amazon Kinesis AWS CloudFormation Amazon API Gateway Amazon DynamoDB Amazon Aurora Elastic Load Balancing Amazon SNS Azure Analysis Services Amazon SageMaker ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Stream Analytics AI Software Cluster 23
  22. 22. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE AI Software StackDataIn Insights&ActionOut Data Integration Batch Processing Stream Processing Non Relational DatabaseRelational Database NoSQl Storage Application Development Tools UI and Data Visualization Tools Data Exploration Tools Hadoop Storage Cloud Object Storage Machine Learning Framework and Services APIs, Enterprise Application InfrastructureData Connectors, Platform Management, Security Platform Infrastructure 24
  23. 23. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE AWS IoT Events AWS Lambda Azure Data Lake HDInsight Azure Data Catalog Azure Data Explorer AWS Lake Formation Amazon Firehose Azure ML Amazon RDS Azure Event Hubs AWS IoT Search Azure Blob Azure Data Lake SQL Data Warehouse IBM MQ Amazon CloudFront Amazon CloudWatch AWS CloudTrail Azure Data Factory Amazon SQS Amazon S3 Amazon Kinesis AWS CloudFormation Amazon API Gateway Amazon DynamoDB Amazon Aurora Elastic Load Balancing Amazon SNS Azure Analysis Services Amazon SageMaker ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? Stream Analytics AI Software Cluster 25
  24. 24. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE Platform Infrastructure AI Software StackDataIn Insights&ActionOut Data Integration Batch Processing Stream Processing Non Relational DatabaseRelational Database NoSQL Storage Application Development Tools UI and Data Visualization Tools Data Exploration Tools Hadoop Storage Cloud Object Storage Machine Learning Framework and Services AWS IoT Events AWS LambdaAmazon S3 Azure Data Lake HDInsight SQL Data Warehouse Azure Data Factory Azure Data Catalog Azure Data Explorer Amazon Aurora Amazon Firehose Amazon CloudFront Amazon API Gateway Amazon SNS Azure ML? Amazon RDS Azure Event Hubs AWS IoT Search AWS Lake Formation Amazon CloudWatch AWS CloudTrail Trusted Advisor Azure Blob IBM MQ Amazon SQS Amazon Kinesis AWS CloudFormation Amazon DynamoDB Amazon DynamoDBAmazon DynamoDB Elastic Load Balancing Amazon SageMaker Azure Analysis Services Stream Analytics APIs, Enterprise Application InfrastructureData Connectors, Platform Management, Security 26
  25. 25. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE IBM MQ Amazon RDS SQL Data Warehouse AI Software Stack Batch Processing Stream Processing Relational Database NoSQL Storage UI and Data Visualization Tools Data Exploration Tools Cloud Object Storage Machine Learning Framework and Services AWS IoT Events AWS Lambda Amazon S3 Azure Data Lake HDInsight Stream Analytics Azure Data Factory Azure Data Catalog Azure Data Explorer Amazon Aurora Amazon Firehose Amazon CloudFront Amazon API Gateway Amazon SNS Azure Event Hubs AWS IoT Search? AWS Lake Formation Amazon CloudWatch AWS CloudTrail Trusted Advisor Azure Blob Amazon Kinesis AWS CloudFormation Amazon DynamoDB Amazon DynamoDB Amazon DynamoDB Elastic Load Balancing Amazon SageMaker Azure Analysis Services Data Integration Amazon SQS Azure ML? APIs, Enterprise Application Infrastructure Data Connectors, Application Development Tools Hadoop Storage Non Relational Database Platform Management Services 27
  26. 26. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE C3 AI Suite for Digital Transformation RDBMS Key Value Store NoSQL Storage HDFS Cloud Object Storage File Systems Distributed File System Data Persistence Expressions Source Transform Canonical IoT Connectors, Extensions Queue Map ReduceBatch Stream Continuous Analytics Processing ML Pipeline Ex Machina Machine Learning Framework and Services Micro Strategy Alteryx Domo Qlik Tableau UI and Data Visualization Tools React Angular JS UI Frameworks R Studio EclipseJupyter Application Development Tools Salesforce IBM Maximo OSI PI AWS IoT Amazon Kinesis SAP Hana Azure Data Lake GE Weather Commodity Data Data Integration Oracle DataIn Insights&ActionOut C3.ai DevOps Studio C3.ai Data Studio C3.ai Applications Studio C3.ai Integrated Development Studio (IDS) C3.ai ML Studio Extensible Data Models Predictive Maintenance Cross-Industry Foundation Inventory Supply Chain CRM Energy Management Aerospace Manufacturing Telco Utilities Oil and Gas Fraud Access Control Authentication Roles & Responsibilities Users Auto Scaling APIs Time Series Logging Multitenancy Monitoring Encryption Deployment Auditing Scheduler Systems Management Profiling Platform Management Services Analytics 28
  27. 27. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE Data Engineer Application Developer Data Scientist Business Analyst End User M2M & IoT Batch Processing Stream Processing Non Relational Database Relational Database Data Exploration Tools Hadoop Cloud Object Storage Enterprise Application Infrastructure Data Connectors Security Machine Learning Framework and Services Data Integration Platform Management Services UI and Data Visualization Tools Application Development Tools NoSQL Storage API’s C3 AI SUITE 29
  28. 28. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE Batch Processing Stream Processing Azure IoT Azure Database for PostgreSQL SQL Data Warehouse Azure API Management Azure Monitor HDInsight Time Series Security Azure Cognitive Services Azure Active Directory Azure Blob Store UI and Data Visualization Tools Azure Cosmos DB Encryption API’s + Data Engineer Application Developer Data Scientist Business Analyst End User M2M & IoT C3 AI SUITE 30
  29. 29. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE Batch Processing Amazon Kinesis AWS IoT Amazon RDS Amazon Redshift Amazon SQS Cloud Object Storage Amazon EMR Data Connectors Security Machine Learning Framework and Services Data Integration Amazon S3 UI and Data Visualization Tools Amazon DynamoDB Encryption API’s + Data Engineer Application Developer Data Scientist Business Analyst End User M2M & IoT C3 AI SUITE 31
  30. 30. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE Batch Processing Google Cloud Video Intelligence Google Cloud IoT Core Google Spanner Google BigQuery Google Pub/Sub Google Cloud Vision Google Cloud Speech Data Connectors Security Machine Learning Framework and Services Google Maps Google Cloud Translation UI and Data Visualization Tools Google Dataflow Encryption API’s + Data Engineer Application Developer Data Scientist Business Analyst End User M2M & IoT C3 AI SUITE 32
  31. 31. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE Scheduling Multi- Dimensional IBM API Connect Profiling Logging IBM Db2 Time Series Service IBM Watson Machine Learning IBM Cloudant Distributed In-Memory Service Auto Scaling IBM Message Hub Watson Knowledge Catalog IBM Streams Watson IoT Distributed File System Watson AI Assistant Watson Natural Language Understanding Watson Vision IBM Speech to Text Watson Natural Language Classification Integration Services Encryption IBM Cloud Monitoring Watson Personality Insights Authorization Watson Tone Analyzer IBM Text to Speech Authentication + Data Engineer Application Developer Data Scientist Business Analyst End User M2M & IoT C3 AI SUITE 33
  32. 32. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE Batch Processing Stream Processing Non Relational Database Relational Database Data Exploration Tools Hadoop Cloud Object Storage Enterprise Application Infrastructure Data Connectors Security Machine Learning Framework and Services Data Integration Platform Management Services UI and Data Visualization Tools Application Development Tools API’s NoSQL Storage + Data Engineer Application Developer Data Scientist Business Analyst End User M2M & IoT C3 AI SUITE 34
  33. 33. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE Amazon SQS Amazon S3 Amazon Redshift Amazon Kinesis Amazon DynamoDB Azure Stack Google Maps Google Spanner Google BigQuery vSphere Kubernetes GPUs Edge CUDAIBM Message Hub IBM Streams Watson IoT Watson Vision IBM Cloud Monitoring Azure Blob Storage Azure Event Hub Google Cloud Speech Google Cloud Translation Multi-Cloud DeploymentPaaSSaaS C3.ai Energy Management™ C3.ai Inventory Optimization™ C3.ai Predictive Maintenance™ Anti-Money Laundering Manufacturing Quality Optimization Customer Extension C3.ai CRM AI™ C3.ai APPLICATIONS Stream Batch Queue Access Control Continuous Analytic Processing Logging Metadata Management Map Reduce Precision Health CUSTOMER APPLICATIONS C3 AI SUITE Azure Event Monitor Azure Database for PostgreSQL 35
  34. 34. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE Amazon SQS Amazon S3 Amazon Redshift Amazon Kinesis Amazon DynamoDB Azure Stack Google Maps Google Spanner Google BigQuery vSphere Kubernetes GPUs Edge CUDAIBM Message Hub IBM Streams Watson IoT Watson Vision IBM Cloud Monitoring Azure Blob Storage Azure Event Hub Google Cloud Speech Google Cloud Translation Polyglot Cloud DeploymentPaaSSaaS C3.ai Energy Management™ C3.ai Inventory Optimization™ C3.ai Predictive Maintenance™ Anti-Money Laundering Manufacturing Quality Optimization Customer Extension C3.ai CRM AI™ C3.ai APPLICATIONS Stream Batch Queue Access Control Continuous Analytic Processing Logging Metadata Management Map Reduce Precision Health CUSTOMER APPLICATIONS C3 AI SUITE Azure Event Monitor Azure Database for PostgreSQL 36
  35. 35. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE Aren’t we talking about docs? 37
  36. 36. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE C3.ai Types 38
  37. 37. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE C3.ai Packages 39
  38. 38. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE C3.ai Application - Inheritance 40
  39. 39. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE41 C3.ai Application - Remix How do I document this type when any customer can change it…
  40. 40. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE C3.ai Docs 42
  41. 41. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE The platform should render the docs! 43
  42. 42. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE44 • Deploy an application to read its docs? • View docs only for the version I’ve deployed? • Release notes AFTER upgrading? • Pay for a platform to read the docs? • “Technical” interface? Oh darn…
  43. 43. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE45 • Provide convenient access to docs sourced from code • Support evaluation of the product through documentation • Appropriate UX for “developer” site for C3.ai • Augment other developer experiences: training & community What does a solution look like?
  44. 44. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE
  45. 45. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE48 C3.ai DTI’s mission is to attract the world’s leading scientists to join in a coordinated and innovative effort to advance the digital transformation of business, government, and society.
  46. 46. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE
  47. 47. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE50 First Call for Proposals: Mitigation of COVID-19 and Future Pandemics Advance AI techniques to mitigate pandemic. Topics for Research Awards may include but are not limited to the following topics: 1. Applying machine learning/AI methods to mitigate the spread of the COVID-19 pandemic 2. Genome-specific COVID-19 medical protocols, including precision medicine of host responses 3. Biomedical informatics methods for drug design and repurposing 4. Design and sharing of clinical trials for collecting and analyzing data on medications, therapies, and interventions 5. Modeling, simulation, prediction of COVID-19 propagation and efficacy of interventions 6. Logistics and optimization analysis for design of public health strategies and interventions 7. Rigorous approaches to designing sampling and testing strategies 8. Data analytics for COVID-19 research harnessing private and sensitive data, including the role of edge computing/IoT for gathering data 9. Improving societal resilience in response to the spread of COVID-19 Pandemic 10. Broader efforts in biomedicine, infectious disease modeling, response logistics and optimization, public health efforts, tools, and methodologies around the containment of rising infectious diseases, and response to pandemics so as to be better prepared for future infectious diseases
  48. 48. © C3.ai 2020 | CONFIDENTIAL - DO NOT COPY, REPURPOSE OR DISTRIBUTE51 Bi-annual call for research proposals Purpose to advance the science of digital transformation Reviewed and awarded by university leads 26 research awards granted each year • (2) $500,000 awards • (16) $250,000 awards • (8) $100,000 awards Awards will be for 12 months in duration Multidisciplinary and multi-institution projects will be favored Recipients encouraged to conduct breakthrough research and to pursue and establish larger research projects with federal and other funding sources C3.ai DTI Research Awards

×