Close
  • Latest News
  • Cybersecurity
  • Big Data and Analytics
  • Cloud
  • Mobile
  • Networking
  • Storage
  • Applications
  • IT Management
  • Small Business
  • Development
  • Database
  • Servers
  • Android
  • Apple
  • Innovation
  • Blogs
  • PC Hardware
  • Reviews
  • Search Engines
  • Virtualization
Read Down
Sign in
Close
Welcome!Log into your account
Forgot your password?
Read Down
Password recovery
Recover your password
Close
Search
Menu
Search
  • Latest News
  • Cybersecurity
  • Big Data and Analytics
  • Cloud
  • Mobile
  • Networking
  • Storage
  • Applications
  • IT Management
  • Small Business
  • Development
  • Database
  • Servers
  • Android
  • Apple
  • Innovation
  • Blogs
  • PC Hardware
  • Reviews
  • Search Engines
  • Virtualization
More
    Home Applications
    • Applications
    • Development

    UML Integration Reaches Impressive Degree

    By
    Peter Coffee
    -
    March 7, 2005
    Share
    Facebook
    Twitter
    Linkedin

      Supporting collaborative software efforts requires skill and effort in identifying relationships, avoiding misunderstandings and building a sense of shared commitment to mutual goals—what some might call, popularly if not rigorously, “right-brain” tasks.

      Those goals are aided, though, by informed choice and skillful use of “left-brain” formalisms and tools such as specification languages and diagramming conventions, module interface definitions and contracts, software asset management libraries, and a growing variety of highly polished collaboration environments.

      UML (Unified Modeling Language), defined and maintained by the nonprofit Object Management Group industry consortium, enjoys growing acceptance. For software architects and developers as well as business process owners, UML serves as a common notation that can express fairly high-level workflows and lower-level implementation details. Development teams must realize, though, that some UML notations arent familiar or obvious to nontechnical participants in their projects.

      “Graphical representation of implementation details is often misleading for non-UML experts. For example, navigation arrows are often mistaken for flows,” warned Danish developer Pavel Hruby in a paper presented at a workshop during the 1998 Object-Oriented Programming Systems, Languages and Applications conference in Vancouver, British Columbia. “It is advisable to use only a certain subset of UML representation options. For example, it is better to show compositions by placing elements inside each other rather than by using associations with filled diamonds.”

      Any given UML diagram means exactly one thing to a UML expert, but there may be more than one way to express that meaning in valid UML. In such a case, developers would do well to make the effort to use the UML representation thats least likely to be misunderstood by others.

      UML tool integration has been one of the defining trends of the software development environments delivered by major toolmakers in the past several years, and that integration has reached an impressive degree of seamless interaction between diagrams and conventional source code views.

      Borland Software Corp.s JBuilder, Oracle Corp.s JDeveloper and Sun Microsystems Inc.s Java Studio Enterprise lead eWEEK Labs list of UML integration exemplars, and its no coincidence that all are Java environments. They gain leverage from the rigor of Javas end-to-end object orientation to offer a complete picture of the relationships among an applications elements.

      /zimages/5/28571.gifClick here to read a review of Suns Java Studio Enterprise 7.

      The interface definitions of object-oriented development tools aid collaboration by letting developers strictly limit the view that one module can have of whats happening inside another. This ensures that a development team can refine internal implementations with confidence that they are not disrupting the dependent code of collaborators whom they may never meet.

      Going beyond mere interface discipline, though, is the notion of “programming by contract” that was pioneered by Bertrand Meyer and is exemplified in his programming language Eiffel. Stating explicit preconditions and post-conditions to be verified before and after calls by one module to another, the contract approach—which can also be used in the form of assertions in C++ or Java—is a potent tool.

      Developer productivity rises dramatically when aids such as UML diagramming or assertion-based verification are mainstreamed into developers tool sets rather than applied as magic fairy dust by specialists with their own tools in a later stage of a project. “When youre in the flow, you want to stay in the flow,” said Brent Carlson, vice president of technology at LogicLibrary Inc., in Pittsburgh. “When a developer is under the gun, that can make a big difference.”

      LogicLibrarys flagship product, Logidex, provides code asset management and development governance tools of growing interest to large teams. Developer collaboration and process management tools are also a major focus of other toolmakers, including Borland and Microsoft Corp. Borlands introduction last month of its Borland Core Software Delivery Platform and Microsofts promised release of its Visual Studio Team System later this year give developers cause for hope that more collaboration help is on the way.

      /zimages/5/28571.gifCheck out eWEEK.coms for the latest news, reviews and analysis about productivity and business solutions.

      Avatar
      Peter Coffee
      Peter Coffee is Director of Platform Research at salesforce.com, where he serves as a liaison with the developer community to define the opportunity and clarify developers' technical requirements on the company's evolving Apex Platform. Peter previously spent 18 years with eWEEK (formerly PC Week), the national news magazine of enterprise technology practice, where he reviewed software development tools and methods and wrote regular columns on emerging technologies and professional community issues.Before he began writing full-time in 1989, Peter spent eleven years in technical and management positions at Exxon and The Aerospace Corporation, including management of the latter company's first desktop computing planning team and applied research in applications of artificial intelligence techniques. He holds an engineering degree from MIT and an MBA from Pepperdine University, he has held teaching appointments in computer science, business analytics and information systems management at Pepperdine, UCLA, and Chapman College.

      MOST POPULAR ARTICLES

      Android

      Samsung Galaxy XCover Pro: Durability for Tough...

      Chris Preimesberger - December 5, 2020 0
      Have you ever dropped your phone, winced and felt the pain as it hit the sidewalk? Either the screen splintered like a windshield being...
      Read more
      Cloud

      Why Data Security Will Face Even Harsher...

      Chris Preimesberger - December 1, 2020 0
      Who would know more about details of the hacking process than an actual former career hacker? And who wants to understand all they can...
      Read more
      Cybersecurity

      How Veritas Is Shining a Light Into...

      eWEEK EDITORS - September 25, 2020 0
      Protecting data has always been one of the most important tasks in all of IT, yet as more companies become data companies at the...
      Read more
      Big Data and Analytics

      How NVIDIA A100 Station Brings Data Center...

      Zeus Kerravala - November 18, 2020 0
      There’s little debate that graphics processor unit manufacturer NVIDIA is the de facto standard when it comes to providing silicon to power machine learning...
      Read more
      Apple

      Why iPhone 12 Pro Makes Sense for...

      Wayne Rash - November 26, 2020 0
      If you’ve been watching the Apple commercials for the past three weeks, you already know what the company thinks will happen if you buy...
      Read more
      eWeek


      Contact Us | About | Sitemap

      Facebook
      Linkedin
      RSS
      Twitter
      Youtube

      Property of TechnologyAdvice.
      Terms of Service | Privacy Notice | Advertise | California - Do Not Sell My Information

      © 2021 TechnologyAdvice. All Rights Reserved

      Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.

      ×