El modelado es el diseño de aplicaciones de software antes de codificar. Modeling is an Essential Part of large software projects, and helpful to medium and even small projects as well



Descargar 26,45 Kb.
Fecha de conversión05.08.2017
Tamaño26,45 Kb.
OMG UML

El modelado es el diseño de aplicaciones de software antes de codificar. Modeling is an Essential Part of large software projects, and helpful to medium and even small projects as well. El modelado es una parte esencial de grandes proyectos de software, y útil para los soportes o incluso en proyectos pequeños también. A model plays the analogous role in software development that blueprints and other plans (site maps, elevations, physical models) play in the building of a skyscraper. Un modelo juega un papel análogo en el desarrollo de software que los planos de otro tipo (mapas del sitio, elevaciones, modelos físicos) juegan en la construcción de un rascacielos. Using a model, those responsible for a software development project's success can assure themselves that business functionality is complete and correct, end-user needs are met, and program design supports requirements for scalability, robustness, security, extendibility, and other characteristics, before implementation in code renders changes difficult and expensive to make. Utilizando un modelo, los responsables de software de desarrollo del proyecto un éxito puede asegurarse que la funcionalidad de negocio es completa y correcta, las necesidades del usuario final se cumplen, y el diseño del programa apoya las necesidades de escalabilidad, robustez, seguridad, capacidad de ampliación, y otras características, antes de su ejecución hace cambios en el código de difícil y costoso de hacer. Surveys show that large software projects have a huge probability of failure - in fact, it's more likely that a large software application will fail to meet all of its requirements on time and on budget than that it will succeed. Las encuestas muestran que los grandes proyectos de software tienen una probabilidad de fracaso enorme - de hecho, es más probable que una aplicación de software grandes no va a cumplir todos sus requerimientos en tiempo y presupuesto que el que tendrá éxito. If you're running one of these projects, you need to do all you can to increase the odds for success, and modeling is the only way to visualize your design and check it against requirements before your crew starts to code. Si utilizas uno de estos proyectos, es necesario hacer todo lo posible para aumentar las probabilidades de éxito, y la modelización es la única manera de visualizar su diseño y de verificación contra los requisitos antes de que su equipo inicia con el código.

Raising the Level of Abstraction: Models help us by letting us work at a higher level of abstraction. Elevar el nivel de abstracción: Modelos ayudarnos dejarnos trabajar a un nivel más alto de abstracción. A model may do this by hiding or masking details, bringing out the big picture, or by focusing on different aspects of the prototype. Un modelo puede hacer esto al ocultar o enmascarar los detalles, con lo que el cuadro grande, o centrándose en diferentes aspectos del prototipo. In UML 2.0, you can zoom out from a detailed view of an application to the environment where it executes, visualizing connections to other applications or, zoomed even further, to other sites. En UML 2.0, puede alejar la imagen de una vista detallada de una aplicación en el entorno donde se ejecuta, visualizando las conexiones a otras aplicaciones o, ampliada aún más, a otros sitios. Alternatively, you can focus on different aspects of the application, such as the business process that it automates, or a business rules view. Alternativamente, usted puede centrarse en diferentes aspectos de la aplicación, como el proceso de negocio que automatiza, o una vista de las reglas de negocio. The new ability to nest model elements, added in UML 2.0, supports this concept directly. La nueva capacidad de los elementos del modelo nido, agregó en UML 2.0, apoya este concepto directamente.

The OMG's Unified Modeling Language™ ( UML® ) OMG Lenguaje Unificado de Modelado El ™ (UML ®) helps you specify, visualize, and document models of software systems, including their structure and design, in a way that meets all of these requirements. le ayuda a especificar, visualizar y modelos de documentos de los sistemas de software, incluida su estructura y diseño, de manera que cumpla con todos estos requisitos. (You can use UML for business modeling and modeling of other non-software systems too.) Using any one of the large number of UML-based tools on the market, you can analyze your future application's requirements and design a solution that meets them, representing the results using UML 2.0's thirteen standard diagram types . (Usted puede usar UML para el modelado de negocios y modelado de la no-software de otros sistemas también.) Utilizar cualquiera de la gran cantidad de herramientas basadas en UML en el mercado, usted puede analizar el futuro de aplicaciones de requisitos posible y diseñar una solución que les satisface, que representa los resultados usando UML 2.0 's trece tipos de diagramas estándar .

You can model just about any type of application, running on any type and combination of hardware, operating system, programming language, and network, in UML. Usted puede modelar casi cualquier tipo de aplicación, que se ejecutan en cualquier tipo y combinación de hardware, sistema operativo, lenguaje de programación, y la red, en UML. Its flexibility lets you model distributed applications that use just about any middleware on the market. Built upon fundamental OO concepts including class and operation , it's a natural fit for object-oriented languages and environments such as C++, Java, and the recent C#, but you can use it to model non-OO applications as well in, for example, Fortran, VB, or COBOL. UML Profiles (that is, subsets of UML tailored for specific purposes) help you model Transactional, Real-time, and Fault-Tolerant systems in a natural way. Su flexibilidad le permite el modelo de aplicaciones distribuidas que utilizan casi cualquier middleware en el mercado. Construido en base a conceptos OO fundamentales incluyendo aquellos en clase y funcionamiento, es un paso natural para los lenguajes orientados-objeto y entornos, tales como C + +, Java, y el C recientes #, pero se puede utilizar para modelar aplicaciones no-OO, así, por ejemplo, Fortran, Visual Basic, o COBOL. Perfiles UML (es decir, subconjuntos de UML a medida para fines específicos) le ayudan a modelo transaccional, en tiempo real, y culpa Tolerante a los sistemas de una manera natural.

