Evolutionary Design Patterns
for Software Development
Growing Abstract Syntax Trees
from
Business Context Graphs
Stefan Ianta
Cofounder Servi.ca & Ianta Labs
@v_ianta
Self-assembling wires
Stanford Complexity Group
www.youtube.com/watch?v=PeHWqr9dz3c
Summary
 Service Compilers
 Growing software from Business Models
 Solving a Simple Workflow Problem
 Q & A
servi.ca
EngineSearch
MarketSmart
Service Compilers
 Business Models
 Contexts
 Change
 Service
 Microservices
 Solutions
 Innovations
 Business Transformation
 Google Model
 Smart Market of Services
 Software generation
Smart Markets of Service
servi.ca
Graph Reactor / Ianta Labs
Initial Business Context – Data & Code
ClientsRules
Rivals
Code
Meta
Data
Plans
Data Team
Sales
Bank
Skills
CONTEXT
Graph Reactor / Ianta Labs
Final Business Context – Data & Code
ClientsRules
Rivals
Codes
Meta
-Data
Plan
Data
Team
Sales
Money
Skills
CONTEXT
Graph Reactor / Ianta Labs
Change = Triple (Initial Context, Services, Final Context)
Change
Service = Triple (Initial Context Pattern, Microservices, Final Context Pattern)
Microservice = Triple (Input Query, Function, Output Query)
Graph Reactor / Ianta Labs
Project = Sum (Services)
Service 1
Service 2
Service n
Graph Reactor / Ianta Labs
Solution = Sequence (Services)
Service nService 1
Graph Reactor / Ianta Labs
Innovation = Agile Search (Solution) + Novelty Test
Service n
Service 1
Graph Reactor / Ianta Labs12
Microservice = Coding Service
Integer dimX = 3;
Antlr4 View Neo4j View
Graph Reactor / Ianta Labs13
Iterator Microservice
for (int i = 0; i < dimX; i++) {
p[i] = db.createNode(pixel);}
Antlr4 View Neo4j View
Graph Reactor / Ianta Labs
CRUD Solution Expansion
Graph Reactor / Ianta Labs15
Solution
=
Path
Target Context
Metadata
Data
Software
Initial Context
Metadata
Data
Software
Software Development as a Solution Search Process
Initial Context / Code Target Context / Code
Changes
Transformation
Graph Reactor / Ianta Labs16
Search Engine Business Model
AdWords
Advertisers
Pay Per ClickAdSense
Web Masters
Pay Per Click
Internet Pages Search
Question Words
One question/search
Search Engines Do NOT Build Solutions
Internet Pages are Contributed by Millions of People
Graph Reactor / Ianta Labs17
Expanding Search Engine Model into an Solution Search Engine
AdWords
Advertisers
Pay Per Click
AdSense
Web Masters
Pay Per Click
Internet Pages Search
Internet Users
One question/search
Microservices
Programmers
Pay Per Use
Cypher Annotations
Business Analysts
Pay Per Use
Budgeted Projects
Product Managers
Pay Per Use
Graph Reactor / Ianta Labs18
Graph Reactor / Ianta Labs19
Workflow Solutions: Solving The 3 Recipients Problem
Graph Reactor / Ianta Labs20
Graph Reactor / Ianta Labs21servi.ca
Graph Reactor / Ianta Labs22
Implementation Steps
• Translate existing APIs into Microservices / Coders + DevOps
• Annotate microservices with Cypher queries / BAs
• Define projects including test queries / Product Managers
• Build a Service compiler or join a Service Smart Market – Servi.ca
“
”
Civilization advances by extending
the number of important
operations which we can perform
without thinking of them.
Alfred North Whitehead
Interested to join building a smart market of services?
Subscribe at Servi.ca!
Q & A
Stefan Ianta
@v_ianta
servi.ca
https://ca.linkedin.com/in/stefanianta

