Developing Software Engineering Class Projects with an

Download Report

Transcript Developing Software Engineering Class Projects with an

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
• Online Wedding Planner System
8 students
• 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)
OLWOR Demonstration
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…
Questions & Answers