La programacion extrema es un enfoque de la ingenieria de software y es unos de los metodos mas destacado del enfoque de "Desarrollo agil de aplicaciones " que ha demostrado ser exitoso a lo largo del tiempo. La caracteristia principal de la programación extrema ante otras metodologías tradicionales es el enfoque a la adaptabilidad de los cambios imprevistos a lo largo del proceso de creacion de software. Los expertos consideran que los cambios en los requisitos sobre la marcha son un aspecto natural y hasta inevitable, (cerca del 95% de los requisitos iniciales de un proyecto son modificados antes de terminar un producto). La programacion extrema es capaz de adaptarse a los cambios de requisitos en cualquier punto de la vida del proyecto es una aproximación mejor y más realista que intentar definir todos los requisitos al comienzo del proyecto e invertir esfuerzos después en controlar los cambios en los requisitos.
La programacion extrema difine una serie de valores que se consideran fundamentales para llevar acabo este enfoque:
Comunicacion: La comunicacion es escencial en este enfoque y es importantes porque las causas de muchos problemas son una "mala comunicacion entre el equipo de desarrollo" ya que alguien dijo algo que no debia o peor aun no dijo algo que SI debia de haberlo dicho.
Simplicidad: La programacion extrema toma este valor de hacer las cosas mas simples posibles pero funcionales, ya que es posibles que se tenga que modificar y hasta descartar; con esto nos evitaremos invertir esfuerzo en una parte del proyecto que finalmete se descartara.
Retroalimentacion: Se busca una participacion activa de todos las personas involucradas en el desarrollo del proyecto para que den su opinion acerca de diferentes problemas que obstaculizaron sus respectivas tareas.
La retroalimentacion esta estrechamente ligado al cliente, lo que se busca es obtener sus impresiones al presentarle algun prototipo y asi lograr modificar algo en las primeras etapas de del desarrollo y no cambiarlo al final cuando es muy complicado e implica un alto costo monetario.
Coraje: Este es uno de valores mas interesantes pues narran los creadores de esta metodologia que se requiere coraje para llevara acabo todas las demas tareas, coraje para preguntar y dejar al descubierto la ignorancia, coraje para dejar las cosas simples sin caer en la tentacion de adornarlo y finalmente coraje par confiar en que la retroalimentacion sera la mejor namera de dirigir el proyecto.
jueves, 23 de julio de 2009
CURRICULUM: Lorena Villatoro
2.1.1 Currículum:
Lorena Guadalupe Villatoro Díaz
DATOS PERSONALES
• DUI : 03411613 – 4
• NIT : 0614-271285-106-7
• LICENCIA DE CONDUCIR : 0614-271285-106-7
• EDAD : 23 años
• ESTADO CIVIL : Soltera
• PROFESIÓN : Estudiante Universitaria.
•Número de Telefono: 7768-2028
• E–MAIL : villatoro_@hotmail.com
ESTUDIOS REALIZADOS
- 2004 - 2009 ESTUDIOS UNIVERSITARIOS (VII ciclo), UNIVERSIDAD DON BOSCO
- 2002- 2003: BACHILLERATO GENERAL, COLEGIO EUCARISTICO
- 1999 – 2001: EDUCACIÓN BÁSICA, COLEGIO EUCARÍSTICO
- 1996 – 1998 EDUCACION SECUNDARIA, ESC. PARROQUIAL
- 1993 – 1995: EDUCACION PRIMARIA, ESC. PARROQUIAL
- 1990 – 1992: EDUCACIÓN PARVULARIA, CIRCULO INFANTIL,“MADRE DOLORES MEDINA”. DIVINA PROVIDENCIA
OTROS ESTUDIOS
- 1999 – 2000: TÉCNICO EN DISEÑO GRÁFICO, CENTRO TÉCNICO MONS. ROMERO
- 1997 – 1999: DIPLOMADO EN OPERADOR EN COMPUTADORAS. CENTRO TÉCNICO MONS. ROMERO
2.1.2 Reconocimientos:
2.1.3 Proyecto de vida:
- MISION
Ser un profesional responsable e integro, capaz de enfrentar nuevos retos y cumplir las metas que me proponga a corto y largo plazo, ya sea en mi ambito laboral como personal.
Segundo periodo
Apendrer y poner en practica cada uno de los temas vistos en este periodo para realizar un mejor proyecto de cátedra en ingenieria de software.
Tercer periodo: ALcanzar cada una de mis metas propuestas para este periodo como para el ciclo que es ser cada dia mejor una estudiante.
- VISION
Como profesional tener un alto grado de conocimientos en el desarrollo de software de calidad para poder brindar al usuario un mejor servicio y asi poder facilitar el manejo de información.
Segundo Periodo
Demostrar cada una de mis habilidades a la hora de realizar nuestro proyecto de cátedra en Ingenieria de software y lo que no se aprenderlo.
Tercer periodo:
En este periodo tomare en cuenta cada tema brindado por la Licda. Alejandrina y a la vez tomar en cuenta cada una de las observasiones para que cada dia que pase ser un mejor profesional.
EXPECTATIVA
Mi propósito en el presente ciclo, en cuanto a la materia de Ingenieria de Software es aprender, analizar y desarrollar la capacidad de solucionar problemas de cualquier índoles basándome en la tecnología, ya que como futura ingeniera en ciencias de la computación, estoy en un momento de mi vida, donde debo adquirir la mayor cantidad de conocimientos, para que cuando me gradué ponerlo en práctica. Con la ayuda de nuestro docente y guía, de la Licda Alejadrina Velásquez, se que aprenderé, ya que la materia. deseando haber aprendido no lo básico de Ingenieria de Software, sino haber profundizado en muchos temas que nos ayuden a cultivar nuestra profesión.
- FORTALEZAS
Es que me gusta aprender cosas nuevas y cuando algo no le entiendo me gusta investigar y así aprender.
Me gusta ponerme metas ya sea a corto y largo plazo y cumplirlas.
Soy una persona dedicada y responsable en mis estudios .
- DEBILIDADES
No tengo un excelente hábito de la lectura.
MI SUEÑO Y PROPOSITO DE MI VIDA
Primeramente graduarme ser una profesional; pero aparte de esto sueño con crear mi propia empresa en la cual pondria en practica el marketing de negocios y estabilizarme economicamente.
Además aprender o especializarme en bases de datos de SQL SERVER, ORACLE ya que trabajar con bases de datos me gusta mucho.
2.2 Evidencias académicas
2.2.1 Malla académica


