Upload
matthew-fox
View
215
Download
1
Tags:
Embed Size (px)
Citation preview
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!
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
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
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
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
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
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!
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
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?
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?
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!
18
• Few team members – LEARN• Few team members – CODE• Few team members – SLEEP
What did we do less?
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
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
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
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
Pressing points! (Contd.)• Some more ignored best practices:
• Class abstraction• Generics• No Multiple Interface Implementation
• Seemingly Interface Inheritance
• Exception Handling
24
Decide!• Factory Pattern• Repository Pattern• Singleton Pattern• Impossibility of Observer Pattern
25
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
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 …