¿Cuáles son los diversos dominios de la industria del software? – Quora
Asumo que por dominios te refieres a diferentes campos dentro de la industria del software. Esta respuesta NO cubrirá todos y cada uno de los campos. Pero trataré de incluir tanto como sea posible basado en mi conocimiento en la industria.
La industria del software se compone de dos tipos de empresas: la empresa basada en servicios y la empresa de productos.
Entendamos qué es una empresa basada en servicios. Proporcionan servicios de desarrollo de software para otras grandes compañías de software O instituciones gubernamentales / instituciones financieras / hospitales, etc. En general, no tienen su propio producto, pero hay algunas excepciones.
Diferentes roles/equipo en una empresa basada en servicios
Analista de negocios: Digamos que hay una empresa XYX software Pvt LTD y tienen un gobierno como cliente. El analista de negocios es el punto de contacto entre dos partes. Discutirá con el gobierno sobre sus requisitos. Los requisitos no son más que las características que el cliente desea en su software. Como analista de negocios interactúa directamente con el cliente, debe tener grandes habilidades de comunicación.
Gerente de proyecto / Líder: Supongamos que el contrato está finalizado entre el gobierno y la empresa. La compañía desarrollará el software para el gobierno. ¡La compañía consiguió el proyecto! El director del proyecto es el jefe del proyecto. El gerente delega tareas a los miembros respectivos del equipo, realiza un seguimiento de las tareas y administra todo el equipo.
equipo de Desarrollo: Hay diferentes etapas del ciclo de desarrollo de software. Hasta ahora tenemos los requisitos del cliente. Antes de entrar directamente en la fase de desarrollo, el Arquitecto de Soluciones/Líder Técnico que forma parte del equipo de desarrollo, o más bien el jefe del equipo de desarrollo, diseñará la arquitectura del proyecto. (A veces da las entradas y deja que la gente lo diseñe) Para implementar o desarrollar el software. La arquitectura o infraestructura es la base de cualquier proyecto. El arquitecto decidirá si las pilas de tecnología son las más adecuadas para el proyecto. Él / Ella decidirá qué lenguaje de programación usar, qué base de datos usar, qué patrones de diseño usar, qué proveedor de nube usar, entre otras cosas. Una vez que la arquitectura y el diseño están listos, llega la etapa de implementación. Dependiendo de la naturaleza del equipo de software se compone de desarrolladores web que tienen experiencia en el desarrollo de front-end (Si ve un sitio web de aspecto hermoso. Gracias a un desarrollador web!). JavaScript es el lenguaje de desarrollo de front-end popular y hay frameworks como ANGULAR y ReactJS. Para mantenerlo simple, puedes decir que los frameworks facilitan el trabajo del desarrollador. Hay tipos que manejan el desarrollo de backend. Tareas que suceden en segundo plano. Por ejemplo, si vas al sitio web de Amazon y buscas algo. Es responsabilidad del desarrollador de backend escribir el código que comprenderá su solicitud, se conectará a la base de datos y devolverá lo que pidió. Lo estoy simplificando. Es mucho más que eso! Java es el lenguaje de backend que conozco y en el que estoy trabajando. Hay otros también. Tanto los desarrolladores web como los desarrolladores de back-end trabajan juntos para crear el software. Hay otro perfil llamado desarrollador de pila completa que se supone que tiene experiencia en ambos.
Equipo de control de calidad: Ahora digamos que se construye una pequeña característica. Tiene que funcionar según las expectativas del cliente. El equipo de calidad se asegura de que todo lo que se está desarrollando esté en buenas condiciones y funcione según lo esperado. Hay dos tipos de pruebas, es decir, Manual y automatizada. En las pruebas automatizadas, el probador escribe el código. Hay diferentes marcos de trabajo. Selenium-Java es el más popular para automatizar el proceso de prueba.
Para una empresa basada en servicios, estas son las funciones principales. Puede que me haya perdido un poco, pero tienes la idea.
Para una empresa basada en productos que desarrolla su propio producto de software (Uber, Ola, Amazon, Flipkart, Adobe son empresas de productos) para los usuarios, además de los equipos mencionados anteriormente, hay algunos más.
Equipo de experiencia de usuario: Este equipo juega un papel importante en la etapa de diseño del producto. Harán una lluvia de ideas e intentarán analizar la perspectiva del usuario. ¿Qué les gustará a los usuarios? ¿Cómo hacer que un sitio web sea fácil de usar? Si ves un sitio web hermoso y fácil de usar. Gracias a un diseñador de experiencia de usuario! Crearán maquetas. Tienen experiencia en Adobe Illustrator y Photoshop.
Administración de bases de datos: La base de datos es una parte integral de cualquier proyecto y es bueno tener un equipo dedicado para ello. La tarea principal es diseñar, implementar y mantener la Base de datos. SQL es el requisito básico para convertirse en administrador de bases de datos.
Equipo de despliegue: Una vez que el software se desarrolla y prueba a fondo, debe entregarse al cliente o hospedarse en los servidores a los que el cliente puede acceder. Esto es manejado por el equipo de despliegue.
Otros dominios incluyen el equipo de pruebas de rendimiento y el equipo de soporte de aplicaciones.
Leave a Reply