Esquema del desarrollo de software - Outline of software development
El siguiente esquema se proporciona como una descripción general y una guía temática para el desarrollo de software:
Desarrollo de software : desarrollo de unproducto de software , que implica la programación de computadoras (proceso de escritura y mantenimiento del código fuente ), pero también abarca un proceso planificado y estructurado desde la concepción del software deseado hasta su manifestación final. Por lo tanto, el desarrollo de software puede incluir investigación, nuevo desarrollo, creación de prototipos, modificación, reutilización, reingeniería, mantenimiento o cualquier otra actividad que dé como resultado productos de software.
¿Qué tipo de cosas es el desarrollo de software?
El desarrollo de software se puede describir como todo lo siguiente:
Ramas de desarrollo de software
- Ingeniería de software
- Programación de computadoras
- Desarrollo de videojuegos
- desarrollo web
- Desarrollo de aplicaciones web
- Desarrollo de aplicaciones móviles
Historia del desarrollo de software
Participantes del desarrollo de software
- Desarrollador de software
- Ingeniero de software
- Ingeniero de software consultor
- Programador
- Editor de software
- desarrollador web
Problemas de desarrollo de software
Gestión de proyectos de software
- Gestión de proyectos de software : arte y ciencia de la planificación y liderazgo de proyectos de software. Es una subdisciplina de la gestión de proyectos en la que los proyectos de software se planifican, supervisan y controlan.
Estrategias de desarrollo de software
- I + D de software offshore : prestación de servicios de desarrollo de software por parte de un proveedor externo ubicado en un país geográficamente remoto de la empresa cliente; un tipo de subcontratación en el extranjero .
Proceso de desarrollo de software
-
Proceso de desarrollo de software
-
Ciclo de vida de la versión de software
- Fases de desarrollo
- Lanzamiento
-
Apoyo técnico
- Fin de vida útil : terminación del soporte para el producto
-
Ciclo de vida de la versión de software
Actividades y pasos
- Análisis de requerimientos
- Especificacion funcional
- Arquitectura de software
- Diseño de software
- Programación de computadoras
- Pruebas de software
-
Despliegue de software
- Lanzamiento de software
- Instalación del producto
- Activación del producto
- Desactivación
- Adaptación
- Actualización de software
- Desinstalación
- Retiro del producto
- Mantenimiento del software
Metodologías de desarrollo de software
Metodología de desarrollo de software
- Desarrollo de software orientado a aspectos
- Ingeniería de software de sala limpia
- Desarrollo iterativo e incremental
- Metodología de financiación incremental
- Desarrollo rápido de aplicaciones
- Proceso unificado IBM Rational
- Modelo espiral
- Modelo de cascada
- Programación extrema
- Desarrollo de software esbelto
- Melé
- Modelo V
- Desarrollo impulsado por pruebas (TDD)
Desarrollo Ágil de Software
- Equipo multidisciplinar
- Programación extrema
- Desarrollo iterativo e incremental
- Programación en pareja
- Autoorganización
- Timeboxing
Disciplinas de apoyo
- Programación informática -
- Documentación de software -
- Ingeniería de software -
- Aseguramiento de la calidad del software (SQA) -
- Diseño de experiencia de usuario -
Herramientas de desarrollo de software
Educación relevante para el desarrollo de software
- Licenciatura en Ciencias de la Computación : tipo de licenciatura otorgada para el estudio de la informática, que enfatiza los fundamentos matemáticos y teóricos de la computación, en lugar de enseñar tecnologías específicas que pueden quedar obsoletas rápidamente. Una licenciatura en Ciencias de la Computación es una licenciatura inicial común para aquellos que ingresan al campo del desarrollo de software.
Organizaciones de desarrollo de software
Si bien la industria de la tecnología de la información experimenta cambios más rápido que cualquier otro campo, la mayoría de los expertos técnicos están de acuerdo en que es necesario contar con la comunidad a la que pueden consultar, aprender o compartir su experiencia. Aquí está la lista de organizaciones de desarrollo de software conocidas.
- Estándares profesionales de la Asociación de Ingenieros y Técnicos en Computación (ACE - ACET) dentro de la industria de TI.
- Association for Computing Machinery (ACM) es una de las comunidades científicas más antiguas y grandes que se ocupan de la informática y la tecnología. Cubre una amplia gama de temas que incluyen comercio electrónico, bioinformática y redes.
- La Asociación de Profesionales de la Información Independientes (AIIP) es una asociación de profesionales de la información que trabajan de forma independiente o dentro de las industrias relacionadas.
- La Asociación de Profesionales de Tecnología de la Información (AITP) es una comunidad mundial que se centra en la educación en tecnología de la información. Ayuda a conectar a expertos de diferentes campos de TI.
- ASIS International (ASIS) es la comunidad líder que conecta a profesionales de la seguridad de todo el mundo.
- Association of Shareware Professionals (ASP) conecta a los desarrolladores y especialistas en tecnología que trabajan con servicios y aplicaciones sobre la base de "probar antes de comprar".
- Association for Women in Computing (AWC) organiza eventos educativos y de networking para mujeres especialistas en tecnología con el fin de aumentar la proporción de mujeres en la industria.
- Black Data Processing Associates (BDPA) reúne a una comunidad de afroamericanos que trabajan en tecnología de la información para el crecimiento educativo y profesional.
- La Asociación de la Industria de la Computación y las Comunicaciones (CCIA) aboga por mercados abiertos, sistemas y competencia.
- La Asociación de la Industria de Tecnología de Computación (CompTIA) proporciona certificaciones para la industria de TI, así como también educa a individuos y grupos sobre cambios y tendencias para la industria.
- Profesionales de la informática para la responsabilidad social (CPSR) una organización preocupada por el impacto de la tecnología en la sociedad. El grupo proporciona la evaluación del desarrollo tecnológico y su impacto en varios campos de la vida.
- Data & Analysis Center for Software (DACS) recopila y sirve la información sobre varias entidades y software que producen, así como su confiabilidad.
- EDUCAUSE es una organización sin fines de lucro que declara su misión como "promover la educación superior a través de la tecnología de la información".
- La Asociación Europea de Fabricantes de Computadoras (ECMA) es una organización europea que facilita estándares y sistemas de información y comunicación.
- La Asociación Internacional de Ingenieros (IAENG) es una asociación internacional que solía ser una red privada. En la actualidad, acoge el Congreso Mundial de Ingeniería para I + D e ingenieros.
- La Sociedad de Computación del Instituto de Ingenieros Eléctricos y Electrónicos (IEEE) brinda servicios educativos a sus miembros en todo el mundo. Esta sociedad tiene una de las redes más grandes y ofrece numerosos beneficios a sus miembros.
- La Asociación de Seguridad de los Sistemas de Información (ISSA) es una organización sin fines de lucro que fomenta el uso de prácticas para proteger la confidencialidad y la integridad de los recursos de información.
- Network Professional Association (NPA) alienta a sus miembros a adherirse al código de ética, seguir las últimas mejores prácticas y disfrutar de la autoeducación continua.
- La Asociación de la Industria de Servicios de Tecnología (TSIA) es una asociación profesional que ofrece servicios de investigación y asesoramiento.
- Society for Technical Communication (STC) ofrece apoyo e intercambio de conocimientos a los especialistas involucrados en la comunicación técnica y campos relacionados.
- User Experience Professionals Association (UXPA) es una organización que comparte conocimientos sobre UX y ayuda a sus miembros a crecer, desarrollar y mejorar sus productos.
- Women in Technology (WIT) aboga por la educación de mujeres representantes en la industria desde la formación primaria hasta los programas avanzados.
Publicaciones de desarrollo de software
Personas influyentes en el desarrollo de software
Creadores / diseñadores de idiomas
- Kathleen Booth ( Montaje )
- Bjarne Stroustrup ( C ++ )
- Brendan Eich ( JavaScript )
- James Gosling ( Java )
- Guido van Rossum ( pitón )
Influyentes del diseño de software
Ver también
- Activación del producto
- Plano de software
- Diseño de software
- Estimación del esfuerzo de desarrollo de software
- Esquema de diseño web y desarrollo web
- Esquema de la ingeniería de software