Proyecto aplicado del curso ISW-524 Diseño de Arquitectura de Software (II–2026).
| Campo | Detalle |
|---|---|
| Carrera | Ingeniería del Software |
| Profesor | Mgt. Karlinna Chaves González |
| Grupo | 02 – Lunes |
| Stack | C# / .NET Framework 4.8 / WinForms / SQL Server (LocalDB) |
Implementar un sistema de administración de condominios con arquitectura N-Capas, patrones de diseño y persistencia en SQL Server.
Núcleo del negocio implementado:
- Arquitectura N-Capas (UI, BLL, DAL, Entities, DTO, Interfaces, Utils)
- CRUD de propiedades y residentes/propietarios
- Cálculos financieros (cuota, fondo de reserva, mora, penalizaciones, índice de riesgo)
- Facturación parcial (cuotas ordinarias)
- Base de datos física con tablas, constraints y procedimientos almacenados
- Patrones DAO, DTO, Factory, Facade y Singleton
- UML actualizado (clases y secuencias) en
docs/Avance2/UML/
Pendiente para avances posteriores: reservas, control de acceso, reportes, facturación completa y dashboard.
UI (WinForms)
→ BLL (servicios, Facade, Factory)
→ DAL (DAO + Singleton de conexión)
→ SQL Server / LocalDB (CondominioDB)
Proyectos en src/:
| Proyecto | Rol |
|---|---|
CondominioUI |
Interfaz WinForms |
CondominiBLL |
Lógica de negocio |
CondominioDAL |
Acceso a datos |
CondominioEntities |
Entidades de dominio |
CondominioDTO |
Objetos de transferencia |
CondominioInterfaces |
Contratos |
CondominioUtils |
Validaciones y utilidades |
- Visual Studio 2022 (o build tools / MSBuild)
- SQL Server LocalDB o SQL Server Express
- (Opcional) SSMS o Azure Data Studio
git clone https://github.com/Kend07/ProyectoArqui
cd ProyectoArquiEn sqlcmd o SSMS / Azure Data Studio, contra el servidor (localdb)\MSSQLLocalDB, ejecutar en este orden:
sqlcmd -S "(localdb)\MSSQLLocalDB" -E -i "scripts\CreateDatabase.sql"
sqlcmd -S "(localdb)\MSSQLLocalDB" -E -i "scripts\PropiedadProcedures.sql"
sqlcmd -S "(localdb)\MSSQLLocalDB" -E -i "scripts\ResidenteProcedures.sql"
sqlcmd -S "(localdb)\MSSQLLocalDB" -E -i "scripts\FacturaProcedures.sql"En Azure Data Studio: servidor (localdb)\MSSQLLocalDB, autenticación Windows, base CondominioDB, cifrado opcional y “confiar en el certificado del servidor” activado.
Con Visual Studio: abrir CondominioSolution.sln y compilar (Ctrl+Shift+B).
Con MSBuild (PowerShell):
cd "C:\Users\Usuario\Documents\Arquitectura\ProyectoArqui\ProyectoArqui"
& "C:\Program Files\Microsoft Visual Studio\18\Insiders\MSBuild\Current\Bin\MSBuild.exe" CondominioSolution.sln /t:Build /p:Configuration=DebugSi usas Visual Studio 2022 Community, la ruta típica es:
& "${env:ProgramFiles}\Microsoft Visual Studio\2022\Community\MSBuild\Current\Bin\MSBuild.exe" CondominioSolution.sln /t:Build /p:Configuration=Debugcd "C:\Users\Usuario\Documents\Arquitectura\ProyectoArqui\ProyectoArqui"
.\src\CondominioUI\bin\Debug\CondominioUI.exeAl iniciar:
- Servidor:
(localdb)\MSSQLLocalDB - Probar conexión
- Conectar
Datos de prueba: propiedades 101 y 102; propietarios con IDs 1 y 2.
ProyectoArqui/
├── CondominioSolution.sln
├── README.md
├── src/
│ ├── CondominioUI/
│ ├── CondominiBLL/
│ ├── CondominioDAL/
│ ├── CondominioEntities/
│ ├── CondominioDTO/
│ ├── CondominioInterfaces/
│ └── CondominioUtils/
├── scripts/
│ ├── CreateDatabase.sql
│ ├── PropiedadProcedures.sql
│ ├── ResidenteProcedures.sql
│ ├── FacturaProcedures.sql
│ └── MigrateAvance2.sql
└── docs/
├── Avance1/
└── Avance2/
├── ChecklistAvance2.md
├── UML/DiagramasUML.md
└── Patrones/EvidenciaPatrones.md
- DAO — acceso a datos vía procedimientos almacenados
- DTO — transferencia entre capas
- Factory —
ServicioFactorycrea servicios y DAOs - Facade —
CondominioFacadeunifica el acceso desde la UI - Singleton —
DatabaseConnectionpara la cadena de conexión
- Avance 1:
docs/Avance1/ - Avance 2 (checklist, UML, patrones):
docs/Avance2/
Última actualización: 2026-07-29
Estado: Avance 2 — núcleo del negocio implementado