160 likes | 303 Views
This paper discusses the implementation of a discrete event simulator utilizing distributed processing, developed during the 10th Workshop on Software Engineering Education and Reverse Engineering in Serbia. It covers the project's motivation, technology overview, prototype structure, verification, and evaluation processes. Additionally, it combines the work of students from different courses, enhancing their learning through practical applications. Key experiences, both positive and negative, from participants highlight the benefits and challenges of the collaborative project, emphasizing the need for balance in workload and new technologies.
E N D
Implementation Of The Discrete Event Simulator Based On Distributed Processing Zaharije Radivojević1, Ljubomir Samarđić, Miloš Cvetanović11Elektrotehnički Fakultet Beograd, zaki@etf.rs,ljubex@gmail.com, cmilos@etf.rs 10th Workshop “Software Engineering Education and Reverse Engineering” Ivanjica, Serbia 6-11 September 2010
Agenda • Part one: - Idea • Introduction • Motivation • Technology overview • Part two:- Verification • Prototype structure • Implementation details • Evaluation 10th Workshop SEE and RE
Combining projects • Combining students projects within different courses within same semester • Computer Architecture and Organization 2 • Concurrent and Distributed Programming • Modifying requirements for particular group of students • Balancing with different techniques necessary for the project 10th Workshop SEE and RE
Computer Architecture and Organization 2 • Type: Mandatory course • Starts: 6 semester • Prerequisites : Basics of Computer engineering, Computer Architecture, Computer Architecture and Organization 1 • Class hours: 2+2+1 • Format: • Midterm 20 • Laboratory 20 • Project 40 (Simulator design, group of 4 students) • Final 20 10th Workshop SEE and RE
Concurrent and Distributed Programming2 • Type: Mandatory course • Starts: 6 semester • Prerequisites : Operating Systems, Object Oriented Programming • Class hours: 2+2+1 • Format: • Midterm 35 • Laboratory 10 • Project 20 (Distributed Processing, single student) • Final 35 10th Workshop SEE and RE
Joint Project • Design and implement discrete event simulator • Executing in a grid based distributed environment • Nodes are mobile devices • Project 40 + 20 points • Group of 4 (only two groups) 10th Workshop SEE and RE
Introduction – Simulator structure • LG – Logical • PH – Physical • PR –Presentational • SM – Simulational • EX – Executional 10th Workshop SEE and RE
Motivation and Technology overview • Mobile devices • Grid technologies • Script languages • CellularBASIC • FscriptME • Hecl • Simkin "The grid is the infrastructure that enables coordinated resource sharing and problem solving in dynamic, multi-institutional virtual organizations" 10th Workshop SEE and RE
Implementation details • Structure of the evaluation prototype • Client application – simulator • Server application • Mobile application • Script language extension (FscriptME+) • Data type: double • Support for arrays (new data type array...) • Implicit type conversion (int to double) • Support for parallel execution (introduction of parallel block) 10th Workshop SEE and RE
Evaluation – time • Problem • Matrix multiplication • Bag of tasks • Environment • emulator • Nokia N82 10th Workshop SEE and RE
Evaluation – power consumption • Device characteristics • Battery capacity: 1050mAh • Average power consumptionduring call: 250mA ~ 4h 10th Workshop SEE and RE
Students experiences • Positive: • Combining projects between courses • Creating practical software • Working in teams • Learning new technologies • Negative: • Too much work • Too much new thinks • Too big documentation 10th Workshop SEE and RE
Conclusion • Projects: • Scalability execution time is inversely proportional to the number of devices • Battery consumption problem • RPC vs XMPP • Script vs Native • Students: • Combining projects is positive • Finding balance is hard 10th Workshop SEE and RE
Thank you! Radivojevic Zaharije