Projects tagged ‘swe’


[17 total ]

3 Users
 

Created over 2 years ago.

0 Users

Your team is charged with building a prototype of Fire Emergency Response System (FERS). FERS is intended to be used by several organizations (agents) to automatically detect, respond, and manage fire ... [More] emergency situations. Given that the system is going to cross the boundaries of several organizations, the architects would like to design and develop the system according to the principles of Service Oriented Architecture (SOA) and use the web services technology for its implementation. FERS consists of three types of organization: school, hospital, firefighting station. The role of each of these organizations is described in more detail below. A school is equipped with two types of sensors: smoke detectors and fire sprinklers. There may be many smoke detectors and fire sprinklers throughout a school. Each of these sensors are made available to the rest of the software system via a discoverable web service. A sensor's web service provides operations for getting access to the stream of sensor readings and the generated alarms (if any). A sensor's web service may also provide control operations. For instance, a fire sprinkler provides a control operation that allows a remote client in the system to turn it on/off. A school also provides a school profile service, which provides useful information, such as the name of the school, location, number of student, hours of operation, and so on. A firefighting station has a fire monitoring service that keeps track of all the sensors in the school. A firefighting station also has several firefighting engines, each of which is made available to the rest of the system via a separate web service. Once smoke is detected by the fire monitoring service, it uses an engine dispatch service to dispatch the closest firefighting engines to the scene. In order to determine the number of required firefighting engines that need to be dispatched, the engine dispatch service may use a heuristic (developed by your team) based on the information (e.g., number of students, size of the school, hours of operation) that is available from the school's profile service and the number of smoke sensors that have detected smoke. A firefighting engine should constantly communicate its status and progress to the station's engine dispatch service. If only a single smoke detector sensor has detected smoke, the firefighting engine that gets to the scene needs to detect whether the alarm is real or not (i.e., whether there is an actual fire or not). If there is an actual fire, the firefighting engine turns on the closest fire sprinkler. This will be detected by the fire monitoring service, which as you may recall is constantly monitoring the sensors. Therefore, it automatically sends an SOS message to the hospital's medical emergency monitoring service (discussed further below). If there is no fire, the firefighting engine needs to reset the smoke detector. If at any point in time more than one smoke detector sensors detect smoke in the same school, the fire monitoring service can safely assume that there is a real fire at the scene (i.e., it is not a sensor malfunction). Therefore, it automatically orders the closest fire sprinklers to turn on, and sends an SOS message to the hospital's medical emergency monitoring service. Once an SOS message is received by the hospital's medical emergency monitoring service, it uses the hospital's ambulance dispatch service to send the closest ambulances to the scene. Similar to a firefighting engine, each ambulance is made available to the rest of the system via a separate web service. The ambulance should also constantly communicate its status and progress to the hospital's ambulance dispatch service. The ambulance dispatch service uses a heuristic (developed by your team) based on the number of smoke detectors that have detected smoke as well as the information made available by the school's profile web service to determine the number of ambulances that should be dispatched. As soon as a firefighting engine has extinguished the fire associated with a smoke detector, it needs to reset the smoke detectors (the assumption is that smoke detectors never burn). As soon as the fire monitoring service on the firefighting station detects that all the smoke detectors have been reset, it orders the firefighting stations to return to their base and turns off the fire sprinklers. It also send a normalcy message to the hospital's medical emergency monitoring service, which then orders its ambulances to return to their base. Note that "base" for a firefighting engine or an ambulance corresponds to the initial location of the vehicle, and may be different from the location of hospital or firefighting station. Extra credit Develop a Business Process Execution Language (BPEL) model that initiates and coordinates the interaction among the web services. Execute and test the BPEL using an open source BPEL engine. The above project description forms the minimal subset of functionality that the teams should develop. However, the project is rather open-ended. In other words, the teams are encouraged to fill in the gaps and customize FERS by adding new services and interesting capabilities, as long as they do not conflict with the principles of SOA and the minimal subset of functionality discussed above. Development and Deployment Your prototype should support at least one school, hospital, firefighting station, and four ambulances, firefighting engines, and six sensors. You should demonstrate your application running over either multiple machines or via multiple independent processes. Information about the location of UDDI can be encoded in a configuration file, which may have a single copy, or be replicated as needed. Upon being started, each organization needs to register its web services with the UDDI. Other services and clients will use UDDI to find the appropriate web services. You are required to use the following platforms for the implementation of your project: Programming language - Java Web Service Platform - Apache Axis 2 UDDI -- Apache JUDDI Other platforms will be considered only if (1) they are open source/license, and (2) your team can justify using another platform. You will need to get the instructor's approval before developing your system on top of a different platform. Hints and assumptions - You will need to simulate the existence of sensors in software. You can use a separate Java thread for each sensor. - You can assume a two dimensional world. Each entity needs to know its (x,y) coordinates and be able to provide others with them. The coordinates will be used to determine the distance between entities. - You will need to simulate the existence of time. One way is to create a logical clock thread on each agent and have it time-step. You will need to synchronize the clocks at the beginning. For instance, you will need the clock to be able to simulate the following: - The time it takes for a vehicle to move and get to its destination (you can assume each vehicle moves at a constant rate) - The time required for extinguishing fire (you can assume a constant number) - You can assume the ambulance crew is able to treat the patients at the emergency scene, and does not need to transport any of the patients back to the hospital. Evaluation In order to evaluate and also to demo your project, you will have to develop some kind of a user interface, preferably graphical, that clearly demonstrates the execution of the system as it progresses. The user interface should provide the ability to initiate the start of a scenario by triggering the detection of smoke by one or more sensors. Your system should also provide a mechanism to make the decision on behalf of the firefighting engine's crew, i.e., whether there is an actual fire or not. This would either be interactive (e.g., a graphical interface that asks the user) or static (e.g., read a config file). Keep in mind that while this is not a user-interface class, often having a nice graphical interface could make your demo a lot more interesting. Your team is responsible for developing experiments that clearly demonstrate the FERN functionality. The design of an experiment should include a description of the deployment. For example, you could say that for an experiment you will deploy so many schools, sensors, ambulances, and so on; identify their respective locations on a 2 dimensional map of the scenario; discuss the smoke detector sensors that will be triggered to report smoke; and what would you expect to be the outcome based on the heuristics that are being employed. Logistics Students will work in teams of 4. Students are encouraged to form teams on their own. The students that are not part of a team will be randomly assigned by the instructor. Personal laptops may be used for development and demonstration, as well as GMU student servers. The prototype must be demonstrated in the regular classroom, either using the GMU network infrastructure, or a private network assembled by the team. Teams are responsible for all the planning and setup required to demonstrate the prototype. Deliverables Mid-term project report A document (max 10 pages) that includes (1) prototype design diagrams -- clearly showing the services that will be developed, including their operations, as well as the interactions among the services in order to achieve the system's objectives, (2) the experiments that will be performed to test the system, and (3) planning of the implementation and evaluation. 2. Each team will provide a short presentation during class. The presentation is a crucial aspect of the report and should mainly focus on the design and ideally a demo of a subset of the functionality already developed. Final project report A revised version of the mid-term document (max 10 pages). 2. Each team will provide a detailed demo of the completed system during class. The demo is a crucial aspect of the final report and should clearly demonstrate that the system works by running it on several experiments designed by the team. 3. Code of the developed system. The code should be delivered in a format that can be easily tested by the GTA. The code should be accompanied with a detailed instruction that would allow anyone to compile and execute it. You will be graded on the quality of the developed code. You are strongly encouraged to apply the principles of software engineering, e.g., use descriptive variable names, provide adequate comments, generate JavaDocs, and so on. [Less]
Created 11 months ago.

