building a public transportation system product line

27
Building a Public Transportation System Product Line Omar T. Jaradat, Augustin Petrović & Manish Kungwani 1

Upload: jayden

Post on 23-Feb-2016

21 views

Category:

Documents


0 download

DESCRIPTION

Building a Public Transportation System Product Line. Omar T. Jaradat, Augustin Petrović & Manish Kungwani. University of Zagreb, Croatia Faculty of Electrical Engineering and Computing Augustin Petrović (CROATIA) Manish Kungwani (INDIA) Pratik Bapurao Barkade (INDIA ). - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Building a  Public Transportation System Product Line

Building a Public Transportation System

Product Line

Omar T. Jaradat, Augustin Petrović & Manish Kungwani

1

Page 2: Building a  Public Transportation System Product Line

DSD PTS TeamUniversity of Zagreb, CroatiaFaculty of Electrical Engineering

and ComputingAugustin Petrović (CROATIA)

Manish Kungwani (INDIA) Pratik Bapurao Barkade (INDIA)

Mälardalen University, SwedenDepartment of Computer Science and

ElectronicsSeverine Sentilles (FRANCE)

Omar Tawffeeq Jaradat (JORDAN)Uma Shankar Subramani (INDIA)

Hafiz Umer Waqar (PAKISTAN)Siva Chaitanya Nayak Eslavath (INDIA)

Project supervisor

2

Page 3: Building a  Public Transportation System Product Line

• VIDEO

3

Page 4: Building a  Public Transportation System Product Line

Communication structure

4

Page 5: Building a  Public Transportation System Product Line

We aimed to with• Software Product Line (SPL)• Domain: Public Transportation Systems

• Umple modeling language• Develop three SPL instances

5

Page 6: Building a  Public Transportation System Product Line

PTS common elements

StopsLines

Runs

TimetablesSchedules

Vehicles

6

Page 7: Building a  Public Transportation System Product Line

Public Transportation System PLRequirements

DOMAIN ELEMENTS

Stops

Lines

Vehicles

Runs

OPERATION ELEMENTS

Schedules

Timetables

PASSENGER ASSISTANCE

Quickest route

finding

Actual timing

EMERGENCY HANDLING

Vehicle position tracking

Rerouting

Arrival time prediction

INSTANCE REQUIREMENT

S

Optional instance specific features

Functional PL requirements

7

Page 8: Building a  Public Transportation System Product Line

Development Process• Model Driven Development – Umple• Test Driven Development• Agile “UP” methodology

• Incremental release-based development

8

Page 9: Building a  Public Transportation System Product Line

DESIGN (or redesign)

ARCHITECTURE

DESIGN TESTS

MATERIALIZEDESIGN

IN UMPLE

GENERATE CODE

TESTDEVELOP INSTANCES

RELEASE

UMPLEDEFINE

REQUIREMENTS

ASSIGN REQUIREMENTS TO ITERATIONS

Development Process

9

Page 10: Building a  Public Transportation System Product Line

• Core Entities and Repositories• Schedule Management• Vehicle management• Passenger Assistance• Arrival Time Prediction• Quickest Route Fiding• Data Access Layer• Emergency Handling support

Product Line Core

10

Page 11: Building a  Public Transportation System Product Line

Instance architecture

11

Page 12: Building a  Public Transportation System Product Line

Public Transportation System Product Line

Product Line Core

PTS on CLOUD

“.jar” to “.dll”

Amazing PTS instance

Västerås PTS

12

Page 13: Building a  Public Transportation System Product Line

Lausanne PTS – aka Amazing PTS instance

• Based on a real city - Lausanne• All features derive from the Product

Line PLC• Administrative Desktop Application

13

Page 14: Building a  Public Transportation System Product Line

14

Page 15: Building a  Public Transportation System Product Line

Västerås PTS• Based on – Västerås• Only Core features• Desktop Application• Uses its own DAL – MS SQL Server

15

Page 16: Building a  Public Transportation System Product Line

16

Page 17: Building a  Public Transportation System Product Line

PTS on CLOUD• Based on a real city – Lausanne• Passenger Assistance features• Consumer End Web Application• Java + .NET interoperability

LIVE ON THE WEB Windows Azure

17

Page 18: Building a  Public Transportation System Product Line

18

Page 19: Building a  Public Transportation System Product Line

Technical issues• Missing features in Umple

(under development)• Class abstraction• Generics• No Multiple Interface Implementation• Exception Handling

• Oracle database server crashed• Inaccessible Real-Time data for Neural

Networks learning

19

Page 20: Building a  Public Transportation System Product Line

Decisions and Solutions• Code generation from model • Implemented the following design patterns:• Factory Pattern• Repository Pattern• Singleton Pattern• Observer Pattern

20

Page 21: Building a  Public Transportation System Product Line

Some more issues• Some ill-performing team members• Language semantics• Cultural misunderstandings

21

Page 22: Building a  Public Transportation System Product Line

Results Complete Umple model as

Product Line Core Developed 3 working instances Extended the requirements from

Customer Neural Network for Arrival Time Prediction Quickest route finding

22

Page 23: Building a  Public Transportation System Product Line

Experience• Distributed work environment• Product Line development• Acquired modeling and language skills• Friends and a life experience

23

Page 24: Building a  Public Transportation System Product Line

Special Thanks to…Timothy C. Lethbridge (SCORE)Ivica Crnković (MdH)Mario Žagar (FER)Aneta Vulgarakis (MdH)Séverine Sentilles (MdH) Igor Čavrak (FER) Marin Orlić (FER)Ivana Bosnić (FER)

Dominik PavlovićVice Šimunov

Jure RastićShruti JohariIvan Petković

For all the HELP and

GUIDANCE …

24

Page 25: Building a  Public Transportation System Product Line
Page 26: Building a  Public Transportation System Product Line

Thank You

Page 27: Building a  Public Transportation System Product Line

• Any Questions or Queries?

Što? What?

Vad?

Was?

Comments !