Although your edit did improve your question, I'm not sure it is a good fit for SO. Perhaps review similar questions on softwareengineering.stackexchange.com and consider asking an improved version of your question there if it seems appropriate. — skomisa 58 secs ago