Materias cursadas en este ciclo
- Fisica I
- Gestión e innovación
- Microprocesadores
- PHP
- Ingeniería de Software
Gestión e innovación: está materia se me hace muy importante ya que estoy aprendiendo como inicializar mi propia empresa, además estoy aprendiendo como crear un plan de negocios.
Microprocesadores: es una materia en la cual te enseñan a programar en lenguaje ensamblador.
PHP: materia la cual es importante para mi ya que estoy aprendiendo a crear una página web dinámica.
Ingeniería de Software: está materia me parece importante ya que estoy aprendiendo como desarrollar un software; pero a la vez para que este sea de calidad.
- 2.2.2 RESUMEN EJECUTIVO
Aprendi que es importante tomar en cuenta los requerimientos desde su inicialización hasta su finalización para que el software q se desarrolle sea de calidad.
En la parte de construcción se lleva la mayor parte del trabajo para el éxito o el fracaso. Si en un principio la calidad del código no es optima, es casi imposible volver hacia atrás y mejorarla, y podemos perder mucho tiempo: No tener unos buenos métodos pueden forzar a que se tenga que reescribir las partes principales del sistema y pueden introducir errores sutiles que pueden tardar mucho tiempo para encontrarlos y corregirlos.
el control de calidad nos proporciona un apoyo para obtener la máxima velocidad de desarrollo. Para ello tenemos que realizar todas las pruebas necesarias para encontrar los errores para que al final el sistema funcione correctamente como se esperaba. Hacemos las revisiones técnicas ya que estas tienden a encontrara errores de diferentes tipos ya que las revisiones proporcionan un foro para que los desarrolladores muestren sus conocimientos sobre los métodos recomendables, aumentando las posibilidades de desarrollo rápido.
CASO DE ESTUDIO
En este caso de estudio aplicamos la norma ISO 12207 ‘EL CICLO DE VIDA’ a un caso real de una empresa exportadora de café que deseada implementar una página web para que cada uno de sus cliente se les facilitara hacer sus pedidos por medio de los medios electrónicos, además a la vez implementar o poner en práctica el marketing electrónico
La norma ISO 12207 nos da una serie de pasos o procedimientos en los cuales tenemos que tomar en cuenta a la hora de elaborar un nuevo software para una empresa y para que dicho software sea de calidad hay que tomar en cuenta cada uno de los requerimientos dados en la ISO 12207.
2.2.3 Resumen de puntos
RESUMEN DE CLASES DEL PERIODO UNO
MODELOS GENÉRICOS
Modelo de Cascada
• Separar en distintas fases de especificación y desarrollo.
Desarrollo Evolutivo
• La especificación y el desarrollo están intercalados.
Prototipo
• Un modelo sirve de prototipo para la construcción del sistema final.
Transformación Formal
• Un modelo matemático del sistema se transforma formalmente en la implementación.
Desarrollo basado en Reutilización
• El sistema
Fases del Modelo de Cascada
• Análisis de requerimientos y definición.
• Diseño del sistema y del software.
• Implementación y prueba de unidades
• Integración y prueba del sistema.
• Operación y mantenimiento.
• La dificultad en esta modelo reside, en la dificultad de hacer cambios entre etapas.
Problemas y Riesgos con los Modelos.
• Cascada.
Alto riesgo en sistemas nuevos debido a problemas en las especificaciones y en el diseño.
Bajo riesgo para desarrollos bien comprendidos utilizando tecnología conocida.
• Prototipado.
Bajo riesgo para nuevas aplicaciones debido a que las especificaciones y el diseño se llevan a cabo paso a paso.
Alto riesgo debido a falta de visibilidad
• Evolutivo.
Alto riesgo debido a la necesidad de tecnología avanzada y habilidades del grupo desarrollador.
Planteamiento de Objetivos
• Se identifican los objetivos específicos para cada fase del proyecto.
Identificación y reducción de riesgos.
• Los riesgos clave se identifican y analizan, y la información sirve para minimizar los riesgos.
Desarrollo y Validación.
• Se elige un modelo apropiado para la siguiente fase del desarrollo.
Planeación.
• Se revisa el proyecto y se trazan planes para la siguiente ronda del espiral.
Ventajas del Modelo de Espiral
• Centra su atención en la reutilización de componentes y eliminación de errores en información descubierta en fases iniciales.
• Los objetivos de calidad son el primer objetivo.
• Integra desarrollo con mantenimiento.
• Provee un marco de desarrollo de hardware/software.
En conclusión
La Ingeniería de software concierne a las teorías, métodos y herramientas para el desarrollo, administración y evolución de productos de software.
Los productos de software consisten de programas y documentación. Los atributos de los productos son, mantenabilidad, dependabilidad, eficiencia y usabilidad.
El proceso de software consiste en aquellas actividades involucradas en el desarrollo de software.
El modelo de cascada considera cada actividad del proceso como una actividad discreta.
El modelo de desarrollo evolutivo considera actividades del proceso en forma concurrente.
El modelo de espiral se basa en análisis de riesgos.
La visibilidad del proceso involucra la creación de documentos o resultados de las actividades.
Los Ingenieros de software deben tener responsabilidades éticas, sociales y profesionales.
RESUMEN DE TERCER PERIODO
ARQUITECTURA DE SOFTWARE¿Qué es la Arquitectura del Software? Existen muchas definiciones de Arquitectura del Software y no parece que ninguna de ellas haya sido totalmente aceptada. En un sentido amplio podríamos estar de acuerdo en que la Arquitectura del Software es el diseño de más alto nivel de la estructura de un sistema, programa o aplicación y tiene la responsabilidad de:
* Definir los módulos principales
* Definir las responsabilidades que tendrá cada uno de estos módulos
* Definir la interacción que existirá entre dichos módulos:
* Control y flujo de datos
* Secuenciación de la información
* Protocolos de interacción y comunicación
* Ubicación en el hardware
La Arquitectura del Software aporta una visión abstracta de alto nivel, posponiendo el detalle de cada uno de los módulos definidos a pasos posteriores del diseño.
La definición oficial de Arquitectura del Software es la IEEE Std 1471-2000 que reza así: “La Arquitectura del Software es la organización fundamental de un sistema formada por sus componentes, las relaciones entre ellos y el contexto en el que se implantarán, y los principios que orientan su diseño y evolución”.
El objetivo principal de la Arquitectura del Software es aportar elementos que ayuden a la toma de decisiones y, al mismo tiempo, proporcionar conceptos y un lenguaje común que permitan la comunicación entre los equipos que participen en un proyecto. Para conseguirlo, la Arquitectura del Software construye abstracciones, materializándolas en forma de diagramas (blueprints) comentados.
No hay estándares en cuanto a la forma y lenguaje a utilizar en estos blueprints. De todas formas, existe consenso en cuanto a la necesidad de organizar dichas abstracciones en vistas, tal y como se hace al diseñar un edificio. La cantidad y tipos de vistas difiere en función de cada tendencia arquitectónica.
Quizá uno de los modelos más conocidos es el “4+1” de Philippe Kruchten, vinculado al Rational Unified Process (RUP), que define cuatro vistas diferentes:
* Vista lógica: describe el modelo de objetos.
* Vista de proceso: muestra la concurrencia y sincronía de los procesos.
* Vista física: muestra la ubicación del software en el hardware.
* Vista de desarrollo: describe la organización del entorno de desarrollo.
* Existe una quinta vista que consiste en una selección de casos de uso o de escenarios que los arquitectos pueden elaborar a partir de las cuatro vistas anteriores.
La Arquitectura del Software es el diseño de más alto nivel de la estructura de un sistema. Una Arquitectura de Software, también denominada Arquitectura lógica, consiste en un conjunto de patrones y abstracciones coherentes que proporcionan el marco de referencia necesario para guiar la construcción del software para un sistema de información.
La Arquitectura de Software establece los fundamentos para que analistas, diseñadores, programadores, etc. trabajen en una línea común que permita alcanzar los objetivos del sistema de información, cubriendo todas las necesidades.
Una arquitectura de software se selecciona y diseña con base en objetivos y restricciones. Los objetivos son aquellos prefijados para el sistema de información, pero no solamente los de tipo funcional, también otros objetivos como la mantenibilidad, auditabilidad, flexibilidad e interacción con otros sistemas de información. Las restricciones son aquellas limitaciones derivadas de las tecnologías disponibles para implementar sistemas de información. Unas arquitecturas son más recomendables de implementar con ciertas tecnologías mientras que otras tecnologías no son aptas para determinadas arquitecturas. Por ejemplo, no es viable emplear una arquitectura de software de tres capas para implementar sistemas en tiempo real.
La arquitectura de software define, de manera abstracta, los componentes que llevan a cabo alguna tarea de computación, sus interfaces y la comunicación entre ellos. Toda arquitectura debe ser implementable en una arquitectura física, que consiste simplemente en determinar qué computadora tendrá asignada cada tarea.
Modelos o vistas.
Toda arquitectura de software debe describir diversos aspectos del software. Generalmente, cada uno de estos aspectos se describe de una manera más comprensible si se utilizan distintos modelos o vistas. Es importante destacar que cada uno de ellos constituye una descripción parcial de una misma arquitectura y es deseable que exista cierto solapamiento entre ellos. Esto es así porque todas las vistas deben ser coherentes entre sí, evidente dado que describen la misma cosa.
Cada paradigma de desarrollo exige diferente número y tipo de vistas o modelos para describir una arquitectura. No obstante, existen al menos tres vistas absolutamente fundamentales en cualquier arquitectura:
• La visión estática: describe qué componentes tiene la arquitectura.
• La visión funcional: describe qué hace cada componente.
• La visión dinámica: describe cómo se comportan los componentes a lo largo del tiempo y como interactúan entre sí
Arquitecturas más comunes
Generalmente, no es necesario inventar una nueva arquitectura de software para cada sistema de información. Lo habitual es adoptar una arquitectura conocida en función de sus ventajas e inconvenientes para cada caso en concreto. Así, las arquitecturas más universales son:• Monolítica. Donde el software se estructura en grupos funcionales muy acoplados.
• Cliente-servidor. Donde el software reparte su carga de cómputo en dos partes independientes pero sin reparto claro de funciones.
• Arquitectura de tres niveles. Especialización de la arquitectura cliente-servidor donde la carga se divide en tres partes (o capas) con un reparto claro de funciones: una capa para la presentación (interfaz de usuario), otra para el cálculo (donde se encuentra modelado el negocio) y otra para el almacenamiento (persistencia).
2.2.4 Otras evidencias de aprendizaje
http://delta.cs.cinvestav.mx/~pmejia/softeng/Arquitecturas.ppt
http://www.scribd.com/doc/210452/Arquitectura-de-Software-Adrian-Lasso
2.3 Evidencias Profesionales
2.3.1 Comentarios de empleadores actuales o anteriores.
2.3.2 Actividades profesionales:
Curriculum Eduardo Aguilar
Eduardo Antonio Aguilar figueroa
---------------------------------------------------------------------------------------------------------------------------------------------------------------
Residencial Alta Vista, calle principal, pol. 11, No. 21, Tonacapeteque, San Salvador. Teléfono: 2253-6177. Móvil: 73841315.
DATOS PERSONALES:
Estado civil :Soltero
Nacionalidad: Salvadoreño
Edad: 21 años
DUI: 03574049-9
NIT: 0607-070786-103-7
ISSS: 106864030
E-mail: eduardo_aguilar86@hotmail.c
INFORMACIÓN ACADÉMICA
1995-2003: Educación básica. Colegio Salesiano Don Bosco. Soyapango
2004-2005: Bachillerato General con diplomado en computación. Instituto Técnico de Ex-alumnos Salesianos. San Salvador.
2006-Actualmente: Realizando estudios de educación superior en la Universidad Don Bosco. Ingeniería en ciencias de la Computación.
OTROS:
2005-2006: Estudios del idioma ingles realizados hasta el modulo 12ª. Centro Cultural Salvadoreño. Nivel de dominio del idioma ingles: Medio en las 2 modalidades (escrito y hablado)
2008-2009: Estudios en redes informáticas CISCO CCNA (2ª modulo). Universidad Don Bosco.
2.1.3 ) Proyecto de vida
Misión:
Ser un profesional con altos conocimientos técnicos en informática no dejando de lado la parte humana y espiritual para un desarrollo integral de la persona humana y preparado para brindar un servicio a la comunidad.
Visión:
Lograr ser un profesional con altos conocimientos técnicos para poder brindar soluciones a problemas por medio de software que ayude a hacer más fácil la vida de las personas.
Fortalezas y debilidades del estudiante.
Una de mis fortalezas es el ser dedicado en el estudio y tratar de ser responsable en todas mis actividades para lograr sobresalir.
Otra cualidad seria el ser curioso, me gusta conocer las cosas tal como son, para eso creo que mejor manera de hacerlo es leer ya que la información que algunas veces se proporciona de forma oral puedo ser la incorrecta.
El hábito de la lectura también podría mencionar como otra cualidad.
Las debilidades mencionaría que no se calcular el tiempo necesario que me llevaría realizar una tarea.
Aciertos y desaciertos
En el año 2008 conseguí ser asesor de proyectos de informática para el Colegio Ricaldone con lo cual he conseguido que mi grupos obtengan el primer lugar lo cual me permitió una recomendación para la plaza de programador web para una ONG
Como errores o desaciertos puedo mencionar que en el primer ciclo en la universidad no fui muy aplicado en mis estudios lo cual me costó dejar una materia lo cual me desmotivo.
Condiciones para alcanzar logros o fracasos.
Considero que unos de las principales condiciones es el factor monetario pues siempre está la preocupación de no poder pagar a tiempo alguna obligación o incluso la universidad.
La existencia de una biblioteca actualizada me ha permitido estudiar de varios libros sin tener la necesidad de comprarlos lo cual me ha ahorrado dinero ya sea para materias como matemáticas, física y por supuesto programación.
Un centro de cómputo con acceso a internet también me ha facilitado el aprendizaje de diversas materias y así adquirir nuevos conocimientos.
Sueños y propósitos en la vida.
Mi propósito en la vida luego de graduarme es hacer mi propia empresa de desarrollo de software profesional con ayuda de unos amigos, con esto lograría proporcionar trabajo a varias personas y seria otra forma de brindar un servicio o ayuda a la comunidad.
Los factores que favorecen realizar este sueño son que ya tengo a esos amigos que comparte mi idea de realizar una empresa y también que ya se tiene un pequeño grupos de clientes con los cuales en este momento estamos trabajando.
2.2) Evidencias académicas
Malla Curricular

