International pbl conf_5b-c_kizaki

45
Improvement of Collaborative Work on Software Development PBL in a Distributed Environment Satoru Kizaki , Graduate School of Information Systems, The University of Electro-Communications, Tokyo, Japan Yoshihide Chubachi Advanced Institute of Industrial Technology, Tokyo, Japan 3rd International PBL Symposium 2012 Thursday, 08 March 2012

Transcript of International pbl conf_5b-c_kizaki

Page 1: International pbl conf_5b-c_kizaki

Improvement of Collaborative Work

on Software Development PBL in a

Distributed Environment

Satoru Kizaki,

Graduate School of Information Systems,

The University of Electro-Communications,

Tokyo, Japan

Yoshihide Chubachi

Advanced Institute of Industrial Technology,

Tokyo, Japan

3rd International PBL Symposium 2012

Thursday, 08 March 2012

Page 2: International pbl conf_5b-c_kizaki

Agenda

1. Background

2. Challenges in 2010

3. Idea for an improvement

4. Challenges in 2011

5. Conclusions

2

Page 3: International pbl conf_5b-c_kizaki

Agenda

1. Background

2. Challenges in 2010

3. Idea for an improvement

4. Challenges in 2011

5. Conclusions

3

Page 4: International pbl conf_5b-c_kizaki

Outline

• PBL activity is performed every year.

• We are development in distributed environment.

• We tried to agile software development last year.

Although, we were not able to make it successful.

• The environment where agile development could be

carried out was made this year.

• I reported knowledge about experience which performed

agile development in distributed environment.

4

Page 5: International pbl conf_5b-c_kizaki

Background

• The goal aims at personnel training.

• We aimed to improve the skills of the team(PM and

project members).

• Problem discovery and solution capability is learned.

• The success level of a development project is connected

to the level of management skills

• Management skills are problem recognition, problem-solving and

human relation among team members

5

Collaborative Management Laboratory

PBL type education

Page 6: International pbl conf_5b-c_kizaki

Collaborative Management Laboratory

6

- Group work

- Foreign student - Skype - Meeting with Client etc.

- Brainstorming

- Research - Requirements analysis etc.

- Make a document

- Method of a presentation - Questions and answers etc.

-WBS

-Scope -Cost

-Progress etc.

- Screen transition

- ER Chart - UML etc.

- Development method

- Programming -Data base

-Test method etc.

Communication

Presentation

Design

Plan

Management

Development

Page 7: International pbl conf_5b-c_kizaki

Project flow

7

Starting (Oct.)

Progress report

(Once a week)

Interim report (Nov.)

Progress report

(Once a week)

Last report (Jan.)

Page 8: International pbl conf_5b-c_kizaki

Distributed Environment

• We could have a off-line meeting only once per week.

• It was necessary to do work individually.

8

At company

At university At home

Page 9: International pbl conf_5b-c_kizaki

Agenda

1. Background

2. Challenges in 2010

3. Idea for an improvement

4. Challenges in 2011

5. Conclusions

9

Page 10: International pbl conf_5b-c_kizaki

Environment in 2010

• Participants

• Teachers: Professor of Keio University

• Project Managers: Working people and graduate students

• Project Members: Undergraduate students of Keio University

• 4 teams (Each team had one PM and several students)

• Period

• 4 months (Oct. 2010 – Jan. 2011)

10

Page 11: International pbl conf_5b-c_kizaki

Projects

• Fiscal year 2010 (4 teams)

• Team 1

• Using a smart phone, development of camera application system

• Team 2

• Goods trading system which performs commodity transaction using

stock merchandise

• Team 3

• System for managing individual tasks using GTD

• Team 4

• Create a monitor system that used a sensor network and HTML5

11

Page 12: International pbl conf_5b-c_kizaki

Team members (team1)

12

Teacher1 Teacher2 Teacher3

PM

Student A Student B

Client

IT company

Student C

Page 13: International pbl conf_5b-c_kizaki

Goal and Achievement

• “Katazou”: Camera application system

• Add new functions

• Aim at increasing users

13

Android

