Mario Pérez Marrero
    • Create new note
    • Create a note from template
      • Sharing URL Link copied
      • /edit
      • View mode
        • Edit mode
        • View mode
        • Book mode
        • Slide mode
        Edit mode View mode Book mode Slide mode
      • Customize slides
      • Note Permission
      • Read
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Write
        • Only me
        • Signed-in users
        • Everyone
        Only me Signed-in users Everyone
      • Engagement control Commenting, Suggest edit, Emoji Reply
    • Invite by email
      Invitee

      This note has no invitees

    • Publish Note

      Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

      Your note will be visible on your profile and discoverable by anyone.
      Your note is now live.
      This note is visible on your profile and discoverable online.
      Everyone on the web can find and read all notes of this public team.
      See published notes
      Unpublish note
      Please check the box to agree to the Community Guidelines.
      View profile
    • Commenting
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
      • Everyone
    • Suggest edit
      Permission
      Disabled Forbidden Owners Signed-in users Everyone
    • Enable
    • Permission
      • Forbidden
      • Owners
      • Signed-in users
    • Emoji Reply
    • Enable
    • Versions and GitHub Sync
    • Note settings
    • Note Insights New
    • Engagement control
    • Make a copy
    • Transfer ownership
    • Delete this note
    • Save as template
    • Insert from template
    • Import from
      • Dropbox
      • Google Drive
      • Gist
      • Clipboard
    • Export to
      • Dropbox
      • Google Drive
      • Gist
    • Download
      • Markdown
      • HTML
      • Raw HTML
Menu Note settings Note Insights Versions and GitHub Sync Sharing URL Create Help
Create Create new note Create a note from template
Menu
Options
Engagement control Make a copy Transfer ownership Delete this note
Import from
Dropbox Google Drive Gist Clipboard
Export to
Dropbox Google Drive Gist
Download
Markdown HTML Raw HTML
Back
Sharing URL Link copied
/edit
View mode
  • Edit mode
  • View mode
  • Book mode
  • Slide mode
Edit mode View mode Book mode Slide mode
Customize slides
Note Permission
Read
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Write
Only me
  • Only me
  • Signed-in users
  • Everyone
