Software engineering tools and approaches for neuroinformatics: the design and implementation of the View-Primitive Data Model f