Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CAMPUS GLOBAL
CLASE
DESARROLLO DE SOFTWARE
CATEDRATICO
TEMA
AVANCE SEMANA 2
ALUMNOS
SECCIÓN
0802
FECHA DE ENTREGA
28 de enero de 2022
Semana 1 (Creación del Grupo)
Respaldo: Servicios en Nube y GitHub asignados a una hora especifica, realizados día
de por medio.
Esquema de Distribución
Investigación tecnológica:
Escáner de Códigos de Barra
Es un dispositivo electrónico que por medio de un láser lee el código de barras y emite
el número que muestra el código de barras, no la imagen. Básicamente, consiste en el
escáner propiamente dicho (que mediante un láser lee el código), un decodificador y un
cable o antena wifi que actúa como interfaz entre el decodificador y el terminal o la
computadora.
La función del escáner es leer el símbolo del código de barras y proporcionar una salida
eléctrica a la computadora, correspondiente a las barras y espacios del código de barras.
Sin embargo, es el decodificador el que reconoce la simbología del código de barras,
analiza el contenido del código de barras leído y transmite dichos datos a la
computadora en un formato de datos tradicional. Tiene varios medios de conexión: los
más modernos por orden de aparición USB, bluetooth, wifi, los más viejos puerto serie,
incluso directamente al puerto PS2 del teclado por medio de un adaptador, cuando se
pasa un código de barras por el escáner es como si se hubiese escrito en el teclado el
número del código de barras.
Interoperabilidad
Amigabilidad con Internet
Interfaces fuertemente tipadas
Posibilidad de aprovechar los estándares de Internet existentes
Soporte para cualquier lenguaje
Soporte para cualquier infraestructura de componente distribuida
WCF
WCF es un modelo de programación para el desarrollo de aplicaciones con arquitectura
orientada a servicios (SOA). Aplicaciones distribuidas basadas en la comunicación
mediante mensajes.
Principales Características
Servicios: Son aplicaciones que esperan los mensajes de los clientes y responden a los
mismos.
Los mensajes son enviados entre endpoints. Un endpoint (veremos más adelante un
poco más detallado este concepto ) es un lugar donde un mensaje es enviado, o recibido,
o ambos.
Aplicaciones Peer-to-Peer
Una red P2P o 'peer to peer' es un tipo de conexión con una arquitectura destinada a la
comunicación entre aplicaciones. Esto permite a las personas o a los ordenadores
compartir información y archivos de uno a otro sin necesidad de intermediarios. El
origen de esta red tal y como la conocemos hoy en día se remonta a 1999, cuando
Internet comenzaba su expansión y aterrizaba en los hogares. En mayo de ese año, un
programador estadounidense que tenía problemas para encontrar la música que quería,
Shawn Fanning, creó Napster, una aplicación virtual para compartir archivos .mp3 entre
usuarios totalmente independiente de una red física.
WPF
Windows Presentation Foundation (WPF) es una tecnología de Microsoft, presentada
como parte de Windows Vista. Permite el desarrollo de interfaces de interacción en
Windows tomando características de aplicaciones Windows y de aplicaciones web.
WPF ofrece una amplia infraestructura y potencia gráfica con la que es posible
desarrollar aplicaciones visualmente atractivas, con facilidades de interacción que
incluyen animación, vídeo, audio, documentos, navegación o gráficos 3D. Separa, con
el lenguaje declarativo XAML y los lenguajes de programación de .NET, la interfaz de
interacción de la lógica del negocio, propiciando una arquitectura Modelo Vista
Controlador para el desarrollo de las aplicaciones. WPF se incluye a partir de Windows
Vista y también está disponible para Windows XP Service Pack 2 o posterior y
Windows Server 2003, se puede utilizar la tecnología de Microsoft Silverlight es un
subconjunto de WPF que permite crear aplicaciones similares a Flash para web y
móviles, con el mismo modelo de programación que las aplicaciones .NET. No admite
funciones 3D, pero permite XPS y planos basados en vectores
GitHub
En resumen, GitHub es un servicio basado en la nube que aloja un sistema de control de
versiones (VCS) llamado Git. Éste permite a los desarrolladores colaborar y realizar
cambios en proyectos compartidos, a la vez que mantienen un seguimiento detallado de
su progreso.
Una de las herramientas más importantes con las que cuenta GitHub son los
repositorios, un repositorio se utiliza normalmente para organizar un solo proyecto. Los
repositorios pueden contener carpetas y archivos, imágenes, vídeos, hojas de cálculo y
conjuntos de datos, cualquier cosa que tu proyecto necesite. A menudo, los repositorios
incluyen un archivo README, un archivo con información sobre tu proyecto. GitHub
hace que sea fácil añadir uno al mismo tiempo que creas tu nuevo repositorio. También
ofrece otras opciones comunes, como un archivo de licencia.
Lenguaje de Programación
Se utilizará una “Clase” para la conexión la cual contendrá una variable tipo cadena.
Semana 1 (Documento del Proyecto)
El proyecto a realizar consta de un sistema destinado para su uso en una librería ubicada
en Siguatepeque, Comayagua. Consta con la capacidad de almacenar y automatizar
diferentes módulos de la biblioteca como ser el Inventario, las Ventas, los Encargos y
las Metas a alcanzar existentes entre el personal de la tienda. La meta principal del
proyecto es facilitar las tareas realizadas a diario en la librería ya que esta no cuenta con
ningún tipo de servicio automatizado.
Descripción de Usuario e Interesados
Frecuente Riesgo 2
Probable Riesgo 5
IMPACTO
Plan de mitigación
Respaldo en la nube, GitHub en donde todos los integrantes tengan acceso.
(Riesgo 1)
Dispositivos cargados adecuadamente, movilización a áreas donde no tengan
fallas en el suministro de servicios públicos.(Riesgo 2)
Buena comunicación entre los integrantes del equipo.(Riesgo 3)
Coordinar adecuadamente cada actividad. (Riesgo 4)
Explorar cada tecnología-herramienta nueva que pensemos implementar en
nuestro trabajo. (Riesgo 5)
Apoyarnos y animarnos unos a otros, cuando se trata de equipos de trabajo, la
motivación es un aspecto crucial a tener en cuenta y cuidar en los miembros de
un equipo, para obtener los mejores resultados posibles.(Riesgo 6)
Analizar, planificar correctamente que diseño utilizaremos.(Riesgo 7)
Gestionar y analizar debidamente, para lograr una planificación y control
adecuado.(Riesgo 8)
CRUD: Son las iniciales de Create, Read, Update, Delete que en español significan
Crear, Leer, Actualizar, Eliminar. CRUD es un Paradigma usado en la mayoría de
procesos de una aplicación.
Desarrollador Móvil: Los desarrolladores móviles crean apps para celulares o tablets
para sistemas operativos como Android o iOS. Los desarrolladores de aplicaciones para
iOS trabajan con el lenguaje de programación Swift. Mientras que los desarrolladores
móviles para Android trabajan con Kotlin o Java.
Acrónimos
Diseñador UI/UX:Para entender este perfil, primero debemos de entender qué
significan sus acrónimos. UI significa User Interface (o Interfaz de usuario), es lo que el
usuario puede ver en una aplicación. Mientras que UX es User Experience (o
Experiencia de Usuario) y es lo que el usuario siente cuando usa una aplicación. Un UI
Designer diseña cómo se va a ver la página web o app en todos los dispositivos como
computadora, celular y tablet. Son perfiles con bases fuertes en diseño, hacen que la
aplicación se vea bien. Ellos deciden dónde va a ir la barra de búsqueda, donde van a
estar los botones, el color de fondo de una sección, los iconos que se van a usar en la
página, el color de los enlaces, entre otros elementos de diseño.
GUI: Es la abreviatura de Graphic User Interface o interfaz gráfica de usuario.Es
cualquier artefacto gráfico que permite a los usuarios interaccionar con una aplicación
usando iconos, botones, indicadores visuales, etc. en contraste con las interfaces más
tradicionales basadas en texto, o las más avanzadas actualmente basadas en la voz o en
la interacción mediante movimientos.
WYSIWYG: Este se utiliza para describir cualquier sistema que permite crear algún
contenido viendo al mismo tiempo cómo va a quedar cuando esté funcionando. El caso
más habitual es un editor de texto enriquecido en el cual, a medida que escribimos,
vemos exactamente cómo quedará el resultado final cuando lo vayamos a imprimir o
convertir a un formato transportable. Un buen ejemplo sería un editor como Microsoft
Word o Google Documents.Su significado es "What You See is What You Get" ("Lo
que ves es lo que obtienes", en español), y se pronuncia "guaysigüij".
API: Se refiere a las interfaces de programación de aplicaciones o Application
Programming Interfaces. Es cualquier conjunto de funciones y métodos que se exponen
por parte de un programador para que lo utilicen otros programadores, bien
referenciando directamente una biblioteca o bien exponiéndolo a través de algún
protocolo (por ejemplo HTTP para acceder a través de internet), etc...Una característica
importante de una API es que es independiente de la implementación que haya debajo.
Es decir, una API es como una caja negra para el programador que la usa, de modo que
mientras no cambie la parte expuesta, lo que se haga por debajo y cómo se haga es
indiferente.
OOP o POO: Este es uno de los pocos acrónimos que se traducen y se usan en su
versión en español. Se trata de la Programación Orientada a Objetos (POO) o en inglés
Object Oriented Programming (OOP). Es necesario conocer ambos pues se usan
habitualmente.Se refiere a un paradigma de programación en el que el código se crea
definiendo "objetos" que simulan objetos reales y su comportamiento e interaccionan
con otros objetos.La POO se basa en varios principios que todo lenguaje debe cumplir
para trabajar con objetos, como son la encapsulación, la herencia y el polimorfismo.La
mayoría de los lenguajes de programación modernos incluyen la POO entre los
paradigmas que soportan.
SCM o VCS: Ningún programador que se precie debería trabajar sin usar un sistema de
control de código fuente o Source Control Management, también conocido por Version
Control System (sistema de control de versiones). Verás por ahí que se utilizan
indistintamente los dos términos, pero en ambos casos se refieren a lo mismo. Se trata
de un sistema que permite almacenar el código fuente de los programas así como
cualquier otro archivo relacionado que utilicemos, y monitoriza y guarda todos los
cambios y versiones diferentes de cada archivo que se hayan guardado explícitamente.
TDD: Este término se refiere al desarrollo guiado por pruebas o Test Driven
Development.Un desarrollo guiado por pruebas implica testear/probar todo el código
que escribes para asegurar que funciona, que cubre todos los casos y que no interfiere
con otras partes de la aplicación que en principio puede que no hubieras tenido en
cuenta.
UX: Es un término utilizado para el nivel de satisfacción del usuario cuando utiliza un
producto o sistema, así como su interacción con el mismo. Tradicionalmente, este
término se aplicaba a los sistemas informáticos y en particular al diseño de páginas web
pero hoy en día se ha visto ampliada a otros campos.
Los elementos que participan en la UX (Experiencia del Usuario) son el diseño visual,
el diseño de la interfaz, diseño de la navegación, diseño de la información, diseño de la
interacción, la arquitectura de la información, las especificaciones funcionales los
requerimientos de contenidos, las necesidades del usuario y los objetivos del sitio.
Exposición de la problemática que busca resolverse
El problema que se busca a resolver en este desarrollo de software para una biblioteca
es:
Que se tenga un mayor control en la biblioteca.
Saber la cantidad de “x” libros en stock.
Involucrar la tecnología hoy en día para una biblioteca.
Facilitar la búsqueda de los libros y saber su estado.
Que el SO sea eficiente y no tarde en cargar la información.
Trabajar con método de pago en línea.
Facilitar los libros no disponibles en la ciudad local.