You can do other useful things with UML too: For example, some tools analyze existing source code (or, some claim, object code!) and reverse-engineer it into a set of UML diagrams. Usted puede hacer otras cosas útiles con UML también: Por ejemplo, algunas herramientas de análisis de código fuente existente (o, reclamación alguna, el código objeto!) Y marcha atrás-se convierten en una serie de diagramas UML. Another example: Some tools on the market execute UML models, typically in one of two ways: Some tools execute your model interpretively in a way that lets you confirm that it really does what you want, but without the scalability and speed that you'll need in your deployed application. Otro ejemplo: algunas herramientas en el mercado ejecutar modelos UML, por lo general en una de dos maneras: Algunas herramientas de ejecutar el modelo interpretativo de una manera que le permite confirmar que realmente hace lo que quiere, pero sin la escalabilidad y la velocidad que usted necesita en su aplicación implementada. Other tools (typically designed to work only within a restricted application domain such as telecommunications or finance) generate program language code from UML, producing most of a bug-free, deployable application that runs quickly if the code generator incorporates best-practice scalable patterns for, eg, transactional database operations or other common program tasks. Otras herramientas (típicamente diseñado para funcionar sólo dentro de un dominio de aplicación restringida, como las telecomunicaciones o las finanzas) generar código de programa de lenguaje UML, produciendo la mayor parte de una libre de errores, la aplicación de despliegue que se ejecuta con rapidez si el generador de código incorpora las mejores prácticas patrones escalable para , por ejemplo, las operaciones de bases de datos transaccionales u otras tareas del programa común. (OMG members are working on a specification for Executable UML now.) Our final entry in this category: A number of tools on the market generate Test and Verification Suites from UML models. (Miembros de la OMG está trabajando en un pliego de condiciones de ejecutables UML ahora.) Nuestra última inclusión en esta categoría: una serie de herramientas en el mercado de prueba y generar Suites de Verificación de los modelos UML.

UML and OMG's Model Driven Architecture™ (MDA™): A few years ago (in fact, surprisingly few!), the biggest problem a developer faced when starting a distributed programming project was finding a middleware with the functionality that he needed, that ran on the hardware and operating systems running in his shop. UML y el Modelo OMG Driven Architecture ™ (MDA ™): Hace unos años A (de hecho, sorprendentemente pocos!), El mayor problema un desarrollador se enfrentan al iniciar un proyecto de programación distribuida era encontrar un middleware con la funcionalidad que necesitaba, que corría en el hardware y sistemas operativos corriendo en su tienda. Today, faced with an embarrassingly rich array of middleware platforms, the developer has three different middleware problems: First, selecting one; second, getting it to work with the other platforms already deployed not only in his own shop, but also those of his customers and suppliers; and third, interfacing to (or, worse yet, migrating to) a new "Next Best Thing" when a new platform comes along and catches the fancy of the analysts and, necessarily, CIOs everywhere. Hoy, frente a una rica variedad de plataformas middleware vergonzosamente, el desarrollador tiene tres problemas middleware diferentes: En primer lugar, seleccionar uno, en segundo lugar, conseguir que funcione con las otras plataformas que ya no se utilicen exclusivamente en su propia tienda, sino también los de sus clientes y proveedores, y tercero, la interfaz (o, peor aún, la migración a) un nuevo "The Next Best Thing", cuando una nueva plataforma viene y capturas la imaginación de los analistas y, necesariamente, los CIOs en todas partes.

