Anda di halaman 1dari 5

1.- Que es ingeniera de software?

La ingeniera de software es una activada de modelado. Los ingenieros de software manejan la complejidad mediante el modelado, enfocndose siempre solo en los detalles relevantes e ignorando todo lo dems. En el curso del desarrollo, los ingenieros de software construyen muchos modelos diferentes del sistema y del dominio de aplicacin. La ingeniera de software es una actividad para la solucin de problemas. Se usan los modelos para buscar una solucin aceptable. Esta bsqueda es conducida por la experimentacin. Los ingenieros de software no tienen recursos infinitos, y estn restringidos por presupuestos y tiempos de entrega. Dada la falta de una teora fundamenta, con frecuencia tienen que apoyarse en mtodos empricos para evaluar los beneficios de alternativas diferentes. La ingeniera de software es una actividad para la adquisicin de conocimiento. En el modelado de los dominios de la aplicacin y la solucin, el ingeniero de software recopila datos, los organiza en informacin y los formaliza en conocimiento. La adquisicin de conocimiento no es lineal, ya que un solo dato puede invalidar modelos completos. La ingeniera de software es una actividad dirigida por una fundamentacin. Cuando se adquiere conocimiento y se toman decisiones acerca del sistema o sus dominios de aplicacin, los ingenieros de software tambin necesitan captar el contexto en el que se tomaron las decisiones y las razones que hay tras las mismas. La informacin de la fundamentacin, representada como un conjunto de modelos de problemas, permite que los ingenieros de software comprendan las implicaciones de un cambio propuesto cuando revisan una decisin.

2.- Que son modelos de proceso? Para la mayora de los trabajos de ingeniera es bastante habitual utilizar prototipos o maquetas. Por ejemplo en arquitectura es muy comn realizar un modelo o maqueta a escala del nuevo edificio. Esto mismo sucede mecnico, elctrico, hidrulico, etc. Todos estos modelos facilitan al ingeniero la labor de comprensin de los problemas que se plantean en el nuevo sistema a desarrollar. El modelado de los sistemas realizados mediante software tambin tiene como objetivo entender mejor el funcionamiento requerido y facilitar la comprensin de los problemas planteados. Sin embargo, para este tipo de sistemas no se busca, en principio un modelo fsico de su comportamiento. En este caso, el sistema

software deber efectuar de una forma ms o menos compleja un determinado tratamiento de una informacin, y se trata de establecer modelos conceptuales que reflejen por un lado la organizacin de la informacin y por otro las diversas trasformaciones que se deben llevar a cabo con dicha informacin. Existen diversas metodologas para realizar el anlisis de los requisitos que debe cumplir un proyecto de software. Un aspecto comn a todas ellas es que tratan de facilitar la obtencin de uno o varios modelos que detallen el comportamiento deseado del sistema. El empleo de una u otra metodologa depender del tipo de aplicacin o de las preferencias del analista que elabore el modelo. Con carcter general, un modelo conceptual es todo aquello que nos permite conseguir una abstraccin lgico-matemtica del mundo real y que facilita la comprensin del problema a resolver. De manera especfica, el modelo de un sistema de software debe establecer las propiedades y restricciones del sistema. Con el modelo, siempre se tratara de orecer una visin de alto nivel. Sin descender a explicar detalles concretos del mismo. Por otro lado, el modelo debe explicitar que debe hacer el sistema y como lo debe hacer. Despus en la etapa de diseo posterior es cuando se debe concretar cmo se deben hacer las cosas As, los objetivos que se deben cubrir con los modelos se pueden concretar en los siguientes: 1. Facilitar la comprensin del problema a resolver. 2. Establecer un marco para la discusin, que simplifique y sistematice la labor tanto del anlisis inicial como de las futuras revisiones del mismo. 3. Fijar las bases para realizar el diseo. 4. Facilitar la verificacin del cumplimiento de los objetivos del sistema

3.- Hay una ingeniera de software para desarrollo de sistemas en tiempo real o sistemas embebidos?

En el desarrollo de software, manejamos el conocimiento utilizando patrones. Algunos tipos de conocimiento, como diseo de software, la tcnica de anlisis y experiencia en gestin de proyectos, se describen como patrones, compartir y reutilizar. Patrn es una descripcin reutilizable de conocimiento. Los desarrolladores pueden lograr ms eficientemente el desarrollo de software

compartiendo y reutilizando el conocimiento usando patrones

En estos das, algunos patrones en el diseo de software embebido estn disponibles en la WWW y otros recursos, tales como patrones de diseo para sistemas de tiempo real, y el catlogo de patrn de diseo incorporado. Sin embargo, el conocimiento en el diseo de software integrado se ha quedado atrs en otras reas. El conocimiento a menudo no se describe, y se hereda de forma implcita.

Dado un patrn es una descripcin de los conocimientos, la relacin entre los patrones es tambin el conocimiento. Por lo tanto, el anlisis de relacin entre los patrones es importante para determinar la actividad de conocimiento en el uso de patrones de gestin.

En general, los siguientes problemas estn relacionados con el anlisis. Analizar las relaciones entre los muchos patrones. Directamente comparar patrones en formas diferentes. Comparar directamente los patrones publicados por diferentes autores.

Por lo tanto, como aumenta el nmero de patrones, la dificultad de analizar las relaciones entre patrones aumenta.

4.- Hay modelos de proceso para el desarrollo de sistemas en tiempo real o sistemas embebidos? Con referencia a esto efectivamente hay modelos de proceso para el desarrollo de sistemas en tiempo real, como ejemplo se toma el siguiente modelo: Regarding Capabilities of Real Time Programming Platforms CTask, Java and QNX por Eduard Valentin Ni en el cual nos dice que la Informacin y procesamiento en tiempo real ( critical time processing) es un dominio extremadamente importante al que muy pocos o casi nadie le prestan la suficiente atencin. La manera en que un carro es manejado es en tiempo real. Lo mismo que un sitio de internet que garantiza respuestas a cierto patrn con un mximo de dos segundos. Por ejemplo, tambin es el caso de un editor de texto que debe responder a cada toque de una tecla en cuestin de milisegundos en orden de prevenir la molestia de los usuarios. En general un creador de software est muy preocupad a cerda de los mdulos en la aplicacin y muy seguido no repara en el funcionamiento global. En la mayora de los casos el creador de software se enfoca por mucho en la interface de uso y en la velocidad de funcionamiento de la aplicacin e ignoran completamente la organizacin de la ejecucin del software. Aunque en estos tiempos existen muchas computadoras con extraordinarios funcionamientos, la practica ha mostrado que el creador debe desarrollar un programa en el cual se asegure el termino con xito de las ejecuciones hasta un determinado periodos de tiempo, implementaciones algortmicas usando

mecanismos en tiempo real no produce una ejecucin ms rpida de las aplicaciones como se pudiera pensar, pero si lleva a una ejecucin secuencial, por lo cual puede ser dicho que en cierto momento una sola accin est en proceso (Ni, 2009, tr)