Bran Selić, Malina Software Corp., Canada
The term “user” is quite pervasive in software engineering discussions and documents. However, it is rarely encountered in more traditional engineering disciplines. Thus, for example, automotive engineers distinguish between “drivers”, “mechanics”, and “passengers” but rarely, if ever, talk about “users” (of a vehicle). While this terminological discrepancy may appear trivial at first glance, in this talk I argue that this is a symptom of a serious and fundamental flaw in the culture of software engineering. And, even though there has lately been an increase in focus on user-centric features, such as usability and user experience, this is still far from sufficient, since much of it is focused on narrow technical issues such as ergonomics. In this talk I will first briefly discuss my personal experience – mostly from industry work – with how software developers typically approach what is rather amorphously referred to as “human factors” and what I see as the undesirable and sometimes disastrous consequences of that approach. In the second part of the talk, I will discuss some ideas on how this unfortunate state of affairs can be improved.
Bran Selić is President of Malina Software Corp., a Canadian company that provides consulting services to corporate clients and government institutions worldwide. He is also Director of Advanced Technology at Zeligsoft Limited in Canada and an Adjunct Professor of Software Engineering at Monash University in Melbourne, Australia. He has close to 50 years of practical experience in designing and implementing large-scale industrial software systems. In the course of that work, Bran has pioneered the application of advanced model-based engineering methods and related technologies, primarily in real-time and embedded applications. In addition, he has led the definition of a number of international software engineering standards including the widely-used Unified Modeling Language (UML).