SlideShare a Scribd company logo
1 of 12
Renewing a mature software product from outside in
- experiences from an API project
By Marjukka Niinioja and all the great characters at PlanMill Oy
PlanMill is a web based ERP, PROJECT and CRM software
Customizable, Cloud, On-premise – been used since 2001 by 100+ customers in Finland, Europe and overseas
GET /vocabulary?type=same
Discussing
Educating
Organizing and participating in
meetings and seminars
Inviting students from polytechnics as
research buddies and mentors
Understand strength and weakness of
our current system and API
In the beginning there
were lots of false
presumptions and missing
information – but luckily a
shared goal!
Let’s make our
process faster,
better, bug free,
and renew our
application one
step at a time –
starting with API!
Buttons as embodiment of our strategy
created in our staff day in 05/2014
GET /research
Pilot application with really new
technologies to understand the
possibilities better and to see what we
can use along our current system.
Built Jackson + Hibernate + Drools +
AngularJS 1 app / 1 business module
pilot to see how to replace our Java
+ XSL + MS SQL 20 module system.
POST /vision?type=shared
Joint understanding based on results and issues from previous sprints and hands-on research
tasks helped to speed up team work.
Hardest part of creating a
backlog was to eliminate
the “unknown” and to
accept that plans can
change.
Team
estimated how
many hours
they would
have for the
next 2 week
sprint and
created
backlog items
and estimated
them roughly.
“As a project
manager I
want to create
new projects”
POST /projects
{name: “My first project”,
Start: “2014-01-01T00:00:00Z}
CONNECT /teams?via=API
UI team tests and gives feedback of emerging API while developing UI
RAML as joint specification
RAML is a new standard for writing API specifications. It has a documented syntax and lot’s of good tools. It helped our team, to speak the
same “language” in designing the API endpoints, error messages and content. It was understandable by both UI and backend teams.
And suddenly there were tests…
Integration tests with RESTAssured UI tests with Thucydides and JBehave
GET /customers
GET /partners
Renewing our system API first has given as
an opportunity to use our customers as
our “co-developers”. They are building
apps for themselves and sharing ideas
and helping us to get ideas what we
should incorporate in our product.
Thank you!
Marjukka Niinioja @Mniinioja
Senior Consultant & Manager
PlanMill Oy @PlanMill
www.planmill.com
Check out our API at:
http://api-
portal.anypoint.mulesoft.com/planmill/
api/planmill-rest-api-15

More Related Content

What's hot

Clickslide Datadipity Beta V1
Clickslide Datadipity Beta V1Clickslide Datadipity Beta V1
Clickslide Datadipity Beta V1Gabriel Ortiz
 
Cover Letter
Cover LetterCover Letter
Cover LetterAlex Pal
 
From Zero to Spec-first API Hero
From Zero to Spec-first API HeroFrom Zero to Spec-first API Hero
From Zero to Spec-first API HeroPronovix
 
The Power of a Great API
The Power of a Great APIThe Power of a Great API
The Power of a Great APIdamovisa
 
Simplify and Accelerate App Development with Adobe AEM Mobile
Simplify and Accelerate App Development with Adobe AEM MobileSimplify and Accelerate App Development with Adobe AEM Mobile
Simplify and Accelerate App Development with Adobe AEM MobilePerficient, Inc.
 
Microsoft Low Code / No Code Business Process Automation
Microsoft Low Code / No Code Business Process AutomationMicrosoft Low Code / No Code Business Process Automation
Microsoft Low Code / No Code Business Process AutomationCameron Dwyer
 
QuikApply MVP2 Preso #5
QuikApply MVP2 Preso #5QuikApply MVP2 Preso #5
QuikApply MVP2 Preso #5KabirSawal
 
5 Important Considerations For Mobile Application Development Process
5 Important Considerations For Mobile Application Development Process5 Important Considerations For Mobile Application Development Process
5 Important Considerations For Mobile Application Development ProcessAjeet Singh
 
