tag:blogger.com,1999:blog-2731245157941249406.post1494029005400741835..comments2022-05-31T17:08:34.426-07:00Comments on Executable Design: The Role of the Executable DesignJerry Andrewshttp://www.blogger.com/profile/00031760401407222356noreply@blogger.comBlogger2125tag:blogger.com,1999:blog-2731245157941249406.post-40796782907726108312009-02-17T17:19:00.000-08:002009-02-17T17:19:00.000-08:00I shall respond Wednesday at noon. ;) However-- ...I shall respond Wednesday at noon. ;) However-- two immediate thoughts: 1) Design is still an intellectual activity; tools can't change that, so reverse engineering a design still has to be done by picking through the reverse-engineered stuff to "expose" the design, and 2) inserting a tool into an existing code base is refactoring.Jerry Andrewshttps://www.blogger.com/profile/16408911457337742115noreply@blogger.comtag:blogger.com,1999:blog-2731245157941249406.post-57102556120654324922009-02-16T11:15:00.000-08:002009-02-16T11:15:00.000-08:00"The design itself formed a key part of the finish..."The design itself formed a key part of the finished deliverable--it's skeleton--then the design would always be in sync with the deliverable."<BR/><BR/>In earlier posts you talked about developers directly coding implementations of the design. I'm assuming that means they don't go through a design tool to produce the code. Does this imply that the design can be reversed from manual code as well? What will keep the design from being obscured by the kind of detail that starts showing up then? I can see an argument that if things are looking like a mess in the reversed design it's a good warning that the code is getting too tightly coupled at least in the case of dependencies between objects or modules, but there are other kinds of necessary complexity. An example would be all of the methods and attributes that developers add to a class that aren't really relevant to the high level design, but are needed to make the class really do it's job. <BR/><BR/>I can see where an executable design approach can work in a prototype or new development, but I would like to look at some concrete examples of a system two or three years into active maintenance and extensions and see how the idea pans out. I know you've been working on this kind of thing for awhile, do you have some examples of the kinds of things you've seen and how this approach would deal with them?Bill Gloverhttps://www.blogger.com/profile/00533264273214117155noreply@blogger.com