"Friday Faculty Focus with Brandon McDermott” airs each Friday at 7 a.m. and noon on all-classical 90.7 KVNO, a broadcast service of the University of Nebraska at Omaha (UNO).
On Friday, May 5, KVNO aired McDermott's interview with Harvey Siy, UNO associate professor of computer science.
During the interview, Siy discussed his techniques teaching software engineering to his students, ethical codes among software designers and the controversy of "back door" access to user's personal data by the government.
Listen to their conversation or read the transcript below:
Brandon McDermott: Dr. Harvey Siy, thank you for joining me today.
Dr. Harvey Siy: Thank you for inviting me.
Brandon: You teach software engineering and software evolution and maintenance. How do you make these topics which may not appeal to the general public - how do you make these interesting for your students?
Dr. Siy: So, in general software is everywhere. People always marvel at how this magic is done - in some sense - they've got all this technology, that's all run by software. For the most part they work well there are obviously instances where they don't work, but for the most part they work well. So, how do you then get the behind the scenes part to figure out how do you actually build up that that type of system in a way that's reliable that's accessible and useable for its intended audience.
Brandon: Should software developers have, say, a code of ethics?
Dr. Siy: In fact, there is a code of ethics. There is a software engineering code of ethics from ACM the Association for Computing Machinery, which is one of the two main professional organizations for software engineers and computer scientists. The code of ethics basically talks about a couple of things – one is staying honest with what you can do and to some degree for managers being able to treat developers under them fairly. There's also these other piece which is lifelong learning, because technology keeps on advancing. There is this expectation that you have to continuously educate yourself on the technologies.
Brandon: Something that's piqued the interest of many Americans over the last seven or ten years is the idea of government requiring a back door to software - what are your thoughts on this?
Dr. Siy: I'm of the opinion that we should not have these covert channels. Once you have some sort of covert channel for doing something it undermines everything else - potentially it undermines security of the system. So, if the government needs the information there should be other more straightforward ways of which they can request that information which required the necessary permissions to get it. It's nothing new to software, because you have the same regulations in Telecom as well that that allow for tapping conversations with a subpoena, so I guess it's nothing new.
Brandon: I noticed one of your interests is in improving software engineering methodologies - can you kind of unpack that for me and talk about that a little bit?
Dr. Siy: In software engineering there are essentially four distinct activities. One is gathering requirements - defining the problem. Sometimes we call this “requirements engineering.” It's the part where we try to understand who the stakeholders are and what is the concern of each stakeholder in the project? The second part is design - and just us you build design models in real engineering, before you actually start constructing stuff - design models in software also serves the same purpose - it's a form of abstraction, a way for us to explain that we have these requirements and this is the capability that's available in the system, in the implementation. Then you get to the third part which is the actual implementation, where you actually write the code that implements the design. Finally, the last part of this is validation. Once have it all implemented, you want to make sure that you have built the product right, that you have built it according to their specifications and at the end also circling back to the stakeholders, that they actually get the right product. So there's two parts - building the product right and making sure that we have the right product.
Brandon: Dr. Siy, thanks again for coming on the show.
Dr. Siy: Thank you.