6 Reasons Why You Should Create React Native Apps For Your Enterprise in 2021
6 Reasons Why You Should Create React Native Apps For Your Enterprise in 20216 Reasons Why You Should Create React Native Apps For Your Enterprise in 2021
6 Reasons Why You Should Create React Native Apps For Your Enterprise in 2021Claritus Consulting
 
From Zero to Sixty: Driving a DocOps Based Approach to APIs at Ford Motor Com...
From Zero to Sixty: Driving a DocOps Based Approach to APIs at Ford Motor Com...From Zero to Sixty: Driving a DocOps Based Approach to APIs at Ford Motor Com...
From Zero to Sixty: Driving a DocOps Based Approach to APIs at Ford Motor Com...Pronovix
 
How to Make a Truck Inspection App
How to Make a Truck Inspection AppHow to Make a Truck Inspection App
How to Make a Truck Inspection AppAppSheet
 
The rise of Low-Code App Programming
The rise of Low-Code App ProgrammingThe rise of Low-Code App Programming
The rise of Low-Code App ProgrammingTony Low
 
Oracle Forms Conversion "An automated Approach"
Oracle Forms Conversion "An automated Approach"Oracle Forms Conversion "An automated Approach"
Oracle Forms Conversion "An automated Approach"Rokesh Jankie
 
QuikApply Preso #4
QuikApply Preso #4QuikApply Preso #4
QuikApply Preso #4KabirSawal
 
441fall2021section2 QuikApply Preso #1
441fall2021section2 QuikApply Preso #1441fall2021section2 QuikApply Preso #1
441fall2021section2 QuikApply Preso #1KabirSawal
 
201906 mobile devops
201906 mobile devops201906 mobile devops
201906 mobile devopsmallibone
 
441fall2021section2 QuikApply Preso #3
441fall2021section2 QuikApply Preso #3441fall2021section2 QuikApply Preso #3
441fall2021section2 QuikApply Preso #3KabirSawal
 
Visual studio enterprise 2017 mobile by Russ Fustino
Visual studio enterprise 2017 mobile by Russ FustinoVisual studio enterprise 2017 mobile by Russ Fustino
Visual studio enterprise 2017 mobile by Russ FustinoRuss Fustino
 
Making your app - from the idea to your hand
Making your app - from the idea to your handMaking your app - from the idea to your hand
Making your app - from the idea to your handinmediatum.com
 
Deksia appdevelopment salesdeck_v01_je
Deksia appdevelopment salesdeck_v01_jeDeksia appdevelopment salesdeck_v01_je
Deksia appdevelopment salesdeck_v01_jeDeksia
 

What's hot (20)

Clickslide Datadipity Beta V1
Clickslide Datadipity Beta V1Clickslide Datadipity Beta V1
Clickslide Datadipity Beta V1
 
Cover Letter
Cover LetterCover Letter
Cover Letter
 
From Zero to Spec-first API Hero
From Zero to Spec-first API HeroFrom Zero to Spec-first API Hero
From Zero to Spec-first API Hero
 
The Power of a Great API
The Power of a Great APIThe Power of a Great API
The Power of a Great API
 
Simplify and Accelerate App Development with Adobe AEM Mobile
Simplify and Accelerate App Development with Adobe AEM MobileSimplify and Accelerate App Development with Adobe AEM Mobile
Simplify and Accelerate App Development with Adobe AEM Mobile
 
Microsoft Low Code / No Code Business Process Automation
Microsoft Low Code / No Code Business Process AutomationMicrosoft Low Code / No Code Business Process Automation
Microsoft Low Code / No Code Business Process Automation
 
QuikApply MVP2 Preso #5
QuikApply MVP2 Preso #5QuikApply MVP2 Preso #5
QuikApply MVP2 Preso #5
 
5 Important Considerations For Mobile Application Development Process
5 Important Considerations For Mobile Application Development Process5 Important Considerations For Mobile Application Development Process
5 Important Considerations For Mobile Application Development Process
 
