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

student software engineering projects for the maemo
SMART_READER_LITE
LIVE PREVIEW

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


slide-1
SLIDE 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

slide-2
SLIDE 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

slide-3
SLIDE 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

slide-4
SLIDE 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

slide-5
SLIDE 5

Architecture

Architecture

Other servs. Scratchbox Web LDAP

Virtual machine monitor

Virtual machine monitor (Xen):

◮ 32-bit virtual machine with

Maemo SDK for each student,

◮ 64-bit virtual machines (one or

many) with:

⋆ 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

slide-6
SLIDE 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

slide-7
SLIDE 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

slide-8
SLIDE 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

slide-9
SLIDE 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

slide-10
SLIDE 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

slide-11
SLIDE 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

slide-12
SLIDE 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

slide-13
SLIDE 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

slide-14
SLIDE 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

slide-15
SLIDE 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