InfoQ

Interview

Ivar Jacobson on UML, MDA, and the future of methodologies

Interview with Ivar Jacobson on Oct 24, 2006

Community
Java,
Agile
Topics
Artifacts & Tools ,
Methodologies
Tags
MDA ,
AOP ,
UP ,
Innovations ,
History ,
JAOO Conference
Summary
Ivar Jacobson, one of the founders of UML, RUP, use cases, introduces his vision for a next generation development methodology that is both agile yet large like UP, by having humans collaborate with 'Intelligent Agents'. Ivar also talks about his views on UML, MDA, AOP, and the future. Recorded at JAOO (jaoo.dk).

Bio
Dr. Ivar Jacobson, co-founder of Jaczone AB, continues to be one of the great thought-leaders of the software world. He has made several seminal contributions to the field: he is one of the fathers of components and component architecture, use cases, modern business engineering, the Unified Modeling Language and the Rational Unified Process.
So IVAR you're a legend, you have been working on things for so many years, what are you doing today?
What are some of the problems with the AGILE movement?
What is the fundamental difference between tacit and explicit knowledge?
You said a process like unified can never be adopted by more than 10 % of the developer population. Why?
What will be the next generation process?
What actually is intelligent agent, is like the paper clip in Microsoft Word?
Can you describe what this might look like on a project? You have, let's say, a 30 men project are building an on-line e-commerce site where do the agents fit in, what might it look like over time?
What about pair programming, surely human interaction is more efficient than human-machine interaction?
But really how far will a process take you? Doesn't it also depend on the team: if you have a good team or a bad team, will the process really make a difference?
Do you agree that XP is largely driven by developers, whereas unified is more driven by managers?
So you would appeal that even the ultimate winner of all these religious wars is UML, yet today is being critiqued. What's your take on that?
UML seems to be becoming a programming language. Is that appropriate? What's your take on that?
So what do you think about MDA?
What do you see about AOP is it going to become as mainstream as OOP?
Any final words?
show all  show all

Related Sponsor

VersionOne is recognized by Agile practitioners as the leader in Agile project management tools. Companies such as Adobe, BBC, CNN, Dow, HP, IBM, Sony and 3M have turned to VersionOne to help deliver greater value to their customers.

Transcript errors by Nikolay Kolev Posted Nov 1, 2006 3:05 PM
Re: Transcript errors by Diana Plesa Posted Nov 2, 2006 10:54 AM
Great Interview by Ashley Aitken Posted Nov 4, 2006 4:35 AM
Re: Great Interview by Ashley Aitken Posted Nov 4, 2006 8:04 PM
Re: Great Interview by Ram Guttikonda Posted Jun 13, 2007 7:27 AM
  1. Back to top

    Transcript errors

    Nov 1, 2006 3:05 PM by Nikolay Kolev

    Great interview, but the transcript has lots of errors.

    When answering the question What actually is intelligence agents, is like the paper clip in Microsoft Word? Ivar talks about Expert Systems, not expo system, and Rule-Based Systems, not Ruby systems. Also, it's intelligent agent and not intelligence agent. Answering So what do you think about MDA? he talks about model and model-driven and not modern and modern-driven.

  2. Back to top

    Re: Transcript errors

    Nov 2, 2006 10:54 AM by Diana Plesa

    Hello Nikolay,

    i've taken of those mistakes:)

  3. Back to top

    Great Interview

    Nov 4, 2006 4:35 AM by Ashley Aitken

    Another great interview, Ivar really is a legend (in his own time I may add).

    I think his views on agile development are very true. Agile development relies on the tacit knowledge of the developer's knowing what to do in software development (the process), and hopes that each developer has the same (or similar) tacit process. I also agree that most everything in the "agile manifesto" should be assumed by default - working with the client, incremental and iterative development, ...

    However, I do think he left out one main difference (as I see it) between agile development and a more developed (for want of a better word) methodologies.

    This is the fact that (as I see it) agile development sees the source code as the primary model for the development. To me, trying to capture analysis information, design information and all other information in the source code is a nightmare. The only thing it has going for it is that it removes the redundancy that usually (but not necessarily) exists if you have multiple models.

    Cheers,
    Ashley.

    --
    Ashley Aitken
    Perth, Western Australia
    mrhatken at mac dot com

  4. Back to top

    Re: Great Interview

    Nov 4, 2006 8:04 PM by Ashley Aitken

    On more thing I forgot to mention (that my memory was prompted by the article on pair programming) is that Ivar tended to portray pair programming as necessarily taking place between a senior developer (in a mentoring and coaching role) and a junior developer. I don't think this is meant to be the case, or need be the case. I believe that two reasonable developers using pair programming would develop better quality code than they each could separately and probably faster at that. There may even be a benefit to two junior developers working together (as long as they were prepared to refer to textbooks and other learning material etc.) For me, one of the benefits of pair programming is to help us be more disciplined, to help us stay focussed, and to help us get over any erroneous programming things we may do.

    Cheers,
    Ashely.

  5. Back to top

    Re: Great Interview

    Jun 13, 2007 7:27 AM by Ram Guttikonda

    Pair progamming in general/theory is peer pair progamming, correct. However, pair programming with best ROI is what Ivar may be referring to. This works great to get junior developer on board for a similar thinking process. Considering the quatity of code written by Junior developer could be large in real world especially with Senior people getting involved in the so called "meetings". My real experience. Also, pair programming is viewed as a risk control strategy for single point failures especially for core modules.

Educational Content

Brian Marick on 4 Challenges and 5 Guiding Values of Agile Software Development

Brian Marick takes us through a quick tour of the most important values and challenges to adopting Agile successfully (they aren't the typical challenges and values we hear in the community).

Are You a Software Architect?

The line between development and architecture is tricky. Does it exist at all? Is an ivory tower actually needed? There's a balance in the middle, but how do you move from developer to architect?

Agile – A Way of Life and Pragmatic Use of Authority

The word 'authority' sometimes produces an allergic response in hard-line agilists. Freedom and authority – both are bad if misused and both are good if used in right spirit for a noble cause.

Getting Started with Grails, Second Edition

"Getting Started with Grails" brings you up to speed on this modern web framework. Companies as varied as LinkedIn, Wired, and Taco Bell are all using Grails. Are you ready to get started as well?

Using ITIL V3 as a Foundation for SOA Governance

Those familiar with only ITIL V2 often scoff at the thought that ITIL could serve as a governance framework for SOA. With ITIL V3, the focus of the framework shifted towards service-orientation.

Adrian Colyer on AspectJ, tc Server and dm Server

SpringSource CTO Adrian Colyer discusses AspectJ, SpringSource's dm Server and tc Server products, OSGi and Scrum.

Adam Wiggins on Heroku

Heroku's Adam Wiggins talks about Rails, Background Jobs, Add-Ons, Ruby, and how Heroku manages to work around Ruby's inefficiencies using Erlang and other languages.

SOA as an Architectural Pattern: Best Practices in Software Architecture

For Grady Booch the foundation of a good architecture is patterns, SOA being just one of many patterns. In this Second Life presentation, Booch attempts to bring more clarity on what architecture is.