background preloader

Unified Modeling Language

Unified Modeling Language
Un article de Wikipédia, l'encyclopédie libre. Pour les articles homonymes, voir UML. En informatique UML (de l'anglais Unified Modeling Language), ou Langage de modélisation unifié, est un langage de modélisation graphique à base de pictogrammes. Il est utilisé en développement logiciel, et en conception orientée objet. UML est l'accomplissement de la fusion de précédents langages de modélisation objet : Booch, OMT, OOSE. UML est utilisé pour spécifier, visualiser, modifier et construire les documents nécessaires au bon développement d'un logiciel orienté objet. Activité d'un objet/logicielActeursProcessusSchéma de base de donnéesComposants logicielsRéutilisation de composants Les méthodes objets ont commencé à émerger au début des années 80, ces méthodes avaient pour but de remplacer les méthodes structurée et fonctionnelles, trop liés à la machine. En janvier 1997, UML est devenu un standard OMG. Les standards UML 1.x restent largement influencés par la notation OMT.

Model driven architecture Un article de Wikipédia, l'encyclopédie libre. L’architecture dirigée par les modèles ou MDA (pour l'anglais Model Driven Architecture) est une démarche de réalisation de logiciels, proposée et soutenue par l'OMG. C'est une variante particulière de l'ingénierie dirigée par les modèles (IDM, ou MDE pour l'anglais Model Driven Engineering). D'autres variantes de l'IDM ont été développées, par exemple par Microsoft (DSL Tools). Introduction[modifier | modifier le code] L'OMG fournit des spécifications des standards plutôt que des implémentations, le plus souvent après avoir reçu une demande de proposition (Request for Proposals). Les standards liés au MDA[modifier | modifier le code] L'approche MDA est liée à de nombreux standards tels que : CWM (Common Warehouse Metamodel)EDOC (Enterprise Distributed Object Computing)MOF (Meta-Object Facility)MOFM2T (MOF Model-to-Text language)QVTSPEM (Software Process Engineering Metamodel)UML (Unified Modeling Language)XMI (XML Metadata Interchange)etc.

create UML modeling and diagrams UML models help you understand, discuss, and design software systems. Visual Studio Ultimate provides templates for five of the most frequently used UML diagrams: activity, class, component, sequence, and use case. In addition, you can create layer diagrams, which help you define the structure of your system. You need Visual Studio Ultimate to create UML models. UML modeling diagrams and layer diagrams can exist only inside a modeling project. You need Visual Studio Ultimate to create modeling projects. To create a diagram and add it to a project On the Architecture menu, choose New Diagram. If your solution is open, the new project is added to the solution. If you already have a modeling project, you can also use the following procedure. To add a diagram to an existing modeling project In Solution Explorer, click the modeling project node. To create a blank modeling project On the File menu, point to New, and then click Project. To permanently delete a diagram from a project

Architecture orientée services Un article de Wikipédia, l'encyclopédie libre. Pour les articles homonymes, voir SOA. Ce terme est apparu au cours de la période 2000-2001[1] et concernait à l'origine essentiellement les problématiques d'interopérabilité syntaxique en relation avec les technologies d'informatique utilisées en entreprise. Historique[modifier | modifier le code] Au cours de la décennie 1980-1990, la problématique de l'interopérabilité des systèmes d'information, particulièrement complexe lors de fusion ou de l'acquisition d'entreprises, a donné naissance au domaine de recherche de l'interopérabilité des données ; c'est à cette époque que l'on distingua l'interopérabilité syntaxique de l'interopérabilité sémantique des données. Les deux principales exigences fonctionnelles qui se sont dégagées au cours de cette période sont : Les différents producteurs d'information doivent pouvoir continuer à utiliser leur système de façon transparente. Les concepts[modifier | modifier le code] La définition des WebServices

UML modeling and code generation in Visual Studio 2010 This article provides an overview of UML modeling in Visual Studio 2010. Assuming that reader is already familiar with UML, it focuses on custom UML profiles - an extensibility mechanism that can be used to tailor UML models to a particular problem domain. Readers will see an example of such a profile, which extends UML Class Diagrams for database modeling. Finally, the article shows how code can be generated from UML models using T4 text templates. This article is based on Beta 2 of Visual Studio 2010 Ultimate Edition. To follow the code example you may also want to install T4 Editor which provides color syntax highlighting and IntelliSense for text templates in Visual Studio. UML Modeling in Visual Studio In order to start using UML diagrams in Visual Studio 2010, you first need to create a Modeling Project. Once you have the project created, you can add new diagrams to it. Here is an example of class diagram you can create. UML Profiles Custom UML Profiles Sample Database Profile <? UML vs.