0 Users

Solving the UVa Australian Voting problem
Created about 1 month ago.

0 Users

Code samples demonstrating a variety of real-world web, desktop, and hand-held software engineering applications with best practices.
Created 12 months ago.

0 Users

This open source project is a repository for executable SensorML process model instances, as well as RelaxNG profiles of the core SensorML schema. The project was initiated by the VAST Team at the ... [More] University of Alabama in Huntsville (UAH) and is now also maintained by Sensia Software and Botts Innovative Research, Inc. Executable processes are meant to be executed with the process chain execution engine provided by the SensorML Data Processing project. This project also relies on the SWE Common Data Model Framework, and the OWS Service Framework also on Google Code. [Less]
Created about 1 year ago.

0 Users

Vorerst ein Demo-Projekt um die Bedienung und die Konzepte von Subversion anschaulich machen zu können.
Created 3 months ago.

0 Users

swe-gmu-uml
Created 3 months ago.

0 Users

This open source project aims at building a JAVA API and implementation of the SWE (Sensor Web Enablement) Common Data Model, that can be easily used to access and produce SWE Common Data, and convert ... [More] in to/from existing formats such as NetCDF, HDF, GeoTIFF, JPEG2000, etc... It can also be used to quickly develop SWE services such as SOS, SPS and SAS which all rely on the SWE Common Data Model and thus to build a Sensor Network. The project was initiated by the VAST Team at the University of Alabama in Huntsville (UAH) and is now also maintained by Sensia Software, Spot Image, and Botts Innovative Research, Inc.. DependenciesThe following libraries are needed in order to compile the code published on SVN or in the download section: Xerces J 2.9.0 - XML Parser Vecmath library extracted from Java3D 1.4 JTS 1.8 - Java Topology Library StAX API and a working implementation For dealing with existing data formats, the following libraries are also needed: JAI & ImageIO 1.1 if not already included in your JDK - Java Advanced Imaging JJ2000 5.1 - JPEG 2000 support NetCDF Java Library - NetCDF data library [Less]
Created about 1 year ago.

