Академический Документы
Профессиональный Документы
Культура Документы
Ingeniería de Software
Andrés Alfonso Pérez Garrido
C.C 1.129.569.419
Programa: Ingeniería de Sistemas
Tutor: Pilar Alexandra Moreno
Grupo: 301404_4
Escuela de Ciencias Básicas, Tecnología e Ingeniería – ECBTI, Bogotá abril 03 del 2.021
1. Resumen de la propuesta de software
Medical Software S.A.S ha decidido implementar el desarrollo de un sitio web que permita
implementar los conceptos de la telemedicina para generar una relación entre médicos y pacientes.
Medical Software S.A.S busca convertir el sitio web propuesto en un gran banco de datos con
información real, verídica y certificada en el área de la salud enfocada en el público de habla hispana.
El sitio web propuesto por Medical Software S.A.S es un software tipo Gestión porque está enfocado
en ser un gran repositorio de información verídica y respaldada por cientos de profesionales de habla
hispana. A futuro la dinámica de consultas y respuestas de inquietudes en diversas áreas de la salud
como: medicina general, dermatología, pediatría, medicina interna, ginecología y obstetricia,
urología, infectología, planificación, sexología, farmacología, ortopedia, etc. Permitirá generar un
volumen de información muy amplio que debe ser almacenado en grandes bases de datos y debe
contar con los mecanismos tecnológicos necesarios para administrar la información recolectada y
brindar seguridad, integridad, eficiencia y fácil acceso a los datos.
La propuesta de desarrollo del sitio web esta justificada por las siguientes características:
Accesibilidad: La propuesta de desarrollo de software propone crear un aplicativo web, este tipo de
infraestructura permite que los usuarios puedan acceder al aplicativo desde cualquier parte donde
cuente con una conexión a internet. Es decir, lo único que se necesita es un dispositivo con conexión
a internet sin importar el país o la ciudad donde se encuentren los usuarios.
Infraestructura: El aplicativo web propuesto está basado sobre una arquitectura de tipo
cliente/servidor, esto garantiza que la información se encuentre centralizada en la red de servidores.
2. Modelo de desarrollo de software seleccionado
El proyecto inicia desde cero, es decir, no hay antecedentes de que el cliente o Medical
Software S.AS posean o hayan implementado otro software con iguales características.
Se visualiza una gran cantidad de usuarios dentro de la plataforma teniendo en cuenta que el
sitio web estará disponible para la mayoría de los países de habla hispana.
Se deben generar diagramas y diseños que garanticen que la arquitectura del software soporte
los requerimientos de infraestructura e implementación.
El sitio web debe garantizar unos niveles de servicio que permitan una operación 7 X 24.
Dentro de las ventajas de la metodología RUP encontramos las siguientes:
Por último se sugiere combinar algunas características de scrum dentro de la metodología RUP a
utilizar, por ejemplo:
Incluir los daily meeting para mejorar la comunicación del equipo de desarrollo, resaltando las
cosas que se están haciendo bien y detectar y/o mitigar posibles riesgos en el proceso de
implementación.
A continuación encontrará cada una de las tareas a realizar por cada una de las etapas del ciclo de
vida correspondiente al desarrollo del sitio web propuesto:
5. Descripción del equipo de trabajo
Medical Software S.A.S ha dispuesto un grupo de profesionales altamente capacitados para atender
todas y cada una de las necesidades en las distintas etapas del proyecto, nuestro equipo se encuentra
conformado por colaboradores proactivos dispuestos a responder en forma oportuna a los desafíos del
proyecto. A continuación se describen los equipos que harán parte del proyecto de implementación
del sitio web propuesto.
Gerente de proyecto: Se encargará de gestionar, planificar y administrar todos y cada uno de los
recursos del proyecto, ya sea de tipo económico, humano, cronológico o tecnológico. Dentro de sus
funciones está canalizar la comunicación de forma bidireccional entre el cliente y el equipo técnico-
funcional del proyecto.
Arquitecto de software: Será el encargado de gestionar, diseñar y/o delegar el diseño de los
diagramas y componentes de software a construir. Velará por el correcto uso de las tecnologías
seleccionadas, también emitirá los lineamientos de programación que serán implementados por los
desarrolladores.
El arquitecto de software trabaja de la mano con el gerente del proyecto para comunicar los avances y
necesidades del equipo de desarrollo, además, es el líder técnico del proyecto y por lo tanto debe tener
una alta capacidad comunicativa para explicar al cliente los pormenores técnicos en un lenguaje de
negocio que sea de fácil comprensión para el cliente.
Equipo de pruebas: Estará conformado por 10 personas. Serán los encargados de garantizar que el
sitio web desarrollado cumpla con un mínimo de calidad y que su interacción con el usuario sea lo
más intuitiva posible. Su principal función es validar que los componentes de software que vayan
siendo liberados por el equipo de desarrolladores no contengan errores bloqueantes y que estén
construidos acorde con las historias de uso.
Deberán trabajar de la mano con el equipo de desarrollo para proporcionarles de forma clara y
oportuna los escenarios que generan error o que no han sido implementados correctamente según las
historias de usuario.
Equipo de devops: Estará conformado por 3 personas. Este equipo actuara de forma transversal a los
demás equipos. Su principal función es garantizar que se generen los instaladores y componentes de
software necesarios para que el sitio web se ejecuté correctamente.
También debe preparar todo lo referente a la infraestructura local para automatizar escenarios de
pruebas funcionales, pruebas de carga a la aplicación, análisis de cobertura de código, control de
versiones, generación automática de instaladores y demás artefactos que sean especificados por el
gerente de proyecto y el arquitecto.
6. Herramientas y métodos de control sugeridos en la propuesta de desarrollo de software
Project: Será utilizado por el gerente de proyecto para gestionar y administrar los distintos recursos
del proyecto: Cronogramas, presupuestos, equipos de trabajos, avance de actividades, etc.
Balsamiq: Esta herramienta se utilizará para modelar de forma rápida interfaces de usuario para que
los distintos integrantes del proyecto incluido el cliente pueda darse una idea de como será el diseño
de las pantallas del sitio web.
Trello: Se utilizará internamente para optimizar y organizar equipos de trabajo a través de la creación
de tarjetas para hacer seguimiento a las actividades realizadas en el día a día por cada uno de los roles
involucrados.
SonarQube: Esta herramienta será utilizada para analizar y detectar el porcentaje de cobertura de
código del proyecto, esto será indispensable para el arquitecto de software por que le permitirá medir
si el equipo de desarrollo esta adoptando los lineamientos especificados para la implementación de
código.
Bugtracker: Se utilizará esta herramienta para la gestión y control de errores y hallazgos encontrados
en el proceso de implementación. Por medio de esta herramienta se obtendrá una trazabilidad en
cuanto a la gestión y solución de los incidentes, así como la documentación de cada uno de los
hallazgos encontrados.
Selenium: Será utilizado para automatizar los escenarios de pruebas de la aplicación. Está
herramienta permitirá grabar los escenarios de pruebas para que posteriormente sean ejecutados de
forma automática sin que el analista de pruebas interactúe directamente con el sitio web.
Con esta herramienta se garantiza el montaje de pruebas regresivas las cuales serán de gran utilidad
porque permitirá monitorear que las funcionalidades previas no se afecten con las nuevas entregas del
desarrollo.
Azure devops services: Utilizaremos este servicio SaaS, para garantizar la integración continua y
generación de los componentes de software en forma automática.
Teams: Esta herramienta será de uso interno y permitirá los distintos equipos de trabajos
comunicarse en forma síncrona y asíncrona a través de chats y video llamadas.