The Storm Topology gramar generates almost the entire implementation of a Storm topology with the following design patterns and features:
Strong typing of data on streams
Spout and bolt implementations factored out into three tiers: Storm-aware, Topology-aware and business logic with strongly typed interfaces between tiers
Diagrams (generated input to Graphviz) of the topology showing Bolts, Spouts, streams and other middleware
Fully maven-ized project
Complete topology driver class that reads one of several named property files, builds the topology and submits that topology either to a local cluster or to a Nimbus server
Java beans with serialization logic
A Marshaller class used to convert from Java beans to Values and from Tuples back to Java Beans
Business logic typed by hand is maintained across re-applications of the gramar, making evolution of the topology very fast and inexpensive
Follow the walk through here.