0 Users

Space Time Toolkit is Java based software that was initiated by the University of Alabama in Huntsville (UAH), mainly for demonstrating sensor web related technologies via an interactive user ... [More] interface allowing for 4D visualization and drag and drop processing of data. It is also a visualization and processing toolkit that can be used without the GUI components. The main focus is the support of interoperable data exchange and web data access standards developed by the Open Geospatial Consortium. A secondary but also important aspect is the support of real time data streams and real time processing (e.g. geolocation, classification), so the rendering engine is optimized for that. The software is still mainly maintained by the VAST Team at the University of Alabama in Huntsville (UAH), but have more contributors such as Sensia Software LLC and Spot Image. DependenciesThis project relies on code from several other open source projects also hosted on Google Code: The SWE Common Data Model Framework The OGC Service Framework The SensorML Data Processing Framework The SensorML Process Library. All external libraries required by these frameworks are usually necessary to compile and run Space Time Toolkit. Please go to the page of these projects to see what you need. Additionally, these other libraries are also needed in order to compile the code published on SVN or in the download section: Eclipse Ganymede Platform 3.4 - Space Time Toolkit is an Eclipse plugin JOGL 1.1.1 - Java OpenGL bindings (jar and native libraries for your platform) from https://jogl.dev.java.net/ JAI 1.1.3 - Java Advanced Imaging from https://jai.dev.java.net JFreeChart 1.0.12 - Java Charting library from http://www.jfree.org/jfreechart/ (need JFreeChart and JCommon libs) Berkeley DB Java Edition 3.3 from Oracle [Less]
Created 12 months ago.

0 Users

52°North Initiative for Geospatial Open Source Software GmbH is an international research and development company whose mission is to promote the conception, development and application of free open ... [More] source geo-software for research, education, training and practical use. 52°North backs an open initiative, which is driven by leading research organizations and individuals in the international GIS field. Cooperation partners participate in research and development with focii on Sensor Web Enablement (SWE), Web Security and Geo-Rights Management , as well as Web Processing. [Less]
Created over 2 years ago.