6 Reasons Why You Should Create React Native Apps For Your Enterprise in 2021
6 Reasons Why You Should Create React Native Apps For Your Enterprise in 20216 Reasons Why You Should Create React Native Apps For Your Enterprise in 2021
6 Reasons Why You Should Create React Native Apps For Your Enterprise in 2021
 
From Zero to Sixty: Driving a DocOps Based Approach to APIs at Ford Motor Com...
From Zero to Sixty: Driving a DocOps Based Approach to APIs at Ford Motor Com...From Zero to Sixty: Driving a DocOps Based Approach to APIs at Ford Motor Com...
From Zero to Sixty: Driving a DocOps Based Approach to APIs at Ford Motor Com...
 
How to Make a Truck Inspection App
How to Make a Truck Inspection AppHow to Make a Truck Inspection App
How to Make a Truck Inspection App
 
The rise of Low-Code App Programming
The rise of Low-Code App ProgrammingThe rise of Low-Code App Programming
The rise of Low-Code App Programming
 
Oracle Forms Conversion "An automated Approach"
Oracle Forms Conversion "An automated Approach"Oracle Forms Conversion "An automated Approach"
Oracle Forms Conversion "An automated Approach"
 
QuikApply Preso #4
QuikApply Preso #4QuikApply Preso #4
QuikApply Preso #4
 
441fall2021section2 QuikApply Preso #1
441fall2021section2 QuikApply Preso #1441fall2021section2 QuikApply Preso #1
441fall2021section2 QuikApply Preso #1
 
201906 mobile devops
201906 mobile devops201906 mobile devops
201906 mobile devops
 
441fall2021section2 QuikApply Preso #3
441fall2021section2 QuikApply Preso #3441fall2021section2 QuikApply Preso #3
441fall2021section2 QuikApply Preso #3
 
Visual studio enterprise 2017 mobile by Russ Fustino
Visual studio enterprise 2017 mobile by Russ FustinoVisual studio enterprise 2017 mobile by Russ Fustino
Visual studio enterprise 2017 mobile by Russ Fustino
 
Making your app - from the idea to your hand
Making your app - from the idea to your handMaking your app - from the idea to your hand
Making your app - from the idea to your hand
 
Deksia appdevelopment salesdeck_v01_je
Deksia appdevelopment salesdeck_v01_jeDeksia appdevelopment salesdeck_v01_je
Deksia appdevelopment salesdeck_v01_je
 

Viewers also liked

AWS Keynote II - AWS New Services Showcase: Connecting the Dots
AWS Keynote II - AWS New Services Showcase: Connecting the DotsAWS Keynote II - AWS New Services Showcase: Connecting the Dots
AWS Keynote II - AWS New Services Showcase: Connecting the DotsAmazon Web Services
 
Rethinking it for digital transformation
Rethinking it for digital transformationRethinking it for digital transformation
Rethinking it for digital transformationMuleSoft
 
B7 api management_enabling_digital_transformation
B7 api management_enabling_digital_transformationB7 api management_enabling_digital_transformation
B7 api management_enabling_digital_transformationDr. Wilfred Lin (Ph.D.)
 
AWS Enterprise Summit Netherlands - Keynote
AWS Enterprise Summit Netherlands - KeynoteAWS Enterprise Summit Netherlands - Keynote
AWS Enterprise Summit Netherlands - KeynoteAmazon Web Services
 
Enabling A Digital India
Enabling A Digital IndiaEnabling A Digital India
Enabling A Digital IndiaINDUSCommunity
 
Digital Transformation and Microservices
Digital Transformation and MicroservicesDigital Transformation and Microservices
Digital Transformation and MicroservicesKellton Tech Solutions Ltd
 

Viewers also liked (7)

Kesko_Marjukka
Kesko_MarjukkaKesko_Marjukka
Kesko_Marjukka
 
