Monday, September 29, 2008

MVC: 30 years later, the other shoe drops

Feel free to attend Jim Coplien’s research seminar on Friday at the Computer Science Department (IDA).


Date: Friday, Oct 3, 2008 Place: Alan Turing(House E, 1 floor). Time: 10:15

Jim Coplien, Gertrud&Cope, Denmark

Abstract:

To its end user, software is not a product, but a service. Procedural programming made it possible to reason about these services and their logic in which most problems could be found in low-cost but dutiful desk checks. The main correlation-like entity was the procedure, which could be assembled to collect large numbers of activation record instances into a few archetypical structures. In 1967, the ability to do this was taken away by object-oriented programming, which encouraged a style of programming where this user-focused structure was subordinated to the user's cognitive model of the static world: of its objects. The algorithmic view was further muddled by inclusion polymorphism. The Smalltalk anthropomorphic view and ever small method sizes made it necessary to understand dozens of atomic algorithms to understand even the simplest functionality. Progress in methodologies reduced this static view to an even more over-simplified and more static view in classes, the almost final step in removing our ability to reason about the end user system model. The final step was Agile methods, which focus on the customer -- the middleman -- instead of the end user, enabling a product focus instead of a service focus. This is even celebrated as a good thing.

Piecemeal, technology has slowly staggered roughly in the direction of the more primordial object view, and AOP has struggled to restore some of the algorithmic view. Roles and role-based modeling have brought back a bit more dynamic view of the system; we find their incarnation in Java and C# interfaces. There is renewed interest in dynamic programming languages and in the kind of flexibility one finds in traits. Trygve Reenskaug has combined these techniques and brought us full circle in the DCI paradigm. The "D" is for data modeling: what we know as traditional objects, though bereft of knowledge about scenarios. It captures the static structure of objects and their references on the heap. The "C" is for context: the mapping of roles onto objects on a per-use-case basis, implemented as a dictionary. The "I" is for interaction: an algorithm of a stateless role, written in terms only of other roles, that defines in readable terms what the system does. Object dynamics can be captured in interaction roles and melded with classes who use the roles as traits; interaction dynamics appear in a context object generated anew for every use case; and structural dynamics appear as references between elements of object data.

This design approach expresses several important correlations that long have been missing in object orientation. Rather than unifying all algorithmic cross-cutting into Aspects, it teases out important facets into the context and interaction, with the object model a third correlation that is usually presumed to be the base partitioning. These correlations conceivably compose in uniform and predictable ways because of their grounding in simple object concepts such as interfaces and classes, rather than cutpoints or wrappers and whoppers. It is an extended subset of multi-paradigm design, incorporating important elements of the procedural and object paradigms.

Speaker's Profile:

Jim ("Cope") Coplien is a Software Architecture and Agile Consultant at Gertrud&Cope in Denmark. He has a 25-year history as an "early adopter" and innovator behind several strategic innovations in software: his C++ Idioms book was one of the major sources for Design Patterns; his work on Organizational Patterns was one of the foundations of the structural components of XP and was the inspiration for Scrums. His books cover areas as diverse as C++ programming, software design, and organizational design. He has started writing a book on Agile software development. His current professional focus areas include Lean software architecture, highlighting the challenges of test-driven development, and Scrum process improvement using Organizational Patterns. His current day-to-day work includes architecture reviews, coding, and helping organizations work more effectively in lean economic conditions through process improvement and reduction of waste. His current hobby is creating advanced (housing) architecture CAD tools based on pattern languages. He lives with his wife and son in Mørdrup, Denmark. When he grows up, he wants to be an anthropologist.

6 comments:

Anonymous said...

Comments
I found your blog while searching for info on Decor & designer antiques in Europe. I'm going on an antiquing tour that may be of interest to design students because it is a no frills inexpensive trip to the antiques markets at Arezzo in Italy, Swinderby & Newark in England and the paris flea markets in France. Check out this website: http://www.EuropeAntiqueTrip.com Felicia.

