Desarrollo e Implementación de Sistemas de Información
Consulte su calificación aquí
(ingrese su número de control y presione "Buscar", si su número de control empieza con la letra C, favor de omitir dicha letra)
Semana 9
Proyecto REST
Esta semana hacemos un proyecto REST en Spring Boot con los siguientes endpoints
GET en /pacientes
(Nos despliega un listado de pacientes)
POST en /pacientes
(ingresa un paciente)
Por cuestiones de organización, nuestro endpoint será api/pacientes
Miércoles 25 de marzo
Integraremos una página HTML como front-end que despliegue en una tabla el JSON del GET /pacientes.
(Práctica 3 parte 1)
Viernes 27 de marzo
Integraremos un formulario HTML como front-end para capturar los datos de un paciente y que sea ingresado en la BD. Para esto utilizaremos el método POST en /pacientes
(Práctica 3 parte 2)
Consulte Google Classroom para la segunda entrega. Recuerden que por equipo presentarán este avance el viernes 17 de abril


Semana 8
Introducción a Spring Boot
Es un framework de Java que agiliza y facilita el desarrollo de aplicaciones backend, con una mínima configuración y casi automática.
Como vimos en clase, viene un Tomcat incluido, que se inicia en el puerto 8080, y después podemos configurar nuestra aplicación usando una arquitectura REST, que significa que pondremos nuestras operaciones de la base de datos en términos de URL.
Recordemos que un URL representa un recurso. Estamos acostumbrados que este recurso es un documento HTML, PDF, imagen, etc. Pero ahora nuestro recurso serán prácticamente datos de la BD.
Ejercicio que hicimos en laboratorio:
Parte 1 – Crear proyecto en Spring Initializr
Entrar a: https://start.spring.io/
Configurar:
Project: Maven
Language: Java
Spring Boot: 3.5.x
Group: mx.ith
Artifact: practica1
Packaging: Jar
Java: 17
Agregar dependencias en Dependencies:
Spring Web
Generar archivo
Descargar archivo ZIP, descomprimir contenidos y abrir en NetBeans o VSCode
Vaya hasta el folder de su práctica src>java>mx>ith>practica1, y ahí encontrará el archivo Practica1Application.java
Edítelo con la anotación @RestController y poniendo un método anotado con GET, quedaría de la siguiente manera
package mx.ith.practica1;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.GetMapping;
@RestController
@SpringBootApplication
public class Practica1Application {
@GetMapping("/hola")
public String saludar(){
return "hola ITH desde Spring!";
}
public static void main(String[] args) {
SpringApplication.run(Practica1Application.class, args);
}
}
Abra una terminal en VSCode y ejecute el comando
./mvnw spring-boot:run
Verifique desde el navegador su aplicación una vez que se haya cargado el servidor (recuerde lo que comentamos en clase sobre saber leer los mensajes del log de Spring Boot, o cualquier servidor de aplicaciones. En los mensaje observará que se inició Tomcat en el puerto 8080)
http://localhost:8080/hola
Si le marca algún erro de versiones, actualice su JDK a versión 17 como mínimo.
Después de esto hicimos un modelo (clase Alumno) y un controlador. Pero eso ya lo aplicará en la práctica que hay que entregar para el día lunes 23 de marzo y que a continuación puede acceder. De cualquier manera si no hizo lo anterior, en la siguiente práctica lo va a hacer.
PRACTICA 2. Spring Boot
Semana 7
Mini práctica para empaquetar el acceso a los datos en un JAR.
Esta semana seguimos hablando del diagrama de actividades y diseñamos la arquitectura de nuestra aplicación, separando el acceso a los datos de la base de datos y de nuestra aplicación cliente. Al final podemos observar claramente 3 capas (BASE DE DATOS / JAR DE ACCESO A LOS DATOS / APLICACIÓN CLIENTE)