iPhone WEB(http://katazou.jp/)

Forwarding

web site

Page 14: International pbl conf_5b-c_kizaki

Development cycle

14

Requirement Definition

Design

Implementation

Test

Release Iteration

Requirement Definition

Document (RDD)

Base Specification (Scenario, Use Case etc.)

Screen Design Specification

Out Put

Source Code

Test Specification

Test Result Report

Oct.

Nov.

Dec.

Jan.

The 1st release: Dec. The 2nd release: Jan.

Page 15: International pbl conf_5b-c_kizaki

Results

• Some functions were able to be released.

• Layout change

• The picture displayed on a website is increased.

• Picture search

• Keywords are inputted and pictures are searched.

• Facebook linkage

• A website and Facebook are made to cooperate and the contribution

from a website to Facebook is enabled.

• An important function was not able to be released.

• Twitter linkage

• The function posts message to Twitter from KATAZO of Android Application

15

Page 16: International pbl conf_5b-c_kizaki

Problems

• Overwork of PM

• PM made source code instead of students.

• PM taught the student coding.

• PM could not take time for project management.

• Maintaining motivation

• Student did not take time to work (Only about 2 hours of a week).

• Priority was given to other lectures, club activities, part-time job,

etc.

• Member’s assignment

• The student who was taking charge of the important function was

not able to secure working hours.

16

Page 17: International pbl conf_5b-c_kizaki

Agenda

1. Background

2. Challenges in 2010

3. Idea for an improvement

4. Challenges in 2011

5. Conclusions

17

Page 18: International pbl conf_5b-c_kizaki

Idea for an improvement

• Ideas

• Introduction of ticket-driven development

• Participation of member-of-society PLs

• Agile coach's participation

18

Page 19: International pbl conf_5b-c_kizaki

Improvement of collaborative work • Ticket-driven development

19

Plan/ Ticket creation Start of task

Validation

Commit to SVN

End of task

Ticket Close

At the time of renewal of information, sent an E-mail.

All the tasks are registered into a

system.

- Effective

Visualization of work

Visualized the progress by using a

graphic “progress rate bar”

Visualization of products

Showed how documents and

source code are connected to

products

Increase a working efficiency

We gain an understanding of the

big picture through ticket.

Risk management is able to be

performed at an early stage.

PM Member

Page 20: International pbl conf_5b-c_kizaki

Redmine

• Use a Bug Tracking System (BTS) "Redmine" with a

project management function.

20

- Effective

Web-based: Access is easy Open source: Installation is easy. Related to Subversion(well-used system). Control functions are abundant.

- Project management is easy with distribution development - Unification of project information.

Page 21: International pbl conf_5b-c_kizaki

Agenda

1. Background

2. Challenges in 2010

3. Idea for an improvement

4. Challenges in 2011

5. Conclusions

21

Page 22: International pbl conf_5b-c_kizaki

Environment in 2011

• Participants

• Teachers: Professor of Keio University

• Agile coaches: Specialist of agile development

• Project Managers: Working people and graduate students

• Project Leaders: Working people, Engineers

• Project Members: Undergraduate students of Keio University

• 3 teams (Each team had one PM and one PL, and several students)

• Period

• 4 months (Oct. 2011 – Jan. 2012)

22

Page 23: International pbl conf_5b-c_kizaki

Projects

• Fiscal year 2011 (3 teams)

• Team 1

• Using an android phone and RSNP(Robot Service Network

Protocol) development of robot network service

• Team 2

• New marketing tool using Graph API of Facebook

• Team 3

• Improvement of an inventory control system

23

Page 24: International pbl conf_5b-c_kizaki

Team members

24

Teacher1 Teacher2

PM

Student A Student B

Client

(professor of

university)

Student C

Agile coach 2

Agile coach 1

Team members

Clients Management

Coaching

Client

(Kato Laboratory

students)

PL

Page 25: International pbl conf_5b-c_kizaki

Project (Step1)

• A robot is moved by Android phone

• forward, back, and right and left

25

Command

Page 26: International pbl conf_5b-c_kizaki

Project (Step2)

• Transmission of GPS sensor information

• GPS information is acquired at a fixed interval

• Acquired information is displayed on a screen

• Status

• Latitude

• Longitude

• Time

• Transmit to server using RSNP

26

Page 27: International pbl conf_5b-c_kizaki

Schedule

27

2011/10 11 12 2012/1

Step1 Develop (Student A)

Step2 Training Develop(Student B & C)

• We developed Step 1 and Step 2 simultaneously.

• Because

• There was only one robot (using Step 1).

• Step 2 has been developed only by Android phone.

Page 28: International pbl conf_5b-c_kizaki

Technical support (PL)

• Code review

• He carried out for the application which the members

manufactured.

• Following viewpoints

• Performance

• It is important to consider the smart phone structure, which is poor composed

with a PC

• Readability

• It is important to raise readability of source codes, perhaps by adding

comennts

• Make sample applications

• VoiceRecorder, SharedPreferences

• Sample of GPS acquisition

28

Page 29: International pbl conf_5b-c_kizaki

Meeting with client

29

Progress was reported to the client

once a week on Saturday

Every member adjusted their

schedule to visit the Kato laboratory

Page 30: International pbl conf_5b-c_kizaki

Agile coaches

30

• The professionals of agile development joined the

members of team.

• They performed a lecture on agile development.

• They taught how to use BTS (Bug Tracking System) at the

beginning of class.

• They advised the creating of the progress report.

Page 31: International pbl conf_5b-c_kizaki

Management

• Training

• Training was decided depending on each developer level of skill.

• Studied documents created exclusively for training

• Studied using Java drills

• Creation of a sample android application

• Ticket-driven development

• Development was done using the Redmine ticket system.

• Parallel development

• Initiated step 1 and step2 at the same time

• Use communication tools

• Mailing list, Skype chat etc.

31

Page 32: International pbl conf_5b-c_kizaki

Result: Data

32

Quantity Explanation

Source code

(RSNP Client)

2,027 /LOC The program which operates Andoroid

to LEGO MINDSTORMS

Source code

(GPSSender)

399 /LOC The program which carries out Android

sensor information acquisition

Source code

(RSNP Server)

200 / LOC RSNP server program

Source code

(VoiceRecorder)

407 / LOC Android application which records a

sound

Source code

(SharedPreferences)

202 / LOC Data is saved with Android

application(RSNP server's connection

place information, etc.)

Documents 9 /doc Basic, Test specifications, etc.

Work time 204.5 / h About 10 hours of moons per person

Number of tickets 98 / ticket

Page 33: International pbl conf_5b-c_kizaki

Result: Educational data

33

Man hour Worker

Training teaching-materials creation 8 (h) PM

Skill level test 1.5 (h) All students

Java language basic study 13 (h) Student C

Creation of android application 10.5 (h) Student C

Creation of android application 3 (h) Student B

Code review 4 (h) PM, PL

Server side Java study 13.5 (h) Student C

Sum 53.5 (h)

Page 34: International pbl conf_5b-c_kizaki

Result: Man hour

34

Estimate Track record

Training 39.5/h 53.5 /h

Development environment 9 /h 15 /h

Step1 31 /h 30.5 /h

Step2 36 /h 43.5 /h

Meeting (client) 14 /h 1(h) * 14(times) = 14(h)

Core meeting 225 /h 3(h) * 15(times) = 45(h)

45(h) * 5(human) = 225(h)

Management - 19 /h

Creation of document - 18.5 /h

Sum 429.5 (h)

Page 35: International pbl conf_5b-c_kizaki

Retrospective

• Good point

• System development

• Team activity

• Environment

• Bad point

• Communication

• Motivation

35

Page 36: International pbl conf_5b-c_kizaki

Agenda

1. Background

2. Challenges in 2010

3. Idea for an improvement

4. Challenges in 2011

5. Conclusions

36

Page 37: International pbl conf_5b-c_kizaki

What We Have Learned

Things the students have learned:

• Latest information technology

• Android Development

• Robot Service

• Software development process

• Communication skills

• Team activity

Things I (PM) have learned:

• Management skills

• Software development project using an agile development process

37

Page 38: International pbl conf_5b-c_kizaki

Subjects • Cooperation with customers

• There is the necessity to educate the customer in the agile

development.

• Deliberations between customers and vendors, and the

environmental structure in which customer companies take part

positively raise the effectiveness of agile development.

• Documents

• Documents were created to meet customers demands. However,

this became in efficient and the question whether the documents

were necessary was raised.

• Motivation

• The member's motivation was not able to be maintained.

• Member's assignment

• The work load was not well-allotted to members

38

Page 39: International pbl conf_5b-c_kizaki

Conclusions

• Problems that were solved

• The product was delivered.

• Work was able to be visualized by applying the ticket-driven

development.

• The participation of the agile coaches allowed I (PM) and other

members to learn more about agile development.

• With the help of the engineer, I (PM) was able to concentrate on

manage and avoid over work.

• Problems that were not solved

• The maintaining of motivation.

• The balancing of task allotment.

39

Page 40: International pbl conf_5b-c_kizaki

Thank you.

40

Page 41: International pbl conf_5b-c_kizaki

Additional Info: VoiceRecorder

• Practical use image

41

Android application

Recording

function

RSNP

Server

RSNP

Client

Web page

Reproduction

function

Corresponding point

Recording f iles save at

the storage of a terminal

Page 42: International pbl conf_5b-c_kizaki

Additional Info: SharedPreferences

• Practical use image

42

Android application

RSNP Server(B)

RSNP

Client

Setting

function

Corresponding point

URL under setup

RSNP Server(A)

New URL can be inputted

History of URL inputted in the past is displayed

Page 43: International pbl conf_5b-c_kizaki

Additional Info: Risk

• Hardware

• LEGO MINDSTORMS

• Android phone

• Return of robot

• In order to use International Robot Exhibition, it returned for one

week

• A member's condition management

• Sudden illness of PL

• Grasp by the whole project

• It is a unique field called a research-and-development project while

an object is advancing, and was not able to grasp the global image

in the state of the first stage.

43

Page 44: International pbl conf_5b-c_kizaki

Additional Info: Related work

• Motivation UP on PBL

• Naoya Nitta, Yasuhiro Takemura & Izuru Kume(2009). A practice of

collaborative project-based learning for mutual edification between

programming skill and artistic craftsmanship. 39th Frontiers in

Education Conference (FIE), 1 - 5.

• Tucker Smith, Kendra M.L., Cooper, C. & Shaun Longstreet

.(2011). Software Engineering Senior Design Course: Experiences

with Agile Game Development in a Capstone Project. 1th

International Workshop on Games and Software Engineering, 9 -

12.

• Game work was made into the subject matter of PBL.

44

Page 45: International pbl conf_5b-c_kizaki

Additional Info: Related work

• Using management tools

• H.W.A.S. Gondim, A.P.L. Ambrósio & F.M. Costa(2011). TaskBoard

- Using XP to Implement Problem-Based Learning in an

Introductory Programming Course. 12th International Conference on

Agile Software Development (XP2011), 162 – 175

45