Page 1 of 1

Software Architecture Styles Info ??

Posted: Thu Jun 19, 2014 4:53 pm
by WarrenT
I hope this is not a stupid question and I am asking it in the right place. I'm a newbie so be gentle :-)

I am studying Software Architecture and I am becoming overwhelmed with all the different ones out there and all the people championing one over the other style. What I am looking for is some sort of a one paragraph description of benefits/shortcomings for the major architectural styles out there. Does anyone know of such a source of information? I don't need someone else to compile it form me, just point me in the right direction.

Also, is there a place where there is at least a representative list of architecture styles, even if I can't get good descriptions for all of them?

So far the ones I have come across are:
- Web-App Architecture
- Client-Server Architecture
- Peer-To-Peer Architecture
- Publish-Subscribe Architecture
- Repository Architecture
- Blackboard Architecture
- Pipe and Filter Architecture
- Layered Architecture

Are there a lot more different architectures?

Re: Software Architecture Styles Info ??

Posted: Fri Jun 20, 2014 2:33 am
by NewAgile
Wow, I wasn't even aware that there were so many styles! I am not a software architect, but I had heard of the client-server and peer-to-peer, that's all. Man, do I have lots of things to learn!

"Pipe and Filter"? That sounds like a plumber's manual :-)

Re: Software Architecture Styles Info ??

Posted: Fri Jun 20, 2014 3:09 am
by AaronRT
NewAgile, these are just some of them. There many software architecture styles out there. BTW, I like your logon name :-) Are you becoming agile, or was it just something that sounded good?

Re: Software Architecture Styles Info ??

Posted: Fri Jun 20, 2014 8:20 pm
by NewAgile
AaronRT wrote:NewAgile, these are just some of them. There many software architecture styles out there. BTW, I like your logon name :-) Are you becoming agile, or was it just something that sounded good?
You are right, AaronRT, I am becoming Agile. I figured after years of trying to finish projects and being buried in the "process", it was time to give this new paradigm a try. I Still have a lot to learn, but what I have seen so far is very promising.

And, after reading a bit about architecture, I guess everyone comes up with their own style, right? It's just that some styles can be grouped because they share some general characteristics. Well, at least that's my understanding.

Re: Software Architecture Styles Info ??

Posted: Fri Jun 20, 2014 8:58 pm
by NewAgile
WarrenT wrote:So far the ones I have come across are:
- Web-App Architecture
It's not easy to find the details you are looking for, and I would also love to see some basic information about these architectures. In browsing the web and searching for that info, I found this diagram (below) which is purported to be a Web-App Architecture. I was very surprised because I always thought that software architecture is complex and a lot more than just a couple of objects in such a simplistic diagram. Am I missing something, or is it really this simple? It doesn't seem right! I mean if it's that simple, then I am a software architect, too ;-)
WebApp01.png
WebApp01.png (8.31 KiB) Viewed 31580 times

Re: Software Architecture Styles Info ??

Posted: Sat Jun 21, 2014 5:01 am
by Scotty
NewAgile, there was probably more information accompanying the graphic. I think you are right, it seems really simplistic. But, then again, I am not a software architect either, so I am not certain what a software architect visual is supposed to look like.

Re: Software Architecture Styles Info ??

Posted: Sat Jun 21, 2014 1:15 pm
by Paris K.
There is nothing wrong with the visual. At a very high level abstraction, that's what most web-app architectures would look like. The user interfaces with the website and the website ferries info back and forth to one or more databases, crunches some results and communicated the results to the user.

Re: Software Architecture Styles Info ??

Posted: Sat Jun 21, 2014 1:41 pm
by WarrenT
As a new student of the subject, I tend to agree with NewAgile. The diagram seems way too simplistic. However, I have seen other diagram, that display web-app architectures and are more informative. I'll see if I can find some of them on-line, again and will post them here.

I haven't seen any responses to my original query, as to the differences, advantages, etc. of the various architectures. I have also been doing my own search, because I *really* want to know, and I'll post my findings here, at some point.

Re: Software Architecture Styles Info ??

Posted: Fri Jun 27, 2014 3:31 am
by WarrenT
As promised, I found a web architecture diagram with more detail (shown below). I have also seen some with A LOT MORE detail, but I am sure you can find them too, if you do a google search.
web_application_architecture.png
web_application_architecture.png (20.66 KiB) Viewed 31545 times

Re: Software Architecture Styles Info ??

Posted: Fri Jun 27, 2014 1:28 pm
by Scotty
Thanks for the additional detail, WarrenT. So is this, second graphic you supplied a typical web application architecture diagram? In other words, is this the level of detail one would expect in such a diagram?

Re: Software Architecture Styles Info ??

Posted: Wed Jul 09, 2014 2:35 pm
by WarrenT
Well, I can't speak to the level of detail that's expected. My understanding is that the level of detail depends on the project, the team, the style, etc. It can vary from project to project and I have seen architectural diagrams that are *very* detailed (dozens of pages worth of schematics).

In almost all cases, I have also seen a simple, top level diagram included as well, almost like a guide to the rest of the detailed diagrams.

Re: Software Architecture Styles Info ??

Posted: Tue Jul 15, 2014 4:21 am
by Nicholas
Paris K. wrote:There is nothing wrong with the visual. At a very high level abstraction, that's what most web-app architectures would look like. The user interfaces with the website and the website ferries info back and forth to one or more databases, crunches some results and communicated the results to the user.
It sort-of makes sense. Do you have any detailed diagrams that are not at that level of abstraction? I would really like to see some, if you have them.