AWS Keynote II - AWS New Services Showcase: Connecting the Dots
AWS Keynote II - AWS New Services Showcase: Connecting the DotsAWS Keynote II - AWS New Services Showcase: Connecting the Dots
AWS Keynote II - AWS New Services Showcase: Connecting the Dots
 
Rethinking it for digital transformation
Rethinking it for digital transformationRethinking it for digital transformation
Rethinking it for digital transformation
 
B7 api management_enabling_digital_transformation
B7 api management_enabling_digital_transformationB7 api management_enabling_digital_transformation
B7 api management_enabling_digital_transformation
 
AWS Enterprise Summit Netherlands - Keynote
AWS Enterprise Summit Netherlands - KeynoteAWS Enterprise Summit Netherlands - Keynote
AWS Enterprise Summit Netherlands - Keynote
 
Enabling A Digital India
Enabling A Digital IndiaEnabling A Digital India
Enabling A Digital India
 
Digital Transformation and Microservices
Digital Transformation and MicroservicesDigital Transformation and Microservices
Digital Transformation and Microservices
 

Similar to Renewing a mature software product from outside in - experiences from an API project

Speaking APIsh makes your business more agile
Speaking APIsh makes your business more agileSpeaking APIsh makes your business more agile
Speaking APIsh makes your business more agileMarjukka Niinioja
 
Deep_Kamal
Deep_KamalDeep_Kamal
Deep_KamalDeep Kamal
 
Computer Science Internship Report PDF Leena AI
Computer Science Internship Report PDF Leena AIComputer Science Internship Report PDF Leena AI
Computer Science Internship Report PDF Leena AIshadowhazard77
 
Computer Science Internship Report Leena AI
Computer Science Internship Report Leena AIComputer Science Internship Report Leena AI
Computer Science Internship Report Leena AIshadowhazard77
 
Abhishek pathak .Net 8.5 years
Abhishek pathak .Net 8.5 yearsAbhishek pathak .Net 8.5 years
Abhishek pathak .Net 8.5 yearsAbhishek Pathak
 
Documenting the Mobile API Development Process 2023.pptx
Documenting the Mobile API Development Process 2023.pptxDocumenting the Mobile API Development Process 2023.pptx
Documenting the Mobile API Development Process 2023.pptxXDuce Corporation
 
spurthy_resume
spurthy_resumespurthy_resume
spurthy_resumespurthydanda
 
Ruby on Rails Specialists - TkXel
Ruby on Rails Specialists - TkXelRuby on Rails Specialists - TkXel
Ruby on Rails Specialists - TkXelTkXel
 
Learning pool presentation
Learning pool presentationLearning pool presentation
Learning pool presentationNikitaBurlaka
 
Accidental API developer - the 12 month pregnancy to create new API
Accidental API developer - the 12 month pregnancy to create new APIAccidental API developer - the 12 month pregnancy to create new API
Accidental API developer - the 12 month pregnancy to create new APIMarjukka Niinioja
 
Subha chandra 1 Page CV
Subha chandra 1 Page CVSubha chandra 1 Page CV
Subha chandra 1 Page CVSubha Chandra
 
Building a design system with (p)react
Building a design system with (p)reactBuilding a design system with (p)react
Building a design system with (p)reactBart Waardenburg
 
Resume--Nilesh_kumar_singh_ADF
Resume--Nilesh_kumar_singh_ADFResume--Nilesh_kumar_singh_ADF
Resume--Nilesh_kumar_singh_ADFNILESH KUMAR SINGH
 
From API-First to SDK-First
From API-First to SDK-FirstFrom API-First to SDK-First
From API-First to SDK-FirstNordic APIs
 
The Goldilocks Approach: Finding the Right Project and the Right Team at the ...
The Goldilocks Approach: Finding the Right Project and the Right Team at the ...The Goldilocks Approach: Finding the Right Project and the Right Team at the ...
The Goldilocks Approach: Finding the Right Project and the Right Team at the ...Edwina Lui
 
