Skip to content

Software Engineering Programs

Knowledge Sharing in Globally Distributed Teams

Globally distributed software engineering has become a norm of getting software developed. Whilst there are several potential benefits of getting software teams working around the clock while being located around the World – so-called follow the sun strategy -, there are several challenges in making such teams successfully work together. Communication, coordination, and collaboration are some of the key areas of challenges of global software development – the challenges in these areas either result from or lead to challenges of sharing knowledge – contextual, technical, personal.  Software engineering researchers and practitioners always seem to be interested in this area as the challenges of knowledge sharing usually lead to project failure and teaming problems.  We are recently published an extensive literature review on knowledge sharing challenges and solutions in global software development. Here is the pre-print copy of our paper, whose abstract is provided below for the interested readers.

Read More »Knowledge Sharing in Globally Distributed Teams

A New Approach to Identifying Security Requirements

We are delighted to announce that our ongoing collaboration with researchers from Lancaster University and University of Leicester has resulted in an approach to eliciting security requirements. The approach has been published in a recently accepted paper in the premier software engineering conference, the International Conference on Software Engineering to be organised in Austin, USA in 2016. The title and abstract of the accepted paper are: Discovering “Unknown Known” Security Requirements:Read More »A New Approach to Identifying Security Requirements

Australian Software Factory Attendees Share their Experiences

Last Australian summer (December – February 2015), we launched the Australian Software Factory (ASF) with a small number of dedicated students who participated in the ASF for earning work experience towards their degree program. All of them were enrolled in the Bachelor of Engineering in Software, BE (Software) degree program at the University of Adelaide, Australia. The students successfully completed their internship in the ASF while working on 3 very interesting projects with one project was having clients based in Ireland. The ASF was mainly supervised by my colleagues, Dr. Padraig O’leary, who played a pivotal role in making the implementation of ASF a reality by volunteering to provide projects for the first offerings of the ASF and supervise over the summer break. We were glad that the ASF was able to provide the participants with the value they were expecting in terms of hands on training and knowledge about working on real projects using state-of-the-art software development methods and technologies. Now we are assessing the viability of running the ASF again. Our students participants are the most important source of feedback and input about the value of the ASF and feedback for improvements. We are glad and satisfied with the feedback we have received. I would like to share some of the comments from a few students through these pages to encourage other institutes to take similar initiatives. Read More »Australian Software Factory Attendees Share their Experiences

Research Methods for Software Engineering Students

The Software Engineering community is increasingly recognising the value of empirical evidence to support research and practice. Empirical evidence provides a means to evaluate the utility of promising research areas and to help practitioners to make informed technology adoption decisions. Hence, there is an increasing need for providing software engineering researchers and practitioners with appropriate knowledge and training in different methods and techniques to design, execute, analyze, and report empirical research. Software Engineering degree programs (both undergraduate and postgraduate) are expected to have high quality courses on Research Methods for imparting appropriate knowledge and skills of designing, connecting, analysing, and reporting empirical studies. There are an increasing number of books and articles on research methods, however, many Software Engineering degree programs appear to find it difficult to come up with a high quality course that can impart the knowledge, understanding, and skills of carrying out both quantitive and qualitative research a wide variety of topics in Software Engineering. Based on several tutorials We are also working on designing and running a course on research methods for our Software Engineering students. Read More »Research Methods for Software Engineering Students

Visiting Software School at Fudan University, China

During my recent visit to China, I visited the Software Engineering Laboratory, Software School at Fudan University in Shanghai. It has always a great pleasure visiting Professor Xin Peng and his team who are conducting an excellent research on challenging and important topics of Software Product Lines, Software Maintenance and Evolution, and Requirements Engineering. This was my second visit to the group and I always find quite useful and important research threads being followed by different graduate students and academic staff associated with the laboratory under the direction of Professor Xin Peng. I was also invited to give a talk to the group. I chose to present our work on privacy in mobile devices and data exfiltration challenges and countermeasures using Evidence Based Software Engineering. This work is ongoing and we are continuing updating the work on privacy issues in mobile computing and now this work would have collaborators from Open University UK. The abstract of the talk can give some ideas about our ongoing work in these areas:Read More »Visiting Software School at Fudan University, China

Making Software and Software Engineering Visible

Software is becoming increasing pervasive. We have been witnessing dramatic changes and improvements in our lives courtesy to software based devices, services, and systems. Several reports are appearing that emphasise the importance of software engineering for continuously driving the ICT based innovation and job creation. For example, NESSI, a European technology platform has released a report that advocates the investment in capacity building for software engineering for emerging trends and technologies such as cloud computing, big data, and cyber physical systems. There are other European reports that talk about strengthening European capacity in software engineering as software industry generates billions of euros of revenues and provides millions of jobs in Europe.Read More »Making Software and Software Engineering Visible

A New Course for BE (Software) Degree – Engineering Software as a Service

Software Engineers are expected to develop and evolve increasingly complex systems and services using Agile and Lean approaches and emerging technologies like Cloud computing. Hence, there ought to be modernisation of the curricula and mode of delivery for educating and mentoring the future Software Engineers. Software as a Service paradigm has been increasing popular as more are more applications are being developed for mobile and Tablet devices. As part of the restricting the Bachelor of Engineering (Software) degree program at the University of Adelaide, I have designed a new course, Engineering Software as Services, based on a very popular book, Engineering Software As A Service, by Armando Fox and David Patterson. Both of them have also developed a very popular Massive Open Online Course (MOOC) delivered through edX. They also offer a Small Private Online Course (SPOC) for different institutes who are interested in using their book and courseware. I have got a SPOC set up for our course whose brief description and the key objectives are provided here for sharing.Read More »A New Course for BE (Software) Degree – Engineering Software as a Service