La Argentina muestra una actividad econconómica robusta en el área de desarrollo de software, originada en y retroalimentándose con una cultura informática temprana y ampliamente extendida, al menos en los principales centros urbanos.
El aumento sostenido que se espera en la demanda global de servicios asociados a las tecnologías de la información y las comunicaciones (TICs) augura para el área un amplio
potencial de crecimiento.
El país cuenta con varios de los factores necesarios para aprovechar este potencial en particular respecto del desarrollo de software, entre ellos una amplia base de empresas del sector de distintas características y tamaños que trabajan tanto en el mercado local como en el internacional, una cantidad interesante de profesionales con capacidades competitivas a nivel global, y un fuerte y consistente apoyo estatal al sector.
Por otro lado, Argentina no es el único país que ha detectado la posibilidad de generación de empleos de calidad y de desarrollo económico que brindan las TICs en general y el desarrollo de software en particular. Hay varios países que vienen desarrollando estrategias que les han permitido una inserción importante en los mercados mundiales dentro de estas actividades.
Creemos que el desarrollo del sector en la Argentina puede beneficiarse de un posicionamiento global que destaque la capacidad de proveer servicios de alta calidad. Esta visión motiva la orientación del plan que proponemos, que aspira a conjugar práctica extensiva en habilidades directamente relacionadas con las necesidades que percibimos en el mercado laboral con una sólida formación en los conceptos de base de la programación y con el énfasis en el cuidado de distintos criterios de calidad de los productos de software construidos.
La propuesta que presentamos aspira a fortalecer la capacidad de los egresados/as de ocupar empleos de calificación media o alta en un sector que cuenta con una amplia oferta laboral y buenas perspectivas de crecimiento, tanto a nivel global como en particular para las áreas metropolitanas de Buenos Aires y La Plata en zonas fácilmente accesibles desde el área de influencia de la Universidad, y que genera empleos que por lo general tienen buenas remuneraciones y condiciones razonables de trabajo. De esta forma, buscamos brindar a la comunidad de la zona de inserción de la UNQ una alternativa laboral de calidad.
Formar técnicos/as capaces de elucidar e implementar soluciones en un amplio espectro de problemas asociados a las tareas de diseño/programación dentro del desarrollo de software, en un alcance razonable para un egresado/a pre-universitario, siendo capaces de aprovechar los conceptos aprehendidos en la carrera para pensar y resolver situaciones concretas, y basados en una amplia experiencia práctica obtenida durante el recorrido de la carrera.
En particular se espera que un egresado/a posea las siguientes capacidades:
- concebir una solución, implementarla y describir los conceptos que fundamentan las decisiones que tomó, ante un problema concreto de diseño y/o programación de complejidad mediana.
- construir programas informáticos teniendo en cuenta parámetros básicos de calidad (grado de test, claridad, mantenibilidad, robustez, extensibilidad) en varios lenguajes de programación, e incorporar nuevos lenguajes y estilos de programación al marco de los conceptos que conoce.
- manejar con fluidez el entorno que necesita un programador para trabajar: sistema operativo, entornos de desarrollo, entornos de ejecución.
- tener elementos que le faciliten el trabajo en grupo, tanto en lo actitudinal (compartir conocimientos, privilegiar colaboración a competencia, organizar tareas) como en lo técnico (conocer herramientas y entornos).
- incorporar a su práctica nuevas herramientas que vayan apareciendo en el ámbito profesional.
- comprender que las actividades de programación se inscriben muchas veces en un marco más amplio de proyectos de desarrollo de software, y cuáles son sus roles específicos dentro de un equipo de proyecto.
Para acceder al Título de Técnico Universitario en Programación Informática, el estudiante deberá: cursar la totalidad de las materias de los núcleos introductorio, básico obligatorio y avanzado obligatorio, obtener 24 créditos en materias del núcleo complementario y realizar un trabajo de inserción profesional.
Materias del ciclo introductorio
Cursos | Horas semanales | Régimen de cursado | Créditos | Carga horaria total |
---|---|---|---|---|
Lectura y escritura académica | 5 | Cuatrimestral | 10 | 90 |
Matemática | 5 | Cuatrimestral | 10 | 90 |
Elementos de programación y lógica | 5 | Cuatrimestral | 10 | 90 |
Totales | 30 | 270 |
Materia | Horas semanales | Carga horaria total | Créditos | Prerrequisitos | Recomendados |
---|---|---|---|---|---|
Introducción a la Programación | 8 | 144 | 16 | Elementos de Lógica y Programación | - |
Organización de Computadoras | 6 | 108 | 12 | Elementos de Lógica y Programación | - |
Matemática | 8 | 144 | 16 | Elementos de Lógica y Programación/ Matemática | Matemática I |
Programación con Objetos I | 8 | 144 | 16 | Introducción a la Programación | - |
Bases de Datos | 6 | 108 | 12 | - | - |
Estructuras de Datos | 8 | 144 | 16 | Introducción a la Programación | - |
Programación con Objetos II | 6 | 108 | 12 | Programación con Objetos I | - |
Totales | 900 | 100 |
Materia | Horas semanales | Carga horaria total | Créditos | Prerrequisitos | Recomendados |
---|---|---|---|---|---|
Redes de Computadoras | 6 | 108 | 12 | Organización de Computadoras | - |
Sistemas Operativos | 6 | 108 | 12 | Introducción a la Programación/Organización de Computadoras | - |
Programación Concurrente | 4 | 72 | 8 | Estructuras de Datos | - |
Matemática II | 4 | 72 | 8 | Matemática I | - |
Elementos de Ingeniería de Software | 6 | 108 | 12 | Programación con Objetos II | - |
Construcción de Interfaces de Usuario | 6 | 108 | 12 | Programación con Objetos II | - |
Estrategias de Persistencia | 6 | 108 | 12 | Base de Datos/Programación con Objetos II | - |
Programación Funcional | 4 | 72 | 8 | Estructuras de Datos | - |
Desarrollo de Aplicaciones | 6 | 108 | 12 | Construcción de Interfaces de Usuario/ Elementos de Ingeniería de Software/ Estrategias de Persistencia | - |
Laboratorio de Sistemas Operativos y Redes | 4 | 72 | 8 | Sistemas Operativos/ Redes de Computadoras | - |
Totales | 936 | 104 |
Materia | Horas semanales | Carga horaria total | Créditos |
Seguridad Informática | 4 | 72 | 8 |
Bases de Datos II | 4 | 72 | 8 |
Participación y Gestión en Proyectos de Software Libre | 4 | 72 | 8 |
Introducción a las Arquitecturas de Software | 4 | 72 | 8 |
Programación con Objetos III | 4 | 72 | 8 |
Introducción a la Bioinformática | 4 | 72 | 8 |
Políticas Públicas en la Sociedad de la Información y la Era Digital | 4 | 72 | 8 |
Sistemas de Información Geográfica | 4 | 72 | 8 |
Herramientas Declarativas en Programación | 4 | 72 | 8 |
Introducción al Desarrollo de Videojuegos | 4 | 72 | 8 |
Derechos de Autor y Derechos de Copia en la Era Digital | 4 | 72 | 8 |
Seminarios | 4 | 72 | 8 |
Seminarios sobre Herramientas o Técnicas Puntuales | 4 | 72 | 8 |
Totales | 216 | 24 |
El egresado (o la egresada) es un técnico universitario cuya área de acción principal es la problemática de la construcción de software, que se corresponde con las tareas tradicionalmente conocidas como diseño y programación/codificación.
El recorrido de la carrera le brinda una especialización en proyectos de desarrollo de aplicaciones organizacionales utilizando el paradigma de objetos, en este ámbito específico tiene los conocimientos para insertarse rápida y satisfactoriamente en el mercado laboral.
De acuerdo al perfil propuesto, el egresado/a debería:
- Tener una base conceptual sólida que le permita participar en proyectos de desarrollo de software de distinta índole, tanto respecto del tipo de software como de las herramientas de desarrollo utilizadas; y también adaptarse a las nuevas herramientas que van apareciendo en el ámbito laboral.
- Comprender adecuadamente la pertinencia de construir software de acuerdo a varios parámetros de calidad, entre los que destacamos: claridad, inclusión de tests automáticos extensivos, extensibilidad, robustez frente a fallos, uso eficiente de recursos; también manejar los principales conceptos y herramientas requeridos para que sus productos cuenten con grados adecuados de calidad. Asimismo comprender la conveniencia de valorar y tener en cuenta los conceptos de estándares abiertos y software libre en los entornos operativos y herramientas de desarrollo que se utilizan.
- Contar con conocimientos que le permitan asumir otras tareas además de la construcción (elucidación de requerimientos, despliegue, administración del entorno de ejecución) para proyectos de porte pequeño.
Alcances del título
La Tecnicatura debe formar egresados capaces de participar en el desarrollo de proyectos de software de cualquier porte y casi cualesquiera características, adaptándose a distintos tipos de proyecto, formas de trabajo y herramientas. El grado de esta participación dependería de las características de cada proyecto.
Se espera que un egresado pueda desempeñar un rol importante en todas las actividades de desarrollo e implantación, incluyendo la elección de las herramientas a utilizar, para proyectos de desarrollo de software de pequeño porte (i.e. cuya magnitud no supera los meses/hombre y que no reviste características críticas o inusualmente complejas), en particular la construcción de aplicaciones organizacionales.
Desempeñar un rol importante en las tareas específicas del diseño/codiificación de software, para proyectos de mediano porte (en el orden de 1/2 años-hombre y que no cuenten con características particularmente crríticas o complejas).
Formar parte del equipo de desarrollo en roles que no requieran capacidades de decisión en cuestiones relevantes, para proyectos de mayor porte y/o criticidad.
El egresado también podría colaborar con la administración de redes de computadoras en entornos que no cuenten con una dimensión o grado de complejidad importantes, adaptándolos a las necesidades del lugar en donde se encuentren.
Flavia Saldaña - Directora de la Tecnicatura Universitaria en Programación Informática