UNA VISION GENERICA
La practica de la ingenieria de software es una coleccion de conceptos,principios, metodos y herramientas a las que un ingeniero de software recurre a diario.
George Polya propone la esencia de la resolucion de problemas y en consecuencia la esencia de la ingenieria del software en los siguientes puntos.
Entender el problema(comunicacion y analisis)
Planear la solucionn (modelado y diseño)
Llevar a cabo el plan (generado de codigo)
Examinar el resultado para probar presicion(realizar pruebas y asegurar la calidad)
En el contexto de la ingenieria de software estos pasos nos conducen a las preguntas.
ENTENDER EL PROBLEMA
¿a quien le interesa la solucion del problema? es decir ¿quienes son los clientes?
¿el problema puede dividirse en categorias?
¿que aspectos se desconocen?
¿el problema puede representarse de manera grafica?
PLANEAR LA SOLUCION
¿Se habian visto problemas similares antes?
¿se han resueltos problemas similares?
¿se pueden definir subproblemas?
¿se puede definir una solucion que conduzca a una implementacion efectiva?
LLEVAR A CABO EL PLAN
¿La solucion marcha conforme al plan?
¿es probable que cada parte de la solucion sea correcta?
EXAMINAR EL RESULTADO
¿es posible probar cada parte de la solucion del componente?
¿la solucion produce resultados requeridos ?
antes de iniciar un proyecto de software se debe estar seguro que se tiene una propuesta de negocio y que el usuario percibe un valor en el.
UN PRINCIPIO es una ley o supuesto importante que se requiere en un sistema de pensamiento y a continuacion se presentan siete principios de la ingenieria de software.
1. La razon por lo que todo existe
un software existe para ofrecer algun valor al usuario.
2. Mantenerlo simple
todo sistema debe ser tan simple como sea posible pero no mas simple
3.Mantener la vision
una vision clara es escencial para un proyecto de software
4. lo que uno produzca otros lo consumiran
un software util si tiene valor este cambiara a lo largo del tiempo y por lo tanto debe definirse de manera que otros puedan darle mantenimiento.
5.Estar abierto al futuro.
nunca se debe diseñar para llegar a la esquina.
6.Planear para la reutilizacion
7.Pensar
cuando se tiene un pensamiento claro y completo antes de la accion se producen mejores resultados.
PRINCIPIOS DE COMUNICACION
1. Escuchar
2. Preparase Antes de comunicar
3. Alguien debe facilitar la actividad
4. La comunicacion cara a cara es lo mejor.
5. tomar nota y documentar las desiciones
7. Conservar el enfoque examinar un modulo a la vez
8. Si algo no esta claro se hace un dibujo
9. Si se llega a un acuerdo, o no se llega y existe algo que no puede quedar claro sedebe continuar.
10. La negociacion no es un concurso o un juego es mejor si ambas partes ganan.
Antes de comunicar se debe estar seguro de entender el punto de vista de la otra parte, saber un poco de sus necesidades y entonces opinar
PLANEACION
es importante hacer una planeacion no muy detallada pero tampoco escasa.
1. Entender alcances del proyecto.
2. Involucrar al cliente en actividades de planeacion.
3. Reconocer que la planeacion es iterativa.
4. Estimar en base al conocimiento disponible.
5. Considerar el riesgo cuando se define el plan
6. ser realista
7. ajustar la granularidad mientras se define un plan, granularidad es el grado de detalle que se introduce conforme se desarrolla un plan.
8. Definir como se intentara asegurar la calidad.
9. Describir como se pretende incluir el cambio.
10. Adaptar el plan a menudo y hacer ajustes cuando estos se requieran.
PRACTICAS DE MODELADO
PRINCIPIOS DE MODELADO DE ANALISIS
1. El dominio de informacion de un problema debe representarse y entenderse
2. se debe definir las funciones que ejecuta el software
3. Se debe representar el comportamiento del software
4. Los modelos que respresentan informacion, funcion y comportamiento deben partirse de forma que se descubra el detalle de una manera estratificada
5. la tarea de analisis debe moverse de la informacion esencial hacia el detalle de implementacion.
PRINCIPIOS DE MODELADO DE DISEÑO
1. el modelo debe ser rastreable hasta el modelo de analisis
2. siempre se debe considerar la arquitectura del sistema que se va a construir
3. El diseño de datos es tan importante como el diseño de funciones de procesamiento
4. Las interfaces internas y externas deben diseñarse con cuidado.
5. El diseño de la interfaz de usuario debe ajustarse a las necesidades del usuario final.
6. El diseño a nivel de componentes debe ser independiente del modo funcional
7. los componentes deben estar apareados entre si en forma minima y vinculados con el ambiente externo.
8. Las presentacion del modelo deben ser faciles y comprensibles
9. El diseño debe desarrollarse en forma iterativa y en cada iteracion el diseñador debe buscar mayor simplicidad.
PRINCIPIOS Y CONCEPTOS DE CODIFICACION
PRINCIPIOS DE PREPARACION
1. Entender el problema que se intenta resolver.
2. entender los conceptos y principios basicos del diseño.
3. escoger un lenguaje de programacion que satisfaga las necesidades del software que se va a construir y el ambiente que va a operar.
4. Seleccionar un ambiente de programacion que proporcione herramientas que faciliten el trabajo.
5. Crear un conjunto de pruebas de unidad que seran aplicadas una vez que se complete el componente que se va a codificar.
PRINCIPIOS DE CODIFICACION
1. Restringir los algoritmos al seguir la practica de programacion estructurada
2. Seleccionar estructuras de datos que satisfagan las necesidades del diseño
3. Entender la arquitectura del software y crear interfaces que sean consistentes con ella.
4. Mantener la logica condicional tan simple como sea posible.
5. Crear ciclos anidados en forma que sean faciles de probar.
6. seleccionar nombres de variables significativas y seguir otros estandares locales de codificacion.
7. Escribir codigo que tenga documentacion propia
8. crear una configuracion lienal
PRINCIPIOS DE VALIDACION
1. Conducir un ensayo de codigo cuando sea apropidado
2. Realizar pruebas de unidad y corregir los errores que se hayan descubierto
3. refabricar codigo
PRINCIPIOS DE PRUEBAS
El objetivo de las pruebas es encontrar errores dificiles de encontrar.
1. todas las pruebas deben ser rastreables hasta los requisitos
2. las pruebas se deben planear mucho antes que comience el proceso de pruebas
3. el principo de pareto es aplicable para las pruebas de software
4. las pruebas deben comenzar en lo pequeño y avanzar hacia lo grande
5. las pruebas exahustivas no son posibles.
PRINCIPIOS DESPLIEGUE
las actividades de despliegue abarca tres acciones, entreaga soporte y retroalimentacion.
1. Se deben administrar las expectativas del cliente.
2. se debe ensamplar y probar un paquete de entrega completo
3. se debe establecer un regimen de soporte antes de entregar
4. se debe proporcional material instructivo apropiado a los usuarios finales.
5. el software con errores se debe arreglar primero entregarse despues.
la practica de la ingenieria desoftwar incluye, metodos principios y herrammientas que se utilizan durante todo el proseso de desarrollo de software y es importante tomarlos como ejemplo o experiencia documentada que puede ser de gran utilidad.
La practica de la ingenieria de software es una coleccion de conceptos,principios, metodos y herramientas a las que un ingeniero de software recurre a diario.
George Polya propone la esencia de la resolucion de problemas y en consecuencia la esencia de la ingenieria del software en los siguientes puntos.
Entender el problema(comunicacion y analisis)
Planear la solucionn (modelado y diseño)
Llevar a cabo el plan (generado de codigo)
Examinar el resultado para probar presicion(realizar pruebas y asegurar la calidad)
En el contexto de la ingenieria de software estos pasos nos conducen a las preguntas.
ENTENDER EL PROBLEMA
¿a quien le interesa la solucion del problema? es decir ¿quienes son los clientes?
¿el problema puede dividirse en categorias?
¿que aspectos se desconocen?
¿el problema puede representarse de manera grafica?
PLANEAR LA SOLUCION
¿Se habian visto problemas similares antes?
¿se han resueltos problemas similares?
¿se pueden definir subproblemas?
¿se puede definir una solucion que conduzca a una implementacion efectiva?
LLEVAR A CABO EL PLAN
¿La solucion marcha conforme al plan?
¿es probable que cada parte de la solucion sea correcta?
EXAMINAR EL RESULTADO
¿es posible probar cada parte de la solucion del componente?
¿la solucion produce resultados requeridos ?
antes de iniciar un proyecto de software se debe estar seguro que se tiene una propuesta de negocio y que el usuario percibe un valor en el.
UN PRINCIPIO es una ley o supuesto importante que se requiere en un sistema de pensamiento y a continuacion se presentan siete principios de la ingenieria de software.
1. La razon por lo que todo existe
un software existe para ofrecer algun valor al usuario.
2. Mantenerlo simple
todo sistema debe ser tan simple como sea posible pero no mas simple
3.Mantener la vision
una vision clara es escencial para un proyecto de software
4. lo que uno produzca otros lo consumiran
un software util si tiene valor este cambiara a lo largo del tiempo y por lo tanto debe definirse de manera que otros puedan darle mantenimiento.
5.Estar abierto al futuro.
nunca se debe diseñar para llegar a la esquina.
6.Planear para la reutilizacion
7.Pensar
cuando se tiene un pensamiento claro y completo antes de la accion se producen mejores resultados.
PRINCIPIOS DE COMUNICACION
1. Escuchar
2. Preparase Antes de comunicar
3. Alguien debe facilitar la actividad
4. La comunicacion cara a cara es lo mejor.
5. tomar nota y documentar las desiciones
7. Conservar el enfoque examinar un modulo a la vez
8. Si algo no esta claro se hace un dibujo
9. Si se llega a un acuerdo, o no se llega y existe algo que no puede quedar claro sedebe continuar.
10. La negociacion no es un concurso o un juego es mejor si ambas partes ganan.
Antes de comunicar se debe estar seguro de entender el punto de vista de la otra parte, saber un poco de sus necesidades y entonces opinar
PLANEACION
es importante hacer una planeacion no muy detallada pero tampoco escasa.
1. Entender alcances del proyecto.
2. Involucrar al cliente en actividades de planeacion.
3. Reconocer que la planeacion es iterativa.
4. Estimar en base al conocimiento disponible.
5. Considerar el riesgo cuando se define el plan
6. ser realista
7. ajustar la granularidad mientras se define un plan, granularidad es el grado de detalle que se introduce conforme se desarrolla un plan.
8. Definir como se intentara asegurar la calidad.
9. Describir como se pretende incluir el cambio.
10. Adaptar el plan a menudo y hacer ajustes cuando estos se requieran.
PRACTICAS DE MODELADO
PRINCIPIOS DE MODELADO DE ANALISIS
1. El dominio de informacion de un problema debe representarse y entenderse
2. se debe definir las funciones que ejecuta el software
3. Se debe representar el comportamiento del software
4. Los modelos que respresentan informacion, funcion y comportamiento deben partirse de forma que se descubra el detalle de una manera estratificada
5. la tarea de analisis debe moverse de la informacion esencial hacia el detalle de implementacion.
PRINCIPIOS DE MODELADO DE DISEÑO
1. el modelo debe ser rastreable hasta el modelo de analisis
2. siempre se debe considerar la arquitectura del sistema que se va a construir
3. El diseño de datos es tan importante como el diseño de funciones de procesamiento
4. Las interfaces internas y externas deben diseñarse con cuidado.
5. El diseño de la interfaz de usuario debe ajustarse a las necesidades del usuario final.
6. El diseño a nivel de componentes debe ser independiente del modo funcional
7. los componentes deben estar apareados entre si en forma minima y vinculados con el ambiente externo.
8. Las presentacion del modelo deben ser faciles y comprensibles
9. El diseño debe desarrollarse en forma iterativa y en cada iteracion el diseñador debe buscar mayor simplicidad.
PRINCIPIOS Y CONCEPTOS DE CODIFICACION
PRINCIPIOS DE PREPARACION
1. Entender el problema que se intenta resolver.
2. entender los conceptos y principios basicos del diseño.
3. escoger un lenguaje de programacion que satisfaga las necesidades del software que se va a construir y el ambiente que va a operar.
4. Seleccionar un ambiente de programacion que proporcione herramientas que faciliten el trabajo.
5. Crear un conjunto de pruebas de unidad que seran aplicadas una vez que se complete el componente que se va a codificar.
PRINCIPIOS DE CODIFICACION
1. Restringir los algoritmos al seguir la practica de programacion estructurada
2. Seleccionar estructuras de datos que satisfagan las necesidades del diseño
3. Entender la arquitectura del software y crear interfaces que sean consistentes con ella.
4. Mantener la logica condicional tan simple como sea posible.
5. Crear ciclos anidados en forma que sean faciles de probar.
6. seleccionar nombres de variables significativas y seguir otros estandares locales de codificacion.
7. Escribir codigo que tenga documentacion propia
8. crear una configuracion lienal
PRINCIPIOS DE VALIDACION
1. Conducir un ensayo de codigo cuando sea apropidado
2. Realizar pruebas de unidad y corregir los errores que se hayan descubierto
3. refabricar codigo
PRINCIPIOS DE PRUEBAS
El objetivo de las pruebas es encontrar errores dificiles de encontrar.
1. todas las pruebas deben ser rastreables hasta los requisitos
2. las pruebas se deben planear mucho antes que comience el proceso de pruebas
3. el principo de pareto es aplicable para las pruebas de software
4. las pruebas deben comenzar en lo pequeño y avanzar hacia lo grande
5. las pruebas exahustivas no son posibles.
PRINCIPIOS DESPLIEGUE
las actividades de despliegue abarca tres acciones, entreaga soporte y retroalimentacion.
1. Se deben administrar las expectativas del cliente.
2. se debe ensamplar y probar un paquete de entrega completo
3. se debe establecer un regimen de soporte antes de entregar
4. se debe proporcional material instructivo apropiado a los usuarios finales.
5. el software con errores se debe arreglar primero entregarse despues.
la practica de la ingenieria desoftwar incluye, metodos principios y herrammientas que se utilizan durante todo el proseso de desarrollo de software y es importante tomarlos como ejemplo o experiencia documentada que puede ser de gran utilidad.
Comentarios
gracias por el aporte