Top Banner
1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science and Engineering, University of Mälardalen, Västerås, Sweden and at the Faculty of Electrical Engineering and Computing, University of Zagreb, Croatia (year 2010/2011). For all other purposes, authors’ written permission is needed! The purpose of these materials is to help students in better understanding of lectures in DSD and not their replacement! NOTICE!
30

1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

Jan 03, 2016

Download

Documents

Matthew Fox
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

1

• These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science and Engineering, University of Mälardalen, Västerås, Sweden and at the Faculty of Electrical Engineering and Computing, University of Zagreb, Croatia (year 2010/2011).

• For all other purposes, authors’ written permission is needed!

• The purpose of these materials is to help students in better understanding of lectures in DSD and not their replacement!

NOTICE!

Page 2: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

2

Distributed Software Development

Page 3: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

3

Public Transportation SystemProduct Line

Manish Kungwani

Page 4: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

What is it? Is it done?

Instance C

Instance B Instance A

4

Product Line

PRODUCT LINE

Page 5: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

5

What did we do?

• Till Week 53• Product Line complete

• Fulfilled all Requirements• Core elements• Schedule Management• Passenger Assistance• Vehicle Tracking and Management

• Dessert• Optimized Shortest Route Finding• Neural Network for Arrival Time Prediction• Collaboration with EzFare

Page 6: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

6

What did we do? (contd.)

• Instance 1(FER) complete:• Core functionality• Persistent Storage• Passenger Assistance

• Instance 2(MDH) complete:• Core functionality (Without Timetables and

Schedules)• Persistent Storage

Page 7: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

7

Page 8: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

8

Who did what?• Documentation – All members• Umple code – Manish & Augustin (5892)• Unit Testing – Manish & Augustin (2128)• FER Instance – Manish & Augustin (2474)• FER DB – Manish & Augustin• MDH Instance – Omar, Umer, Uma• MDH DB – Omar, Umer• Graphics - Pratik

Page 9: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

9

When Did we do?

Page 10: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

10

MemberW38

W39

W40W41

W42

W43W44

W45

W46

W47W48

W49

W50W51

W52

w53 Total

Augustin Petrović

14 19 16 10 18 17 13 56.5 25 21.5 13 33 36 25 8 44 369

Uma Shankar

13 1 5 12 13 10 10 17 20 32 25 17 23.5 16 14.5 28 257

Hafiz Umer Waqar

14 9 12 18 14 14 10 19 19 20 18 17.5 17 36.5 20.5 33 291.5

Siva Chaitanya

0 4 4 8 11 10 11 16 20 21.5 20.5 19.5 12 13 8 23 201.5

Manish Kungwani

15 17 12 14 17 17 14 54 28 28 13 36 36 17   40 358

Pratik Barkade

13 4 6 15 14 14 12 18 19 17 16 15.5 20.5 13.5 10 15 222.5

Omar Jaradat

22 18 12 18 16 14 17 20 24 20 18 11 18 34 10 20 292

Total 91 72 67 95 103 103 87 201 155 160 124 150 163 155 71 203 1952

Grand Total = 1952

Page 11: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

11

Page 12: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

12

DeliveryDELIVERABLE STATUS

Project plan document 12 minutes late

Requirements Definition document Before Time

Design Description document On Time

Summary Week Report On Time (Late 2 times/ 15)

Minutes of MeetingSubmitted under 24 hours of

a meeting.

Acceptance test plan Late by 30 hours 28 minutes

Test report 24 minutes late

Page 13: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

13

Results of the initial Plan!

Complete Umple model Develop 3 Instances Only 2 done Extend Requirements

Neural Network for Smart Arrival Time Prediction

Optimized shortest route finding

Collaboration with EzFare – Out of the blue!Collaboration with EzFare – Out of the blue!

Page 14: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

14

Cause - A Bumpy Ride!

• Bugging Umple Experience• Umple Modeling gave us a a LOT of ready to go code• Lack of communication from team members• Lack of performance on time• Overloaded Team members• Database crash• No Umple enhancements from Customer

Page 15: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

15

• Medium:• Mostly Skype• Local members met regularly, many sleepless

nights• Sometimes Ggroup• Electronic mail• International SMS (4 in all)

• When:• When needed (mostly weekly)• At least 1 day notification

Communication – Hello, you there?

Page 16: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

16

• Work Division was done fairly• Synchronization was successful!

• When work was submitted!

• Late and Unusable Results• Untimely revelation of lack of knowledge• Slow learning curve

• Lack of enthusiasm to achieve expected quality• Repetition of sloppy work!

Who? What? How?

Page 17: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

17

• Extraaa hours by some members were needed to complete work

• Next time:• Mutually Evaluate and reevaluate all team

members• Motivate and Peer Pressurize for faster

learning

So finally!

Page 18: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

18

• Few team members – LEARN• Few team members – CODE• Few team members – SLEEP

What did we do less?

Page 19: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

Solid Content - • Core Entities –

• Entity classes• Repositories for entities• Manager classes for restricted access

• Schedule Management• Part of Schedule Management

• Passenger Assistance• Schedule Manager & RealTime Manager

19

Page 20: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

Solid Content (contd.)• Vehicle Management

• Vehicle Manager & RealTime Manager

• Optimized Route Finding• RealTime Manager & Directed Graphs

• Arrival Time Prediction• Neural Networks

• DAL• Includes Information exchange with EzFare

20

Page 21: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

Solid Content (contd.)

21

Page 22: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

Blockbuster!• Passenger Assistance gives a commercial

boost• Implemented not required optimization

algorithm

• Arrival Time Prediction• Connected the …. Working with EzFare To a wider Complete Solution

22

Page 23: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

Pressing points!• Some ignored best practices:

• How to do it!• Do it in interface• Validate it in entity• Automatically persist• Success

• What we are doing ..• Do it in interface• Try persisting• If works, success• Else => Validation issue

23

Page 24: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

Pressing points! (Contd.)• Some more ignored best practices:

• Class abstraction• Generics• No Multiple Interface Implementation

• Seemingly Interface Inheritance

• Exception Handling

24

Page 25: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

Decide!• Factory Pattern• Repository Pattern• Singleton Pattern• Impossibility of Observer Pattern

25

Page 26: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

Takeaway …• A Life experience & friends• Understanding the hardships of Distributed

Development• Concerns of a Product Line• Multicultural environment• Java Experience• Object Oriented Decision making• Another weapon in the Arsenal - Umple

26

Page 27: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

Any Questions or Queries?

Što? What?

Vad?

Was?

27

Comments !

Page 28: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

Special Thanks to the help and Guidance …

28

Ivica CrnkovićMario Žagar (FER)

Aneta Vulgarakis (MdH)Séverine Sentilles (MdH)

Igor Čavrak (FER) Marin Orlić (FER)

Ivana Bosnić (FER)

Dominik PavlovićVice Šimunov

Ivana ŠarićSandra Petrović

Jure RastićShruti Johari

For all the HELP and

GUIDANCE …

Page 29: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

29

Page 30: 1 These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science.

30

Thank You