I’m currently completing a school assignment that asks me to create an architectural design for my system, and then an appropriate set of system models.
Though, I’m a little confused about the difference between the two.
Can anyone explain? I’ve been trying to find lists of Architecture Design Models and System Models but haven’t been successful (trying to search either in Google generally returns the same models!).
Furthermore, should I create the Architecture Design Models before the system models or the other way around (or does it not matter)?
Thanks.
2
Technically speaking, models of architectural design are also system models. So, you may most probably end up with the same kind of diagrams in both cases. The difference is not the form of the diagrams but the focus and the level of details.
Let’s start with the architectural design. There is controversy about what architecture is exactly, but I like this one:
Software architecture is those decisions that are both important and hard to change.
Martin Fowler
So you may want to start and identify the core structure of your system: the main classes/components/layers needed to get it work and how these elements interact. On architectural models, you will put only very few details. The minimum required to understand the big picture.
Once you are satisfied with your architecture and you think it’ll work, you can enrich the model (or start a new one?) with more details. You can still let it at a design level with essential details (e.g. a couple of relevant attributes and methods) or you can go so far as to model your full implementation (in school it’s ok, but in real life, we prefer working systems over comprehensive documentation, especially when we know that it is difficult to keep detailed models in sync with development).
“Architectural Design” and “System model” are not technical terms with a widely accepted detailed definition. The lectures/classes prior to this assignment must have provided such a definition. Look at your class material, notes, or ask other students. Any answer found via Google or given here is quite likely to be different from what your professor expects.