data science software development