We're building a product for the education market, for which we have a few initial customers.<p>Our tool needs to have student, faculty, staff & course data. All this data is already built into the student records system at each school. Most schools have different systems, with different tables, sometimes customized from the same product. Most of this data changes slowly, with a little, perhaps attendance, changing daily.<p>What's the best method for us to suck up this info with the least amount of integration effort each time?<p>Alternatives we are looking at are<p>1. Ask them to format & put the data out in XML of our format for us to suck in. Adv. No work on our part. Disadv. How do we handle diffs? Increases barrier to use for them. We have to write XML parser.<p>2. Ask for RO access to their dbs and suck it in via custom plugins for each college. Adv. We get direct access, no effort for them. Disadv. They are a little worried abt giving db access. Need to understand and write plugin - very high effort given diversity<p>3. Ask them to put it into our db. Use triggers on our db to put into our own tables. Adv. Easy for us. Disadv. Increases barrier to use. May not be easy for them to use.<p>4. Give them an api to add data. Adv. Easy for us, just need to define API well. Disadv. Increases barrier to use. May not be easy for them to use.<p>Have any of you done this before? How have you solved this? Your inputs would be much appreciated.<p>[edit] I am looking for technical solutions - we understand the market challenges.
Hmm - maybe I'm pessimistic, but why are they going to give you access to their data? Do they have some incentive (and if so, why will it work)?<p>Also, my understanding is that a lot of schools use district-wide IT admins and may not have staff available who would even know how to format data or use your API. I think this is less a question of the best way to handle it on your end, and more of how can/will they get you the data at all.