|
From: Ravi Shankar Nair on 17 May 2006 10:39 Dear all, Whats the difference between Design and Architecture? In my opinion, design is the superset of architecture, because architecture needs design or design should precede architecture. For example, in a three tier architecture, I design first tier as the presentation, second tier as the business and third as the database. My friend says architecture is the superset. Can anyone please elaborate, whether my friend is correct or me? Thanks in advance. Best regards, Ravi
From: Nick Malik [Microsoft] on 17 May 2006 11:12 "Architecture is design, but not all design is architecture. That is, many design decisions are left unbound by the architecture and are happily left to the discretion and good judgment of downstream designers and implementers. The architecture establishes constraints on downstream activities, and those activities must produce artifacts-finer-grained designs and code-that are compliant with the architecture, but architecture does not define an implementation. " -- Paul Clements See: http://www.sei.cmu.edu/architecture/essays.html#difference I hope this helps. I don't think it will settle your debate though. :-) -- --- Nick Malik [Microsoft] MCSD, CFPS, Certified Scrummaster http://blogs.msdn.com/nickmalik Disclaimer: Opinions expressed in this forum are my own, and not representative of my employer. I do not answer questions on behalf of my employer. I'm just a programmer helping programmers. -- "Ravi Shankar Nair" <sujashankar(a)pacific.net.sg> wrote in message news:e4fcj9$khk$1(a)nobel.pacific.net.sg... > Dear all, > > Whats the difference between Design and Architecture? In my opinion, > design is the superset of architecture, because architecture needs design > or design should precede architecture. For example, in a three tier > architecture, I design first tier as the presentation, second tier as the > business and third as the database. > > My friend says architecture is the superset. > > Can anyone please elaborate, whether my friend is correct or me? Thanks in > advance. > > Best regards, > Ravi >
From: Cody Powell on 17 May 2006 13:27 I have another monkeywrench to throw into the debate, based on a recent post by Uncle Bob. (The session he refers to was a session on Agility and Architecture at SDWest.) "One of the main points of that session was this: 1. The main goal of architecture is flexibility, maintainability, and scalability. 2. But we have learned that the kind of unit tests and acceptance tests produced by the discipline of Test Driven Development are much more important to flexibility, maintainability, and scalability. 3. Therefore architecture is a second order effect and tests are the primary effect." -- Robert Martin, http://www.butunclebob.com/ArticleS.UncleBob.ArchitectureIsaSecondaryEffect It's an interesting point, and depending on your TDD views, one that would probably spawn another debate of its own between you and your friend. Cody Powell
From: Ed Kirwan on 18 May 2006 03:27 Ravi Shankar Nair wrote: > Dear all, > > Whats the difference between Design and Architecture? > > Both terms have as many definitions as definers. In the absence of consensus, we took a corporate stance: IBM define architecture as their 4+1 view, and we've taken this as our definition (so we can at least talk to IBM programmers with a common language). According to 4+1 an architecture must consist of: 1. Logical view, containing (essentially) the code. 2. Process view, defines system concurrency. 3. Physical view, defines how software modules are deployed to hardware. 4. Development view, defines the development environment. 5. Scenarios, born of use cases. What we casually call, "Design," could, at its narrowest, fit into the Logical view, though usually designers will do some of 5, too. This 4+1 is useful to find out who is not architect: if someone isn't choosing the development environment (i.e., we'll run C++ on Linux servers), then he isn't architect. If someone isn't specifying how the system will be deployed over a 20-unit server farm, then he isn't architect. -- www.EdmundKirwan.com - Home of The Fractal Class Composition. Download Fractality, free Java code analyzer: www.EdmundKirwan.com/servlet/fractal/frac-page130.html
From: AndyW on 18 May 2006 03:31 On Wed, 17 May 2006 22:39:39 +0800, "Ravi Shankar Nair" <sujashankar(a)pacific.net.sg> wrote: >Dear all, > >Whats the difference between Design and Architecture? In my opinion, design >is the superset of architecture, because architecture needs design or design >should precede architecture. For example, in a three tier architecture, I >design first tier as the presentation, second tier as the business and third >as the database. > >My friend says architecture is the superset. > >Can anyone please elaborate, whether my friend is correct or me? Thanks in >advance. > >Best regards, >Ravi > Design is a process that you carry out. Architecture is the way something hangs together. Architectual Design is a process used decide how something hangs together. Program Architecture is the way a program hangs together Program Design, is the process for deciding how to implement the program.
|
Next
|
Last
Pages: 1 2 3 4 Prev: Calling same method in inherited classes Next: sequence diagram for observer pattern |