Professional Documents
Culture Documents
CARRERA
ISC
Unidad 1
PRACTICA No. 1 LABORATORI O DE DSW NOMBRE DE LA PRACTICA DURACI N(HORAS) 1
1.INTRODUCCIN
La Ingeniera del Software es la rama de la ingeniera que crea y mantiene las aplicaciones de software usando tecnologas y prcticas de las ciencias de la computacin, manejo de proyectos, ingeniera, el mbito de la aplicacin, y otros campos. Hay quienes opinan que este proceso debera de llamarse "Desarrollo del Software" frente a Ingeniera del Software, Pete McBreen (autor de los libros: Software Craftsmanship and Questioning Extreme Programming) afirma que el termino ingeniera implica nivel de rigor y de pruebas mucho mayores que lo habitual en los desarrollos actuales. Segn la definicin del IEEE, "software es la suma total de los programas de ordenador, procedimientos, reglas, la documentacin asociada y los datos que pertenecen a un sistema de cmputo" y "un producto de software es un producto diseado para un usuario". En este contexto, la Ingeniera de Software (SE del ingls "Software Engineering") es un enfoque sistemtico del desarrollo, operacin, mantenimiento y retiro del software. Ingeniera del Software, es el trmino que utiliz Fritz Bauer en la primera conferencia sobre desarrollo de software patrocinada por el Comit de Ciencia de la OTAN celebrada en Garmisch (Alemania), en octubre de 1968, previamente haba sido utilizado por el holands Edsger Dijkstra en su
2.-OBJETIVO
Conocer las diferentes terminologas de la ingeniera de software para una mejor comprensin de los contenidos de la materia
3.FUNDAMENTO(T EORIA
4.PROCEDIMIENT O (DESCRIPCIN)
Investigar los conceptos bsicos de la Ingeniera del software. Crear un Glosario de Terminologa de la Ingeniera de Software. El cual deber contener: buena presentacin, ortografa, redaccin, diccin, limpieza. Organizar los trminos en orden del alfabeto (a-z). Anotar al menos 3 fuentes bibliogrficas consultadas, direcciones de pginas web consultadas o revistas.
5.-RESULTADOS Y CONCLUSIONES
6.-REFERENCIAS
CARRERA
LABORATORI O DE DSW
NOMBRE DE LA PRACTICA
DURACI N(HORAS) 1
hasta convertirse en una profesin que se ocupa de cmo crear software y maximizar su calidad. La calidad puede referirse a cun mantenenible es el software, su estabilidad, velocidad, usabilidad, comprobabilidad, legibilidad, tamao, costo, seguridad y nmero de fallas o "bugs", as como, entre muchos otros atributos, a cualidades menos medibles como elegancia, concisin y satisfaccin del cliente. La mejor manera de crear software de alta calidad es un problema separado y controvertido cubriendo el diseo de software, principios para escribir cdigo, llamados "mejores prcticas", as como cuestiones ms amplias de gestin como tamao ptimo del equipo de trabajo, el proceso, la mejor manera de entregar el software a tiempo y tan rpidamente como sea posible, la "cultura" del lugar de trabajo, prcticas de contratacin y as sucesivamente. Todo esto cae bajo la rbrica general de ingeniera de software. Fuente: http://es.wikipedia.org/wiki/Historia_de_la_ingenier%C3%ADa_del_software
2.-OBJETIVO
3.FUNDAMENTO(T EORIA
Tomar como referencia los siguientes tpico: La era pionera De 1945 a 1965: Los orgenes De 1965 a 1985: La Crisis del Software De 1985 a 1989: No hay balas de plata Proyectos de software De 1990 a 1999: Prominencia de Internet De 2000 al presente: Metodologas ligeras
4.PROCEDIMIENT O (DESCRIPCIN)
Consultar en fuentes bibliogrficas Realizar una lnea de tiempo Presentar la lnea de tiempo
En equipo investigar la historia de la Ingeniera del software generando una Lnea de Tiempo, la cual debe contener: orden, buena presentacin, ortografa y redaccin. Deber citar al menos 3 de las siguientes fuentes de informacin: libros, direcciones de pginas web, foros y revistas cientficas
5.-RESULTADOS Y CONCLUSIONES
6.-REFERENCIAS
CARRERA
LABORATORI O DE
NOMBRE DE LA PRACTICA
DURACI N(HORAS)
DSW
Cuadro Comparativo de Etapas del desarrollo de software (Anlisis de Modelos de Ciclos de Vida del Software)
1.-INTRODUCCION
Un proceso para el desarrollo de software, tambin denominado ciclo de vida del desarrollo de software es una estructura aplicada al desarrollo de un producto de software. Hay varios modelos a seguir para el establecimiento de un proceso para el desarrollo de software, cada uno de los cuales describe una enfoque diferente para diferentes actividades que tienen lugar durante el proceso. Algunos autores consideran un modelo de ciclo de vida un trmino ms general que un determinado proceso para el desarrollo de software. Por ejemplo, hay varios procesos de desarrollo de software especficos que se ajustan a un modelo de ciclo de vida de espiral. Fuente: http://es.wikipedia.org/wiki/Proceso_para_el_desarrollo_de_software
2.-OBJETIVO
Conocer los diferentes tipos de vida del software utilizado en el proceso de desarrollo de software como una metodologa de gua
4.PROCEDIMIENT O (DESCRIPCIN)
Realizar la investigacin documental Analizar los diferentes ciclos de vida y su aplicacin Conocer las principales similitudes y diferencias Realizar un cuadro comparativo de similitudes y diferencias de los ciclos de vida del software
La presentacin deber contener: buen diseo, orden y ortografa Deber anotar al menos 2 fuentes bibliogrficas consultadas, direcciones de pginas web de instituciones educativas o de investigacin.
5.-RESULTADOS Y CONCLUSIONES
6.-REFERENCIAS
CARRERA
LABORATORI O DE DSW
DURACI N(HORAS) 1
1.INTRODUCCION
Las herramientas CASE (Computer Aided Software Engineering, Ingeniera de Software Asistida por Computadora) son diversas aplicaciones informticas destinadas a aumentar la productividad en el desarrollo de software reduciendo el costo de las mismas en trminos de tiempo y de dinero. Estas herramientas pueden ayudar en todos los aspectos del ciclo de vida de desarrollo del software en tareas como el proceso de realizar un diseo del proyecto, clculo de costos, implementacin de parte del cdigo automticamente con el diseo dado, compilacin automtica, documentacin o deteccin de errores entre otras. Ya en los aos 70 un proyecto llamado ISDOS dise un lenguaje y por lo tanto un producto que analizaba la relacin existente entre los requisitos de un problema y las necesidades que stos generaban, el lenguaje en cuestin se denominaba PSL (Problem Statement Language) y la aplicacin que ayudaba a buscar las necesidades de los diseadores PSA (Problem Statement Analyzer). Las herramientas CASE alcanzaron su techo a principios de los aos 90. En la poca en la que IBM haba conseguido una alianza con la empresa de software AD/Cycle para trabajar con sus mainframes, estos dos gigantes trabajaban con herramientas CASE que abarcaban todo el ciclo de vida del software. Pero poco a poco los mainframes han ido siendo menos utilizados y actualmente el mercado de las Big CASE ha muerto completamente abriendo el mercado de diversas herramientas ms especficas para cada fase del ciclo de vida del software.
Fuente: http://es.wikipedia.org/wiki/Herramienta_CASE
3.FUNDAMENTO(T EORIA
A continuacin se muestran algunas herramientas CASE, profundizar en la investigacin documental para complementar la informacion.
Aunque no es fcil y no existe una forma nica de clasificarlas, las herramientas CASE se pueden clasificar teniendo en cuenta los siguientes parmetros: 1. Las plataformas que soportan. 2. Las fases del ciclo de vida del desarrollo de sistemas que cubren. 3. La arquitectura de las aplicaciones que producen. 4. Su funcionalidad. La siguiente clasificacin es la ms habitual basada en las fases del ciclo de desarrollo que cubren: Upper CASE (U-CASE), herramientas que ayudan en las fases de planificacin, anlisis de requisitos y estrategia del desarrollo, usando, entre otros diagramas UML. Middle CASE (M-CASE), herramientas para automatizar tareas en el anlisis y diseo de la aplicacin. Lower CASE (L-CASE), herramientas que semi-automatizan la generacin de cdigo, crean programas de deteccin de errores, soportan la depuracin de programas y pruebas. Adems automatizan la documentacin completa de la aplicacin. Aqu pueden incluirse las herramientas de Desarrollo rpido de aplicaciones.
Existen otros nombres que se le dan a este tipo de herramientas, y que no es una clasificacin excluyente entre s, ni con la anterior: Integrated CASE (I-CASE), herramientas que engloban todo el proceso de desarrollo software, desde anlisis hasta implementacin. MetaCASE, herramientas que permiten la definicin de nuestra propia tcnica de modelado, los elementos permitidos del metamodelo generado se guardan en un repositorio y pueden ser usados por otros analistas, es decir, es como si definiramos nuestro propio UML, con nuestros elementos, restricciones y relaciones posibles.
Por funcionalidad podramos diferenciar algunas como: Herramientas de generacin semiautomtica de cdigo. Editores UML. Herramientas de Refactorizacin de cdigo. Herramientas de mantenimiento como los sistemas de control de versiones
Fuente: http://es.wikipedia.org/wiki/Herramienta_CASE
4.PROCEDIMIENT O (DESCRIPCIN)
Investigar la historia y clasificacin de las Herramientas Case. Realizar una clasificacin por orden jerrquico de la Herramientas CASE Realizar una presentacin en Power point con animacin, fondo musical y presentacin de diapositivas automticas con tiempos
5.-RESULTADOS Y CONCLUSIONES
6.-REFERENCIAS
CARRERA
LABORATORI O DE DSW
DURACI N(HORAS) 1
1.-INTRODUCCIN
Ingeniera de requisitos
En la ingeniera de sistemas y la ingeniera de software, la Ingeniera de requisitos o Ingeniera de requerimientos comprende todas las tareas relacionadas con la determinacin de las necesidades o de las condiciones a satisfacer para un software nuevo o modificado, tomando en cuenta los diversos requisitos de los inversores, que pueden entrar en conflicto entre ellos. Muchas veces se habla de requerimientos en vez de requisitos; esto se debe a una mala traduccin del ingls. La palabra requirement debe ser traducida como requisito, mientras que requerimiento se traduce al ingls como request. El propsito de la ingeniera de requisitos es hacer que los mismos alcancen un estado ptimo antes de alcanzar la fase de diseo en el proyecto. Los buenos requisitos deben ser medibles, comprobables, sin ambigedades o contradicciones, etc.
3.FUNDAMENTO(T EORIA
La Ingeniera de Requisitos implica todas las actividades del ciclo de vida dedicadas a:
La educcin (a veces llamada "elicitacin", debido a una mala traduccin de "elicitation") de los requisitos de usuario. El anlisis y negociacin de requisitos para derivar requisitos adicionales. La documentacin de los requisitos como especificacin. La validacin de los requisitos documentados contra las necesidades de usuario. As como los procesos que apoyan estas actividades.
Fases de implementacin Desde un punto de vista conceptual, las actividades son de cinco clases.
Obtener requisitos: a travs de entrevistas o comunicacin con clientes o usuarios, para saber cules son sus expectativas. Analizar requisitos: detectar y corregir las falencias comunicativas, transformando los requisitos obtenidos de entrevistas y requisitos, en condiciones apropiadas para ser tratados en el diseo. Documentar requisitos: igual que todas las etapas, los requisitos deben estar debidamente documentados. Verificar los requisitos: consiste en comprobar el correcto funcionamiento de un requisito en la aplicacin. Validar los requisitos: comprobar que los requisitos implementados se corresponden con lo que inicialmente se pretenda.
Tcnicas principales La ingeniera de requisitos puede ser un proceso largo y arduo para el que se requiere de habilidades psicolgicas. Los nuevos sistemas cambian el entorno y las relaciones entre la gente, as que es importante identificar a todos los
4.PROCEDIMIENT O (DESCRIPCIN)
Organizarse en equipo Realizar la investigacin documental Analizar la informacin recopilada Elaborar mapa mental
5.-RESULTADOS Y CONCLUSIONES
6.-REFERENCIAS
CARRERA
LABORATORI O DE DSW
DURACI N(HORAS) 1
1.INTRODUCCIN
La ingeniera de requisitos del software es un proceso de descubrimiento, refinamiento, modelado y especificacin. Se refinan en detalle los requisitos del sistema y el papel asignado al software. El anlisis de requisitos es una tarea de ingeniera del software que cubre el hueco entre la definicin del software a nivel sistema y el diseo de software. El anlisis de requerimientos permite al ingeniero de sistemas especificar las caractersticas operacionales del software (funcin, datos y rendimientos), indica la interfaz del software con otros elementos del sistema y establece las restricciones que debe cumplir el software.
2.-OBJETIVO
Ingeniera de Requisitos
Conceptos [SOMMERVILLE, 2002]
Requisitos del Software
Es la descripcin de los servicios y restricciones de un sistema de software, es decir, lo que el software debe hacer y bajo qu circunstancias debe hacerlo.
Ingeniera de Requisitos del Software
4.PROCEDIMIENT O (DESCRIPCIN)
En equipo Investigar los conceptos de Ingeniera de requerimientos, realizar un ensayo. El ensayo deber deber contener: introduccin desarrollo, conclusiones, ortografa, bibliografa. Las conclusiones debern ser expuestas ante el grupo por un integrante del equipo elegido al azar. Al hacer la investigacin consultar al menos en 2 de las siguientes fuentes bibliogrficas consultadas, direcciones de pginas web de instituciones educativas o de investigacin. Enviar la investigacin de acuerdo a lo establecido en la rubrica correspondiente
5.-RESULTADOS Y CONCLUSIONES
6.-REFERENCIAS
CARRERA
LABORATORI O DE DSW
NOMBRE DE LA PRACTICA
DURACI N(HORAS) 2
1.INTRODUCCIN
Existen Herramientas de solucin puntual utilizadas para apoyar una actividad de Ingeniera de software concreta. Aunque una herramienta puede apoyar varias fases del ciclo de vida del desarrollo de un sistema o adaptarse a diferentes metodologas de desarrollo, por lo general su enfoque primario esta dirigido hacia una fase o mtodo especifico. Muchas herramientas para la fase de desarrollo ofrecen un soporte dbil durante la fase de anlisis para la determinacin y especificacin de requerimientos. La tecnologa CASE ofrece diversas herramientas y se requiere de una herramienta que se ocupe de aquellas tareas donde las personas interactan entre s: determinacin y verificacin de requerimientos con el usuario. A medida que sean automatizadas las funciones de modelado y bsqueda de errores, la responsabilidad del xito en un sistema de informacin caer cada vez ms sobre aquellos que especifican los requerimientos de informacin. Obtener y comprender los requerimientos son tareas realizadas por los seres humanos, y es deseable contar con una herramienta que los apoye en la determinacin de requerimientos. La mayor parte de los proyectos de desarrollo de software fallan por la mala determinacin de requerimientos, siendo esta etapa fundamental y la base para cualquier proyecto. El adoptar una de las tcnicas y desarrollarla en forma semiautomatizada debe proporcionarnos ahorros significativos en el tiempo y esfuerzo de la recoleccin de requerimientos. Algunas tcnicas, como la entrevista, cuestionario, trabajo en equipo, el muestreo, entre otras, ayudan en la recoleccin de requerimientos.
3.FUNDAMENTO(T EORIA
Herramientas CASE Se puede definir a las Herramientas CASE como un conjunto de programas y ayudas que dan asistencia a los analistas, ingenieros de software y desarrolladores, durante todos los pasos del Ciclo de Vida de desarrollo de un Software. Otras definiciones:
Las Herramientas CASE son un conjunto de mtodos, utilidades y tcnicas que facilitan la automatizacin del ciclo de vida del desarrollo de sistemas de informacin, completamente o en alguna de sus fases. La sigla genrica para una serie de programas y una filosofa de desarrollo de software que ayuda a automatizar el ciclo de vida de desarrollo de los sistemas. Una innovacin en la organizacin, un concepto avanzado en la evolucin de tecnologa con un potencial efecto profundo en la organizacin. Se puede ver al CASE como la unin de las herramientas automticas de software y las metodologas de desarrollo de software formales.
Anlisis de datos y procesos integrados mediante un repositorio. Generacin de interfaces entre el anlisis y el diseo. Generacin del cdigo a partir del diseo. Control de mantenimiento. Tipos de Herramientas CASE
No existe una nica clasificacin de herramientas CASE, es difcil incluirlas en una clase determinada. Podran clasificarse atendiendo a:
Las plataformas que soportan. Las fases del ciclo de vida del desarrollo de sistemas que abarca. La arquitectura de las aplicaciones que produce. Su funcionalidad.
Las herramientas CASE, en funcin de las fases del ciclo de vida abarcadas, se pueden agrupar de la forma siguiente:
4.PROCEDIMIENT O (DESCRIPCIN)
Consultar en fuentes bibliogrficas e internet el nombre de las Herramientas Case y su uso Descargar alguna de las herramientas de prueba Instalar la herramienta en su computadora Explicar el funcionamiento de la herramienta
Investigar en equipo las diferentes Herramientas Case Conocer al menos una herramienta CASE Explicar el funcionamiento de al menos una Herramienta CASE.
5.-RESULTADOS Y CONCLUSIONES
6.-REFERENCIAS
CARRERA
LABORATORI O DE DSW
DURACI N(HORAS)
1.-INTRODUCCIN
En los inicios de la informtica, la programacin se consideraba un arte y se desarrollaba como tal, debido a la dificultad que entraaba para la mayora de las personas, pero con el tiempo se han ido descubriendo y desarrollando formas y guas generales, con base a las cuales se puedan resolver los problemas. A estas, se les ha denominado Arquitectura de Software, porque, a semejanza de los planos de un edificio o construccin, estas indican la estructura, funcionamiento e interaccin entre las partes del software. En el libro "An introduction to Software Architecture", David Garlan y Mary Shaw definen que la Arquitectura es un nivel de diseo que hace foco en aspectos "ms all de los algoritmos y estructuras de datos de la computacin; el diseo y especificacin de la estructura global del sistema es un nuevo tipo de problema". Fuente: http://es.wikipedia.org/wiki/Arquitectura_de_software
2.-OBJETIVO
3.FUNDAMENTO(T EORIA
La Arquitectura del Software es el diseo de ms alto nivel de la estructura de un sistema. Una Arquitectura de Software, tambin denominada Arquitectura lgica, consiste en un conjunto de patrones y abstracciones coherentes que
La arquitectura de software define, de manera abstracta, los componentes que llevan a cabo alguna tarea de computacin, sus interfaces y la comunicacin entre ellos. Toda arquitectura debe ser implementable en una arquitectura fsica, que consiste simplemente en determinar qu computadora tendr asignada cada tarea. La arquitectura de software, tiene que ver con el diseo y la implementacin de estructuras de software de alto nivel. Es el resultado de ensamblar un cierto nmero de elementos arquitectnicos de forma adecuada para satisfacer la mayor funcionalidad y requerimientos de desempeo de un sistema, as como requerimientos no funcionales, como la confiabilidad, escalabilidad, portabilidad, y disponibilidad. Kruchten, Philippe
Generalmente, no es necesario inventar una nueva arquitectura de software para cada sistema de informacin. Lo habitual es adoptar una arquitectura conocida en funcin de sus ventajas e inconvenientes para cada caso en concreto. As, las arquitecturas ms universales son:
Monoltica. Donde el software se estructura en grupos funcionales muy acoplados. Cliente-servidor. Donde el software reparte su carga de cmputo en dos partes independientes pero sin reparto claro de funciones. Arquitectura de tres niveles. Especializacin de la arquitectura cliente-
4.PROCEDIMIENT O (DESCRIPCIN)
En equipo investigar las arquitecturas de las clases y realizar una clasificacin segn su estereotipo. Realizar un mapa conceptual considerando lo siguiente: introduccin contenido (realizar el ejemplo de arquitectura de clase), conclusiones, orden y ortografa. Las conclusiones las presentaran ante el grupo tomando en cuenta los
En que consiste la Arquitectura? Que son los estereotipos de clase? Cul es la finalidad de cada estereotipo? Qu importancia tiene para la etapa de Anlisis?
Deber anotar al menos 3 fuentes bibliogrficas consultadas, direcciones de pginas web de instituciones educativas o de investigacin
5.-RESULTADOS Y CONCLUSIONES
6.-REFERENCIAS
CARRERA
LABORATORI O DE DSW
NOMBRE DE LA PRACTICA
DURACI N(HORAS)
1.-INTRODUCCIN
2.-OBJETIVO
3.FUNDAMENTO(TEOR IA
5.-RESULTADOS Y CONCLUSIONES
6.-REFERENCIAS
NOMBRE DE LA PRACTICA
1.-INTRODUCCIN
2.-OBJETIVO
3.FUNDAMENTO(TEOR IA
4.-PROCEDIMIENTO (DESCRIPCIN)
5.-RESULTADOS Y CONCLUSIONES
6.-REFERENCIAS
NOMBRE DE LA PRACTICA
1.-INTRODUCCIN
2.-OBJETIVO
3.FUNDAMENTO(TEOR IA
4.-PROCEDIMIENTO (DESCRIPCIN)
5.-RESULTADOS Y CONCLUSIONES
6.-REFERENCIAS