# Marnee Dearman (KG7SIO)

# An IVR with Neo4j and F# -- Part 2 A

### Modeling the IVR domain with algebraic data types

## Why am I doing this?

In part 1 I talked about getting started on my graph-based IVR system. I started with modeling the authentication sub-graph. I wrote some Cypher queries to build the graph in Neo4j. In this part I am going to talk about how I modeled the graph in F# using algebraic data types, namely discriminated unions and tuples.

This . . .

Posted in: neo4jgraphsivrxunitfsunittestingfunctional programmingf#algebraic data typestuplesdiscriminated union

# An IVR with Neo4j and F# -- Part 1

### Part 1: building the Neo4j graph database backend

## Why am I doing this?

*I develop something called the Interactive Customer Management System (ICMS). This lets customers enter orders for petroleum products from oil and gas terminals in India. Customers can get the status of their orders via SMS and IVR (interactive voice response). Developing a low-cost and simple IVR system is not easy. I do . . .*

Cover image credit: http://sciencevsmagic.net/fractal/#0060,0090,1,1,0,0,1