PhD Scholarships in Software System Behaviour Specification and Emulation (DevOps)
($30,000 per annum, tax and tuition fee exempt)

Swinburne University of Technology, Melbourne, Australia and
The University of Melbourne, Australia

 

Today's software industry demands short development cycle and continuous delivery for software systems and services, as highlighted by the DevOps movement (www.devopsdays.org). To meet such industry needs, the provision of realistic testing environments is critical to assure the quality of highly interconnected enterprise software systems before they are put into production.

 

In the context of a joint research project on creating emulated but realistic deployment environments for continuous software delivery, we are looking for a talented PhD student to carry out research into software system behaviour specification and emulation using Domain-Specific Languages (DSLs). The aim of the work is to develop

1.       a generic, domain-specific language (DSL) that can be used to specify the different aspects of a software system/service's behaviour (as understood by software developers or discovered from run-time execution traces) at a high level of abstraction and can be easily manipulated by software engineers based on the needs of specific usage scenarios;

2.       a runtime emulation platform that can execute or interpret the DSL-based behaviour specification of a service and thereby emulate the runtime interactive behaviour of the actual service as used in the production environment.

 

This Australian Research Council (ARC) sponsored project is a collaboration between Swinburne University of Technology, The University of Melbourne, and CA Technologies (NASDAQ: CA). The scholarship offers a stipend of $30,000 per annum for three years, plus university tuition fee waiver, conference travel and other research support.

 

The PhD candidate is expected to carry out research and development tasks in the project as outlined above and have regular interactions with the industry partner. The candidate should possess excellent analytical and programming skills and the ability to work independently under the supervision of a team of senior researchers. Familiarity with software/system architectures, system interoperability, domain specific languages, and/or enterprise software systems are desirable, but not essential. The candidate is expected to have an excellent undergraduate degree in Computer Science, Software Engineering, or a related area, and have research experience through a masters/honours thesis work and/or publications.

 

Applications must include the following information:

 

-          A detailed Curriculum Vitae

-          A copy of the transcripts for completed Bachelors, Honours and/or Masters degrees

-          Evidence of any research experience (e.g., thesis work or publications)

-          Evidence of English proficiency (native English speaker; previous studies in English in certain cases; IELTS result in the last two years with an average of at least 6.5 with no individual band below 6, or a TOEFL equivalent (paper-based: 550 with minimum TWE 5.0, or Internet-based: 79 with no band below 18))

-          Contact details of three referees

 

Applications should be emailed to Associate Professor Jean-Guy Schneider (jschneider@swin.edu.au), Professor Jun Han (jhan@swin.edu.au), or Professor Christopher Leckie (caleckie@unimelb.edu.au)

 

Applications are reviewed on a continuous basis until the position is filled.


******

Some background readings:

1.       Scalable Emulation of Enterprise Systems. ASWEC 2009: 142-151. (pdf)

2.       M. Fowler, Domain Specific Languages, Addison Wesley, 2001 (html)

3.       Generating service models by trace subsequence substitution. QoSA : 123-132. (pdf)

4.       Interaction Traces Mining for Efficient System Responses Generation. ACM SIGSOFT Software Engineering Notes 40(1): 1-8 () (pdf)

5.       From Network Traces to System Responses: Opaquely Emulating Software Services. CoRR abs/1510.01421 (2015).( http://arxiv.org/pdf/1510.01421.pdf ).

6.       A virtual deployment testing environment for enterprise software systems. QoSA : 101-110. (pdf)

7.       Enterprise software service emulation: constructing large-scale testbeds. ICSE2016, (https://arxiv.org/pdf/1605.06729v1.pdf)

8.       Emulation of Cloud-Scale Environments for Scalability Testing. QSIC : 201-209. (pdf)

9.       Automatic generation of software behavioral models. ICSE : 501-510 (GK-tail). (pdf)

10.   Automatic mining of specifications from invocation traces and method invariants. SIGSOFT FSE : 178-189. (pdf)