30
1 09-10-06 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 2009/2010). 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!

NOTICE!

  • Upload
    wirt

  • View
    40

  • Download
    0

Embed Size (px)

DESCRIPTION

NOTICE!. - PowerPoint PPT Presentation

Citation preview

Page 1: NOTICE!

109-10-06

• 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 2009/2010).

• 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: NOTICE!

209-10-06

Distributed Software Development

Page 3: NOTICE!

309-10-06

Requirements Definition and Design Description

Vijaya Cherukuri and Gordan Kreković

Page 4: NOTICE!

409-10-06

The Story Behind

Ring-ring! Hello?Ring-ring! Hello?Ring-ring! Hello?

Mobile originated/terminated callMobile originated/terminated SMS

GPRS

NRTRDE System

Page 5: NOTICE!

509-10-06

CONVERSIONAND LOADING

RATING

SUSPENSION

ADMINISTRATIONREPORTING

Page 6: NOTICE!

609-10-06

Conversion Process

ASN.1

CSV

Page 7: NOTICE!

709-10-06

Loading Process

• Keeping a log of processed files– Time stamps

– File names

– Number of records

– Sender

– Conversion and loading status

• Invoked from a shell script at predefined period of time.

Page 8: NOTICE!

809-10-06

Rating Engine

• Price depends on:– Operator

– Geographic zone

– Time zone

– Service

– Duration / volume

Page 9: NOTICE!

909-10-06

Geographic zone

• Determined by a prefix of a B-number

+390862...+38591...+38542...+3851...+9140...+385...+92...

– every operator has own price for each geo-zone

– searching starts with longest prefix to avoid ambiguity

Page 10: NOTICE!

1009-10-06

Time zone

• Determined by a start time of an event

peakoff-peaknight...

– time zone is continual period of a day with same price

– every operator has own time zones and own prices for each zone

– each day can have different zones – problem!

Page 11: NOTICE!

1109-10-06

Duration

• A calling event is consisted of:– a first interval

– as many as needed next intervals

Page 12: NOTICE!

1209-10-06

Rating Algorithm

• Find geographic zone

• Find time zone

• Get duration and prices for first and next segments for given operator, geo-zone, time zone and service

• Get factor from operator

• Compute price

Page 13: NOTICE!

1309-10-06

Suspension

• Generate a list of subscribers for suspension

• The list should be created– in the database

– XML format

• Suspension criteria:– logic expression; variables

• total expense, total duration/volume, number of events

• expense, duration/volume per event

Page 14: NOTICE!

1409-10-06

Reports

• The system should be able to generate reports giving: – IMSI (MSISDN) – time period – roaming partner PLMN – duration (volume) by service – amount

Page 15: NOTICE!

1509-10-06

Administration Application

The administration application will enable: – creation, deletion and modification of

new entries in rating tables – creation, deletion and modification of

suspension rules – monitoring and management of the

loading process – creation of error reports

Page 16: NOTICE!

1609-10-06

Non-functional Requirements

• Applications will be implemented as web application– no special client software on the agent side

– GUI should behave and look the same in different web browsers

• Monolithic system

• Archive backup

Page 17: NOTICE!

1709-10-06

Use C

ase Diagram

Page 18: NOTICE!

1809-10-06

Use C

ase Diagram

Page 19: NOTICE!

1909-10-06

Activity D

iagram

Page 20: NOTICE!

2009-10-06

Activity Diagram

Activity D

iagram

Page 21: NOTICE!

2109-10-06

Requirements Group

• Conversion and loading process (CLP)

• Rating engine (RE)

• Reports (RT)

• Administration application (ADM)

• Other (OTH)

Page 22: NOTICE!

2209-10-06

Importance of Each Group

CLP RE RT ADM OTH0

2

4

6

8

10

Page 23: NOTICE!

2309-10-06

Priorities

• Processing system is not acceptable without any of mentioned parts– except file converter because we can use

existing one

• Non-functional requirements (OTH) are less important

• Optional requirements in ADM group– ability to administrate operators list

Page 24: NOTICE!

Database Design

Page 25: NOTICE!
Page 26: NOTICE!

09-10-05

Architecture

Page 27: NOTICE!

09-10-05

Components

Page 28: NOTICE!

09-10-05

Linux

GNU/C, shell script, daemon programming, ODBC PL/SQL

procedures, PostgreSql

Apache, PHP, HTML, XML

Technologies

Page 29: NOTICE!

ProgressUnderstanding of Requirements

Design

Technology/Environment setup

Communication

Implementation

Confidence

09-10-05

Page 30: NOTICE!

09-10-05

The End

It’s time for questions!Tank you!