Software Engineering

The development of software is an intellectual process which is difficult to manage and whose outcome is never certain. A common misconception is assuming the difficulty with software development is related to the technical challenges associated with development. However, in my experience, the greatest difficulty lies in the interpersonal dynamics of the team members. It is my belief that the development of software would be easier to predict and manage if more was understood about the psychology of software development.

My diverse background in the field of software and business gives me a unique perspective on this problem, and I hope that I will be able to make a contribution to the field of software engineering by further examining the underlying factors that impact how software is developed and improve the quality of the process and outcome.

Articles on Software Engineering:

Modeling Systems in UMLSystems are a combination of hardware, software and peripherals collectively working in an environment where together they fulfill a need of those who use the system. Because there are often many intangible components, it is difficult to create an accurate representation or model of complex engineered IT systems.

This tutorial explains how to create UML diagrams of IT systems in language any business analyst will find easy to read and understand.
TestimonialMichael recently assisted our organization in complying with SOX auditing requirements of our IT systems and policies, and I strongly endorse his consultation to those seeking to maximize their IT business value. We have benefited from his process improvements and technology handiwork, becoming one of the largest LTC Insurance Master General Agencies in the country, managing 9,000 in-force policies ($18M). 

Tom McAuliffe 
President & CEO 
Capstone Financial Assurance