El documento introduce el tema de la ingeniería de software. Define la ingeniería de software como el desarrollo sistemático, disciplinado y cuantificable de software. Explica que la ingeniería de software implica el desarrollo de múltiples versiones de software por equipos de ingenieros para hacer frente a la complejidad. Finalmente, destaca que la ingeniería de software se basa en la lógica y las matemáticas, a diferencia de otras ingenierías que se basan en la física.
¿Qué diferencia hay entre los Desarrolladores y los Programadores?
Las Tecnologías de la Información y Comunicaciones (TICs), no son un fin por si mismas. Su valor lo dan aquellos quienes las aprovechan.
Un Desarrollador ha desarrollado las competencias laborales y profesionales, para enfocarse en la creación de ese valor.
En la práctica, es un equipo de personas, a quienes podemos agrupar bajo la sombrilla de "Desarrollador", quienes hacen posible la entreva de productos y servicios de valor.
¿De que denemos estar conscientes para acelerar nuestra transición de programadores a desarrolladores?, además, ¿en dónde o cómo se aprende hacer eso?
Es necesario comprender los retos no explicitos que tiene la creación de soluciones de valor. El descubrir todo lo que se necesita, y al mismo tiempo se desconoce, para hacer dicha entrega.
Cada proyecto tiene retos y riesgos diferentes, pero estos cambian, dependiendo del equipo que llevará a cabo el proyecto, la manera en que realiza el proyecto y cómo se gestionan los restos y los riesgos.
Entre más temprano estemos conscientes de "todo lo que que hay que valorar y tener en cuenta", será más fácil, que los proyectos futuros implican apredizajes en extremo rudos.
¿Qué diferencia hay entre los Desarrolladores y los Programadores?
Las Tecnologías de la Información y Comunicaciones (TICs), no son un fin por si mismas. Su valor lo dan aquellos quienes las aprovechan.
Un Desarrollador ha desarrollado las competencias laborales y profesionales, para enfocarse en la creación de ese valor.
En la práctica, es un equipo de personas, a quienes podemos agrupar bajo la sombrilla de "Desarrollador", quienes hacen posible la entreva de productos y servicios de valor.
¿De que denemos estar conscientes para acelerar nuestra transición de programadores a desarrolladores?, además, ¿en dónde o cómo se aprende hacer eso?
Es necesario comprender los retos no explicitos que tiene la creación de soluciones de valor. El descubrir todo lo que se necesita, y al mismo tiempo se desconoce, para hacer dicha entrega.
Cada proyecto tiene retos y riesgos diferentes, pero estos cambian, dependiendo del equipo que llevará a cabo el proyecto, la manera en que realiza el proyecto y cómo se gestionan los restos y los riesgos.
Entre más temprano estemos conscientes de "todo lo que que hay que valorar y tener en cuenta", será más fácil, que los proyectos futuros implican apredizajes en extremo rudos.
Trta sobre una exposicion realiza para mis companieros de la universidad, el tema es sobre como evoluciono la ingenieria de software, espero que les sirva
El diseño es definido como tanto “El proceso de definir la arquitectura, la componentes, interfaces, y las otras características de un sistema o componente” como “El resultado de [eso] se procesa.” Visto como un proceso, el diseño de software es la actividad de ciclo de vida de ingeniería de software en la que los requerimientos de software son analizados para causar una descripción de la estructura interna del software que servirá como base para su construcción. Más precisamente, un diseño de software (el resultado) debe describir la arquitectura de software – es decir cómo el software está en estado de descomposición y organizado en los componentes – y las interfaces entre esos componentes. También debe describir los componentes en un nivel del detalle que permiten su construcción.
El diseño de software tiene un papel importante en el desarrollo de software, ya que permite que ingenieros de software produzcan modelos distintos que moldean una clase de plano de la solución a ser implementado. Podemos analizar y valorar a estos modelos para determinar cuál de estos permitirá o no, cumplir con una gama de requerimientos.
Trta sobre una exposicion realiza para mis companieros de la universidad, el tema es sobre como evoluciono la ingenieria de software, espero que les sirva
El diseño es definido como tanto “El proceso de definir la arquitectura, la componentes, interfaces, y las otras características de un sistema o componente” como “El resultado de [eso] se procesa.” Visto como un proceso, el diseño de software es la actividad de ciclo de vida de ingeniería de software en la que los requerimientos de software son analizados para causar una descripción de la estructura interna del software que servirá como base para su construcción. Más precisamente, un diseño de software (el resultado) debe describir la arquitectura de software – es decir cómo el software está en estado de descomposición y organizado en los componentes – y las interfaces entre esos componentes. También debe describir los componentes en un nivel del detalle que permiten su construcción.
El diseño de software tiene un papel importante en el desarrollo de software, ya que permite que ingenieros de software produzcan modelos distintos que moldean una clase de plano de la solución a ser implementado. Podemos analizar y valorar a estos modelos para determinar cuál de estos permitirá o no, cumplir con una gama de requerimientos.
Ponencia en I SEMINARIO SOBRE LA APLICABILIDAD DE LA INTELIGENCIA ARTIFICIAL EN LA EDUCACIÓN SUPERIOR UNIVERSITARIA. 3 de junio de 2024. Facultad de Estudios Sociales y Trabajo, Universidad de Málaga.
LA PEDAGOGIA AUTOGESTONARIA EN EL PROCESO DE ENSEÑANZA APRENDIZAJEjecgjv
La Pedagogía Autogestionaria es un enfoque educativo que busca transformar la educación mediante la participación directa de estudiantes, profesores y padres en la gestión de todas las esferas de la vida escolar.
IMÁGENES SUBLIMINALES EN LAS PUBLICACIONES DE LOS TESTIGOS DE JEHOVÁClaude LaCombe
Recuerdo perfectamente la primera vez que oí hablar de las imágenes subliminales de los Testigos de Jehová. Fue en los primeros años del foro de religión “Yahoo respuestas” (que, por cierto, desapareció definitivamente el 30 de junio de 2021). El tema del debate era el “arte religioso”. Todos compartíamos nuestros puntos de vista sobre cuadros como “La Mona Lisa” o el arte apocalíptico de los adventistas, cuando repentinamente uno de los participantes dijo que en las publicaciones de los Testigos de Jehová se ocultaban imágenes subliminales demoniacas.
Lo que pasó después se halla plasmado en la presente obra.
Documento sobre las diferentes fuentes que han servido para transmitir la cultura griega, y que supone la primera parte del tema 4 de "Descubriendo nuestras raíces clásicas", optativa de bachillerato en la Comunitat Valenciana.
ROMPECABEZAS DE ECUACIONES DE PRIMER GRADO OLIMPIADA DE PARÍS 2024. Por JAVIE...JAVIER SOLIS NOYOLA
El Mtro. JAVIER SOLIS NOYOLA crea y desarrolla el “ROMPECABEZAS DE ECUACIONES DE 1ER. GRADO OLIMPIADA DE PARÍS 2024”. Esta actividad de aprendizaje propone retos de cálculo algebraico mediante ecuaciones de 1er. grado, y viso-espacialidad, lo cual dará la oportunidad de formar un rompecabezas. La intención didáctica de esta actividad de aprendizaje es, promover los pensamientos lógicos (convergente) y creativo (divergente o lateral), mediante modelos mentales de: atención, memoria, imaginación, percepción (Geométrica y conceptual), perspicacia, inferencia, viso-espacialidad. Esta actividad de aprendizaje es de enfoques lúdico y transversal, ya que integra diversas áreas del conocimiento, entre ellas: matemático, artístico, lenguaje, historia, y las neurociencias.
2. Ing. Daniel Enrique Mendoza Gutiérrez
Ingeniería de software
Sebastián Ripalda
¿Qué es la Ingeniería de Software?
Nato1968 (organización de tratado del atlántico norte)
para que algo sea calificado en ingeniería de software tiene que tener enfoque sistemático,
disciplinado y cuantificable del desarrollo operación y mantenimiento de software. Al decir
disciplinado quiere decir que se que el equipo de desarrollo se mantiene dentro de ciertas reglas de
desarrollo y cuantificable significa que cada progreso cada tarea se puede medir se puede
cuantifica algo parecido a un numero no tan preciso, pero se intenta determinar el avance o el
retroceso o falta de avance en el proyecto.
Parnas1978(Investigador norteamericano)
La construcción de múltiples versiones de un software llevada a cabo por múltiples personas.
Quiere decir que un programa que hacemos nosotros solos una vez no seria el objeto del estudio
se requeriría un equipo de gente que no solo desarrollan una sola versión sino varias versiones, al
hablar de varias versiones no hablamos del desarrollo si no también del mantenimiento lo. Y si es
desarrollados por varias personas el desarrollo es desierta envergadura.
Ghezzi 1991
Construcción de software de una envergadura o complejidad de tales que debe ser
construido por equipos de ingenieros.
3. Ing. Daniel Enrique Mendoza Gutiérrez
Ingeniería de software
Sebastián Ripalda
¿Qué es la Ingeniería de Software?
Jackson 1998
La ingeniería Tradicional es altamente especializada y se basa e colecciones de deseos
estándar o normalizados ¿Hay especialidades en la informática o cualquiera hace cualquier
cosa? ¿Se basa la producción de software en diseños estándar? ¿Puede?
Dice que una persona puede desarrollar cualquier tipo de programa en cualquier contexto y
cualquier circunstancia formarse en una área del desarrollo de ingeniería de software
4. Sebastián Ripalda
Ing. Daniel Enrique Mendoza Gutiérrez
Ingeniería de software
¿Qué es lo que hace un Ing. de
software?
No construye el hardware, sino el comportamiento y las propiedades que lo
harán útil para algo especifico.
Desarrollar programas que hace una máquina de propósito general en una
maquina en propósitos específicos.
También el ing de software documenta descripciones de ese software.
Escribir lo que uno esta haciendo diferentes documentos sobre el
programa que se está desarrollando el código fuente es una de la
descripción que debería describir no la única. Es escribir diferentes
descripciones que nos dan diferentes visiones sobre el programa que se
esta desarrollando.
También es verificar las descripciones, es verificar que esa descripción
cumples ciertas propiedades.
5. Sebastián Ripalda Ing. Daniel Enrique Mendoza Gutiérrez
Ingeniería de software
¿Cuáles son las descripciones
fundamentales?
Requerimientos. - una descripción en el lenguaje natural español, inglés, de lo que
el software debería hacer de las restricciones bajo las cuales debería ejecutarse
Especificaciones. – Es básicamente una descripción formal de lo que el programa
debería hacer esta escrita en una notación matemática en alguna forma lógica
que no es exactamente un código fuente que tampoco que es el lenguaje de los
humanos.
Diseño.- Es dividir el programa en partes de manera tal que se puede desarrollar
cada parte de manera independiente de las de mas y después poder integrar las
partes para que funcionen como un todo la idea es no escribir un programa
monolítico donde escribimos el programa en una sola función en una sola clase
si no que se lo divide en partes para poder desarrollar cada parte independiente
a las demás para poner un desarrollador a cada parte para si a cortar los plazos
de desarrollo si no también el diseño es importante para poder dominar la
complejidad de todo un programa. Para que sea fácil de desarrollar fácil de
entender.
6. Sebastián Ripalda
Ing. Daniel Enrique Mendoza Gutiérrez
Ingeniería de software
¿Que debe saber un ingeniero de
software?
Dominar a fondo las técnicas de descripción, dominar los lenguajes formales, pero debería dominar otros
lenguajes formales que no son ejecutables pero que nos ayudan a describir programas mas
refinadas
Moverse en distintos modelos de abstracción, debe ser capas de ver un software como un conjunto de
requerimientos también debe ser capas de ver un software como una especificación en matemáticas
o en lógica y debe ser capas de describir programas en lenguajes formales y capas de verificar
propiedades de esos modelos.
Documentar y validar los requerimientos del usuario
Escribir un modelo abstracto semiformal del diseño es decir descomponer el programa en diferentes
partes que va a desarrollar independientes de las demás que algún momento las va a integrar a un
programa completo
Debe ser capas de escribir una especificación funcional abstracta y formal del programa es decir una
fórmula de matemática que representa al programa, aunque esta fórmula de matemáticas no sea
ejecutable y finalmente debe ser capas de ver que el programa satisface el diseño y la especificación
funcional.
7. Sebastián Ripalda
Ing. Daniel Enrique Mendoza Gutiérrez
Ingeniería de software
¿Dónde están las dificultades al
desarrollar software?
La parte difícil de desarrollar de software es especificarlo, diseñarlo y verificarlo y no la
programación y así la programación también se les hace difícil por que no han hecho una
especificación y un diseño como deberían hacerlo, lo difícil para desarrollar software es
saber que hay que programar y como dividirlo en pequeñas partes para dominar su
complejidad y no en la tarea de programar esas pequeñas partes una vez saben lo que
hay que programar y lo hacen bien y rápidamente.
8. Sebastián Ripalda Ing. Daniel Enrique Mendoza Gutiérrez
Ingeniería de software
¿Dónde están las dificultades al
desarrollar software?
La parte difícil de desarrollar de software es especificarlo, diseñarlo y verificarlo y no la
programación y así la programación también se les hace difícil por que no han hecho una
especificación y un diseño como deberían hacerlo, lo difícil para desarrollar software es
saber que hay que programar y como dividirlo en pequeñas partes para dominar su
complejidad y no en la tarea de programar esas pequeñas partes una vez saben lo que
hay que programar y lo hacen bien y rápidamente.
9. Sebastián Ripalda
Ing. Daniel Enrique Mendoza Gutiérrez
Ingeniería de software
¿Por que es esencialmente diferentes
a las otras ingenierías?
La ingeniería de software es esencialmente a las otras por que la base teórica de la
ingeniería de software es la lógica formal la programación es una forma de lógica por lo
tanto lo que subyace a la ingeniería de software basada en la lógica o en la matemática y
no una ciencia basada en la física por que las otras ingenierías están de una u otra
forma basadas en las físicas eso hace que haya una diferencia importante la lógica y la
matérica son o que se llama ciencia formales la física, la geología la química son
ciencias fácticas.
Unas de las cuestiones que hace que emerge de estas diferencias entre el problema y la
solución en mayor parte de las ingenierías lo difícil dado un problema encontrar la
solución mas adecuada en la ingeniera de software en cambio lo difícil es determinar el
problema no tanto determinar la solución.
10. Sebastián Ripalda
Ing. Daniel Enrique Mendoza Gutiérrez
Ingeniería de software
¿Qué son los métodos formales?
Son lenguajes, técnicas, herramientas basadas en la matemática y/o lógica para describir y
verificar sistemas
¿Qué comprenden los métodos
formales ?
Lenguajes de especificaciones formal
Verificación de modelos
Prueba de teoremas de forma automática y de forma asistida
Testing basados en modelos no el tradicional sino partiendo de un modelo formal del
programa
Calculo de refinamiento consiste en dada una formula no ejecutable que representa un
programa tratar de refinarla para ir convirtiéndola de madera controlada en un programa que
sea ejecutable
11. Sebastian Ripalda
Ing. Daniel Enrique Mendoza Gutiérrez
Ingeniería de software
¿Qué son los lenguajes de
especificación formal?
Tiene una sintaxis formal y estandarizada
Una semántica formal descripta en términos operativos denotaciones o lógicos
Un aparato deductivo que permite demostrar teoremas a partir de formulas en ese lenguaje
Los lenguajes de especificación formal se usan casi siempre para escribir la especificación
funcional de un programa