¿Cuál es el futuro del desarrollo de software?
De la mano de nuevas tecnologías, que eran impensadas hace 20 años atrás, estamos viviendo la era del software. Los sistemas basados en software están cambiando la manera en cómo nos relacionamos, cómo hacemos negocios, cómo nos entretenemos, y hasta en cómo administramos la salud.
El software es estratégico para las naciones y su desarrollo, es fundamental para la manera en cómo se concebirán las empresas en un futuro no muy lejano y el concepto de trabajo también está alcanzado por la tecnología.
Pero hay áreas que están en desarrollo y que en poco tiempo serán disruptivas, con gran impacto en la dependencia que tendremos del software: infraestructura inteligente, nanotecnología y la extensión de las capacidades humanas a través de la biotecnología y la inteligencia artificial a escala.
Los sistemas del futuro serán de una magnitud sociotécnica que requerirán la convergencia de varias disciplinas para su desarrollo por lo que este deberá adaptarse a la nueva realidad.
Centros de formación y de investigación como el Software Engineering Institute trabajan en la definición de una nueva concepción de la ingeniería de software sobre la base de que las tecnologías evolucionan rápidamente y que la adaptación de métodos y prácticas deben acompañar esta evolución.
Dado que los sistemas van a evolucionar en forma constante y en algunos casos en tiempo real, se hacen necesarios nuevos métodos de aseguramiento de calidad, verificación y validación poniendo a la seguridad como un atributo de primer orden.
Muchos de los sistemas futuros incluirán a las personas como componentes de este, no meramente usuarios, llevando la escala social a límites que van a requerir nuevos métodos de diseño para soportar nuevos atributos de calidad adicionales a los tradicionales de performance, disponibilidad, escalabilidad, etc.
Los ingenieros de software deberán ser formados en disciplinas complementarias porque los nuevos desarrollos integrarán otras disciplinas del campo de las ciencias sociales y también incorporar nuevos conocimientos técnicos alineados a las nuevas tecnologías y demanda de los nuevos tipos de sistemas.
Se necesita desarrollar nuevas especialidades para poder afrontar los requerimientos de la nueva generación de sistemas. Ingeniería en seguridad e ingeniería en inteligencia artificial son dos claros ejemplos.
Sobre estos puntos se sustentarán las futuras generaciones de ingenieros de software. El mundo que viene será cada vez más dependiente del software, por lo que hay una enorme responsabilidad en asegurar sistemas con cada vez mayor calidad y que esa calidad se mantenga a medida que el software evolucione.
Si bien el desarrollo de software tiene un enorme componente social, (conformación de equipos, motivación, comunicación y negociación, por mencionar algunos), la calidad solo se logra con buena ingeniería. Esto último cobra mayor vigencia en el mundo que se viene.
El contenido original de esta nota fue publicado en Iprofesional.com. Para leer la nota completa ingresá acá