Semana 6 (Unidad 2)
Esta semana hablamos de los diagramas de actividad, los cuales son el siguiente paso en entender el flujo en la interacción entre usuario y sistema.
También hablamos de la definición del ambiente de progrmación. Utilizaremos Java para hacer las demostraciones. Vimos la historia de Java e hicimos una rápida demostración de cómo conectarnos a SQL Server utilizando una API llamada JDBC.
Práctica 1 de Unidad 2 (Conexión hacia SQL desde Java)
Suba su evidencia en Google Classroom
Semana 5
Examen en este link
Semana de evaluación y presentación de arquitecturas (primer avance del proyecto final)
Documentación empresa
Documento con Requisitos Funcionales / No Funcionales
Diagrama de Casos de Uso
Modelo de dominio
Modelo de datos
Temario para la evaluación
Evolución de los Sistemas de Información
Transaction Processing Systems (TPS)
Orientados a operaciones diarias.
Alto volumen de transacciones.
Ejemplos: ventas, pagos, registros de citas.
Enfoque: eficiencia y consistencia.
Management Information Systems (MIS)
Generan reportes a partir de datos del TPS.
Soporte para decisiones tácticas.
Ejemplo: reporte mensual de ventas.
Enterprise Resource Planning (ERP)
Integra múltiples áreas: finanzas, RH, inventarios.
Base de datos centralizada.
Flujo transversal de información.
Diferencia clave:
TPS = operación
MIS = análisis/reportes
ERP = integración empresarial
Modelado
Diagrama de Casos de Uso
Actor = Rol
Caso de uso = funcionalidad
Relacionado directamente con seguridad por roles.
Modelo de Dominio
Representa entidades conceptuales del negocio.
No incluye tipos de datos técnicos.
Incluye asociaciones y multiplicidades.
Modelo de Datos (Relacional)
Tablas
PK
FK
SQL Server
Data Definition
CREATE DATABASE
CREATE TABLE
ALTER TABLE
DROP
Integridad
PRIMARY KEY
FOREIGN KEY
Programación
Stored Procedures
Functions
Triggers
Seguridad
LOGIN → autenticación (instancia)
USER → autorización (base)
GRANT
Backup
FULL → copia completa
DIFFERENTIAL → cambios desde último FULL
SINGLE_USER → restauración
MULTI_USER → operación normal
Semana 4
Esta semana vimos seguridad básica en la base de datos: LOGINS y USERS.
Prática 3 en Google Classroom




Semana 3
Esta semana vimos Programación en la base de datos. Implementar lógica a través de queries reutilizables: Stored Procedures, Funciones y Triggers
Funciones (Functions / UDF)
Son objetos de la base de datos que devuelven un valor (número, texto o tabla).
Se usan para cálculos reutilizables dentro de consultas SELECT.
Ejemplo: calcular edad, total de citas, impuestos.
Stored Procedures (Procedimientos Almacenados)
Son programas almacenados en la base de datos que ejecutan acciones completas.
Se usan para INSERT, UPDATE, DELETE, validaciones y procesos del negocio.
Ejemplo: registrar paciente, agendar cita, cancelar cita.
Triggers (Disparadores)
Son programas que se ejecutan automáticamente cuando ocurre un evento en una tabla (INSERT, UPDATE, DELETE).
Se usan para auditoría, bitácoras y reglas críticas automáticas.
Ejemplo: registrar cambios en una tabla log o impedir eliminaciones.
Prática 2 en Google Classroom


Semana 2


Esta semana continuamos con nuestro análisis de Clinica Vida Sana.
De la entrevista salieron preguntas modelo como las siguientes:
¿Qué actividades realiza su área?
¿Cómo se hace actualmente?
¿Qué información se registra? (quién/dónde)
¿Qué errores existen y con qué frecuencia?
¿Qué le gustaría que el sistema hiciera?
¿Qué reportes necesita?
¿Quiénes usarán el sistema?
¿Qué información debe ser confidencial?
También formalmente definimos a un SI como un conjunto organizado de los elementos en una empresa u organización. Estos elementos son personas, datos, procesos, software, e infraestructura tanto del mismo negocio como de TI.
Iniciamos con el diagrama de casos de uso, modelo de dominio, y modelo de datos.
Práctica de Laboratorio (Utilizar un editor SQL en línea para crear nuestra base de datos a partir del modelo de datos y validarlo)


Esta semana hablamos de la evolución de los sistemas de información y de cómo pueden agregar valor a una empresa.
También vimos los pasos que deben seguirse para el desarrollo de un sistema de información:
1) Entrevista
2) Observación
3) Generación de documento de requisitos funcionales y no funcionales
4) Diagrama de casos de uso
Hay que unirse al Google Classroom y subir esta asignación ahí. Cualquier duda estamos a la orden