Software Architecture: Laying the Foundations of Software Design
In this entry
we will discuss chapter 14 of the book Code
Craft: The Practice of Writing Excellent Code from Pete Goodliffe. At first
sight there is a comparison between building and software architecture, in both
case they ensure their quality with the requirement, constructions methods, maintainability
and other specifications. Furthermore, software design can bee easily seen, if you
identify the components necessary to function, and that would help you to build
your own project.
In this
chapter it is mentioned there are different software views that are the key to
make it function according to the requirements. These are conceptual view,
implementation view, process view and deployment view. However, in software
architecture we need some actions in order to ensure the conditions of the
system, like validate if it is feasible to build, communicate the design to all interested parties and discriminate.
Good system
architecture is simple. For a small program, the
architecture may fit on the back of an envelope, with just a few modules and
some simple interconnections. A large system naturally requires more effort and
more envelopes. On the other hand, architecture identifies the key
components of the system and how they interact. It doesn’t define how they
work.
In software
architecture there are different architectural
styles, it may be chosen for various reasons. Having said that this
would help you to perform appropriate system design. The most common are no
architecture, layered architecture, pipe and filter architecture, server/client
architecture, component based architecture and frameworks.
In conclusion
we can see that ARCHITECTURE is the initial system design, like the kernel of a
computer. As I said in many times before if the basis of your work is not well
done, the development of it will be bad and the result would not be what you
want or need.
Comentarios
Publicar un comentario