Download - Tuenti & QA
¿¿¿ y calidad ???
¿Qué es ?
• Una plataforma social de comunicación web y móvil con más de 14 millones de usuarios registrados, alrededor de 10 millones de usuarios activos al mes (6,5 a través de apps), que comparten de forma privada contenido relevante para ellos y su círculo de amigos más cercano.
Gente real. Información real. Relaciones reales. • Máxima privacidad por
defecto • No indexa en
buscadores • Simple • Messenger + Social • Contenidos relevantes • Alto engagement Tuenti en 2007 y nuestro primer logo"
6 años de "
Founded" 25k users"
#1 social network in Spain"by page views"
Sold first ad"
Launched mobile"
Hired 100th"
to the team"
Release of"“Tuenti Places”"
Telefónica"Investment"
14MM de "usuarios"
0
4
8
11
15
2006 2007 2008 2009 2010 2011 2012
Tota
l Use
rs (M
illion
s)"
• 15% del tráfico web de España pasa por Tuenti cada día
• Una de las principales compañías de internet en Europa
• 3 Oficinas, 260 empleados de 22 nacioalidades
• En proceso de internacionalización
""""""
Tuenti hoy!Tuenti hoy
14,5MM!Usuarios registrados"
Principal sitio web y móvil en España
40.000!Millones de páginas
vistas al mes"
6,5MM!Usuarios de apps
móviles"
400MM!Mensajes de chat/día"
Base de datos Tuenti"
¿Y en cuánto a lo techie?
Base de datos Tuenti"
• +13M usuarios (~10,4M usuarios activos 2011) • +100 minutos/día por usuario (avg) • +400M mensajes de chat / día • +4M fotos subidas / día (picos) • +41,000M páginas vistas / mes • +35K requests / seg (picos) • +1,3K servidores • +250 empleados (~60% techies) • +15K archivos en los repositorios • +10K Tests
Release workflow
Base de datos Tuenti"
Branch Code Test Integrate Release Stabilize
Release workflow
Base de datos Tuenti"
Branch Code Test Integrate Release Stabilize
• 15 ramas de media en cada release o Record actual: 35 ramas
• 63.000 líneas modificadas de media por release
Release workflow
Base de datos Tuenti"
Branch Code Test Integrate Release Stabilize
• Scrum (o al menos alguna metodología Ágil) o Tanto TDD como sea posible
• Labs • A/B Testing • Dark launch
Release workflow
Base de datos Tuenti"
Branch Code Test Integrate Release Stabilize
• Repositorio único siempre disponible • Fecha de release dada por el equipo de devops o Pasar toda la batería de tests hasta que todos
den el OK o Mergear y esperar !!!
• Testing por parte de QA o Cualquier problema debe ser solucionado
ASAP !!!
Release workflow
Base de datos Tuenti"
Branch Code Test Integrate Release Stabilize
• 3 releases por semana • DevOps goal: Todos los días de la semana
• Se toma el último changeset válido de Integración
• Staging servers para probar el código con cierto número de usuarios
Release workflow
Base de datos Tuenti"
Branch Code Test Integrate Release Stabilize
• Un único push a live a las 8 am
• En caso de error o problema rápido • Revert • Hotfix
¡¡ Pero nosotros hemos venido a hablar de CALIDAD !!
Muy bonito…
¿De quién depende la calidad?
¡¡¡ De todos los departamentos !!!
¿De quién depende la calidad?
Engineers
• Unit & Integration Tests
• Code coverage
Testers
• Ejecutar Tests Cases
• Bug Reports
QA Analyst
• Diseño y Ejecución de Tests Cases
• Gestión de los Issues
• Release Process
• Soporte para Hotfixes
Test Engineer
• Integration & Browser Tests
• Analizar calidad del código
QA Team Engineering
¿Ingenieros también? Por supuesto, 1. Todo código debe de ser testeable
2. Los tests deben de probar el código que deberías de tener no el que tienes
Think à Code à Test à Refactor
¿Ingenieros también?
Y para eso tenemos:
Code reviews
¿Ingenieros también?
Y para eso tenemos:
Code Coverage Analysis
¿Ingenieros también?
Y para eso tenemos:
Y a este tipo…
¿Y QA dónde está? Divididos en equipos por areas funcionales de negocio
Social
Sharing
Comms
Identity
Platform
BEFW
FEFW
Infraestructure
Revenue
Tent
Ads
Webx
MVNO
Online
Ops
Cus
Mobile iPhone
Android
WP
m.tuenti
BB
¿Por qué juntos? • Mejor conocimiento del producto o Plannings, Scrum diario…
• Cercanía a los developers o Feedback rápido o Confianza
Resumiendo… • La calidad NO es un impedimento para la agilidad…
¡ Es la base de la agilidad !
• La calidad no es cosa del departamento de QA…
¡ Es parte de la cultura de la empresa !
Resumiendo…
“ The only way a team can write quality software is when the entire team is responsible for quality. ” James A. Whittaker, Jason Arbon, Jeff Carollo, How Google Tests Software
We are done
¿Questions?
[email protected]"blog.tuenti.com"@tuenti "slideshare.com/equipotuenti"youtube.com/tuenti"tuenti.com/tuenti"
exit(0);