Developing Software Engineering Class Projects with an Internal Client Dr. Christelle Scharff Computer Science Department Internal Client: Michelle Perez Director Office of Housing & Residential Life Contact: Diana White Office of Housing & Residential Life Students: Asif Baksh, Sze-Man Chan, Brian Hernandez, Zulfikar Shameer, Denny Singh, Sonny Szeto
Outline • Software Engineering • Software Engineering Class: CS 389 • Project Requirements • List of Projects for Spring 2004 • Partnering with an Internal Client • How? Why? Impact? Assessment? • Students Interviews • Demonstration • Conclusions and Future Work
Software Engineering • Software = Computer Program + Documentation • Software Engineering is a discipline, which is concerned by all aspects of building high-quality software from the early stages of software specification, development and validation, to the maintenance of the system after it has been deployed • Quality depends on the methods, techniques and tools used during the software engineering process
Some Numbers • In 2002, 34% of software products were completed on budget, and 17% were complete failure [Standish Group] • Defective software cost companies more than $200 billions annually [Sustainable Computing Consortium] • It takes $10 to fix a bug during development, $100 to fix a bug during quality assurance, $1000 to fix a bug during beta test, and $10,000 to fix a bug post-deployment [Alan Zeichlick, SD Times]
Software Engineering Course: CS 389 • Core course of the Computer Science curriculum taken by junior and senior students • Main Topics: • Software Engineering Process Models • Requirements Engineering • Object-Oriented Design and UML • Programming and technologies • Testing • Semester-long software development group project • Students choose their groups and projects • Students have the opportunity to work with an internal client
Two Important Questions Concerning the Project • What software engineering process model to use? • Waterfall model • How to best simulate the “real world” conditions? • Type of project, group work, technologies, deliverables, deadlines and other constraints, client…
Projects – Spring 2004 • Online Web Pages Builder 8 students • Online Wedding Planner System • Online Volunteers Management 7 students System for NYC 2012 • Online Pace University Schedule Builder • Online Room Transfer Requests 6 students System • Online Work Order Requests System
Projects Requirements • Communication skills • Documentation • Feasibility Study • Requirements Document • Design Document • Testing Document • Code Listing • Professional experience • Impact: Users Satisfaction Survey • Visibility (web page) • Programming • Learn at least one new technology • Practice with at least one CASE tool
Partnering with an Internal Client • Steps: • First Contact with the Housing and Residential Life Office • Regular follow up with the client and the students • Invitations to presentations and demonstrations • Assessment
Survey Results: Why Some Students Did not Work with the H & RL? • 15 students out of 21 • Proposed projects not challenging enough • Scope and size of the proposed projects too large • Decision of the team • Interest in their own software to be developed • Needed to be ensured that the H & RL will be committed and helpful • Needed to be ensured that the software will be deployed and used • Needed an extra-curriculum reward!
Advantages of Partnering with an Internal Client 1 • Real world experience • Understand clients’ needs and changes in requirements • Project management experience • Development of communication and negotiation skills • Acquire experience and diverse skills valuable on the market place
Advantages to Partnering with an Internal Client 2 • Experiential learning to support students’ academic, ethical, and social development • Developing software that will directly benefit a large number of students’ peers • Intimate understanding of various policies and procedures • An opportunity to directly impact the quality of services students’ receive • Inspires students’ to become involved and active citizens of the residential community
Experience as a Client • Initial Contact • The process: • Time investment to meet the students • Attendance to demonstrations and presentations • Interest: Customized software developed to meet the specific needs of the residential community • Significant needs of customized software for the residential community
Survey Results: Students who worked with H & RL • Why did they choose to work with a client? • Challenge, gain experience, resume, participating in the community , time management and follow-up • Experience with the client • Very proactive, helpful, committed and understanding client • Changes in the requirements were introduced smoothly because of the regular meetings and discussions • All of the students would repeat the experience
Students Interview • How much time did you spend on the project? What required the most time? • How would you describe your experience with the internal client? • Was the scope and size of the project well-defined from the beginning? • Would you like to see partnerships like this one in other Computer Science classes? • What do you believe are the impacts of this experience on your career?
The OLWOR System OnLine Work Order Request System Asif, Damian, Denny Client: Michelle Perez, Director of Housing & Residential Life Supervisor of the project: Diana White. H & RL
OLWOR Stakeholders and Main Features • All users of the system (Residents, H & RL Staff and Direction)have a profile in OLWOR • Residents can submit work order requests online • DoIt, B&G, S&S, CoinMac • Confirmation emails sent to the staff and residents about all requests and updates • Residents keep track of the status of their work order requests (submitted, in progress, closed) • Staff and Director of H & RL have access to all work order requests (using different criteria)
Conclusions and Future Work • Problems and questions • Server? Support for the Server? • Financial support? • Availability and willingness of the students to finish the project? • Maintenance of the system afterward?
Conclusions and Future Work • Success story: Deployment of the OLWOR system • Internship offered by the Office of Housing and Residential Life • Summer I 2004: Deployment • Summer II 2004: Use of the system by the RAs in Maria’s Tower, and assessment • Fall 2004: Use of the system by the students in Maria’s Tower, and assessment • On the road for Fall 2004 and Spring 2005…