Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CURSO:
Ingeniería de Software II
TEMA:
“sistema de control de acceso y de citas para la Clínica San Jorge”
DOCENTE:
Dr. Ing. Andres Epifanía Huerta
INTEGRANTES:
Alegre Polo Jhordy Chiroque
Arroyo Maifher Sahit
Paredes Sanchez Andre Ivan
Valdez Zapata Edwin Daniel
Sánchez Valverde Luis Daniel
PERÚ-2023
INTRODUCCIÓN
Hoy en día las empresas e instituciones manejan cantidades de información exorbitantes, los
hospitales y las clínicas de hoy en día no se quedan atrás. Estos interactúan con una gran
cantidad de personas diariamente, entre personal, doctores y pacientes. La seguridad y
legitimidad de esta información es esencial en cualquiera de estos establecimientos para lo
cual hoy en día es imprescindible que los archivos cuenten con servicios informáticos.
La clínica san Jorge tiene como objetivo satisfacer de manera eficaz y eficiente las
necesidades de cuidado de salud de la comunidad, así como también brindar a toda la
comunidad la mejor atención médica basada en la evidencia científica y contenido ético,
acompañando al paciente y su familia, También colabora con la Educación del paciente, su
familia y la sociedad, brindando cuidado y promoción de actitudes saludables, por último
garantiza la revisión y actualización de los conocimientos, procesos, tecnologías y
estructuras, gestionando nuestros recursos con racionalidad económica de forma transparente
y honesta.
La ingeniería del software es una disciplina que implica el uso de estructuras, herramientas y
técnicas para construir programas informáticos.Así mismo, incluye el análisis previo de la
situación, la redacción del proyecto, la creación del software y las pruebas necesarias para
garantizar el correcto funcionamiento del software antes de poner el sistema en
funcionamiento.
Esta ingeniería aborda todas las fases del ciclo de vida de desarrollo de cualquier tipo de
sistema de información y es aplicable a una amplia gama de ámbitos de la informática y la
ciencia de los ordenadores, como el diseño de compiladores, sistemas operativos y
tecnologías de Intranet/Internet: La empresa, la investigación científica, la medicina, la
fabricación, la logística, la banca, el control del tráfico y la meteorología son sólo algunos de
los campos en los que puede trabajar.La ingeniería de software es un campo de estudio que
abarca las estructuras, instrumentos y los métodos utilizados en el desarrollo de programas
informáticos. Por tanto, la ingeniería del software es una rama de la ingeniería que desarrolla
y gestiona sistemas de software utilizando técnicas y experimentos de la informática, la
gestión de proyectos y otras disciplinas.
SISTEMA DE INFORMACIÓN
DEFINICIÓN
El término Ingeniería del Software, surge cuando se llevaba a cabo dos conferencias
estructuradas por la OTAN en los años en 1967 y 1968.Es para mediados de la década los 70,
cuando los sistemas informáticos incrementaron la dificultad y dan pie a la creación de las
redes de computadoras,este hecho presionó a quienes desarrollaban las computadoras
personalizadas, aunque no se sabía mucho sobre ellas; al final de esta etapa, surgieron los
microprocesadores.La cuarta época del progreso de los sistemas informáticos, comienza en
los 90 y se orienta hacia el impacto general de las computadoras y el software, en todos los
entornos.La industria del software es de gran importancia en la economía mundial. Se ponen
de manifiesto las técnicas de redes neuronales, al igual que la lógica difusa, de interés en el
campo de la Inteligencia Artificial.
Los sistemas de procesamiento de transacciones (TPS por sus siglas en inglés) son los
sistemas empresariales básicos que sirven al nivel operacional de la organización.
Los sistemas de control de procesos de negocio (BPM por sus siglas en inglés) monitorizan y
controlan los procesos industriales o físicos, como puede ser la refinación de petróleo,
generación de energía o los sistemas de producción de acero en una planta siderúrgica.
Los sistemas de colaboración empresarial (ERP por sus siglas en inglés) son uno de los tipos
de sistemas de información más utilizados. Ayudan a los directivos de una empresa a
controlar el flujo de información en sus organizaciones.
Se trata de uno de los tipos de sistemas de información que no son específicos de un nivel
concreto en la organización, sino que proporcionan un soporte importante para una amplia
gama de usuarios. Estos sistemas de información están diseñados para soportar tareas de
oficina como sistemas multimedia, correos electrónicos, videoconferencias y transferencias
de archivos.
Los sistemas de información de gestión (MIS por sus siglas en inglés) son un tipo de sistemas
de información que recopilan y procesan información de diferentes fuentes para ayudar en la
toma de decisiones en lo referente a la gestión de la organización.
Los sistemas de información de gestión utilizan los datos recogidos por el TPS para
proporcionar a los supervisores los informes de control necesarios. Los sistemas de
información de gestión son los tipos de sistemas de información que toman los datos internos
del sistema y los resumen en formatos útiles como informes de gestión para utilizarlos como
apoyo a las actividades de gestión y la toma de decisiones.
Un sistema de apoyo a la toma de decisiones o de soporte a la decisión (DSS por sus siglas en
inglés) es un sistema basado en ordenadores destinado a ser utilizado por un gerente
particular o por un grupo de gerentes a cualquier nivel organizacional para tomar una decisión
en el proceso de resolver una problemática semiestructurada. Los sistemas de apoyo a la toma
de decisiones son un tipo de sistema computerizado de información organizacional que ayuda
al gerente en la toma de decisiones cuando necesita modelar, formular, calcular, comparar,
seleccionar la mejor opción o predecir los escenarios.
Los sistemas de apoyo a la toma de decisiones están específicamente diseñados para ayudar al
equipo directivo a tomar decisiones en situaciones en las que existe incertidumbre sobre los
posibles resultados o consecuencias. Ayuda a los gerentes a tomar decisiones complejas.
6. Sistemas de Información Ejecutiva
Los sistemas de información ejecutiva (EIS por sus siglas en inglés) proporcionan un acceso
rápido a la información interna y externa, presentada a menudo en formato gráfico, pero con
la capacidad de presentar datos básicos más detallados si es necesario. Los sistemas de
información ejecutiva proporcionan información crítica de una amplia variedad de fuentes
internas y externas en formatos fáciles de usar para ejecutivos y gerentes.
Un sistema de información ejecutiva proporciona a los altos directivos un sistema para ayudar
a tomar decisiones estratégicas. Está diseñado para generar información que sea lo
suficientemente abstracta como para presentar toda la operación de la empresa en una versión
simplificada para satisfacer a la alta dirección.
Ética: Mantener una conducta transparente, honesta y ocupada por el confort de todas
las personas con las que interactuamos.
No Descripción
Consultas / Informes
No Descripción
Almacenamiento
No Descripción
No Descripción
Procesamiento
Alias:
Referencia
s:
Alias:
Referencias
:
Nombre: Manejo de Records
Alias:
Referencia
s:
Alias:
Referencia
s:
Alias:
Referencia
s:
Alias:
Actores: Usuario del Sistema, Cliente
Referencias
:
Alias:
Referencias
:
Alias:
Referencias
:
Alias:
Descripción El usuario del sistema puede crear y asociar alergias con el record
: médico de un paciente. Puede modificar y eliminar sus datos.
Referencias:
1. Prototipo.
3. Desarrollo en espiral.
5. Modelo en cascada
PROTOTIPO
Su objetivo es entender los requisitos del usuario y trabajar para mejorar la calidad de
los mismos. Este modelo inicia con la recolección de requerimientos del cliente, con
base en estos se define el conjunto de objetivos para el software, se identifican los
requisitos conocidos y con base en estos se desarrolla rápidamente un prototipo o
maqueta que posteriormente evalúa el cliente utilizándolo y ayudando a refinar de
nuevo los requisitos del software a desarrollar; este proceso se seguirá repitiendo hasta
que el cliente quede satisfecho con el desarrollo del software (Salazar-Aguirre, y
otros, 2011). La Fig.1 muestra cómo se realiza el modelo de construcción de
prototipos, iniciando en el momento en que los analistas del sistema. (3)
Ventajas
Desventajas
1. Los compromisos en los requisitos son inevitables, por lo cual puede que el
software no cumpla las expectativas del cliente.
DESARROLLO EN ESPIRAL
1. Buena comunicación con los clientes a partir de que combina las ventajas de
prototipo y cascada.
2. Los clientes no esperan hasta el fin del desarrollo para utilizar el sistema.
Pueden empezar a usarlo desde el primer incremento.
5. Las partes más importantes del sistema son entregadas primero, por lo cual se
realizan más pruebas en estos módulos y se disminuye el riesgo de fallos. (3)
Desventajas
1. Cada incremento debe ser pequeño para limitar el riesgo y debe aumentar la
funcionalidad.
MODELO RAD
Ventajas
MODELO EN CASCADA
Ventajas
2. Facilita un nivel de satisfacción del cliente más elevado que otros enfoques.
Desventajas
3. Los problemas se dejan para su posterior resolución, lo que lleva a que estos
sean ignorados o corregidos de una forma poco elegante.
4. Existe una alta probabilidad de que el software no cumpla con los requisitos
del usuario por el largo tiempo de entrega del producto.
Los gestores de proyectos de software puede que tengan que realizar cualquiera de las
siguientes tareas:
Un artículo reciente publicado en Forbes sugiere que hay ocho formas de mejorar y
simplificar el proceso de gestión de proyectos de software; estas ocho sugerencias
incluyen: (4)
2. Motivar al equipo compartiendo los casos de éxito de otros, como los de los
gigantes tecnológicos, que inspirarán y entusiasmarán al equipo.
Como se dijo en la sección anterior, el más usado de todos los modelos ágiles de
proceso es la programación extrema (XP). Pero se han propuesto muchos otros y están
en uso en toda la industria. Entre ellos se encuentran los siguientes: (5)
El desarrollo adaptativo de software (DAS) fue propuesto por Jim Highsmith [Hig00]
como una técnica para elaborar software y sistemas complejos. Los fundamentos
filosóficos del DAS se centran en la colaboración humana y en la organización propia
del equipo. Highsmith argumenta que un enfoque de desarrollo adaptativo basado en
la colaboración es “tanto una fuente de orden en nuestras complejas interacciones,
como de disciplina e ingeniería”. Él define un “ciclo de vida” del DAS (véase la
figura 3.3) que incorpora tres fases: especulación, colaboración y aprendizaje. (5)
Scrum
Scrum (nombre que proviene de cierta jugada que tiene lugar durante un partido de
rugby)13 es un método de desarrollo ágil de software concebido por Jeff Sutherland y
su equipo de desarrollo a principios de la década de 1990. En años recientes,
Schwaber y Beedle [Sch01a] han desarrollado más los métodos Scrum. (5)
Los principios Scrum son congruentes con el manifiesto ágil y se utilizan para guiar
actividades de desarrollo dentro de un proceso de análisis que incorpora las siguientes
actividades estructurales: requerimientos, análisis, diseño, evolución y entrega. Dentro
de cada actividad estructural, las tareas del trabajo ocurren con un patrón del proceso
(que se estudia en el párrafo (5)
siguiente) llamado sprint. El trabajo realizado dentro de un sprint (el número de éstos
que requiere cada actividad estructural variará en función de la complejidad y tamaño
del producto) se adapta al problema en cuestión y se define —y con frecuencia se
modifica en tiempo real por parte del equipo Scrum. El flujo general del proceso
Scrum se ilustra en la figura 3.4. Scrum acentúa el uso de un conjunto de patrones de
proceso del software [Noy02] que han demostrado ser eficaces para proyectos con
plazos de entrega muy apretados, requerimientos cambiantes y negocios críticos. Cada
uno de estos patrones de proceso define un grupo de acciones de desarrollo: (5)
Alistar Cockburn [Coc05] creó la familia Cristal de métodos ágiles15 a fin de obtener
un enfoque de desarrollo de software que premia la “maniobrabilidad” durante lo que
Cockburn caracteriza como “un juego cooperativo con recursos limitados, de
invención y comunicación, con el objetivo primario de entregar software útil que
funcione y con la meta secundaria de plantear el siguiente juego” [Coc02]. (5)
Igual que otros proyectos ágiles, DIC adopta una filosofía que: 1) pone el énfasis en la
colaboración entre los integrantes de un equipo DIC; 2) administra la complejidad de
los problemas y del proyecto con el uso de la descomposición basada en las
características, seguida de la integración de incrementos de software, y 3) comunica
los detalles técnicos en forma verbal, gráfica y con medios basados en texto. El DIC
pone el énfasis en las actividades de aseguramiento de la calidad del software
mediante el estímulo de la estrategia de desarrollo incremental, el uso de inspecciones
del diseño y del código, la aplicación de auditorías de aseguramiento de la calidad del
software (véase el capítulo 16), el conjunto de mediciones y el uso de patrones (para
el análisis, diseño y construcción). (5)
Desarrollo esbelto de software (DES)
Hay muchas situaciones en las que los ingenieros de software deben construir
sistemas grandes de importancia crítica para el negocio. El alcance y complejidad de
tales sistemas debe modelarse de modo que: (5)
1. todos los actores entiendan mejor cuáles son las necesidades que deben
satisfacerse,
2. el problema pueda dividirse con eficacia entre las personas que deben
resolverlo, y
3. se asegure la calidad a medida que se hace la ingeniería y se construye el
sistema. (5)
6. Programación orientada a objetos
El primer paso en POO es recopilar todos los objetos que un programador desea
manipular e identificar cómo se relacionan entre sí, un ejercicio que a menudo se
conoce como modelado de datos.
Los ejemplos de un objeto pueden variar desde entidades físicas, como un ser humano
que se describe por propiedades como nombre y dirección, hasta pequeños programas
informáticos, como widgets.
Principios de POO
● Abstracción. Los objetos sólo revelan mecanismos internos que son relevantes
para el uso de otros objetos, ocultando cualquier código de implementación
innecesario. Este concepto ayuda a los desarrolladores a realizar cambios y
adiciones más fácilmente a lo largo del tiempo.
● Herencia. Se pueden asignar relaciones y subclases entre objetos, lo que permite a
los desarrolladores reutilizar una lógica común sin dejar de mantener una jerarquía
única. Esta propiedad de POO obliga a un análisis de datos más completo, reduce
el tiempo de desarrollo y asegura un mayor nivel de precisión.
● Polimorfismo. Los objetos pueden adoptar más de una forma según el contexto.
El programa determinará qué significado o uso es necesario para cada ejecución
de ese objeto, reduciendo la necesidad de duplicar código.
● Java
● JavaScript
● Python
● C++
● Ruby
● Scala
● PHP
6.1. Lenguaje de Programación a Utilizar en el
Proyecto JAVA
El lenguaje Java es un derivado del lenguaje C, por lo que sus reglas de sintaxis
se parecen mucho a C: por ejemplo, los bloques de códigos se modularizan en
métodos y se delimitan con llaves ({ y }) y las variables se declaran antes de que
se usen.
Son medidas cuantitativas que permiten a los ingenieros de software obtener una
visión de la eficacia del proceso de software y los proyectos que llevan a cabo
utilizando el proceso como marco de trabajo.
Para mejorar el proceso, se miden sus atributos específicos .Hay que destacar que el
proceso es sólo uno de varios factores controlables en la mejora de la calidad del
software y el desempeño organizacional.
Las métricas del proceso de software ofrecen beneficios significativos conforme una
organización trabaja en mejorar su grado de madurez del proceso. Sin embargo, como
todas las métricas éstas pueden emplearse mal y crear más problemas de los que
solucionan.
proyectos de software
tradicional en que los proyectos de software tienen un proceso de ciclo de vida único que
de los proyectos relacionados con TI se gestionan al estilo Agil, para seguir el ritmo cada vez
más rápido del negocio e iterar en función de los comentarios de los clientes y las partes
interesadas.
Los gestores de proyectos de software puede que tengan que realizar cualquiera de las
siguientes tareas:
mantenimiento.
del proyecto y las supervisará. Esto incluye el seguimiento del progreso, los controles
pruebas constantes del producto para descubrir y corregir pronto los errores, ajustar el
producto final a las necesidades del cliente y mantener el proyecto bien encaminado.
● Liberar al equipo del trabajo que no es de desarrollo para permitir que se centre en
el desarrollo
● Motivar al equipo compartiendo los casos de éxito de otros, como los de los
https://www.figma.com/proto/amHD3lZwAGhxCUQiVYp9Fj/Untitled?node-id=0%3A1
&scaling=min-zoom&page-id=0%3A1&starting-point-node-id=2%3A2&show-proto-sid
ebar=1
CONCLUSIONES Y RECOMENDACIONES
CONCLUSIONES
cumplimiento de citas médicas tanto para médicos como para pacientes, evitando
tiempo que le tomaría esperando en la línea telefónica hasta que le asignen una cita o
RECOMENDACIONES
seguridad, las personas que tengan acceso al sitio como administradores deberán ser
● Hoy en día se deberían implementar soluciones de este tipo para otros servicios