Creating Integrated API Documentation Experiences for Users

Slides:



Advertisements
Similar presentations
Experience Guided Shopping & Search Guiders ® Deliver Measurable ROI Through Reports Metric Reports Deliver Unique Customer Decision Insights Guiders offer.
Advertisements

House Styles Chapter 3. Contents This presentation covers the following: – Why organisations need a consistent house style. – Master documents, style.
House Style. What do we mean by House Style? Consistent use of text type, graphics, logo, colours etc throughout our work Positioning of logo and graphics.
1Proprietary and Confidential AirVantage API – Getting started David SCIAMMA – June 13th 2014.
IT Requirements Capture Process. Motivation for this seminar Discovering system requirements is hard. Formally testing use case conformance is hard. We.
System Analysis (Part 1)
CS351 © 2003 Ray S. Babcock Software Testing What is it?
Honors 101, Fall 2006 Please do not sit in back of room! Lots of info on web page Join the mailing list Download Eclipse and start using it Read the text.
Software Documentation Written By: Ian Sommerville Presentation By: Stephen Lopez-Couto.
Darkstar John, Ya-Ching, Akash, Lynne, Rick Jesse.
Basics of Good Documentation Document Control Systems
1 Design and Integration: Part 1 Nuggets about Design vs Project Management.
MRIDULA JOSHI ASSOCIATE PROFESSOR PGGCG-11 BUSINESS REPORT WRITING.
Approaches to Investigating a System “Who knows what’s happening now?”
1 CSE 403 Software Lifecycle Models Reading: Rapid Development Ch. 7, 25 (further reading: Ch. 21, 35, 36, 20) These lecture slides are copyright (C) Marty.
المحاضرة الثالثة. Software Requirements Topics covered Functional and non-functional requirements User requirements System requirements Interface specification.
Bring Your Business into the 21 st Century : Part 1 WasteExpo 2011 Improving Your Financial Management System.
Document Control Basics of Good Documentation and
XML in Development of Distributed Systems Tooling Programming Runtime.
Pass SOX security audits and Improve XA security CISTECH Security Solutions Belinda Daub, Senior Consultant Technical Services
WEB DESIGN SOLUTIONS. 2 Presentation by JAVANET SYSTEMS 1st Floor, ROFRA House, Suite 4, Kansanga, Gaba Road P.O Box 31586, Kampala, Uganda Tel: +256(0) ,
Week1 Using the Library (the Java API) Classes are grouped together in packages –To use a class you have to know which package it is in –Every package.
1 Agile Roadmap and Portfolio by the xPMC Team AUGUST 26, 2015.
WIRED Week 3 Syllabus Update (next week) Readings Overview - Quick Review of Last Week’s IR Models (if time) - Evaluating IR Systems - Understanding Queries.
1 Tutorial 14 Validating Documents with Schemas Exploring the XML Schema Vocabulary.
Summary Report Project Name: Open Health Assistant (OHA) Platform Brief Project Description: Open Health Assistant offers a combination of remote and personalized.
Application Programming Interfaces. Java comes with a bunch of classes that are already written. Java comes with a bunch of classes that are already written.
Research for Reports Questions from the reading. Secondary research Secondary research (also known as desk research) involves the summary, collation and/or.
Proc Template Made Easy A Guide for SAS Users Author: Kevin D. Smith Reviewed by Jeff Marchand.
UNDERSTANDING YOUR OPTIONS FOR CLIENT-SIDE DEVELOPMENT IN OFFICE 365 Mark Rackley
© 2012 Autodesk Have a tablet? The handout is available for iBooks, Kindle, and Adliko.
Squaring of a number ending in 5 An approach to determine answers Quickly! Squaring of a number ending in 5.
Course: Software Engineering – Design I IntroductionSlide Number 1 What is a specification Description of a (computer) system, which:  is precise;  defines.
Advanced PM Team Impediments Documentation For this class, please do not sit with anyone who is part of your team.
APRIL 10, Meeting Agenda  Prototype 2 Goals  Robust Connections Demo  System Diagnostics Tool Demo  Final Prototype Risk Mitigation  Final.
Dictionaries and File I/O George Mason University.
OPeNDAP Development and Security Policies. Development Policies All of our software uses LGPL or GPL –LGPL is used by most of the code –We want it to.
The End …but there’s still some work to do. What Remains 1.Final Project Submission (20% of final grade) 2.Take Home Final (10% of final grade) 3.In-Class.
Zach Tatlock / Winter 2016 CSE 331 Software Design and Implementation Lecture 24 Wrap Up.
Testing and delivery Web design principles. Web development is software development.
10 Questions and Answers about.
Sentence starters and cloze paragraphs
C++ Programming: Presentation 1
CS0007: Introduction to Computer Programming
Integrating Dropbox with Canvas
Why API?.
Black Box Testing PPT Sources: Code Complete, 2nd Ed., Steve McConnell
Proposals and Progress Reports
What is SharePoint and why you should care
EXtreme Programming BY R.V.Ramesh MCA II Semester.
Software Documentation
Microsoft Ignite /13/2018 7:38 PM BRK2247
Order Management For Shippers.
Accessibility, Integrated
February 25-28, 2013 DoubleTree, San Jose
Creating a Successful Web Presence
WEEK 5: Part 2- Writing from Sources: Argument- Tips and Strategies for Success Mrs. LoFaso
How does Dahl use language to present places?
Search: integrating into the Windows 8 search experience
Market Research Chapter 4.4 IB Business.
Fintan The Amazing Fish of Knowledge…
In this session… Introduce what we’re talking about
A gentle introduction to RESTful APIs
Agile testing for web API with Postman
CSE 331 Software Design & Implementation
Background We would like to combine existing User guide and Admin guide currently in PDF form into a single HTML master site This master HTML site will.
Moving from GIGO to DIGRO
John Hazen Principal Program Manager Lead Microsoft Corporation
Business Plan Basics This is going to be a quick identification of why you want a written plan and its constituent elements.
Your Project Title (It is YOUR project, not the team's project, not CAM2) Your Name Date.
Presentation transcript:

Creating Integrated API Documentation Experiences for Users Chris Smith Rob Woodgate @zxchris @agiledoc Companies House

A lot of APIs are created and documented by developers

Is the documentation written by developers… Good? Useful? Easy to comprehend? Yes? Honestly? No?

You can be part of a better system!

Hooray!!!

How?

1. Understand the pitfalls 2. Recognise your goal 3. Get to your goal

Common API Pitfalls Designed at the keyboard API specs produced from the code No standard structure No naming conventions No UX designer No content writer Specification and docs are separate deliverables Developer does everything

This leads to a disconnect….. Formal API Spec Authored Docs

1. Understand the pitfalls  2. Recognise your goal

What is your goal?

To deliver a documented API that meets the customer need

What does this mean in reality?

Working together

It’s not about sitting next to each other It’s not about sitting next to each other. It’s about sharing the same goal.

Your goal is to produce a useful, comprehensible deliverable

If the API specification is difficult to understand, you’ve already failed

You need to help your developer understand the user needs

If the API is easy to comprehend then it requires less documentation

You should be an integral part of the API design process

Get API developers & writers working together

This should be standard practise

It’s not easy

It’s not quick

Some people will RESIST

But, resistance….

…is futile

You need to be part of a collective

Get API developers & writers DESIGNING together

This approach avoids a lot of the common pitfalls

1. Understand the pitfalls  2. Recognise your goal  3. Get to your goal

How?

Spoiler: We don’t have all the answers

But we can help!

Let’s look at an example…. { “name” : “string” “lfp” : “bool” “sent” : “datetime” “made_up_date” : “date” }

Let’s look at another example…. { “financial_accounts_type” : “string” “has_late_filing_penalty” : “bool” “penalty_sent_at” : “datetime” “period_ends_on” : “date” }

“made_up_date” : “date” } { “name” : “string” “lfp” : “bool” “sent” : “datetime” “made_up_date” : “date” } { “financial_accounts_type” : “string” “has_late_filing_penalty” : “bool” “penalty_sent_at” : “datetime” “period_ends_on” : “date” }

Some suggestions to get you thinking: 1. Enumerations suffixed with _type 2. Dates suffixed with _on 3. Date-times suffixed with _at 4. Booleans prefixed with has_ (or is_)

Tactic 1: Consistency

Tactic 2: Comprehensibility

Tactic 3: Specs as UX/UI

Specification before code Tactic 4: Specification before code

Tactic 5: Teamwork

Tactic 6: Single consumable

A single consumable?

We use this:

Why?

It combines specs with docs and graphics…

…in a single consumable…

…that devs and writers can work on together!

Time for a demo