Creating an MVP with Oracle
Creating an MVP with OracleCreating an MVP with Oracle
Creating an MVP with OracleFranco Ucci
 
Resume_Brijesh_Pavith
Resume_Brijesh_PavithResume_Brijesh_Pavith
Resume_Brijesh_Pavithbeeemused
 
Feeling Overwhelmed by the App Development Process_ Let a Service Provider Be...
Feeling Overwhelmed by the App Development Process_ Let a Service Provider Be...Feeling Overwhelmed by the App Development Process_ Let a Service Provider Be...
Feeling Overwhelmed by the App Development Process_ Let a Service Provider Be...Keerthi Mindnotix
 
Resume Suraj
Resume SurajResume Suraj
Resume SurajSuraj Mukare
 

Similar to Renewing a mature software product from outside in - experiences from an API project (20)

Speaking APIsh makes your business more agile
Speaking APIsh makes your business more agileSpeaking APIsh makes your business more agile
Speaking APIsh makes your business more agile
 
Deep_Kamal
Deep_KamalDeep_Kamal
Deep_Kamal
 
Computer Science Internship Report PDF Leena AI
Computer Science Internship Report PDF Leena AIComputer Science Internship Report PDF Leena AI
Computer Science Internship Report PDF Leena AI
 
Computer Science Internship Report Leena AI
Computer Science Internship Report Leena AIComputer Science Internship Report Leena AI
Computer Science Internship Report Leena AI
 
Abhishek pathak .Net 8.5 years
Abhishek pathak .Net 8.5 yearsAbhishek pathak .Net 8.5 years
Abhishek pathak .Net 8.5 years
 
Documenting the Mobile API Development Process 2023.pptx
Documenting the Mobile API Development Process 2023.pptxDocumenting the Mobile API Development Process 2023.pptx
Documenting the Mobile API Development Process 2023.pptx
 
spurthy_resume
spurthy_resumespurthy_resume
spurthy_resume
 
Ruby on Rails Specialists - TkXel
Ruby on Rails Specialists - TkXelRuby on Rails Specialists - TkXel
Ruby on Rails Specialists - TkXel
 
Learning pool presentation
Learning pool presentationLearning pool presentation
Learning pool presentation
 
Accidental API developer - the 12 month pregnancy to create new API
Accidental API developer - the 12 month pregnancy to create new APIAccidental API developer - the 12 month pregnancy to create new API
Accidental API developer - the 12 month pregnancy to create new API
 
Subha chandra 1 Page CV
Subha chandra 1 Page CVSubha chandra 1 Page CV
Subha chandra 1 Page CV
 
DEEPANSHU_Resume
DEEPANSHU_ResumeDEEPANSHU_Resume
DEEPANSHU_Resume
 
Building a design system with (p)react
Building a design system with (p)reactBuilding a design system with (p)react
Building a design system with (p)react
 
Resume--Nilesh_kumar_singh_ADF
Resume--Nilesh_kumar_singh_ADFResume--Nilesh_kumar_singh_ADF
Resume--Nilesh_kumar_singh_ADF
 
From API-First to SDK-First
From API-First to SDK-FirstFrom API-First to SDK-First
From API-First to SDK-First
 
The Goldilocks Approach: Finding the Right Project and the Right Team at the ...
The Goldilocks Approach: Finding the Right Project and the Right Team at the ...The Goldilocks Approach: Finding the Right Project and the Right Team at the ...
The Goldilocks Approach: Finding the Right Project and the Right Team at the ...
 
Creating an MVP with Oracle
Creating an MVP with OracleCreating an MVP with Oracle
Creating an MVP with Oracle
 
Resume_Brijesh_Pavith
Resume_Brijesh_PavithResume_Brijesh_Pavith
Resume_Brijesh_Pavith
 
