Part 1 – The Essence of Software Engineering

We live at an exciting time in the history of computer and network technologies where software has become a dominant aspect of our everyday life. Wherever you look and wherever you turn, software is there. It is almost in everything you use and affects most everything you do. Software is in many things such as microwaves, ATMs, smart TVs, and machines running vehicles, factories as well as being utilized in all types of organizations.

Although software provides many opportunities for improving many aspects of our society, it presents many challenges as well. One of them is development, deployment and sustainment of high quality software on a broad scale. Another is the challenge of utilizing technology advancements in new domains, for instance, intelligent homes and Smarter Cities. Here, the evolution of the Mobile Internet, Apps, the Internet of Things (IoT), the availability of Big Data and Cloud Computing as well as the application of Artificial Intelligence and Deep Learning are some of the latest “game-changers” with more still to come.

This book provides you with fundamental knowledge you will need for addressing the challenges faced in this era of rapid technology change. Part 1 will introduce you to Software Engineering through the lens of a kernel of fundamental concepts that have been provided by the Object Management Group’s standard called Essence 1. Essence is rapidly becoming a “lingua franca” for Software Engineering. The authors are convinced that this approach will provide a perspective that will be a lasting contribution to your knowledge base and prepare you to participate in teams that can develop and sustain high quality software.