Expectativas de las materias actualmente cursadas
Las materias que actualmente curso son:
Sistemas Electricos Lineales
Ingenieria del software
Contabilidad y Costos
Php
Sistemas operativos
Sistema Electricos Lineales: En este materia es útil para desarrollar el análisis de diferentes problemas que es una habilidad imprescindible para cualquier ingeniero.
Sistemas Operativos: Es esta materia quisiera aprender lo concernientes a los sistemas operativos Linux que se utilizan mucho en un entorno empresarial.
Ingeniería de Software: Es una asignatura que considero de las importantes pues aquí espero aprender todo lo relacionado a los estándares y metodologías de desarrollo de proyectos informáticos.
Contabilidad y Costos para Ingenieros: Este es una materia que espero sea útil para llevar el control de mi futuro negocio pues se abordan temas como métodos de producción, depreciaciones, plusvalía etc.
Php: Esta materia es muy útil ya que se enseña a desarrollar páginas web en el lenguaje php que tiene mucha demanda en el marcado.
Resumen ejecutivo
Control de lectura “Base de desarrollo de software”
En la lectura de este capítulo del libro de Steve McConell vimos aspectos importantes a tener encuentra en el desarrollo de software de calidad a una velocidad mayor que si lo hiciéramos de una manera desordenada sin planificación.
El capítulo de este libro nos narra que aplicar un enfoque de calidad desde la adquisición de los requerimientos hasta la finalización del producto brindara una mayor satisfacción por parte de los clientes y nos evitara numerosos problemas debido a plazos incumplido de tiempo o detección de errores en las etapas finales que ocasionan grandes perdida a la empresa.
Caso de estudio “Ciclo de vida de un producto de software”
En esta tarea aplicamos el ciclo de vida de la norma ISO 12207 aun caso de una empresa exportadora de café que deseada implementar una página web donde sus clientes pudiera hacer pedidos por medios electrónicos.
La norma ISO 12207 nos da una pauta de los pasos que todas las personas involucradas en el desarrollo de software deben de seguir para que se produzca un correcto complimiento de este estándar.
Perfil del proyecto de cátedra fase uno:
Con la elaboración de este anteproyecto analizamos la viabilidad de realizar un software a una clínica llamada “Sonrisa digital” que es el lugar donde tenemos pensado realizar nuestro proyecto de cátedra que consistirá en un software que ayuda a la doctora Larraynaga a obtener un mejor control de sus pacientes, permitiendo realizar facturas y un mejor control de citas de sus pacientes.
Diagrama de clase caso divertilandia
En esta tarea se nos pidio elaborar un diagrama de clase UML de un parque de diversiones llamado divertilandia, en donde se nos proporciono el enunciado del problema, analizamos las posibles clases escojiendo las utiles y desechando las que no nos ayudaban en nada. Luego de ver las clases analizamos sus relaciones con otras clases para verificar si existian asociaciones, herencias, composiciones, etc.
Proyecto de catedra fase II
En la segunda entrega del proyecto de cátedra utilizamos todo lo aprendido en el periodo sobre UML aplicándolo los diferentes diagramas a nuestro proyectos. También elaboramos los prototipos de nuestra aplicación y su respectiva base de datos.
Lectura del cap 15 de McConnell
Este capitulo se abordo el tema de las herramientas para aumentar la productividad sus beneficios como lo pueden hacer recortar el tiempo de desarrollo del software o hacernos mas competitivos pero tambien nos advierte de los problemas que puede conllevar al adquisicion de una de estas herramientas como lo puede ser el retraso de tiempo que conlleva aprender a manipular una de estas herramientas.
Ensayo sobre planificacion de proyectos
En esta tarea reflexionamos sobre lo importante que es la realizacio de un abuen planificacion desde un comienzo y tratar de cumplirla lo mas que este en nuestras posibilidades. Analisamos tambien algunos problemas que serguen cuando no se realiza una buena planificacion como lo puede ser el atraso en la entrega de un producto, desborde de presupuesto entre otros.
Corto sobre arquitectura de software
En este corto se nos examino el tema de la arquitectura de software la cuel es un vision general y lo que se busca es que se obtenga lo que realmente se ha pensado.
Tambien se nos pregunto sobre las 4 vistas mas 1 que son unas serie de diferentes formas de observar el sistemas y todas ellas entrelasadas por los diagramas de caso de uso que son los que rigen su comportamiento. Las cuatro vista tiene su representacion en UML
Resumen de los puntos claves analizados en clase
Introduccion a la ingeniería del software
Software: Son las conformadas por instrucciones que al ejecutarse proporcionan las características, funciones y el grado de desempeño deseado y ejecutado en una pc.
¿Que es la ingenieria de software?
Es el establecimeinto y uso de principios sólidos de ingeniería para obtener económicamente un software confiable y que funcione de modo
eficiente en máquinas reales.
El software es el producto que los ingenieros de software construyen y después mantienen en largo plazo, casi todos en el mundo industrializado lo usan de manera directa o indirecta. El ingeniero de software no solo debe de crear un software solo porque se lo han pedido; si no que debe de pensar que con ese software estara proporcionando una solucion a un problema particular definido en el documento de los requisitos.
Atributos de un buen software:
Confiabilidad
Mantenibilidad
Eficiencia
Usabilidad
Modelos de desarrollo de software
Modelo de Cascada: Separar en distintas fases de especificación y desarrollo. Se le dice en cascada ya que regresar a una face anterior es bastante complicado y consume mucho tiempo (es una analogia con los salmones y el rio)
Desarrollo Aspiral: La especificación y el desarrollo están intercalados y se repiten las etapas analizando en cada etapa los requisitos.
Prototipo: Un modelo basado en prototipo desechables para la construcción del sistema final.
Transformación Formal: Un modelo matemático del sistema se transforma formalmente en la implementación.
Análisis y diseño orientado a objetos
El análisis y diseño orientado a objetos ofrece un enfoque que utiliza métodos lógicos y rápidos que han provado su efectividad a lo largo del tiempo y son necesarios para crear nuevos sistemas en respuesta al cambiante entorno de un negocio. Las técnicas orientadas a objetos son adecuadas en situaciones en que los sistemas de información complicados necesitan mantenimiento, adaptación y rediseño continuos.
Unas de las características del diseño orientado a objetos son:
Identidad: Se refiere cuando los objetos son unidades que se pueden diferenciar de otras.
Abstracción: Especificar con detenimiento las características reales de un objetos de la vida real y sustrayendo lo mas importante de el.
Clasificación: Una clase se puede agrupar con otras clases que comparten información en común.
Polimorfismo: Es cuando un objeto se puede comportar de diferentes maneras.
Encapsulamiento: Es una especia de cortina que solo muestra lo que sea necesario que se muestre es dicir oculta la informacion que no deberia ser visible.
Ventajas de la programación orientada a objetos
Mantenibilidad: Los programas diseñados bajo UML son fácilmente mantenibles ya que ocultan la complejidad
Modificabilidad: Los programas orientados a objetos se pueden modificar fácilmente ya que
se identifica con claridad el objeto que tiene que ser modificado.
Reusabilidad: Un clase bien diseñada puede ser utilizada muchas veces en diferentes proyectos ahorrando horas de codificación.
Diagramas UML
Los diagramas UML son:
Diagrama Caso de uso.
Diagrama de secuencia.
Diagrama de componente.
Diagrama de despliegue.
Diagrama de actividad.
Diagrama de colaboración.
Diagrama de clase.
Implementacion del sistema
En este tema de clase vimos lo que es la implementacion que es un proceso para asegurar que todo el equipo(software y hardware ) funcionen correctamente. Existen una seria de enfoques para la implementacion los cuales son: poder de computo a los usuarios por medio del procesamiento distribuido, capacitacion de usuario, convertir el sistema y evaluar el nuevo.
Corto sobre arquitectura de software
Es una representacion de un modelo, cual es una descripción completa de un sistema desde una perspectiva en particular he incluye la usuavilidad, rendimiento, robustez restricción de la aplicacion .
4 vistas mas 1
Es el modelo de mayor aceptacion y se establece las vistas necesarias para describir una arquitectura de software. La vista "mas 1" es la que rige a las otras 4 y esta es la del diagrama de caso de uso.
Misión y visión del primer periodo
Misión
Comprender los temas de desarrollo de software y las diferentes metodologías de desarrollo de software que actualmete se utilizan a nivel mundial.
Vision
Utilizar los temas aprendidos en clases en el desarrollo real de proyectos de software y observar asi su aplicacion en el desarrollo.
Misión y visión del segundo periodo
Misión
Comprender lo mejor posible sobre el paradigma de la programacion orientada a objetos sus beneficios y ventajas antes otras formas de programación.
Visión
Seguir adentrandome en el paradigma orientado a objetos y utilizarlo en la mayoría de mis aplicaciones segun sea conveniente.
Misión y visión del tercer periodo
Misión
Comprender sobre la importancia de los tópicos vistos en clases como establecer una buena planificación, implementación, arquitectura de software.
Visión
Comenzar a utilizar este conocimiento en futuros proyectos,aprender de las enseñanzas de personas involucradas en el desarrollo de software y utilizar mejor los principios de ingenieria de software.
---------------------------------------------------------------------------------------------------------------------------------------------------------------
Residencial Alta Vista, calle principal, pol. 11, No. 21, Tonacapeteque, San Salvador. Teléfono: 2253-6177. Móvil: 73841315.
DATOS PERSONALES:
Estado civil :Soltero
Nacionalidad: Salvadoreño
Edad: 21 años
DUI: 03574049-9
NIT: 0607-070786-103-7
ISSS: 106864030
E-mail: eduardo_aguilar86@hotmail.c
INFORMACIÓN ACADÉMICA
1995-2003: Educación básica. Colegio Salesiano Don Bosco. Soyapango
2004-2005: Bachillerato General con diplomado en computación. Instituto Técnico de Ex-alumnos Salesianos. San Salvador.
2006-Actualmente: Realizando estudios de educación superior en la Universidad Don Bosco. Ingeniería en ciencias de la Computación.
OTROS:
2005-2006: Estudios del idioma ingles realizados hasta el modulo 12ª. Centro Cultural Salvadoreño. Nivel de dominio del idioma ingles: Medio en las 2 modalidades (escrito y hablado)
2008-2009: Estudios en redes informáticas CISCO CCNA (2ª modulo). Universidad Don Bosco.
2.1.3 ) Proyecto de vida
Misión:
Ser un profesional con altos conocimientos técnicos en informática no dejando de lado la parte humana y espiritual para un desarrollo integral de la persona humana y preparado para brindar un servicio a la comunidad.
Visión:
Lograr ser un profesional con altos conocimientos técnicos para poder brindar soluciones a problemas por medio de software que ayude a hacer más fácil la vida de las personas.
Fortalezas y debilidades del estudiante.
Una de mis fortalezas es el ser dedicado en el estudio y tratar de ser responsable en todas mis actividades para lograr sobresalir.
Otra cualidad seria el ser curioso, me gusta conocer las cosas tal como son, para eso creo que mejor manera de hacerlo es leer ya que la información que algunas veces se proporciona de forma oral puedo ser la incorrecta.
El hábito de la lectura también podría mencionar como otra cualidad.
Las debilidades mencionaría que no se calcular el tiempo necesario que me llevaría realizar una tarea.
Aciertos y desaciertos
En el año 2008 conseguí ser asesor de proyectos de informática para el Colegio Ricaldone con lo cual he conseguido que mi grupos obtengan el primer lugar lo cual me permitió una recomendación para la plaza de programador web para una ONG
Como errores o desaciertos puedo mencionar que en el primer ciclo en la universidad no fui muy aplicado en mis estudios lo cual me costó dejar una materia lo cual me desmotivo.
Condiciones para alcanzar logros o fracasos.
Considero que unos de las principales condiciones es el factor monetario pues siempre está la preocupación de no poder pagar a tiempo alguna obligación o incluso la universidad.
La existencia de una biblioteca actualizada me ha permitido estudiar de varios libros sin tener la necesidad de comprarlos lo cual me ha ahorrado dinero ya sea para materias como matemáticas, física y por supuesto programación.
Un centro de cómputo con acceso a internet también me ha facilitado el aprendizaje de diversas materias y así adquirir nuevos conocimientos.
Sueños y propósitos en la vida.
Mi propósito en la vida luego de graduarme es hacer mi propia empresa de desarrollo de software profesional con ayuda de unos amigos, con esto lograría proporcionar trabajo a varias personas y seria otra forma de brindar un servicio o ayuda a la comunidad.
Los factores que favorecen realizar este sueño son que ya tengo a esos amigos que comparte mi idea de realizar una empresa y también que ya se tiene un pequeño grupos de clientes con los cuales en este momento estamos trabajando.
2.2) Evidencias académicas
Malla Curricular