Feeling Overwhelmed by the App Development Process_ Let a Service Provider Be...
Feeling Overwhelmed by the App Development Process_ Let a Service Provider Be...Feeling Overwhelmed by the App Development Process_ Let a Service Provider Be...
Feeling Overwhelmed by the App Development Process_ Let a Service Provider Be...
 
Resume Suraj
Resume SurajResume Suraj
Resume Suraj
 

More from Marjukka Niinioja

API Economy & Platform Skills - apidays Helsinki 2020
API Economy & Platform Skills - apidays Helsinki 2020API Economy & Platform Skills - apidays Helsinki 2020
API Economy & Platform Skills - apidays Helsinki 2020Marjukka Niinioja
 
APIOps Cycles - build business and tech together
APIOps Cycles - build business and tech togetherAPIOps Cycles - build business and tech together
APIOps Cycles - build business and tech togetherMarjukka Niinioja
 
API Economy updated practical examples with scientific research
API Economy updated   practical examples with scientific researchAPI Economy updated   practical examples with scientific research
API Economy updated practical examples with scientific researchMarjukka Niinioja
 
Product Management & Statistics - ProductTank Helsinki 04/2020
Product Management & Statistics - ProductTank Helsinki 04/2020Product Management & Statistics - ProductTank Helsinki 04/2020
Product Management & Statistics - ProductTank Helsinki 04/2020Marjukka Niinioja
 
APIs + Business Models = New Ecosystems - APIdays Paris 2019
APIs + Business Models = New Ecosystems - APIdays Paris 2019APIs + Business Models = New Ecosystems - APIdays Paris 2019
APIs + Business Models = New Ecosystems - APIdays Paris 2019Marjukka Niinioja
 
Marjukka Niinioja at APIdays Amsterdam 2019
Marjukka Niinioja at APIdays Amsterdam 2019Marjukka Niinioja at APIdays Amsterdam 2019
Marjukka Niinioja at APIdays Amsterdam 2019Marjukka Niinioja
 
Lean and Business oriented method at APIOps Cycles APIDays Finland 2019
Lean and Business oriented method at APIOps Cycles APIDays Finland 2019 Lean and Business oriented method at APIOps Cycles APIDays Finland 2019
Lean and Business oriented method at APIOps Cycles APIDays Finland 2019 Marjukka Niinioja
 
Why APIs need their own development method - Open and Lean method to develop ...
Why APIs need their own development method - Open and Lean method to develop ...Why APIs need their own development method - Open and Lean method to develop ...
Why APIs need their own development method - Open and Lean method to develop ...Marjukka Niinioja
 
Austin API Summit 2019 Lean and Business-oriented APIs
Austin API Summit 2019 Lean and Business-oriented APIsAustin API Summit 2019 Lean and Business-oriented APIs
Austin API Summit 2019 Lean and Business-oriented APIsMarjukka Niinioja
 
APIOps Cycles - talk at NordicAPIs Platform Summit 2018
APIOps Cycles - talk at NordicAPIs Platform Summit 2018APIOps Cycles - talk at NordicAPIs Platform Summit 2018
APIOps Cycles - talk at NordicAPIs Platform Summit 2018Marjukka Niinioja
 
Tieke api-talous-07092018
Tieke api-talous-07092018Tieke api-talous-07092018
Tieke api-talous-07092018Marjukka Niinioja
 
APIDays Paris - APIOps Cycles - Open and lean method for API Development
APIDays Paris - APIOps Cycles - Open and lean method for API Development APIDays Paris - APIOps Cycles - Open and lean method for API Development
APIDays Paris - APIOps Cycles - Open and lean method for API Development Marjukka Niinioja
 
APIfying an ERP - ongoing saga
APIfying an ERP - ongoing sagaAPIfying an ERP - ongoing saga
APIfying an ERP - ongoing sagaMarjukka Niinioja
 
Reinventing Your Mature SaaS
Reinventing Your Mature SaaSReinventing Your Mature SaaS
Reinventing Your Mature SaaSMarjukka Niinioja
 