Capability Maturity Model Integration Un article de Wikipédia, l'encyclopédie libre. CMMI, sigle de Capability Maturity Model + Integration, est un modèle de référence, un ensemble structuré de bonnes pratiques, destiné à appréhender, évaluer et améliorer les activités des entreprises d'ingénierie. CMMI a été développé par le Software Engineering Institute de l'université Carnegie-Mellon, initialement pour appréhender et mesurer la qualité des services rendus par les fournisseurs de logiciels informatiques du département de la Défense des États-Unis(DoD). Il est maintenant largement employé par les entreprises d'ingénierie informatique, les directeurs des systèmes informatiques et les industriels pour évaluer et améliorer leurs propres développements de produits[1]. Le modèle CMMI[modifier | modifier le code] CMMI est un cadre générique de processus qui se décline en trois modèles (appelés constellations) : Maturité[modifier | modifier le code] Historique[modifier | modifier le code] « Initial » (niveau de maturité 1)

enterprise architect - UML modeling tool Lean software development Lean software development (LSD) is a translation of lean manufacturing and lean IT principles and practices to the software development domain. Adapted from the Toyota Production System,[1] a pro-lean subculture is emerging from within the Agile community. Origin[edit] The term lean software development originated in a book by the same name, written by Mary Poppendieck and Tom Poppendieck.[2] The book presents the traditional lean principles in a modified form, as well as a set of 22 tools and compares the tools to agile practices. Lean principles[edit] Lean development can be summarized by seven principles, very close in concept to lean manufacturing principles: Eliminate waste[edit] In order to eliminate waste, one should be able to recognize it. A value stream mapping technique is used to identify waste. Amplify learning[edit] Software development is a continuous learning process with the additional challenge of development teams and end product sizes. Decide as late as possible[edit]

argouml.tigris.org Agile software development Agile software development is a set of principles for software development in which requirements and solutions evolve through collaboration between self-organizing,[1] cross-functional teams. It promotes adaptive planning, evolutionary development, early delivery, and continuous improvement, and it encourages rapid and flexible response to change.[2] Agile itself has never defined any specific methods to achieve this, but many have grown up as a result and have been recognized as being 'Agile'. The Manifesto for Agile Software Development,[3] also known as the Agile Manifesto, was first proclaimed in 2001, after "agile methodology" was originally introduced in the late 1980s and early 1990s. History[edit] Incremental software development methods trace back to 1957.[6] In 1974, E. The Agile Manifesto[edit] In February 2001, 17 software developers[12] met at the Snowbird resort in Utah to discuss lightweight development methods. Agile principles[edit] Evolutions[edit] Overview[edit] RAD[edit]

Unified Process The Unified Software Development Process or Unified Process is a popular iterative and incremental software development process framework. The best-known and extensively documented refinement of the Unified Process is the Rational Unified Process (RUP). Other examples are OpenUP and Agile Unified Process. Profile of a typical project showing the relative sizes of the four phases of the Unified Process. Overview[edit] The Unified Process is not simply a process, but rather an extensible framework which should be customized for specific organizations or projects. The name Unified Process as opposed to Rational Unified Process is generally used to describe the generic process, including those elements which are common to most refinements. In 2012 the Disciplined Agile Delivery framework was released, a hybrid framework that adopts and extends strategies from Unified Process, Scrum, XP, and other methods. Unified Process Characteristics[edit] Iterative and Incremental[edit] Risk Focused[edit]

The New Methodology In the past few years there's been a blossoming of a new style of software methodology - referred to as agile methods. Alternatively characterized as an antidote to bureaucracy or a license to hack they've stirred up interest all over the software landscape. In this essay I explore the reasons for agile methods, focusing not so much on their weight but on their adaptive nature and their people-first orientation. Probably the most noticeable change to software process thinking in the last few years has been the appearance of the word 'agile'. We talk of agile software methods, of how to introduce agility into a development team, or of how to resist the impending storm of agilists determined to change well-established practices. This new movement grew out of the efforts of various people who dealt with software process in the 1990s, found them wanting, and looked for a new approach to software process. This essay was originally part of this movement. From Nothing, to Monumental, to Agile .

Lean as the solution to scale agile methodologies Agile Methodologies have already proven how efficient they are when applied on small teams to deliver software with great quality, predictability while nurturing team spirit and fostering people engagement. There are tons of literature on that very subject out there and, in 2010, Gartner predicted that by 2012 80% of software development project will be carried out using Agile methodologies. As these methodologies have proven their value and became industry standards for small projects (PMI added the PMI Agile Certified Practictioner as a new certification which says a lot about how well this methodological toolbox has been integrated into corporatica), the detractor voices became less and less audible but for one point : scalability. The official anti-agile persona (usually not comfortable with the change of culture related to the implementation of Agile methodologies) know they have a point here : how to scale agile on large projects with many teams ? The scalability conundrum

Related: