System design and implementation
WHAT DOES A SOFTWARE ENGINEER DO?
Software engineers evaluate client or company needs in conjunction with those of the user and methodically conceptualize a systematic solution (also System Engineer).
This person is a Solution Designer…
WHAT DOES A PROGRAMMER DO?
Programmers write code and debug errors in programs and software based on instructions from software engineers. They are involved in a single stage within the development lifecycle and concentrate on one component at a time (also System Developer).
Design and implementation process
How it works for those who succeed:
- an organisational model is created (business processes and document structures)
- define business requirements (needs)
- a platform-independent logic is designed to implement the requirements (system model)
A developer is then selected to:
- selects and sets up the environment
- implements the designed logic in the selected environment
- deliver the system to the users and implement it.
NOTE!
- If the project is monolithic, the implementation will be a “big risky waterfall”.
- If the project is a component architecture (microservices), the implementation will be a smooth, iterative and incremental process (points 5. and 6. in the loop).
I’m System Engineer…
Above diagrams from the left (Bibliography):
Paul Harmon. (2016). The State of Business Process Management 2016. BT Trends. https://www.club-bpm.com/Contenido/Estudios/BPT-Survey-Report.pdf
Bajaj, M., Cole, B., & Zwemer, D. (2016, September 13). Architecture To Geometry—Integrating System Models With Mechanical Design. AIAA SPACE 2016. AIAA SPACE 2016, Long Beach, California. https://doi.org/10.2514/6.2016-5470
Cockburn, A. (2005, January 4). Hexagonal architecture. Alistair Cockburn. https://alistair.cockburn.us/hexagonal-architecture/