English|Português|Español
UserPasswordLogin

HOME
SESSIONS
INFO
Imagen6498E

eXtreme Programming and GeneXus at the University

Students of the Engineering Department at Universidad de la República have developed a prototype of the record management system by applying XP and GeneXus technologies.

There is a software engineering course in the fourth year of the computer engineering program offered by Universidad de la República (Uruguay) that is divided into two semesters. The first one focuses on theoretical aspects, and the second on the development of a project with real clients, supervised by professors. This initiative aims at promoting reflection upon the software development process.

The project proposed to students in 2003 was developing a prototype, for the Seciu (University IT Central Service), for managing e-records as well as records on paper by applying the development methodology proposed by XP together with GeneXus' incremental methodology of development.

GXFlow, ARTech's Workflow tool, was also used in cases where record-management flows were predetermined.

Beatriz Pérez, a professor in the Engineering Department, studied eXtreme Programming and adapted it to GeneXus. This is how students for the 2003 course were invited to experiment with XP by using GeneXus.

eXtreme Programming (XP) is a software development methodology whose basic hypothesis lies in claiming that the cost of change does not grow exponentially as the development project progresses, said Jorge Triñanes, professor at said university. He claims that this hypothesis makes considerable sense for GeneXus. He also says that "the facility that provides GeneXus for implementing automatic changes in the database transforms the XP hypothesis into something reasonable." Triñanes added that with GeneXus you may modify the database and manage to have things still working.

XP is a way to develop software that originated in 1996. Its target is small groups with blurry and changing requirements, and what it does is offer a quick development process in response to heavy processes such as documentation-based developments. Triñanes informed that before programming in XP, it is necessary to program the tests. This is so because one of the concepts championed by XP is building software on solid and stable bases. XP offers design simplicity, which means that it is not necessary to imagine the clients' future needs, but rather design according to present requirements. The definition of requirements is actually based on stories -simplified use cases- written by clients themselves; however, in this particular case, the stories were written by an analyst who belonged to the group of students to which this role was assigned.

Another concept favored by XP is the collective property of the code. This means that everyone knows the code and has the power to modify it. It also features programming based on rotating pairs ? two people in each workstation ? that work according to a plan, as well as continuous integration of the code created. The teacher said that students were divided in two groups and that each group had a PC (one provided by Seciu and another by ARTech) used for the weekly integration.

"The client was very satisfied because the result actually exceeded his expectations. As far as the students are concerned, there was a group that enjoyed this development modality more than the other," said Triñanes.

In 2002, GeneXus was also used in projects for the software engineering course. For this to be possible, a process model had been developed by using GeneXus that year, which was presented at the XIII GeneXus International Meeting. (http://www.gxtechnical.com/main/hdcenter.aspx?2,5,36,905)

More information: http://www.fing.edu.uy/inco/cursos/ingsoft/pis/GXP/index.htm  

Related
Agreement between Universidad Latina of Panama and ARTech