Evolutionary Design Patterns for Software Development

  • 1.
    Evolutionary Design Patterns forSoftware Development Growing Abstract Syntax Trees from Business Context Graphs Stefan Ianta Cofounder Servi.ca & Ianta Labs @v_ianta Self-assembling wires Stanford Complexity Group www.youtube.com/watch?v=PeHWqr9dz3c
  • 2.
    Summary  Service Compilers Growing software from Business Models  Solving a Simple Workflow Problem  Q & A servi.ca
  • 3.
  • 4.
  • 5.
    Service Compilers  BusinessModels  Contexts  Change  Service  Microservices  Solutions  Innovations  Business Transformation  Google Model  Smart Market of Services  Software generation Smart Markets of Service servi.ca
  • 6.
    Graph Reactor /Ianta Labs Initial Business Context – Data & Code ClientsRules Rivals Code Meta Data Plans Data Team Sales Bank Skills CONTEXT
  • 7.
    Graph Reactor /Ianta Labs Final Business Context – Data & Code ClientsRules Rivals Codes Meta -Data Plan Data Team Sales Money Skills CONTEXT
  • 8.
    Graph Reactor /Ianta Labs Change = Triple (Initial Context, Services, Final Context) Change Service = Triple (Initial Context Pattern, Microservices, Final Context Pattern) Microservice = Triple (Input Query, Function, Output Query)
  • 9.
    Graph Reactor /Ianta Labs Project = Sum (Services) Service 1 Service 2 Service n
  • 10.
    Graph Reactor /Ianta Labs Solution = Sequence (Services) Service nService 1
  • 11.
    Graph Reactor /Ianta Labs Innovation = Agile Search (Solution) + Novelty Test Service n Service 1
  • 12.
    Graph Reactor /Ianta Labs12 Microservice = Coding Service Integer dimX = 3; Antlr4 View Neo4j View
  • 13.
    Graph Reactor /Ianta Labs13 Iterator Microservice for (int i = 0; i < dimX; i++) { p[i] = db.createNode(pixel);} Antlr4 View Neo4j View
  • 14.
    Graph Reactor /Ianta Labs CRUD Solution Expansion
  • 15.
    Graph Reactor /Ianta Labs15 Solution = Path Target Context Metadata Data Software Initial Context Metadata Data Software Software Development as a Solution Search Process Initial Context / Code Target Context / Code Changes Transformation
  • 16.
    Graph Reactor /Ianta Labs16 Search Engine Business Model AdWords Advertisers Pay Per ClickAdSense Web Masters Pay Per Click Internet Pages Search Question Words One question/search Search Engines Do NOT Build Solutions Internet Pages are Contributed by Millions of People
  • 17.
    Graph Reactor /Ianta Labs17 Expanding Search Engine Model into an Solution Search Engine AdWords Advertisers Pay Per Click AdSense Web Masters Pay Per Click Internet Pages Search Internet Users One question/search Microservices Programmers Pay Per Use Cypher Annotations Business Analysts Pay Per Use Budgeted Projects Product Managers Pay Per Use
  • 18.
    Graph Reactor /Ianta Labs18
  • 19.
    Graph Reactor /Ianta Labs19 Workflow Solutions: Solving The 3 Recipients Problem
  • 20.
    Graph Reactor /Ianta Labs20
  • 21.
    Graph Reactor /Ianta Labs21servi.ca
  • 22.
    Graph Reactor /Ianta Labs22 Implementation Steps • Translate existing APIs into Microservices / Coders + DevOps • Annotate microservices with Cypher queries / BAs • Define projects including test queries / Product Managers • Build a Service compiler or join a Service Smart Market – Servi.ca
  • 23.
    “ ” Civilization advances byextending the number of important operations which we can perform without thinking of them. Alfred North Whitehead Interested to join building a smart market of services? Subscribe at Servi.ca!
  • 24.
    Q & A StefanIanta @v_ianta servi.ca https://ca.linkedin.com/in/stefanianta