Anonymous said...

Thank You for being the member of this website. Please allow me to have the opportunity to show my satisfaction with Hostgator web hosting. They have professional and quick support and they also offering many [url=http://adf.ly/213105/thankyou-hostgator ]Hostgator coupon codes[/url].

I like hostgator hosting, you will too.

http://www.chicanochronicles.com/forum/index.php?action=profile;u=621708

Anonymous said...

Usable multi-level marketing authentic apparel for the children from inside the NFL in a business plus the NFL Pittsburgh did make history in 1938 by signing Byron White, a future Justice of the U There are many of points that has to be considered with live broadcasts online: television rights, sponsors, cable companies, the players association, owners, and, of course, league interests Controversy surrounded the end of the game, as center Hank Fraley claimed that McNabb was seriously ill The trainer is in his initial 12 months There? are many professional search engine optimization companies that will be able to conduct keyword research for your website and execute a variety of different SEO optimization techniques that? will eventually get you ranking higher on search engines
The Experts arguing the case for uniforms suggest that more serious tone within the school environment that is conducive to learning and can improve student performance2: Administration Certification Material You will find many scholarship search sites, like fastweb Not the Only A personThis is not the first time that an NFL player is on the docket for a misdemeanorSearching for cheap airfare through websites You can search for cheap airfare through websites like

[url=http://www.seahawksnflprostore.com/]Marshawn Lynch Jersey[/url]
[url=http://www.texansfootballshop.com/]JJ Watt Women's Jersey[/url]
[url=http://officialbroncosroom.com/]Von Miller Jersey[/url]

Anonymous said...

[url=http://www.23planet.com]casinos online[/url], also known as accepted casinos or Internet casinos, are online versions of household ("chunk and mortar") casinos. Online casinos approve gamblers to dissemble and wager on casino games middle of the Internet.
Online casinos superficially all over reap clear on the call odds and payback percentages that are comparable to land-based casinos. Some online casinos identify higher payback percentages with a take cavity withdraw games, and some latitudinarian respectful payout destroyed audits on their websites. Assuming that the online casino is using an aptly programmed unspecific consolidate up generator, catalogue games like blackjack clothed an established tolerate edge. The payout participation take off after of these games are established be means of the rules of the game.
Uncountable online casinos exemption evasion or thrive their software from companies like Microgaming, Realtime Gaming, Playtech, Supranational Chicane Technology and CryptoLogic Inc.

Anonymous said...

AggTmx http://sinsakuchanel.com/ XerEcv [url=http://sinsakuchanel.com/]シャネル 店舗[/url] IhoFmo http://ninnkicoach.com/ XsuHpd [url=http://ninnkicoach.com/]コーチ公式ファクトリーアウトレット[/url] CjuOwn http://diorautoretto.com/ SrjEia [url=http://diorautoretto.com/]ディオールオム スーツ[/url] NnoYiz http://nihongucci.com/ AeeExq [url=http://nihongucci.com/]グッチ 財布[/url] XxcDdg http://longchampnihon.com/ JscLsg [url=http://longchampnihon.com/]ロンシャン プリアージュ サイズ[/url] XpsUnk http://sinsakuvuitton.com/ RniGux [url=http://sinsakuvuitton.com/]ルイヴィトン コピー 見分け方[/url] JshFlg http://gekiyasuprada.com/ OaeSyo [url=http://gekiyasuprada.com/]プラダ トート ナイロン[/url] YpgKjn http://uggsinsaku.com/ JixIrn [url=http://uggsinsaku.com/]UGG サイズ[/url]

Anonymous said...

top [url=http://www.001casino.com/]casino bonus[/url] brake the latest [url=http://www.casinolasvegass.com/]free casino bonus[/url] unshackled no consign hand-out at the chief [url=http://www.baywatchcasino.com/]casino bonus
[/url].