Here is an article from Microsoft on Software Architecture.
It is part of an 28 Chapter book on Software Design and Architecture.
It may be of help to you.
Juan Perez, Feb 21, 2013
When using an architecture you know that which functionality must use in which layout.
If you change the Database, you update Business and Data layouts or Presentation if needed.
If you have new functionality you can change or write some new code in your Services layout.
you know what changes should place in the right way.
Bigger project need more than one developer and every one can write application on their ways. thinking about a project that you and 3 of your friends try to create and develop.
Each one writing code in their way and finally you stick the files together and the project work fine.(In many cases with some problems).
Now your customer want to a little changes in project. your friends cant help you any way...
This is too bad but, if you have an architecture that declare every thing in a specific layout with specific pattern you can make any changes without problem. because you create different sections of project but in the same way.
Now you and your customers is :-)
If you want to feel the architecture benefits create a new project and use the architecture.
Mohammad Reza Khahani, Jan 05, 2013
I would ask how you survive without it.
So then, why are you asking such a question?
If this is for a school project, then crack a book and get reading!
A continuous process of capture :
- current business needs
- future business direction
- how will technology support above two
- how will technology support changes, or, what level of adaptability is desired
Developers should never venture forth without the above.
Development needs the constraints enforced by above to retain focus and homogeneous compartments of approach. Out of necessity, not everything can, or should, be homogeneous.
There are many links on line to help you.
Robert Achmann, Jan 01, 2013