student software engineering projects for the maemo
play

Student Software Engineering Projects for the Maemo Platform at - PowerPoint PPT Presentation

Student Software Engineering Projects for the Maemo Platform at Petrozavodsk State University: Architecture and Support of Distributed Developer Team Environment Vadim Ponomarev, Alexander Kolosov, Mikhail Kryshen Petrozavodsk State University


  1. Student Software Engineering Projects for the Maemo Platform at Petrozavodsk State University: Architecture and Support of Distributed Developer Team Environment Vadim Ponomarev, Alexander Kolosov, Mikhail Kryshen Petrozavodsk State University Department of Computer Science AMICT Seminar, May 20, 2009 Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 1 / 15

  2. Table of Contents 1 Tasks 2 Architecture 3 Results Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 2 / 15

  3. Tasks Tasks and Requirements Hands-on training on Maemo SDK for at least 30 students. Each student has his own SDK environment. Easy deployment at guest trainings. Save time on desktops support and maintenance. Network connection requirements: low latency, high bandwidth. Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 3 / 15

  4. Tasks Training Environment Maemo SDK terminal server. Terminal client software (ssh, Xephyr). Training materials access. Local copy of the Maemo documentation and other guides. Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 4 / 15

  5. Architecture Architecture Virtual machine monitor (Xen): ◮ 32-bit virtual machine with Maemo SDK for each student, Virtual machine monitor Other servs. ◮ 64-bit virtual machines (one or Scratchbox Web many) with: LDAP ⋆ LDAP with students accounts; ⋆ Web (Apache, PHP, MySQL, nginx, memcached, etc.); ⋆ Samba, other support services. Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 5 / 15

  6. Architecture Scratchbox Modifications Original Scratchbox can not be used by multiple users at the same time. The list of features we need for normal multiuser work: ◮ Using the X session tunnelled over SSH. Modified: login ◮ Mounting host home directory. Modified: sbin/sbox adduser, sbin/sbox mount ◮ Distinct /tmp directory for each user. Modified: sbin/sbox adduser, sbin/sbox mount Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 6 / 15

  7. Architecture Other Software Components LDAP directory for accounts data. All information is provided using Web-based approach: ◮ Learning management system for training materials. ◮ Mirrored Maemo SDK documentation. ◮ Wiki-based system for the training environment documentation. Performance optimization technologies were applied for the web-server (nginx, memcached, APC). Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 7 / 15

  8. Architecture Solution for Guest Trainings Mobile solution for guest trainings: using a laptop. Restrictions: limited memory, slow hard disks. The same architecture with one VM for all administrative tasks. Actions on deployment: ◮ registering students, ◮ register the laptop in the network environment. - Laptop can not run on battery long time. Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 8 / 15

  9. Architecture One Work Session Scenario localhost$ Xephyr :20 -host-cursor -screen 800x480x16 \ -dpi 96 -extension Composite localhost$ DISPLAY=:20 ssh -X maemo.cs.prv maemo.cs.prv$ /scratchbox/login [sbox-DIABLO_X86: ~] > af-sb-init.sh start Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 9 / 15

  10. Results Implementation Notes. Hardware Server ◮ One quad-core CPU, 2.5GHz. ◮ 8 Gb RAM. ◮ RAID 10, 689 Gb, 7200 RPM. Laptop ◮ One dual-core CPU, 2.4GHz. ◮ 2 Gb RAM. ◮ 120 Gb HDD, 7200 RPM. Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 10 / 15

  11. Results Implementation Notes. Software OpenSUSE operating system. Xen virtual machine monitor. Maemo SDK OpenLDAP directory server. Nginx and Apache web servers. MySQL database management system. Moodle learning management system. Mediawiki wiki software. Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 11 / 15

  12. Results Summer School “Internet Tablet’2008”, August 2008 Petrozavodsk, PetrSU. 48 students. Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 12 / 15

  13. Results Winter School “Internet Tablet’2009”, February 2009 Petrozavodsk, PetrSU. 25 students. Laptop solution was tested. Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 13 / 15

  14. Results FRUCT’09 Training, April 2009 Saint Petersburg, SUAI. Near 30 students. Laptop solution have been applied. Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 14 / 15

  15. Results Thanks for your attention! Any questions? akolosov@cs.karelia.ru Alexander Kolosov Architecture and Support of Distributed Developer Team Environment AMICT 20.05.2009 15 / 15

Recommend


More recommend