Global markets, outsourcing, and the need for on-demand services have all made an impact on the way software is now
being developed and delivered. Dr. Orlena "Olly" Gotel and Dr. Christelle Scharff have been changing how they teach Computer
Science at Pace University to prepare their students to work in this modern environment. Their courses focus on what they
consider the core skills: determining what customers need, specifying these needs in a service-oriented manner, and developing
assured quality software to implement the services... and doing it in a globally distributed environment.
Pace students earning a Masters degree in Software Design and Engineering take courses on Systems Requirements Engineering,
Software Reliability and Quality Assurance. Undergraduate students take a Software Engineering capstone course that,
since 2005, has combined the essence of these graduate courses with team project work in an innovative three-way partnership
with the Institute of Technology of Cambodia and the University of Delhi in India.
At first, the team projects involved students from Pace University and the Institute of Technology of Cambodia working
together to develop software systems for the Cambodian market, with the Cambodian students acting as clients and end-users
and the Pace students acting as the providers who capture the requirements, then design, develop, and test the system.
In 2006, this partnership was extended to include the University of Delhi, with the Pace students subcontracting the database
design to Delhi students while still managing the end-to-end contract.
Software in use:
Drs. Gotel and Scharff believe in the open source movement. They run their labs on Linux and have found
the Eclipse development environment to be a good choice for collaborative projects. Eclipse supports programming in many
languages (the Cambodian students require English and French) and has dedicated activities that span the entire software
development process. They also use the suite of IBM Rational products, WebSphere Application Server, and DB2. Students
develop their designs in Unified Modeling Language (UML) with IBM Rational Modeler, write their web-based Java applications in Java and
implement back-end databases in MySQL. For the requirements process they use Rational Requisite Pro, and Rational
Functional Tester to test the GUI applications.
Results:
These lucky students get exposure to a realistic global work environment and the multiple roles of the offshore outsourcing
equation — experiences not often found in classroom settings, especially when involving a real service-providing country
such as India and a country where access to the Internet is not yet a commodity, as in Cambodia. They learn about the
dependencies and social networks involved in complex software development projects and develop useful skills like breaking
down requirements into interlocking software components, handling the requirements change process, and testing at the various
development stages from unit to user-acceptance level testing. These are skills that Drs. Gotel and Scharff believe are
critical to the articulation and definition of services. The model is about to be extended to integrate Mahidol University
in Thailand and the Royal University of Phnom Penh in Cambodia, and a similar project will soon involve the University of
Thies in Senegal.
"...students find out about the processes and measurements involved in setting up, running and evaluating a
service engagement. They discover the need for contracts and agreements, relationship management and communication
skills. More significantly, they learn about different cultures, professional regulations and motivations, and develop
skills to address business and technical issues in a service-based business environment."
There can be no better preparation for our future software developers and engineers!! |