Transcript notice!

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 2003/2004).
• 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!
2016-03-26
1
Selected Topics in Software Engineering
Distributed Software Development
2016-03-26
2
The Interactive Museum Team Presents:
Interactive Museum
Project Current state
2016-03-26
3
What we will talk about?
• Introduction
• Current status for :
– Mote network
– Main Application
– PDA Application
– Server Application
– Web Application
– Web Service
– Database
– System demonstration
• Project status update
2016-03-26
4
Mote network
• Tested and functional
• Meets (almost) every requirement
– Static mote startup / shutdown support
pending
• Additional feature
– Ability to increase / decrease dynamic mote
radio range
Mote network – potential problems
• Corruption of data packets sent over radio
– Very rare, but present
• Considering potential solutions:
– Protecting radio packets with CRC
– Implementation of safe communication
protocol
Mote server
• Propagation of mote network events to the
PDA server
• Three main parts:
– MoteIF
– PDASignaller
– MoteServerGui
MoteIF
• Application – level access point to the
mote network
• Receives messages from the mote
network, and forwards them to listeners
• Sends messages from applications to
motes in network
PDASignaller
• Listens for messages
• On message receive passes it to the PDA
server
– Communication realized using RPC
Mote server class diagram
Mote server
Form
1
uses
PDASignaller
ISignaller
-sender : ISendMsg
-commControl : IBridgeControl
-signaller : ISignaller
+MoteIF(in commPort : string, in baudRate : int)
+~MoteIF()
+MoteServerGui(in sender : ISendMsg, in commControl : IBridgeControl, in signaller : ISignaller)
*
1
*
uses
ISendMsg
SerialComm
IListen
*
IBridgeControl
«bind»
MoteIF
-ListenerManager
-comm : SerialComm
+MoteIF(in commPort : string, in baudRate : int)
+~MoteIF()
«bind»
*
1
CommBase
1
IListenMan
Base mote
Static mote
Dynamic mote
«bind»
RPCClient
IListen
MoteServerGui
uses
*
Program
-gui : MoteServerGui
-mote : MoteIF
-signaller : PDASignaller
+main(in args : string[]) : static void
1
TCP/IP
Mote server GUI
• Used to start / stop the mote
communication bridge
• Ability to control dynamic mote radio range
• Captures raw packets for display and
storing
• Simulator
• Communication with PDA server
Mote server – GUI look
Simulator
• Under development
• Ability to simulate mote network
– Replay of previously stored messages
• Introduced because of practical reasons
– Simplifying test of the rest of the system
Mote server GUI – RAW view
Client & Server Overview
Static
Mote
Server
Client
PDA
Application
PDA Connector
Server
Base
Web Service
Connector
Web
Application
Web Service
Database
Mote Connector
Mote
Server
PDA Application
• Windows Mobile 5 Version
– Will be implemented by using the Windows NT/XP
version code
• Windows NT/XP Version
– Server connectivity
– Supports XHTML content
• To Do
– Implement the rest of the required functionalities
– Implement video streaming if possible
Server Application
• PDA Connector
– Supports XHTML content
– Supports multiple clients
• Mote Connector
– Currently supports Enter messages from
motes (not Leave messages)
– Will be rebuild as a Windows Service
Server Application cont.
• Web Service Connector
– Supports some Web Service methods
• To Do
– Implement the rest of the required
functionalities
– Implement video streaming if possible
Web Application
• Live demonstration
Web Services
• Exposes methods to create and update
database
• Takes care of Database Caching
– (Applications should still cache returned
values as well, to preserve network
bandwidth)
• Can manage security
– Encryption (SSL)
– Authorization and Authentication
Database
• Only allows execution of Stored
Procedures, to be able to enforce data
integrity (no Ad Hoc)
• Changed from MySQL 5.0 to Sql Server
Express 2005
– Also free to use
– Long support for Stored Procedures
WS / DB State
• Current State of Web Services
– All (43) current methods implemented and
undergoing extensive testing
– May be extended if new information is needed
• Current State of the Database
– All (46) Stored Procedures implemented and
deep in testing phase
– Database populated with test data
System demonstration
• Live demonstration
Project Status
• Communication
– Group skype meetings – twice a week
• Last week Monday and Thursday
• This week Tuesday for now
– Individual meetings (any time, any day)
– CVS server : up and running
• Gradually adjusting to it
• Transferred all data from SVN server
Project Status
• Communication
– General info
• Communication between team members is good
and regular
– Also : Starting to use virtual machine
• SQL server is installed
Project Status
• Comments / Experiences / Problems
– Switched from MySQL to Microsoft SQL
Server 2005 Express Edition
– No problems
• For now – hope it will stay in that way
– We are pleased to say that everything is
going as planned 
Project Status
• Project Cost
– A bit outside planned
Current Planned Cost
9350 €
Current Actual Cost
11850 €
Planned Project Cost
16750 €
Forecasted Project Cost
20250 €
Project Status
• Overall project status: on track
• Time schedule: on track
Id
Milestone
Description
M-001 Project Plan
M-002 Requirement Definition
Approved
M-003 Design Description
Approved
M-004 Product Prototype
Responsible
Dept./Initials
Finished week
Metr Rem
Forecast
Plan
Actual
Week
+/W45-06 W45-06 0
W45-06
W46-06 W46-06 0
W46-06
W47-06 W47-06 0
W51-06 W51-06
W47-06
Project Status
• Activity plan: on track
Finished
Next week
Future
2016-03-26
30