Janus Manager the Self-Improving Software System Smundur . - - PowerPoint PPT Presentation

janus manager
SMART_READER_LITE
LIVE PREVIEW

Janus Manager the Self-Improving Software System Smundur . - - PowerPoint PPT Presentation

Janus Manager the Self-Improving Software System Smundur . Haraldsson 50th Crest Open Workshop John R. Woodward Genetic Improvement Alexander I.E. Brownlee Overview Janus Manager - Daily activity Genetic Improvement - Nightly


slide-1
SLIDE 1

Janus Manager

the Self-Improving Software System

Sæmundur Ó. Haraldsson John R. Woodward Alexander I.E. Brownlee 50th Crest Open Workshop Genetic Improvement

slide-2
SLIDE 2

Overview

  • Janus Manager - Daily activity
  • Genetic Improvement - Nightly activity
  • The story so far

2

slide-3
SLIDE 3

Janus Manager

3

Daily activity

Usage and structure

slide-4
SLIDE 4

Janus Manager

  • Management

system for rehabilitation

  • Stores client info
  • A tool for

○ Administration ○ Communication ○ Producing reports ○ Predicting

  • utcomes

4

slide-5
SLIDE 5
  • 40 Users

○ Specialists ○ Administrative staff

  • 1000+ clients

○ 150 active

  • The code

○ Python ○ 25,000+ LOC ○ 600+ functions ○ 300 Classes ○ Run as web service on Apache

Janus Manager

5

slide-6
SLIDE 6

Daily activity

  • Users

○ Request data ○ Save data

  • Janus Manager

○ Processes requests ○ Interacts with the database ○ Responds with output

6

slide-7
SLIDE 7

Daily activity

  • Procedures in place to catch

exceptions and log: ○ Request ○ Input data ○ Type of exception ○ Location of exception

  • Logs saved in file on server

7

slide-8
SLIDE 8

Genetic Improvement

8

Nightly activity

  • Filter
  • Generate
  • Repair
  • Report
slide-9
SLIDE 9

Nightly activity

When last user logs out 1. Procedure 2.0 ○ Sorts and filters the day’s exceptions

9

slide-10
SLIDE 10

Nightly activity

When last user logs out 1. Procedure 2.0 started ○ Sorts and filters the day’s exceptions 2. Procedure 3.0 ○ Emulates input data, type, size and structure. ○ Produces test cases

10

slide-11
SLIDE 11

Nightly activity

When last user logs out 1. Procedure 2.0 started ○ Sorts and filters the day’s exceptions 2. Procedure 3.0 ○ Emulates input data, type, size and structure. ○ Produces test cases 3. Procedure 4.0 ○ Genetic Improvement ○ Parallel process on the server ○ Outputs report for developer

11

slide-12
SLIDE 12

Improvement log

12

slide-13
SLIDE 13

Failed Improvement Report

13

slide-14
SLIDE 14

Improvement log

14

slide-15
SLIDE 15

Successful Improvement Report

15

slide-16
SLIDE 16

The story so far

16

It works!

Just a summary

slide-17
SLIDE 17

The story so far

  • Janus Manager was developed last March
  • Since October 2016 has had GI running as a permanent service
  • 22 Bugs reported

○ Variable name mixup - current_date vs. current_time ○ Range constants - For i in range(len(Var)+1): ○ And more ….

  • 22 Bugs fixed

○ Whole process takes 20 minutes (on average) ○ Fix found within 10 generations

17

slide-18
SLIDE 18

The story so far

  • Janus Manager was developed last March
  • Since October 2016 has had GI running as a permanent service
  • 22 Bugs reported

○ Variable name mixup - current_date vs. current_time ○ Range constants - For i in range(len(Var)+1): ○ And more ….

  • 22 Bugs fixed

○ Whole process takes 20 minutes (on average) ○ Fix found within 10 generations

18

slide-19
SLIDE 19

Thank you

19