More from Marjukka Niinioja (16)

API Economy & Platform Skills - apidays Helsinki 2020
API Economy & Platform Skills - apidays Helsinki 2020API Economy & Platform Skills - apidays Helsinki 2020
API Economy & Platform Skills - apidays Helsinki 2020
 
APIOps Cycles - build business and tech together
APIOps Cycles - build business and tech togetherAPIOps Cycles - build business and tech together
APIOps Cycles - build business and tech together
 
API Economy updated practical examples with scientific research
API Economy updated   practical examples with scientific researchAPI Economy updated   practical examples with scientific research
API Economy updated practical examples with scientific research
 
Product Management & Statistics - ProductTank Helsinki 04/2020
Product Management & Statistics - ProductTank Helsinki 04/2020Product Management & Statistics - ProductTank Helsinki 04/2020
Product Management & Statistics - ProductTank Helsinki 04/2020
 
Open data vs open api
Open data vs open apiOpen data vs open api
Open data vs open api
 
APIs + Business Models = New Ecosystems - APIdays Paris 2019
APIs + Business Models = New Ecosystems - APIdays Paris 2019APIs + Business Models = New Ecosystems - APIdays Paris 2019
APIs + Business Models = New Ecosystems - APIdays Paris 2019
 
Marjukka Niinioja at APIdays Amsterdam 2019
Marjukka Niinioja at APIdays Amsterdam 2019Marjukka Niinioja at APIdays Amsterdam 2019
Marjukka Niinioja at APIdays Amsterdam 2019
 
Lean and Business oriented method at APIOps Cycles APIDays Finland 2019
Lean and Business oriented method at APIOps Cycles APIDays Finland 2019 Lean and Business oriented method at APIOps Cycles APIDays Finland 2019
Lean and Business oriented method at APIOps Cycles APIDays Finland 2019
 
Why APIs need their own development method - Open and Lean method to develop ...
Why APIs need their own development method - Open and Lean method to develop ...Why APIs need their own development method - Open and Lean method to develop ...
Why APIs need their own development method - Open and Lean method to develop ...
 
Austin API Summit 2019 Lean and Business-oriented APIs
Austin API Summit 2019 Lean and Business-oriented APIsAustin API Summit 2019 Lean and Business-oriented APIs
Austin API Summit 2019 Lean and Business-oriented APIs
 
APIOps Cycles - talk at NordicAPIs Platform Summit 2018
APIOps Cycles - talk at NordicAPIs Platform Summit 2018APIOps Cycles - talk at NordicAPIs Platform Summit 2018
APIOps Cycles - talk at NordicAPIs Platform Summit 2018
 
Tieke api-talous-07092018
Tieke api-talous-07092018Tieke api-talous-07092018
Tieke api-talous-07092018
 
APIDays Paris - APIOps Cycles - Open and lean method for API Development
APIDays Paris - APIOps Cycles - Open and lean method for API Development APIDays Paris - APIOps Cycles - Open and lean method for API Development
APIDays Paris - APIOps Cycles - Open and lean method for API Development
 
APIfying an ERP - ongoing saga
APIfying an ERP - ongoing sagaAPIfying an ERP - ongoing saga
APIfying an ERP - ongoing saga
 
Reinventing Your Mature SaaS
Reinventing Your Mature SaaSReinventing Your Mature SaaS
Reinventing Your Mature SaaS
 
APIfying an ERP
APIfying an ERPAPIfying an ERP
APIfying an ERP
 

Recently uploaded

