Service composition for Non-Programmers: Prospects, Problems, and Design Recommendations