• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
  • Campbell Ritchie
  • Liutauras Vilda
  • Bear Bibeault
  • Junilu Lacar
  • Martin Vashko
  • Jeanne Boyarsky
  • Tim Cooke
  • Knute Snortum
Saloon Keepers:
  • Ron McLeod
  • Tim Moores
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Scott Selikoff
  • salvin francis
  • Piet Souris

Architecture and Design

Ranch Hand
Posts: 208
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
An architecture is defining the relation , interaction between the objects involved in providing a software solution. Is the above statement true or the architecture defines both hardware and software design ? How diffrent is this from design or is design part of the defining a software architecture ?
Ranch Hand
Posts: 67
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Most application design or software engineering books will attempt some definition of architecture. The SUN study guide includes 1 from the RUP book, and another from the SUN SunTone methodology. You will find many others in the
Architecture is not always easy to define, especially in a short 'sound-bite'. I often find it helps to think in terms of levels of abstraction or 'focus'.
Architecture looks at the overall shape and form of the application - how the main parts interact. What are the underlying principles? Common services and components? How are messages passed through the system? How do clients interact with the core system? How is end-to-end security provided? etc.
Architecture is more often concerned with resolving the Non-functional requirements in the context of the overall problem.
Design is concerned more at the detailed implementation level - specific business rules, Use Case implementations etc. e.g. How can I store a CustomerOrder in a particular table? How do I update an Account balance?
Of course, in many cases these differences can blur. Architecture is still a design activity and there will inevitably be overlap - depending on the audience and the point of view (for example, the previous example of storing a CustomerOrder could be viewed as an architectural problem in terms of the wider object-relational mapping issues).
On your final questions - yes, system configurations, networks, servers etc are very much part of an architecture. They are often referred to as System Architecture, Network Architecture, Operational Architecture etc as opposed to Application Architecture (class design, iteration diagrams etc).
A good architect(s) should try consider all of these aspects. For example, a good application architecture should take into account the final system deployment (supported in UML via Deployment Diagrams). These real important for performance and failover strategies. Similarly, network configurations and distribution of components have real impacts on application design (especially when using inherently distributed technologies such as EJB).
To avoid criticism do nothing, say nothing, be nothing. -Elbert Hubbard. Please critique this tiny ad:
Java file APIs (DOC, XLS, PDF, and many more)
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!