(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...gurkirankumar98700
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...Christina Lin
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about usDynamic Netsoft
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityNeo4j
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantAxelRicardoTrocheRiq
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Intelisync
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...aditisharan08
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptkotipi9215
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...OnePlan Solutions
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 

Recently uploaded (20)

Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...Call Girls In Mukherjee Nagar 📱  9999965857  🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
Call Girls In Mukherjee Nagar 📱 9999965857 🤩 Delhi 🫦 HOT AND SEXY VVIP 🍎 SE...
 
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
(Genuine) Escort Service Lucknow | Starting ₹,5K To @25k with A/C 🧑🏽‍❤️‍🧑🏻 89...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
ODSC - Batch to Stream workshop - integration of Apache Spark, Cassandra, Pos...
 
Exploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the ProcessExploring iOS App Development: Simplifying the Process
Exploring iOS App Development: Simplifying the Process
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
DNT_Corporate presentation know about us
DNT_Corporate presentation know about usDNT_Corporate presentation know about us
DNT_Corporate presentation know about us
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
EY_Graph Database Powered Sustainability
EY_Graph Database Powered SustainabilityEY_Graph Database Powered Sustainability
EY_Graph Database Powered Sustainability
 
Salesforce Certified Field Service Consultant
Salesforce Certified Field Service ConsultantSalesforce Certified Field Service Consultant
Salesforce Certified Field Service Consultant
 
Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)Introduction to Decentralized Applications (dApps)
Introduction to Decentralized Applications (dApps)
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...Unit 1.1 Excite Part 1, class 9, cbse...
Unit 1.1 Excite Part 1, class 9, cbse...
 
chapter--4-software-project-planning.ppt
chapter--4-software-project-planning.pptchapter--4-software-project-planning.ppt
chapter--4-software-project-planning.ppt
 
Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...Advancing Engineering with AI through the Next Generation of Strategic Projec...
Advancing Engineering with AI through the Next Generation of Strategic Projec...
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 

Renewing a mature software product from outside in - experiences from an API project

  • 1. Renewing a mature software product from outside in - experiences from an API project By Marjukka Niinioja and all the great characters at PlanMill Oy
  • 2. PlanMill is a web based ERP, PROJECT and CRM software Customizable, Cloud, On-premise – been used since 2001 by 100+ customers in Finland, Europe and overseas
  • 3. GET /vocabulary?type=same Discussing Educating Organizing and participating in meetings and seminars Inviting students from polytechnics as research buddies and mentors Understand strength and weakness of our current system and API
  • 4. In the beginning there were lots of false presumptions and missing information – but luckily a shared goal! Let’s make our process faster, better, bug free, and renew our application one step at a time – starting with API! Buttons as embodiment of our strategy created in our staff day in 05/2014
  • 5. GET /research Pilot application with really new technologies to understand the possibilities better and to see what we can use along our current system. Built Jackson + Hibernate + Drools + AngularJS 1 app / 1 business module pilot to see how to replace our Java + XSL + MS SQL 20 module system.
  • 6. POST /vision?type=shared Joint understanding based on results and issues from previous sprints and hands-on research tasks helped to speed up team work.
  • 7. Hardest part of creating a backlog was to eliminate the “unknown” and to accept that plans can change. Team estimated how many hours they would have for the next 2 week sprint and created backlog items and estimated them roughly.
  • 8. “As a project manager I want to create new projects” POST /projects {name: “My first project”, Start: “2014-01-01T00:00:00Z} CONNECT /teams?via=API UI team tests and gives feedback of emerging API while developing UI
  • 9. RAML as joint specification RAML is a new standard for writing API specifications. It has a documented syntax and lot’s of good tools. It helped our team, to speak the same “language” in designing the API endpoints, error messages and content. It was understandable by both UI and backend teams.
  • 10. And suddenly there were tests… Integration tests with RESTAssured UI tests with Thucydides and JBehave
  • 11. GET /customers GET /partners Renewing our system API first has given as an opportunity to use our customers as our “co-developers”. They are building apps for themselves and sharing ideas and helping us to get ideas what we should incorporate in our product.
  • 12. Thank you! Marjukka Niinioja @Mniinioja Senior Consultant & Manager PlanMill Oy @PlanMill www.planmill.com Check out our API at: http://api- portal.anypoint.mulesoft.com/planmill/ api/planmill-rest-api-15