1 / 21

Developing and Learning Web Services with Open Source Software: An Experience Report

Developing and Learning Web Services with Open Source Software: An Experience Report. Matthew W. Reed Benjamin A. Balogh David C. Miller Chia-Chu Chiang Department of Computer Science University of Arkansas at Little Rock. Outline of the Talk. 1. Introduction 2. Project Overview

flann
Download Presentation

Developing and Learning Web Services with Open Source Software: An Experience Report

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Developing and Learning Web Services with Open Source Software: An Experience Report Matthew W. Reed Benjamin A. Balogh David C. Miller Chia-Chu Chiang Department of Computer Science University of Arkansas at Little Rock

  2. Outline of the Talk 1. Introduction 2. Project Overview 3. Student Backgrounds 4. Leadership Roles 5. Project Management Plan 6. Project Development Process 7. Technological Hurdles

  3. Outline of the Talk (Cont.) 8. Open Source Software 9. Scheduling Difficulties 10. Lessons Learned 11. Conclusion

  4. 1. Introduction • Present the experiences of undergraduate students developing and learning web services with open source software

  5. 2. Project Overview • Develop a prototype of a telephone directory web service

  6. 3. Student Backgrounds • Junior- and senior-level undergraduate students • Completed the course prerequisites • C/C++ Programming • Data Structures and Algorithms • File Structures • Database Design

  7. 3. Student Backgrounds (Cont.) • No experience with Java • No experience with web services • Limited exposure to team-based software development • Not claimed as professional programmers

  8. 4. Leadership Roles • A hierarchical structure assumed • The only student with experience in a team-based development environment lead during the Project Management Planning and Requirements and Specification Phases • Other students alternate lead role in the remaining development phases

  9. 5. Project Management Plan • Waterfall Model used • Product built with reusable, open-source tools • Uncertainty and discomfort with Java and the concept of web services

  10. 6. Project Development Process • Phase I: Requirements and Specification • Most difficult phase of project • Understanding the product to be developed • Locating open source tools for development and deployment • Final version of specifications document was not completed until after implementation phase

  11. 6. Project Development Process (Cont.) • Phase II: Design • Deadline extended a week beyond project plan • Difficulties understanding web service structure • Learning how the client and server sides interact • Resulted in reduction of time frames for implementation and testing phases

  12. 6. Project Development Process (Cont.) • Phase III: Implementation • Teams’ inexperience caused not only difficulty but total confusion • Distributing code to teammates proved difficult • Brought in an IBM WebSphere consultant to assist

  13. 6. Project Development Process (Cont.) • Phase IV: Testing • Smoothest and most trouble-free phase • Deadline pressure forced the team into a “divide and conquer” mentality • Used open source software to test the performance of the product

  14. 7. Technological Hurdles • Ignorance of the design and programming needed to complete the project • Installation and configuration issues with the open source software needed to develop and implement the web service • Hosting server configuration issues based on applications already installed

  15. 8. Open Source Software • Advantages • Low Cost • Highly Flexible • Reliable • Reduced Development Risks

  16. 8. Open Source Software (Cont.) • Risks • Limited Support • High Technological Knowledge Needed • Difficult to Choose among Options • Uncertainty

  17. 9. Scheduling Difficulties • Considerable deviation from the planned project schedule • Design went more than a week past schedule • Implementation completed a mere six days before the project’s deadline • Testing Phase cut by nearly two weeks • Final version of Specification and Design documents was not submitted until after implementation was completed.

  18. 10. Lessons Learned • Workload were heavy on some particular team member • Initial Project Plan • Coding • Expect to have a more thorough and detailed education in web services development

  19. 10. Lessons Learned (Cont.) • Practical issues with the open source software for developing web services • Students left with a feeling of completion when the project is done • The project as a good contender for a senior-level capstone course

  20. 11. Conclusion • Intense, self-directed style of learning overwhelmed the students. • Steep learning curve • Students satisfied with experience gained through an intense and thorough education in software engineering

  21. 11. Conclusion (Cont.) • Pride in the final product • Reported that never learned more from any other single course in computer science • Highly recommend the course to other undergraduates

More Related