The wiki docs are out of date!
You'll have to review the examples & code itself for now. I'll be working to bring the wiki docs current soon.
Ellington is an architecture for modeling complex business processes.
Ellington brings discipline, organization, and modularity to a project.
The nomenclature is taken from New York's subway system. We've found that using consistent and cohesive physical metaphors helps people reason more clearly about the complexities of software. The subway analogy isn't perfect but gets pretty close.
- Provide a consistent nomenclature thats simple enough to be shared by engineering and the business team.
- Establish constraints which ensure complex projects are easy to manage, develop, and maintain.
- Conductor - A supervisor responsible for putting
- Passenger - The stateful context that will be riding the virtual subway.
- Route - A collection of
- Line - A linear track that moves the
passengerfrom point A to point B.
- Station - A discreet chunk of business logic.
- State - A status or disposition assigned to the
Note: We recommend Ellington for projects where a good understanding of the problem domain has been established. You might want to spike a solution to learn your project's requirements before using Ellington.
Run the demo
git clone git://github.com/hopsoft/ellington.git cd ellington bundle bundle exec ruby examples/social_media/demo.rb
Review the demo project here.