GOTO is a vendor independent international software development conference with more that 90 top speaker and 1300 attendees. The conference cover topics such as .Net, Java, Open Source, Agile, Architecture and Design, Web, Cloud, New Languages and Processes

Rebecca Parsons, ThoughtWorks' Chief Technology Officer

Rebecca Parsons

Biography: Rebecca Parsons

Dr. Parsons has more than 20 years of application development experience in industries ranging from telecommunications to emergent internet services. She has been published in language and artificial intelligence media, served on numerous program committees, and currently reviews academic articles for several journals.

Before coming to ThoughtWorks she worked as an assistant professor of computer science at the University of Central Florida. She also worked as director's post doctoral fellow at the Los Alamos National Laboratory researching issues in parallel and distributed computation, genetic algorithms, computational biology and non-linear dynamical systems.

Dr. Parsons holds a [Ph.D] in Computer Science from Rice University.

Presentation: Opportunities and Challenges for Technology in the Developing World

Track: IT and Society / Time: Monday 13:20 - 14:10 / Location: Store Sal, BORA BORA

Developing and deploying systems in the developing world share many characteristics with more traditional software development.  However, there are obstacles that, while not unique to the developing world, are not common in traditional software settings.  In addition, though, there are significant opportunities in the developing world as well.  This talk will describe both the opportunities and the challenges, as well as techniques for coping with them.

Workshop: Evolutionary Architecture - How to Make it Work

Agile software development encourages, or even requires, a more evolutionary approach to architecture than is normally practiced by traditional Software Architects. The evolutionary approach to architecture, based on the principle of delaying architectural choices until the latest responsible moment, balances the desirability for sufficient information to make architectural choices with the reality that many architectural choices are difficult to change and should thus be made early.

This tutorial describes the principles that support an evolutionary architecture. We illustrate these principles with example techniques such as database migrations, HATEOS based architectures, and strategies such as end point testing for integration points. We also describe approaches to technical testing, particularly automated technical testing, that provide the safety net for evolving the architecture in the same way that automated unit and regression testing support evolving the code in an agile project.