E N D
NOTICE! • 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!
Vijaya Cherukuri and Gordan Kreković Requirements Definition and Design Description
The Story Behind Ring-ring! Hello? Ring-ring! Hello? Ring-ring! Hello? Mobile originated/terminated call NRTRDE System Mobile originated/terminated SMS GPRS
RATING CONVERSION AND LOADING SUSPENSION REPORTING ADMINISTRATION
Conversion Process ASN.1 CSV
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.
Rating Engine • Price depends on: • Operator • Geographic zone • Time zone • Service • Duration / volume
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
Time zone • Determined by a start time of an event • 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! peak off-peak night ...
Duration • A calling event is consisted of: • a first interval • as many as needed next intervals
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
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
Reports • The system should be able to generate reports giving: • IMSI (MSISDN) • time period • roaming partner PLMN • duration (volume) by service • amount
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
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
Activity Diagram Activity Diagram
Requirements Group • Conversion and loading process (CLP) • Rating engine (RE) • Reports (RT) • Administration application (ADM) • Other (OTH)
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
Technologies GNU/C, shell script, daemon programming, ODBC PL/SQL procedures, PostgreSql Linux Apache, PHP, HTML, XML
Progress Understanding of Requirements Design Technology/Environment setup Communication Implementation Confidence
The End It’s time for questions! Tank you!