miércoles, 17 de agosto de 2016

Extensiones:
Es una mejora . Una propiedad o atributo nuevo . Una innovación en la aplicacion
Las extensiones no afectan el servicio básico del app existente.
Son propiedades que se piensan buscando el beneficio . No alteran la ecuación Propósito- Recurso- Sistema
Buscamos aplicar la máxima : los procesos deben minimizarse , eliminando , combinando o simplificando procesos existentes

viernes, 12 de agosto de 2016


2- Diseño:


Es una fase conceptual , diseñar consiste en decidir una alternativa para los procesos ; seleccionando y particionando con un criterio eficiente las estructuras de información  , los procesos y algoritmos de tal forma que sea posible desarrollar aplicaciones que impacten positivamente (mejorando)  en el sistema concreto servido.
Creo que es un acto unipersonal , eso asegura unidad conceptual . Los diseños por comité han sido de utilidad para sistemas o aplicaciones muy ambiciosas , muchas fueron un exceso de burocracia en su desarrollo y en sus resultados
Arquitectura
la arquitectura de software trata con el diseño e implementación de las estructuras de alto nivel del soft. Es el resultado de ensamblar un cierto numero de elementos en componentes bien seleccionados para satisfacer la mayor parte de los requerimientos de funcionalidad y perfomance del sistema, como también otros requerimientos no funcionales como escalabilidad , portabilidad  ,confiabilidad
Perry y wolfe lo puso en una formula modificada por bohem
Software architecture = {Elements, Forms, Rationale/Constraints}
La arquitectura de software lidia con abstracción,descomposición y composición, con estilo y estética

Especificación
1. Definición del problema
2. Descripción funcional
3. Restricciones
4. Diagramas de flujo de datos
5. Modelo de datos
6. Diccionario de datos
7. Casos de uso
8. Documentos adicionales

 La especificación y el código son descripciones formales del resultado
– Tal vez en diferentes niveles de abstracción
– Tal vez con distinto detalle
– Tal vez con otro nivel de declaratividad
– Las dos pueden tener errores
La especificación  se verifica; el software se prueba
Al software lo probamos ejecutando test con la computadora
Si la especificacion esta descripta utilizando un lenguaje formal , entonces la vinificación puede hacerse con la computadora
Si no tenemos especificación, no hay  control
Las especificaciones se presentan como
   1- Documentar el proceso
   2- Documentar el producto