Expectativas de las materias actualmente cursadas
Las materias que actualmente curso son:
Sistemas Electricos Lineales
Ingenieria del software
Contabilidad y Costos
Php
Sistemas operativos
Sistema Electricos Lineales: En este materia es útil para desarrollar el análisis de diferentes problemas que es una habilidad imprescindible para cualquier ingeniero.
Sistemas Operativos: Es esta materia quisiera aprender lo concernientes a los sistemas operativos Linux que se utilizan mucho en un entorno empresarial.
Ingeniería de Software: Es una asignatura que considero de las importantes pues aquí espero aprender todo lo relacionado a los estándares y metodologías de desarrollo de proyectos informáticos.
Contabilidad y Costos para Ingenieros: Este es una materia que espero sea útil para llevar el control de mi futuro negocio pues se abordan temas como métodos de producción, depreciaciones, plusvalía etc.
Php: Esta materia es muy útil ya que se enseña a desarrollar páginas web en el lenguaje php que tiene mucha demanda en el marcado.
Resumen ejecutivo
Control de lectura “Base de desarrollo de software”
En la lectura de este capítulo del libro de Steve McConell vimos aspectos importantes a tener encuentra en el desarrollo de software de calidad a una velocidad mayor que si lo hiciéramos de una manera desordenada sin planificación.
El capítulo de este libro nos narra que aplicar un enfoque de calidad desde la adquisición de los requerimientos hasta la finalización del producto brindara una mayor satisfacción por parte de los clientes y nos evitara numerosos problemas debido a plazos incumplido de tiempo o detección de errores en las etapas finales que ocasionan grandes perdida a la empresa.
Caso de estudio “Ciclo de vida de un producto de software”
En esta tarea aplicamos el ciclo de vida de la norma ISO 12207 aun caso de una empresa exportadora de café que deseada implementar una página web donde sus clientes pudiera hacer pedidos por medios electrónicos.
La norma ISO 12207 nos da una pauta de los pasos que todas las personas involucradas en el desarrollo de software deben de seguir para que se produzca un correcto complimiento de este estándar.
Perfil del proyecto de cátedra fase uno:
Con la elaboración de este anteproyecto analizamos la viabilidad de realizar un software a una clínica llamada “Sonrisa digital” que es el lugar donde tenemos pensado realizar nuestro proyecto de cátedra que consistirá en un software que ayuda a la doctora Larraynaga a obtener un mejor control de sus pacientes, permitiendo realizar facturas y un mejor control de citas de sus pacientes.
Diagrama de clase caso divertilandia
En esta tarea se nos pidio elaborar un diagrama de clase UML de un parque de diversiones llamado divertilandia, en donde se nos proporciono el enunciado del problema, analizamos las posibles clases escojiendo las utiles y desechando las que no nos ayudaban en nada. Luego de ver las clases analizamos sus relaciones con otras clases para verificar si existian asociaciones, herencias, composiciones, etc.
Proyecto de catedra fase II
En la segunda entrega del proyecto de cátedra utilizamos todo lo aprendido en el periodo sobre UML aplicándolo los diferentes diagramas a nuestro proyectos. También elaboramos los prototipos de nuestra aplicación y su respectiva base de datos.
Lectura del cap 15 de McConnell
Este capitulo se abordo el tema de las herramientas para aumentar la productividad sus beneficios como lo pueden hacer recortar el tiempo de desarrollo del software o hacernos mas competitivos pero tambien nos advierte de los problemas que puede conllevar al adquisicion de una de estas herramientas como lo puede ser el retraso de tiempo que conlleva aprender a manipular una de estas herramientas.
Ensayo sobre planificacion de proyectos
En esta tarea reflexionamos sobre lo importante que es la realizacio de un abuen planificacion desde un comienzo y tratar de cumplirla lo mas que este en nuestras posibilidades. Analisamos tambien algunos problemas que serguen cuando no se realiza una buena planificacion como lo puede ser el atraso en la entrega de un producto, desborde de presupuesto entre otros.
Corto sobre arquitectura de software
En este corto se nos examino el tema de la arquitectura de software la cuel es un vision general y lo que se busca es que se obtenga lo que realmente se ha pensado.
Tambien se nos pregunto sobre las 4 vistas mas 1 que son unas serie de diferentes formas de observar el sistemas y todas ellas entrelasadas por los diagramas de caso de uso que son los que rigen su comportamiento. Las cuatro vista tiene su representacion en UML
Resumen de los puntos claves analizados en clase
Introduccion a la ingeniería del software
Software: Son las conformadas por instrucciones que al ejecutarse proporcionan las características, funciones y el grado de desempeño deseado y ejecutado en una pc.
¿Que es la ingenieria de software?
Es el establecimeinto y uso de principios sólidos de ingeniería para obtener económicamente un software confiable y que funcione de modo
eficiente en máquinas reales.
El software es el producto que los ingenieros de software construyen y después mantienen en largo plazo, casi todos en el mundo industrializado lo usan de manera directa o indirecta. El ingeniero de software no solo debe de crear un software solo porque se lo han pedido; si no que debe de pensar que con ese software estara proporcionando una solucion a un problema particular definido en el documento de los requisitos.
Atributos de un buen software:
Confiabilidad
Mantenibilidad
Eficiencia
Usabilidad
Modelos de desarrollo de software
Modelo de Cascada: Separar en distintas fases de especificación y desarrollo. Se le dice en cascada ya que regresar a una face anterior es bastante complicado y consume mucho tiempo (es una analogia con los salmones y el rio)
Desarrollo Aspiral: La especificación y el desarrollo están intercalados y se repiten las etapas analizando en cada etapa los requisitos.
Prototipo: Un modelo basado en prototipo desechables para la construcción del sistema final.
Transformación Formal: Un modelo matemático del sistema se transforma formalmente en la implementación.
Análisis y diseño orientado a objetos
El análisis y diseño orientado a objetos ofrece un enfoque que utiliza métodos lógicos y rápidos que han provado su efectividad a lo largo del tiempo y son necesarios para crear nuevos sistemas en respuesta al cambiante entorno de un negocio. Las técnicas orientadas a objetos son adecuadas en situaciones en que los sistemas de información complicados necesitan mantenimiento, adaptación y rediseño continuos.
Unas de las características del diseño orientado a objetos son:
Identidad: Se refiere cuando los objetos son unidades que se pueden diferenciar de otras.
Abstracción: Especificar con detenimiento las características reales de un objetos de la vida real y sustrayendo lo mas importante de el.
Clasificación: Una clase se puede agrupar con otras clases que comparten información en común.
Polimorfismo: Es cuando un objeto se puede comportar de diferentes maneras.
Encapsulamiento: Es una especia de cortina que solo muestra lo que sea necesario que se muestre es dicir oculta la informacion que no deberia ser visible.
Ventajas de la programación orientada a objetos
Mantenibilidad: Los programas diseñados bajo UML son fácilmente mantenibles ya que ocultan la complejidad
Modificabilidad: Los programas orientados a objetos se pueden modificar fácilmente ya que
se identifica con claridad el objeto que tiene que ser modificado.
Reusabilidad: Un clase bien diseñada puede ser utilizada muchas veces en diferentes proyectos ahorrando horas de codificación.
Diagramas UML
Los diagramas UML son:
Diagrama Caso de uso.
Diagrama de secuencia.
Diagrama de componente.
Diagrama de despliegue.
Diagrama de actividad.
Diagrama de colaboración.
Diagrama de clase.
Implementacion del sistema
En este tema de clase vimos lo que es la implementacion que es un proceso para asegurar que todo el equipo(software y hardware ) funcionen correctamente. Existen una seria de enfoques para la implementacion los cuales son: poder de computo a los usuarios por medio del procesamiento distribuido, capacitacion de usuario, convertir el sistema y evaluar el nuevo.
Corto sobre arquitectura de software
Es una representacion de un modelo, cual es una descripción completa de un sistema desde una perspectiva en particular he incluye la usuavilidad, rendimiento, robustez restricción de la aplicacion .
4 vistas mas 1
Es el modelo de mayor aceptacion y se establece las vistas necesarias para describir una arquitectura de software. La vista "mas 1" es la que rige a las otras 4 y esta es la del diagrama de caso de uso.
Misión y visión del primer periodo
Misión
Comprender los temas de desarrollo de software y las diferentes metodologías de desarrollo de software que actualmete se utilizan a nivel mundial.
Vision
Utilizar los temas aprendidos en clases en el desarrollo real de proyectos de software y observar asi su aplicacion en el desarrollo.
Misión y visión del segundo periodo
Misión
Comprender lo mejor posible sobre el paradigma de la programacion orientada a objetos sus beneficios y ventajas antes otras formas de programación.
Visión
Seguir adentrandome en el paradigma orientado a objetos y utilizarlo en la mayoría de mis aplicaciones segun sea conveniente.
Misión y visión del tercer periodo
Misión
Comprender sobre la importancia de los tópicos vistos en clases como establecer una buena planificación, implementación, arquitectura de software.
Visión
Comenzar a utilizar este conocimiento en futuros proyectos,aprender de las enseñanzas de personas involucradas en el desarrollo de software y utilizar mejor los principios de ingenieria de software.
Suscribirse a:
Entradas (Atom)