(I lied. I didn't make it to the Oslo session.  I went to the "Big Room" and spent tons of time getting swag and talking to vendors.  I also spent lots of time with Peli talking and learning about PexPex looks to be a very compelling whitebox testing platform.  I suggest you take a look into it.)

 

So now I'm in the Peter Provost talk.  I read his blog but I've never seen any of his presentations so I'm really looking forward to this one.

 

  • Good Architecture is about communicating design.
  • All systems have an architecture whether you plan it or not.

The crowd seems to be mostly "Agile" (we figured that out by the standard "Round of Applause" methodology.  I think they are lying or don't know what "Agile" really is.  Just an opinion.)

Most Architectures are "Big Ball of Mud"

Architecture is about ending system that is better than with what you started with.

Architectural Discovery

  • Everyone has existing code bases
  • Key architectural elements are undocumented
  • Maintenance is hard
  • Changes expensive

We are going to use the CTP bits of Architecture Explorer on Rawr (Check on CodePlex for it)

  • Cool project dependency diagram
  • Project dependency graphs have multiple views
  • Can create class dependencies also
  • Sometimes it's good to look at the pictures that are generated in the diagrams instead of trying to look for patterns that will show you key types in the solution/project
  • Drilling into what looks to be key types you can find code and method level relationships
  • Architecture Explorer supports Sequence Diagrams, Very cool. Johanri (my coworker) will love it. He's an UML guy.

Using Architecture Explorer is about viewing the system, not generating tons of diagrams for BDUF

Oslo == Executing Models, Architecture Explorer == Communicating Models

Battery is about to die again. Time to shut-down.