Only me Signed-in users Everyone
Engagement control Commenting, Suggest edit, Emoji Reply
  • Invite by email
    Invitee

    This note has no invitees

  • Publish Note

    Share your work with the world Congratulations! 🎉 Your note is out in the world Publish Note

    Your note will be visible on your profile and discoverable by anyone.
    Your note is now live.
    This note is visible on your profile and discoverable online.
    Everyone on the web can find and read all notes of this public team.
    See published notes
    Unpublish note
    Please check the box to agree to the Community Guidelines.
    View profile
    Engagement control
    Commenting
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    • Everyone
    Suggest edit
    Permission
    Disabled Forbidden Owners Signed-in users Everyone
    Enable
    Permission
    • Forbidden
    • Owners
    • Signed-in users
    Emoji Reply
    Enable
    Import from Dropbox Google Drive Gist Clipboard
       Owned this note    Owned this note      
    Published Linked with GitHub
    • Any changes
      Be notified of any changes
    • Mention me
      Be notified of mention me
    • Unsubscribe
    ### Preguntas (Copiar en documento colaborativo) #### Grupo > Mario Pérez, Edvin Freyer Ortega y Aramis Sarmiento Díaz #### 1. Ingeniería del software ¿Por qué surge? ¿En qué consiste? Características más importantes ![Ingeniería de software](https://miro.medium.com/max/2136/1*zKA45Rj3uFEfMe7gubcX0g.png) > R: >Edvin Freyer Ortega: El concepto de ingeniería del software surgió por primera vez, en el 1968, hubo una conferencia en Garmisch (Alemania), el tema a tratar en esta conferencia, era como resolver los problemas del nuevo software, ha esto se le acuñó el término "La crisis del software", este termino se usó desde finales de 1960 hasta mediados de 1980. > >Tras la aparición de un nuevo hardware basado en circuitos integrados, comenzaron a desarrollarse sistemas y aplicaciones mucho más complejos, la mayoría de proyectos no se terminaban a tiempo, por eso los presupuestos terminaban siendo más altos de lo que inicialmente había sido pactado. > >Algunos de estos proyectos eran tan críticos (sistemas de control de aeropuertos, equipos para medicina, etc) que sus implicaciones iban más allá de las pérdidas millonarias, el mantenimiento también era muy costoso, ya que tenía que haber siempre un usuario experto. > >A partir de aquí se llegó a la conclusión de que el software de la época no era suficiente y que no crecía a la misma velocidad que el hardware, aquí es donde se empezó a invertir más en esta disciplina para que cada vez hubieran más expertos y pudieran lidiar con la creciente complejidad de los nuevos sistemas. > >La ingeniería de software es una especialidad que tiene como objetivo principal, el desarrollo costeable de sistemas de software confiables que funcionen de modo eficiente y comprende todos los aspectos de la producción del software, también se le llama así a la producción de software. > >El software presenta 3 elementos que lo caracterizan: > > - Los programas y/o algoritmos. > - Las estructuras de datos. > - Los documentos. > >Fuentes: [Blog: histinf.blogs.upv.es - Ingenieria de software](https://histinf.blogs.upv.es/2010/12/28/ingenieria-del-software/) >[Blog: micarrerauniversitaria.com - Ingeniería de software](https://micarrerauniversitaria.com/c-ingenieria/ingenieria-de-software/) >Mario Pérez: La ingeniería de software es una especialidad que consiste en sistemas, instrumentos y técnicas que se emplean en el desarrollo de los programas informáticos. La ingeniería de software, también, incorpora el análisis precedente de la situación, el boceto del proyecto, el desarrollo del software, el ensayo necesario para comprobar su funcionamiento correcto y poner en funcionamiento el sistema. El término Ingeniería del Software, surge cuando se lleva a cabo dos conferencias estructuradas por la OTAN en los años en 1967 y 1968 y es para mediados de los 70, cuando los sistemas informáticos incrementaron la dificultad y dan pie a la creación de las redes de ordenadores. El software presenta 3 elementos que lo caracterizan: > > - Los programas y/o algoritmos. > - Las estructuras de datos. > - Los documentos. > >Fuentes: [Blog: micarrerauniversitaria.com - Ingeniería de software ](https://micarrerauniversitaria.com/c-ingenieria/ingenieria-de-software/) >Aramis Sarmiento Díaz: El término ingeniería del software apareció por primera vez en la década de 1950 y principios de los años 1960. Los programadores siempre habían sabido sobre ingenieros civiles, eléctricos y de ordenadores y debatían qué podría significar la ingeniería para el software.El Comité de ciencia de la OTAN patrocinó dos conferencias sobre ingeniería del software en 1968 (Garmisch, Alemania y en 1969) > > >Entre los objetivos de la ingeniería de software están: > >Mejorar el diseño de aplicaciones o software de tal modo que se adapten de mejor manera a las necesidades de las organizaciones o finalidades para las cuales fueron creadas. > >Promover mayor calidad al desarrollar aplicaciones complejas. > >Brindar mayor exactitud en los costos de proyectos y tiempo de desarrollo de los mismos. > >Aumentar la eficiencia de los sistemas al introducir procesos que permitan medir mediante normas específicas, la calidad del software desarrollado, buscando siempre la mejor calidad posible según las necesidades y resultados que se quieren generar. > >Una mejor organización de equipos de trabajo, en el área de desarrollo y mantenimiento de software. > >Detectar a través de pruebas, posibles mejoras para un mejor funcionamiento del software desarrollado. >Fuentes: [Blog: timetoast.com - Origen e historia de la ingenieria de software](https://www.timetoast.com/timelines/origen-e-historia-de-la-ing-de-software) >[Wiki: wikipedia.org - Ingeniería de software](https://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_software#Metodolog%C3%ADa) ##### PUESTA EN COMÚN >La ingeniería de software es una especialidad que consiste en sistemas, instrumentos y técnicas que se emplean en el desarrollo de los programas informáticos. La ingeniería de software, también, incorpora el análisis precedente de la situación, el boceto del proyecto, el desarrollo del software, el ensayo necesario para comprobar su funcionamiento correcto y poner en funcionamiento el sistema. El término Ingeniería del Software, surge cuando se lleva a cabo dos conferencias estructuradas por la OTAN en los años en 1967 y 1968 y es para mediados de los 70, cuando los sistemas informáticos incrementaron la dificultad y dan pie a la creación de las redes de ordenadores. El software presenta 3 elementos que lo caracterizan: > > - Los programas y/o algoritmos. > - Las estructuras de datos. > - Los documentos. > >Fuentes: [Blog: micarrerauniversitaria.com - Ingeniería de software ](https://micarrerauniversitaria.com/c-ingenieria/ingenieria-de-software/) #### 2. Tareas del desarrollo de software El proceso de desarrollo de software es el que tiene lugar desde que se concibe una idea hasta que el programa está implementado en el ordenador y funcionando. Se han planteado distontos modelos o metodologías a la hora de llevar a cabo el desarrollo del software, cada una con sus peculiaridades, pero la mayoría coincide en llevar a cabo una serie de tareas o actividades que son las siguientes: * Requisitos * Análisis * Diseño * Codficación * Pruebas * Documentación * Explotación * Mantenimiento. Investiga y describe en que consiste cada una de ellas ![Informático](https://ubiqum.com/assets/uploads/2019/06/software-development.jpeg) > R: >Edvin Freyer Ortega: > >* Requisitos: Se extraen los requisitos del producto de software que se va a desarrollar para plasmarlos en el documento ERS (Especificación de Requerimientos del Sistema). >* Análisis: Se analizan los requisitos y se empieza a pensar como plasmarlo en un diseño que es el siguiente paso. >* Diseño: El programador o los programadores van a determinar cómo funcionará de forma general. Es el momento de hacer consideraciones sobre la red, el hardware, los casos de uso, etc. La arquitectura representa la primera decisión de diseño sobre el sistema y es uno de los puntos más importantes en el proceso de desarrollo. >* Codficación: Se realizan los distintos procesos y estructuras que se han definido para el sistema. La complejidad y la duración de esta etapa no es exacta, ya que viene directamente ligada a los lenguajes de programación que se utilizan. >* Pruebas: Sirven para detectar las disconformidades de los trabajadores, los clientes y los errores. Es el momento de comprobar que el software funciona correctamente, y para ello se pueden realizar las pruebas de cada módulo por separado y después de forma integral. >* Documentación: En el proceso de desarrollo tiene mucha importancia la documentación transparente del código de fuente del programa. >* Explotación: En esta fase ya está todo listo para su uso, ya sea uso general o para una empresa específica. >* Mantenimiento: Siempre tiene que haber uno o varios programadores que tienen que estar siempre alerta de futuros fallos, futuras actualizaciones etc... Es decir manteniendo el fuen funcionamiento del programa. > >Fuentes: [Blog: occamagenciadigital.com - Conoce las fases de un proyecto de desarrollo de software](https://www.occamagenciadigital.com/blog/conoce-las-fases-de-un-proyecto-de-desarrollo-de-software) >Mario Pérez: >- Requisitos: Se extraen los requisitos del software que se va a crear y son plasmaos en el documento ERS. >- Análisis: En la etapa de análisis se intenta descubrir qué es lo que realmente se necesita y se llega a una comprensión adecuada de los requerimientos del sistema, es decir, las características que el sistema debe poseer. >- Diseño: En esta fase se estudian posibles opciones de implementación para el software que hay que construir, así como decidir la estructura general del mismo. >- Codificación: En esta fase hay que elegir las herramientas adecuadas, un entorno de desarrollo que facilite el trabajo y un lenguaje de programación apropiado para el tipo de software a construir. Esta elección dependerá tanto de las decisiones de diseño tomadas como del entorno en el que el software deba funcionar. >- Pruebas: Consiste en verificar que el software ejecute apropiadamente las labores indicadas en la especificación. >- Documentación: Todo lo que se relaciona a la documentación del desarrollo del software y de la administración del proyecto, pasando por modelaciones (UML), diagramas, pruebas, manuales de usuario, manuales técnicos, etc; todo con el propósito de realizar correcciones con regularidad, utilidad, mantenimiento futuro y ampliaciones al sistema. >- Explotación: En esta fase ya está todo preparado para que el software sea expuesto al mercado. >- Mantenimiento: Conservar y realizar mejoras en el software para afrontar fallas encontradas y nuevos requisitos. >Fuentes: [Blog: micarrerauniversitaria.com - Ingeniería de software](https://micarrerauniversitaria.com/c-ingenieria/ingenieria-de-software/), >[Blog: intelequia.com - Ciclo de la vida del software](https://intelequia.com/blog/post/2083/ciclo-de-vida-del-software-todo-lo-que-necesitas-saber). >Aramis Sarmiento Díaz: >- Requisitos: Se debe identificar sobre qué se está trabajando, es decir, el tema principal que motiva el inicio del estudio y creación del nuevo software o modificación de uno ya existente. A su vez identificar los recursos que se tienen, en esto entra el conocer los recursos humanos y materiales que participan en el desarrollo de las actividades. Es importante entender el contexto del negocio para identificar adecuadamente los requisitos. > >Se tiene que tener dominio de la información de un problema, lo cual incluye los datos fuera del software (usuarios finales, otros sistemas o dispositivos externos), los datos que salen del sistema (por la interfaz de usuario, interfaces de red, reportes, gráficas y otros medios) y los almacenamientos de datos que recaban y organizan objetos persistentes de datos (por ejemplo, aquellos que se conservan de manera permanente). > >También hay que ver los puntos críticos, lo que significa tener de una manera clara los aspectos que entorpecen y limitan el buen funcionamiento de los procedimientos actuales, los problemas más comunes y relevantes que se presentan, los motivos que crean insatisfacción y aquellos que deben ser cubiertos a plenitud. > >Hay que definir las funciones que realizará el software ya que estas ayudan al usuario final y al funcionamiento del mismo programa. > >Se tiene que tener en cuenta cómo será el comportamiento del software ante situaciones inesperadas como lo son por ejemplo una gran cantidad de usuarios usando el software o una gran cantidad de datos entre otros. >- Análisis:Durante la fase de análisis, el cliente plantea las necesidades que se presenta e intenta explicar lo que debería hacer el software o producto final para satisfacer dicha necesidad mientras que el desarrollador actúa como interrogador, como la persona que resuelve problemas. Con este análisis, el ingeniero de sistemas puede elegir la función que debe realizar el software y establecer o indicar cuál es la interfaz más adecuada para el mismo. > > >Finalidades del análisis de requisitos: > >- Brindar al usuario todo lo necesario para que pueda trabajar en conjunto con el software desarrollado obteniendo los mejores resultados posibles. >- Tener un control más completo en la etapa creación del software, en cuanto a tiempo de desarrollo y costos. >Utilización de métodos más eficientes que permitan el mejor aprovechamiento del software según sea la finalidad de uso del mismo. >- Aumentar la calidad del software desarrollado al disminuir los riesgos de mal funcionamiento. > >Diseño: Es el proceso creativo de transformación del problema en una solución. Una vez que se analizan y especifican los requisitos, el diseño es la siguiente actividad técnica a realizar. Es independiente del modelo de procesos que se use. El diseño se centra en 4 áreas importantes: >- Datos >- Arquitecturas >- Interfaces >- Componentes >El diseño es la etapa, en la que se fomenta la calidad. Sin diseño se corre riesgo de construir un sistema inestable, y difícil de probar. >- Codificación: Durante esta etapa se realizan las tareas que comúnmente se conocen como programación; que consiste, esencialmente, en llevar a código fuente, en el lenguaje de programación elegido, todo lo diseñado en la fase anterior. Esta tarea la realiza el programador, siguiendo por completo los lineamientos impuestos en el diseño y en consideración siempre a los requisitos funcionales y no funcionales (ERS) especificados en la primera etapa. >ERS:Especificación de requisitos de software >- Pruebas: Las pruebas de software son un conjunto de técnicas que nos permiten asegurar la calidad del producto que estamos desarrollando en sus diferentes etapas del ciclo de vida. Aunque tienen un coste de desarrollo y mantenimiento extra, son especialmente útiles para facilitar la calidad del software a medio y largo plazo. El tipo y cantidad de pruebas tiene que ser acorde al producto que estamos desarrollando: no es lo mismo un producto grande que una aplicación web para anotar tareas. Todo software debería tener algún tipo de prueba para asegurar su calidad independientemente del tamaño del mismo o del número de personas involucradas en su desarrollo. >- Documentación: Es todo lo concerniente a la documentación del propio desarrollo del software y de la gestión del proyecto, pasando por modelaciones (UML), diagramas de casos de uso, pruebas, manuales de usuario, manuales técnicos, etc; todo con el propósito de eventuales correcciones, usabilidad, mantenimiento futuro y ampliaciones al sistema. > >- Explotación:Incluye la operación del producto software en su entorno final y el soporte operativo alos clientes > >- Mantenimiento:Incluye la modificación de un sistema o producto software después de la entrega para: >- Corregir los fallos (correctivo) >- Mejorar el rendimiento u otros atributos (de mejora) >- Adaptarlo a un entorno modificado (adaptativo). > >Fuentes:[Blog: 4teosite.wordpress.com - Codificación del software](https://4tesosite.wordpress.com/codificacion-del-software/) >[Campus de cursos online:www.campusmvp.es/ - Pruebas de software](https://www.campusmvp.es/recursos/post/que-son-las-pruebas-de-software.aspx) >[Repositorio de github: gist.github.com/brunocascio - Diseño](https://gist.github.com/brunocascio/5e89fafa7fd86bdd1a715d2f6f0432d1) [Blog: techlandia.com - La importancia de la documentación de software](https://techlandia.com/importancia-documentacion-software-sobre_538552/) [Enciclopedia en línea: es.wikipedia.org - Ingeniería de software](https://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_software#Etapas_del_proceso) ##### PUESTA EN COMÚN >- Requisitos: Se debe identificar sobre qué se está trabajando, es decir, el tema principal que motiva el inicio del estudio y creación del nuevo software o modificación de uno ya existente. A su vez identificar los recursos que se tienen, en esto entra el conocer los recursos humanos y materiales que participan en el desarrollo de las actividades. Es importante entender el contexto del negocio para identificar adecuadamente los requisitos. > >Se tiene que tener dominio de la información de un problema, lo cual incluye los datos fuera del software (usuarios finales, otros sistemas o dispositivos externos), los datos que salen del sistema (por la interfaz de usuario, interfaces de red, reportes, gráficas y otros medios) y los almacenamientos de datos que recaban y organizan objetos persistentes de datos (por ejemplo, aquellos que se conservan de manera permanente). > >También hay que ver los puntos críticos, lo que significa tener de una manera clara los aspectos que entorpecen y limitan el buen funcionamiento de los procedimientos actuales, los problemas más comunes y relevantes que se presentan, los motivos que crean insatisfacción y aquellos que deben ser cubiertos a plenitud. > >Hay que definir las funciones que realizará el software ya que estas ayudan al usuario final y al funcionamiento del mismo programa. > >Se tiene que tener en cuenta cómo será el comportamiento del software ante situaciones inesperadas como lo son por ejemplo una gran cantidad de usuarios usando el software o una gran cantidad de datos entre otros. >- Análisis:Durante la fase de análisis, el cliente plantea las necesidades que se presenta e intenta explicar lo que debería hacer el software o producto final para satisfacer dicha necesidad mientras que el desarrollador actúa como interrogador, como la persona que resuelve problemas. Con este análisis, el ingeniero de sistemas puede elegir la función que debe realizar el software y establecer o indicar cuál es la interfaz más adecuada para el mismo. > > >Finalidades del análisis de requisitos: > >- Brindar al usuario todo lo necesario para que pueda trabajar en conjunto con el software desarrollado obteniendo los mejores resultados posibles. >- Tener un control más completo en la etapa creación del software, en cuanto a tiempo de desarrollo y costos. >Utilización de métodos más eficientes que permitan el mejor aprovechamiento del software según sea la finalidad de uso del mismo. >- Aumentar la calidad del software desarrollado al disminuir los riesgos de mal funcionamiento. > >Diseño: Es el proceso creativo de transformación del problema en una solución. Una vez que se analizan y especifican los requisitos, el diseño es la siguiente actividad técnica a realizar. Es independiente del modelo de procesos que se use. El diseño se centra en 4 áreas importantes: >- Datos >- Arquitecturas >- Interfaces >- Componentes >El diseño es la etapa, en la que se fomenta la calidad. Sin diseño se corre riesgo de construir un sistema inestable, y difícil de probar. >- Codificación: Durante esta etapa se realizan las tareas que comúnmente se conocen como programación; que consiste, esencialmente, en llevar a código fuente, en el lenguaje de programación elegido, todo lo diseñado en la fase anterior. Esta tarea la realiza el programador, siguiendo por completo los lineamientos impuestos en el diseño y en consideración siempre a los requisitos funcionales y no funcionales (ERS) especificados en la primera etapa. >ERS:Especificación de requisitos de software >- Pruebas: Las pruebas de software son un conjunto de técnicas que nos permiten asegurar la calidad del producto que estamos desarrollando en sus diferentes etapas del ciclo de vida. Aunque tienen un coste de desarrollo y mantenimiento extra, son especialmente útiles para facilitar la calidad del software a medio y largo plazo. El tipo y cantidad de pruebas tiene que ser acorde al producto que estamos desarrollando: no es lo mismo un producto grande que una aplicación web para anotar tareas. Todo software debería tener algún tipo de prueba para asegurar su calidad independientemente del tamaño del mismo o del número de personas involucradas en su desarrollo. >- Documentación: Es todo lo concerniente a la documentación del propio desarrollo del software y de la gestión del proyecto, pasando por modelaciones (UML), diagramas de casos de uso, pruebas, manuales de usuario, manuales técnicos, etc; todo con el propósito de eventuales correcciones, usabilidad, mantenimiento futuro y ampliaciones al sistema. > >- Explotación:Incluye la operación del producto software en su entorno final y el soporte operativo alos clientes > >- Mantenimiento:Incluye la modificación de un sistema o producto software después de la entrega para: >- Corregir los fallos (correctivo) >- Mejorar el rendimiento u otros atributos (de mejora) >- Adaptarlo a un entorno modificado (adaptativo). > >Fuentes:[Blog: 4teosite.wordpress.com - Codificación del software](https://4tesosite.wordpress.com/codificacion-del-software/) >[Campus de cursos online:www.campusmvp.es/ - Pruebas de software](https://www.campusmvp.es/recursos/post/que-son-las-pruebas-de-software.aspx) >[Repositorio de github: gist.github.com/brunocascio - Diseño](https://gist.github.com/brunocascio/5e89fafa7fd86bdd1a715d2f6f0432d1) [Blog: techlandia.com - La importancia de la documentación de software](https://techlandia.com/importancia-documentacion-software-sobre_538552/) [Enciclopedia en línea: es.wikipedia.org - Ingeniería de software](https://es.wikipedia.org/wiki/Ingenier%C3%ADa_de_software#Etapas_del_proceso) #### 3. Personas implicadas En el desarrollo de software intervienen diferentes personas, cada una desempeñando uno o varios roles. Los roles más importantes son los que se incluyen a continuación. Describe cada uno de ellos: * Clientes * Analistas * Desarrolladores * Usuarios ![](https://d500.epimg.net/cincodias/imagenes/2018/01/22/fortunas/1516650639_308252_1516651059_noticia_normal.jpg) > R: > >Edvin Freyer Ortega: > >* Clientes: Es quien tiene una idea de un proyecto, o actúa como mandante de una empresa, su trabajo es conseguir un equipo de expertos que pueda llevar a cabo el proyecto pensado, para que todo salga bien, debe decirle sus necesidades con claridad al analista, y darle ideas de como quiere todo. >* Analistas: Es quien lleva la fase de análisis en un proyecto, debe quedar mediante reuniones con el cliente para escuchar sus necesidades, él analista debe entender que quiere el cliente, porque luego tiene que llevar al equipo el conocimiento necesario para el entendimiento y ejección del software, debe pasar de un lenguaje que domine el cliente a un lenguaje que domine el equipo. >* Desarrolladores: Su función es llevar la idea del cliente que le ha hecho llegar el analista, a código para implementarlo, debe estudiar en que sistemas puede desarrollarlo, hablar con el resto del equipo de programadores, y todo con la menor cantidad de código posible y lo más eficientemente posible, >* Usuarios: son las personas que están operando con el software final. > >Fuentes: [Blog: slideshare.net - Roles desarrollo del software](https://es.slideshare.net/SebastianRamrez2/roles-desarrollo-del-software) > >Mario Pérez: >- Clientes: Es la persona que tiene la idea y los recursos necesarios para llevarla a cabo junto a profesionales. >- Analistas: Los analistas de sistemas informáticos adaptan y diseñan sistemas de información para ayudar a las empresas trabajar de forma más rápida y eficiente. >- Desarrolladores: Los desarrolladores llevan a cabo la idea del cliente, comunicada por el analista. >- Usuarios: Son las personas que usan este software, ya sea de uso libre o cerrado. > >Fuentes: [Blog: educaweb.com - Analista sistemas informáticos](https://www.educaweb.com/profesion/analista-sistemas-informaticos-362) > >Aramis: >- Clientes: Es quien tiene la idea del proyecto y para llevarla a cabo necesita a los profesionales. >- Analistas: Es el responsable de cumplir con las necesidades comerciales del cliente. Esto significa que tienen en cuenta los objetivos comerciales del cliente y lo ayudan a definir metas claras. Luego, ellos toman estos objetivos y los convierten en soluciones de software viables. Están involucrados en el proyecto desde el inicio, y conectan las necesidades del cliente con las realidades del proyecto. Además, llevan a cabo análisis del mercado, evalúan a la competencia y definen a la audiencia meta. También crean soluciones de documentación y prueban soluciones. >- Desarrolladores: Son los que crean el proyecto final al programar en un rango de distintos lenguajes de programación. Dependiendo del nivel de experiencia, los equipos pueden contar con desarrolladores senior, medios y junior. En los proyectos más grandes, quizás existan distintos niveles de experiencia en los equipos de desarrollo de software. Los programadores junior apoyan al resto del equipo al ayudar con las tareas más fáciles para darles más tiempo a los desarrolladores senior para que aborden las programaciones más difíciles. >- Usuarios: Son las personas que utilizan el software. > > Fuente: [Blog: projectcor.com - Roles fundamentales en un equipo de desarrollo](https://projectcor.com/es/blog/roles-fundamentales-en-un-equipo-de-desarrollo-de-software/) ##### PUESTA EN COMÚN >* Clientes: Es quien tiene una idea de un proyecto, o actúa como mandante de una empresa, su trabajo es conseguir un equipo de expertos que pueda llevar a cabo el proyecto pensado, para que todo salga bien, debe decirle sus necesidades con claridad al analista, y darle ideas de como quiere todo. >* Analistas: Es quien lleva la fase de análisis en un proyecto, debe quedar mediante reuniones con el cliente para escuchar sus necesidades, él analista debe entender que quiere el cliente, porque luego tiene que llevar al equipo el conocimiento necesario para el entendimiento y ejección del software, debe pasar de un lenguaje que domine el cliente a un lenguaje que domine el equipo. >* Desarrolladores: Su función es llevar la idea del cliente que le ha hecho llegar el analista, a código para implementarlo, debe estudiar en que sistemas puede desarrollarlo, hablar con el resto del equipo de programadores, y todo con la menor cantidad de código posible y lo más eficientemente posible, >* Usuarios: son las personas que están operando con el software final. > >Fuentes: [Blog: slideshare.net - Roles desarrollo del software](https://es.slideshare.net/SebastianRamrez2/roles-desarrollo-del-software) #### 4. Ciclo de vida del software De forma genérica, en qué cosiste el ciclo de vida del software: ![](https://www.webcreek.com/wp-content/uploads/2018/08/Aug8_Lifecycle_BlogWebsite1.jpg) > R: > >Edvin Freyer Ortega: > >Es un programa para definir las distintas fases intermedias que se requieren para validar el desarrollo de la aplicación, es decir, para garantizar que el software cumpla los requisitos para la aplicación y verificación de los procedimientos de desarrollo: se asegura de que los métodos utilizados son apropiados. > >La razón por la que se crean estos programas, es porque rectificar errores en el futuro puede llegar a ser muy costoso. El ciclo de vida permite que los errores se detecten lo antes posible y, por lo tanto, permite a los desarrolladores concentrarse en la calidad del software, en los plazos de implementación y en los costos asociados. > >Fuentes: [Blog: ccm.net - Ciclo de vida del software](https://es.ccm.net/contents/223-ciclo-de-vida-del-software#ciclo-de-vida-del-software) > >Mario: El ciclo de vida del desarrollo del software contempla las fases necesarias para validar el desarrollo del software y así garantizar que este cumpla los requisitos para la aplicación y verificación de los procedimientos de desarrollo, asegurándose de que los métodos usados son apropiados. >Fuente: [Blog: intelequia.com - Ciclo de vida del software](https://intelequia.com/blog/post/2083/ciclo-de-vida-del-software-todo-lo-que-necesitas-saber) > >Aramis: Es el conjunto de fases por las que pasa el sistema que se está desarrollando desde que nace la idea inicial hasta que el software es retirado o remplazado (muere). También se denomina a veces paradigma. > >Entre las funciones que debe tener un ciclo de vida se pueden destacar: > >• Determinar el orden de las fases del proceso de software. • Establecer los criterios de transición para pasar de una fase a la siguiente. • Definir las entradas y salidas de cada fase. • Describir los estados por los que pasa el producto. • Describir las actividades a realizar para transformar el producto. • Definir un esquema que sirve como base para planificar, organizar, coordinar, desarrollar… > >Fuente: [Blog: efectodigital.online- Ciclo de vida del software](https://www.efectodigital.online/single-post/2018/04/23/ciclo-de-vida-de-desarrollo-de-software) ##### PUESTA EN COMÚN >Es el conjunto de fases por las que pasa el sistema que se está desarrollando desde que nace la idea inicial hasta que el software es retirado o remplazado (muere). También se denomina a veces paradigma. > >Entre las funciones que debe tener un ciclo de vida se pueden destacar: > >• Determinar el orden de las fases del proceso de software. • Establecer los criterios de transición para pasar de una fase a la siguiente. • Definir las entradas y salidas de cada fase. • Describir los estados por los que pasa el producto. • Describir las actividades a realizar para transformar el producto. • Definir un esquema que sirve como base para planificar, organizar, coordinar, desarrollar… > >Fuente: [Blog: efectodigital.online- Ciclo de vida del software](https://www.efectodigital.online/single-post/2018/04/23/ciclo-de-vida-de-desarrollo-de-software)

    Import from clipboard

    Paste your markdown or webpage here...

    Advanced permission required

    Your current role can only read. Ask the system administrator to acquire write and comment permission.

    This team is disabled

    Sorry, this team is disabled. You can't edit this note.

    This note is locked

    Sorry, only owner can edit this note.

    Reach the limit

    Sorry, you've reached the max length this note can be.
    Please reduce the content or divide it to more notes, thank you!

    Import from Gist

    Import from Snippet

    or

    Export to Snippet

    Are you sure?

    Do you really want to delete this note?
    All users will lose their connection.

    Create a note from template

    Create a note from template

    Oops...
    This template has been removed or transferred.
    Upgrade
    All
    • All
    • Team
    No template.

    Create a template

    Upgrade

    Delete template

    Do you really want to delete this template?
    Turn this template into a regular note and keep its content, versions, and comments.

    This page need refresh

    You have an incompatible client version.
    Refresh to update.
    New version available!
    See releases notes here
    Refresh to enjoy new features.
    Your user state has changed.
    Refresh to load new user state.

    Sign in

    Forgot password

    or

    By clicking below, you agree to our terms of service.

    Sign in via Facebook Sign in via Twitter Sign in via GitHub Sign in via Dropbox Sign in with Wallet
    Wallet ( )
    Connect another wallet

    New to HackMD? Sign up

    Help

    • English
    • 中文
    • Français
    • Deutsch
    • 日本語
    • Español
    • Català
    • Ελληνικά
    • Português
    • italiano
    • Türkçe
    • Русский
    • Nederlands
    • hrvatski jezik
    • język polski
    • Українська
    • हिन्दी
    • svenska
    • Esperanto
    • dansk

    Documents

    Help & Tutorial

    How to use Book mode

    Slide Example

    API Docs

    Edit in VSCode

    Install browser extension

    Contacts

    Feedback

    Discord

    Send us email

    Resources

    Releases

    Pricing

    Blog

    Policy

    Terms

    Privacy

    Cheatsheet

    Syntax Example Reference
    # Header Header 基本排版
    - Unordered List
    • Unordered List
    1. Ordered List
    1. Ordered List
    - [ ] Todo List
    • Todo List
    > Blockquote
    Blockquote
    **Bold font** Bold font
    *Italics font* Italics font
    ~~Strikethrough~~ Strikethrough
    19^th^ 19th
    H~2~O H2O
    ++Inserted text++ Inserted text
    ==Marked text== Marked text
    [link text](https:// "title") Link
    ![image alt](https:// "title") Image
    `Code` Code 在筆記中貼入程式碼
    ```javascript
    var i = 0;
    ```
    var i = 0;
    :smile: :smile: Emoji list
    {%youtube youtube_id %} Externals
    $L^aT_eX$ LaTeX
    :::info
    This is a alert area.
    :::

    This is a alert area.

    Versions and GitHub Sync
    Get Full History Access

    • Edit version name
    • Delete

    revision author avatar     named on  

    More Less

    Note content is identical to the latest version.
    Compare
      Choose a version
      No search result
      Version not found
    Sign in to link this note to GitHub
    Learn more
    This note is not linked with GitHub
     

    Feedback

    Submission failed, please try again

    Thanks for your support.

    On a scale of 0-10, how likely is it that you would recommend HackMD to your friends, family or business associates?

    Please give us some advice and help us improve HackMD.

     

    Thanks for your feedback

    Remove version name

    Do you want to remove this version name and description?

    Transfer ownership

    Transfer to
      Warning: is a public team. If you transfer note to this team, everyone on the web can find and read this note.

        Link with GitHub

        Please authorize HackMD on GitHub
        • Please sign in to GitHub and install the HackMD app on your GitHub repo.
        • HackMD links with GitHub through a GitHub App. You can choose which repo to install our App.
        Learn more  Sign in to GitHub

        Push the note to GitHub Push to GitHub Pull a file from GitHub

          Authorize again
         

        Choose which file to push to

        Select repo
        Refresh Authorize more repos
        Select branch
        Select file
        Select branch
        Choose version(s) to push
        • Save a new version and push
        • Choose from existing versions
        Include title and tags
        Available push count

        Pull from GitHub

         
        File from GitHub
        File from HackMD

        GitHub Link Settings

        File linked

        Linked by
        File path
        Last synced branch
        Available push count

        Danger Zone

        Unlink
        You will no longer receive notification when GitHub file changes after unlink.

        Syncing

        Push failed

        Push successfully