CS517 Final Project Train Monitoring and Control System Devon Raehal, Brock Wilcox, Yuen Lee.
-
Upload
ezra-stafford -
Category
Documents
-
view
217 -
download
0
Transcript of CS517 Final Project Train Monitoring and Control System Devon Raehal, Brock Wilcox, Yuen Lee.
CS517 Final Project
Train Monitoring and Control System
Devon Raehal, Brock Wilcox, Yuen Lee
Our Group
• Devon Raehal – Colorado• Brock Wilcox – Washington D.C.• Yuen Lee - Florida
PROBLEM DESCRIPTION
Problem Description
• A Train Management System (TMS) is to be developed. – The system consists of two major subsystems:
• A Train Monitoring and Control Subsystem (TMCS)• A Train Schedule Inquiry Subsystem (TSIS).
– The TMCS is responsible for • tracking trains• controlling the traffic signals • The TMCS does not directly control the trains
– The TSIS is used by passengers to query the system about
• train schedules• prices• the current locations of trains
MAJOR MODELS
UML Domain Diagram
UML Impl Diagram
USE Case Highlights
OCL Highlightsabstract class Segmentoperations
-- This will call out the the subclass prevSegments prevSegments(): Set(Segment) = if oclIsTypeOf(RouteSegment) then self.oclAsType(RouteSegment).prevSegments() else self.oclAsType(Platform).prevSegments() endif -- Next segments can be calculated from previous segments nextSegments(): Set(Segment) = Segment.allInstances ->select( s | s.prevSegments()->includes(self) )->asSet
OCL Highlights$ ./runtests.pl ok 1 - tests/00_basic_invariants_pass.cmdok 2 - tests/01_train_pass.cmdok 3 - tests/02_train_notred_fail.cmdok 4 - tests/03_train_move_pass.cmdok 5 - tests/04_train_move_skip_fail.cmdok 6 - tests/05_multiroute_basic_pass.cmdok 7 - tests/06_multiroute_1train_pass.cmdok 8 - tests/07_multiroute_2train_fail.cmdok 9 - tests/08_multiroute_2train_pass.cmdok 10 - tests/09_train_location_query_pass.cmdok 11 - tests/10_fares_pass.cmd1..11
MAJOR EXPERIENCES
Experiences• Work out ambiguities early
• This did not prove as easy as we thought. • We did the requirements breakdown • We had a big 12th hour “argument” about what it
meant to be a Route vs. a Section. • Team Work over time zones was a challenge
• At Midnight for Devon it was 2AM for Yuen and Brock.
• The team had to devise ways to collaborate.• used git via bitbucket.org. (Private repos for free)• Google Chat• Google hangout for voice and video
• Better understanding of the class subjects of UML, OCL and model checking.
CONCLUSION
Conclusions