With its rich palette and middleware independence, UML forms a foundation of OMG's Model Driven Architecture (MDA) . Con su rica paleta y la independencia de middleware, UML crea una base de OMG Modelo de la Arquitectura Dirigida (MDA) . In fact, a UML model can be either platform-independent or platform-specific, as we choose, and the MDA development process uses both of these forms: Every MDA standard or application is based, normatively, on a Platform-Independent Model (PIM), which represents its business functionality and behavior very precisely but does not include technical aspects. De hecho, un modelo UML puede ser independiente de la plataforma o específicos de la plataforma, como nosotros lo decidamos, y el proceso de desarrollo MDA utiliza ambas formas: Cada estándar MDA o la aplicación se basa, normativamente, en un modelo independiente de la plataforma-(PIM ), que representa a su funcionalidad de negocios y comportamiento de manera muy precisa, pero no incluye los aspectos técnicos. From the PIM, MDA-enabled development tools follow OMG-standardized mappings to produce one or more Platform-Specific Models (PSMs), also in UML, one for each target platform that the developer chooses. Desde el PIM, MDA habilitado para las herramientas de desarrollo de seguimiento normalizados asignaciones de OMG para producir uno o más modelos específicos de plataformas (PSM), también en UML, una para cada plataforma de destino que el desarrollador elige. (This conversion step is highly automated, but not magic: Before the tool produces a PSM, the developer must annotate the base PIM to produce a more specific but still platform-independent PIM that includes details of desired semantics, and guides choices that the tool will have to make. Because of the similarities among middleware platforms of a given genre - component-based, or messaging-based, for example - this guidance can be included in a PIM without rendering it platform-specific. Still, developers will have to fine-tune the produced PSMs to some extent, more in early days of MDA but less and less as tools and algorithms advance.) (Este paso de conversión está muy automatizado, pero la magia no: Antes de la herramienta genera un PSM, el desarrollador debe anotar el PIM base para producir una determinada pero independiente de la plataforma PIM que incluye más detalles de la semántica deseada, guías y opciones que la herramienta tendrá que hacer. Debido a las semejanzas entre las plataformas de middleware de un determinado género - basado en componentes, o la mensajería basada en, por ejemplo - esta guía se pueden incluir en un PIM sin hacerle la plataforma. Sin embargo, los desarrolladores tendrán que afinar el PSMs producido en cierta medida, más en los primeros días de MDA, pero cada vez menos como las herramientas y algoritmos de anticipación.)

The PSM contains the same information as an implementation, but in the form of a UML model instead of running code. El PSM contiene la misma información que una aplicación, pero en la forma de un modelo UML en lugar de ejecutar código. In the next step, the tool generates the running code from the PSM, along with other necessary files (including interface definition files if necessary, configuration files, makefiles, and other file types). En el siguiente paso, la herramienta genera el código que se ejecuta desde el PSM, junto con otros archivos necesarios (incluidos los archivos de definición de interfaz en su caso, archivos de configuración, archivos make, y el archivo de otros tipos). After giving the developer an opportunity to hand-tune the generated code, the tool executes the makefiles to produce a deployable final application. Después de dar a los desarrolladores la oportunidad de la mano con precisión el código generado, la herramienta ejecuta los makefiles para producir una aplicación final de despliegue.

MDA applications are composable : If you import PIMs for modules, services, or other MDA applications into your development tool, you can direct it to generate calls using whatever interfaces and protocols are required, even if these run cross-platform. aplicaciones de la MDA son componibles: Si importa PIM para los módulos, servicios, u otras aplicaciones de la MDA en su herramienta de desarrollo, puede dirigirla a generar llamadas utilizando cualquier interfaces y protocolos son necesarios, incluso si estas ejecutar multiplataforma. And, MDA applications are future-proof : When a new "Next Best Thing" comes on the market, OMG members will generate and standardize a mapping to it, and your vendor will upgrade his MDA-enabled tool to include it. Y, las aplicaciones de la MDA son a prueba de futuro: Cuando un nuevo "The Next Best Thing" viene en el mercado, los miembros de OMG y estandarizar generará una asignación a la misma y con su proveedor actualizará su herramienta MDA habilitado para incluirlo. Taking advantage of these developments, you will be able to generate cross-platform invocations to the new platform, and even port your existing MDA applications to it, automatically using your existing PIMs. Aprovechando estos acontecimientos, usted será capaz de generar plataformas invocaciones cruzadas a la nueva plataforma, e incluso el puerto las actuales aplicaciones de MDA a ella, automáticamente sus PIM existentes.



Models vs. Methodologies: The process of gathering and analyzing an application's requirements, and incorporating them into a program design, is a complex one and the industry currently supports many methodologies that define formal procedures specifying how to go about it . Modelos vs Metodologías: El proceso de recopilación y análisis de los requerimientos de la aplicación, y su incorporación en un diseño del programa, es complejo y la industria en la actualidad soporta muchas metodologías que definen los procedimientos formales que especifican cómo ir sobre ella . One characteristic of UML - in fact, the one that enables the widespread industry support that the language enjoys - is that it is methodology-independent . Regardless of the methodology that you use to perform your analysis and design, you can use UML to express the results. Una de las características de UML - de hecho, el que permite el apoyo generalizado de la industria que goza de la lengua - es que es independiente de la metodología. Independientemente de la metodología que se utiliza para realizar su análisis y diseño, puede usar UML para expresar la resultados. And, using XMI (XML Metadata Interchange, another OMG standard) , you can transfer your UML model from one tool into a repository, or into another tool for refinement or the next step in your chosen development process. Y, utilizando XMI (intercambio de metadatos XML, otro estándar OMG) , puede transferir su modelo UML de una herramienta en un depósito, o en otra herramienta para el refinamiento o el siguiente paso en su proceso de desarrollo elegido. These are the benefits of standardization! Estas son las ventajas de la normalización!


La base de datos está protegida por derechos de autor ©absta.info 2016
enviar mensaje

    Página principal