Software Requirements Specification. Schlumberger Scheduling Assistant. for. Version 0.2. Prepared by Design Team A. Rice University COMP410/539



Similar documents
Audit Logging. Overall Goals

Notification options in SMC 2.6

PIKA µfirewall Cloud Management Guide

Semantic based Web Application Firewall (SWAF V 1.6) Operations and User Manual. Document Version 1.0

Workflow Templates Library

Achieving PCI COMPLIANCE with the 2020 Audit & Control Suite.

Monitoring System Status

ACHieve Access 4.3 User Guide for Corporate Customers

Global Asset Tracking & Identification System

Security White Paper The Goverlan Solution

Audits. Alerts. Procedure

White Paper. What Auditors Want Database Auditing. 5 Key Questions Auditors Ask During a Database Compliance Audit

IBM Campaign and IBM Silverpop Engage Version 1 Release 2 August 31, Integration Guide IBM

IBM Campaign Version-independent Integration with IBM Engage Version 1 Release 3 April 8, Integration Guide IBM

SmartConnect Use Case: C7 Utility Uses SmartConnect Data for Targeted Marketing Campaigns December 29, 2009

Standardizing Your Enterprise s Software Packaging Process

Criteria for web application security check. Version

How To Use The Correlog With The Cpl Powerpoint Powerpoint Cpl.Org Powerpoint.Org (Powerpoint) Powerpoint (Powerplst) And Powerpoint 2 (Powerstation) (Powerpoints) (Operations

Netwrix Auditor. Administrator's Guide. Version: /30/2015

SOA Software: Troubleshooting Guide for Agents

AdRadionet to IBM Bluemix Connectivity Quickstart User Guide

WildFire Reporting. WildFire Administrator s Guide 55. Copyright Palo Alto Networks

CS 3610: Software Engineering. Summer Software Requirements Specification Document. Project Title: Road Repair Tracking System

Change Management Best Practices

Security FAQs (Frequently Asked Questions) for Xerox Remote Print Services

Netwrix Auditor for Active Directory

Web Application Hosting Cloud Architecture

Uni Root. An Introduction to Uni Systems enterprise-class, cloud on-demand infrastructure monitoring service. White Paper Solution Brief

Privacy Policy. This privacy policy describes how RiskJockey will use the information collected when you visit the RiskJockey website.

Error and Event Log Messages

Netwrix Auditor for SQL Server

11.1. Performance Monitoring

What s New in Security Analytics Be the Hunter.. Not the Hunted

Overcoming Obstacles to Retail Supply Chain Efficiency and Vendor Compliance

Group Management Server User Guide

FairWarning Mapping to PCI DSS 3.0, Requirement 10

Introduction. Connection security

Database Security Guideline. Version 2.0 February 1, 2009 Database Security Consortium Security Guideline WG

Citrix EdgeSight Administrator s Guide. Citrix EdgeSight for Endpoints 5.3 Citrix EdgeSight for XenApp 5.3

Cash Management. Getting Started Guide

Developing Microsoft SharePoint Server 2013 Advanced Solutions MOC 20489

Deciding When to Deploy Microsoft Windows SharePoint Services and Microsoft Office SharePoint Portal Server White Paper

SA-Announce Cloud Services Mobile Notifier User Manual: ios and Android Version 1.0.0

Architecture and Data Flow Overview. BlackBerry Enterprise Service Version: Quick Reference

Privileged. Account Management. Accounts Discovery, Password Protection & Management. Overview. Privileged. Accounts Discovery

F Cross-system event-driven scheduling. F Central console for managing your enterprise. F Automation for UNIX, Linux, and Windows servers

HelpSystems Web Server User Guide

BlackBerry Enterprise Service 10. Secure Work Space for ios and Android Version: Security Note

Governance and Control of Privileged Identities to Reduce Risk

Solution Brief for HIPAA HIPAA. Publication Date: Jan 27, EventTracker 8815 Centre Park Drive, Columbia MD 21045

FAQ: Understanding BlackBerry Enterprise Server Debug Logs

Aras Innovator Authentication Setup

RSA Security Analytics Security Analytics System Overview

SQL Server Administrator Introduction - 3 Days Objectives

Automating Healthcare Claim Processing

Developing Windows Azure and Web Services

The Comprehensive Guide to PCI Security Standards Compliance

Design Document. Offline Charging Server (Offline CS ) Version i -

Description of Actual State Sensor Types for the Software Asset Management (SWAM) Capability. 7 Jul 2014

VMware Software Manager - Download Service User's Guide

SyncThru Database Migration

Jobs Guide Identity Manager February 10, 2012

CorreLog Alignment to PCI Security Standards Compliance

Cloud Customer Architecture for Web Application Hosting, Version 2.0

Dimension Technology Solutions Team 2

Marketo GoToWebinar Adapter. User Guide Version 3.5

PLUMgrid Toolbox: Tools to Install, Operate and Monitor Your Virtual Network Infrastructure

Centinel: Streaming Data Handler. September 07 th, 2015

Chapter 9 Monitoring System Performance

System Administration Guide

Web Server (Step 1) Processes request and sends query to SQL server via ADO/OLEDB. Web Server (Step 2) Creates HTML page dynamically from record set

Netwrix Auditor for Exchange

SAP HANA SPS 09 - What s New? Administration & Monitoring

Comparing Microsoft SQL Server 2005 Replication and DataXtend Remote Edition for Mobile and Distributed Applications

Getting Real Real Time Data Integration Patterns and Architectures

SYSTEM REQUIREMENTS SPECIFICATIONS FOR THE PROJECT INVENTORY CONTROL SYSTEM FOR CALCULATION AND ORDERING OF AVAILABLE AND PROCESSED RESOURCES

Vulnerability. Management

March

Instant Messaging Compliance for IM and Presence Service on Cisco Unified Communications Manager, Release 10.5(1)

IBM API Management Overview IBM Corporation

Network Management and Monitoring Software

ImproMed Triple Crown / IDEXX Laboratories Integration User Guide

Skybot Scheduler Release Notes

Migrating Within the Cloud, SaaS to SaaS

Requisition Features Benefits Savings Benefit Code C, S manage requisitions electronically

Kaseya 2. User Guide. Version 1.0

OVERVIEW OF THE PROJECT...

WordPress File Monitor Plus Plugin Configuration

Software Requirements. Specification. Day Health Manager. for. Version 1.1. Prepared by 4yourhealth 2/10/2015

Network Agent Quick Start

Training Module for Customer Portal & Customer Care. Enabling the Next Wave of Connectivity

BlackBerry Enterprise Server Resource Kit

Netwrix Auditor for Windows Server

Oracle WebCenter Content


Dell KACE K1000 System Management Appliance Version 5.4. Service Desk Administrator Guide

KPI, OEE AND DOWNTIME ANALYTICS. An ICONICS Whitepaper

Tel: Kemp House City Road London EC1V 2NX. Dynamics CRM Sales Process Case Study

EXECUTIVE SUMMARY THE STATE OF BEHAVIORAL ANALYSIS

Transcription:

Software Requirements Specification for Schlumberger Scheduling Assistant Page 1 Software Requirements Specification for Schlumberger Scheduling Assistant Version 0.2 Prepared by Design Team A Rice University COMP410/539 2/6/2016

Software Requirements Specification for Schlumberger Scheduling Assistant Page 2 Table of Contents Introduction Purpose and Product Scope Overall Description Product Perspective Product Functions Possible User Classes and Characteristics System Features Data Management Features Route Notifier Features Work Task Features Route Plan Features Resource Management Features Locations of Interest Features System Analytics Features Logging Features User Management Features Authentication Features Other Nonfunctional Requirements Security Requirements Performance Requirements Scalability Requirements Reliability Requirements User Role Definitions Item Definitions

Software Requirements Specification for Schlumberger Scheduling Assistant Page 3 1. Introduction 1.1 Purpose and Product Scope Schlumberger Scheduling Assistant (henceforth referred to as SSA) is a software system that is intended to facilitate the scheduling of work by providing real time alerts when issues arise that impact schedule work plans. The full system includes support for the creation and modification of route plans, flexibility to accept and process new data sources, coordination between route schedulers and field workers, and auditing capabilities. The system is designed to be secure, scalable, and extensible. 2. Overall Description 2.1 Product Perspective Many factors, such as dangerous weather and resource availability, can cause safety concerns and delays when scheduling work tasks. These factors cause inefficiencies when schedules cannot be adapted rapidly enough to changing conditions to fully utilize available resources. Currently, Schlumberger does not have a cohesive solution to this issue. The goal of SSA is to pull data from a variety of sources into a central system that can be used to recognize and alert interested users about existing or potential scheduling issues. 2.2 Product Functions At a high level, SSA is based on a four tiered publish subscribe model. In some tiers it may be possible to bypass the full complexities of the publish subscribe model. For example, each producer in Tier 4 could easily know the subscribers to which it publishes, effectively eliminating the need for a more complicated publish subscribe framework in that location. Tier 1: Processed Data Creation Content based model based on the format and content of the raw data. Published: Raw Data from Raw Data Sources Subscribers: Processing algorithms Tier 2: Route Alert Creation

Software Requirements Specification for Schlumberger Scheduling Assistant Page 4 Filtering based on locations of interest and work resources. Published: Processed Data from publishing algorithms Subscribers: Route Notifiers Tier 3: Route Alert Distribution Topic based model where locations of interest and work resources are the topics Published: Route alerts from Route Notifiers Subscribers: Work tasks Route alerts are sent from route notifiers to the route plans containing affected work tasks. Route plans can then be updated accordingly by the system. Work tasks are notified of alerts pertaining to associated work resources and locations of interest. Tier 4: Route Alert Notification Topic based model where route plans are the topics. Published: Route alerts associated with specific route plans Subscribers: Users interested in specific route plans 2.3 Possible User Classes and Characteristics SSA is designed with configurable permissions. It is possible for system users to define new user classes with custom permissions. Every endpoint action in our use cases (each bubble in a box with a name ending in view in section 3) can be included or excluded in permissions granted to custom users. This is done through the interactions available in section 3.9 below. Below are some sample user classes that can be included within the system. They are used in the use cases to aid the reader of these specifications in understanding possible uses of each system feature. Analyst Person who creates algorithms to process data and create alerts. Auditor Person who reviews past actions taken by users in the system and the root causes of those actions. They can views all types of data in the system, although they cannot modify any of the data. Field Worker Person who uses the route plan to complete work tasks at locations of interest. They also update work tasks as they are completed Manager Person who monitors the efforts of a route scheduler and resource manager and adds locations of interest to the system Raw Data Source

Software Requirements Specification for Schlumberger Scheduling Assistant Page 5 A source of stream of Raw Data into the system. Resource Manager Person who manages and updates the work resources listed in the system. Route Scheduler Person who is responsible for creating and editing route plans, and modifying them when issues arise. System Admin Person who monitors and runs the overall system, including managing system users and their permissions, as well as checking system analytics. 3. System Features Notes: Use case diagrams in this section only show interactions up to the database portion of the solution itself. Interactions between database elements are shown in the first diagram in Appendix B. The creation and deletion of objects are counted as modifications of those objects to streamline the notification process. All users will be required to log into the system (described in 3.10 below) before they will be allowed to take any other actions within the system. Once the user has been authenticated, they will only have access to the actions and resulting data they have permission to take. The ability to configure permissions is described at the beginning of section 2.3 above. All interactions between a view and the database wrapper (DB Wrapper) are subject to authentication to ensure that the user requesting to modify or retrieve data has the appropriate permissions to do so. 3.1 Data Management Features 3.1.1 Description and Priority Data Management features center around adding new sources of data and processing and storing the incoming data. Priority: Medium Data Management features allow the customer to dynamically add new raw data sources and new processing algorithms to the system. However, this feature is of medium priority as the necessary raw data sources and processing algorithms could be coded directly into the system.

Software Requirements Specification for Schlumberger Scheduling Assistant Page 6 3.1.2 Use Case Diagram 3.1.3 Functional Requirements REQ 3.1 1: Add new raw data source Used by: System Admin Adds support for messages to be streamed in from a new raw data source. REQ 3.1 2: Modify existing raw data source Used by: System Admin Modifies the raw data source associated with the given raw data source stream. REQ 3.1 3: Delete existing raw data source

Software Requirements Specification for Schlumberger Scheduling Assistant Page 7 Used by: System Admin Deletes the support for data to be streamed in from the given raw data source. REQ 3.1 4: Send data Used by: Sensors Allows raw data to be streamed to the endpoint associated with the data source s endpoint. This raw data must be processed by all processing algorithms subscribing to the format of the raw data. REQ 3.1 5: Add new processing algorithm Used by: Analyst Adds a new processing algorithm to process data. Processing algorithm inputs must be specified, which can include raw data, previously processed data, and / or historical data. REQ 3.1 6: Modify existing processing algorithm Used by: Analyst Modifies the processing algorithm and/or the inputs that the processing algorithm accepts. REQ 3.1 7: Delete existing processing algorithm Used by: Analyst Deletes the processing algorithm. REQ 3.1 8: Retrieve existing processing algorithm Used by: Analyst Retrieves the existing processing algorithm requested by the Analyst. 3.2 Route Notifier Features 3.2.1 Description and Priority Route Notifier features center around updating route plans as new information comes into the system and alerting relevant users as route plans are modified. Priority: High Without route notifiers and route alerts, the system does not solve the customer s problem. Route Alerts are core to SSA s ability to provide assistance when scheduling work routes.

Software Requirements Specification for Schlumberger Scheduling Assistant Page 8 3.2.2 Use Case Diagram 3.2.3 Functional Requirements REQ 3.2 1: Create route notifier Used by: Analyst Adds a new route notifier to the system. REQ 3.2 2: Modify route notifier Used by: Analyst Modify what processed data sources the route notifier subscribes to. REQ 3.2 3: Remove route notifier Used by: Analyst Deletes a route notifier from the system. REQ 3.2 4: Review route alerts & their source

Software Requirements Specification for Schlumberger Scheduling Assistant Page 9 Used by: Route Scheduler, Auditor, Analyst Returns a set of route alerts for the queried time frame and route plan(s). If the user has appropriate permissions, this may also include historical data up to 5 years old, including previously deleted route alerts. REQ 3.2 5: Publish route alert Received by: Field Worker, Route Scheduler Publishes a route alert indicating the change in status of the associated route plan. 3.3 Work Task Features 3.3.1 Description and Priority Work task features center around creating, modifying, and removing work tasks. These work tasks can then be used by route schedulers when they create a route plan. Priority: High Without the ability to manage and input work tasks in the system, the ability to create route plans in which these work tasks are completed is severely limited. Being able to create work tasks independent of route plans allows for features to be developed to view and organize the work tasks waiting to be assigned to a worker as part of a route plan. 3.3.2 Use Case Diagram

Software Requirements Specification for Schlumberger Scheduling Assistant Page 10 3.3.3 Functional Requirements REQ 3.3 1: Create a new work task Used by: Field Worker, Route Schedulers Create a new work task in the system. REQ 3.3 1: Modify an existing work task Used by: Field Worker, Route Schedulers Modify an existing work task in the system. This may involve changing details of the task such as the associated location of interest, the description, the associated work resource(s), or marking it as successful/unsuccessful after completion along with a timestamp of its completion. REQ 3.3 1: Delete an existing work task Used by: Field Worker, Route Schedulers Delete an existing work task from the system. REQ 3.3 1: View a work task Used by: Field Worker, Route Schedulers, Auditors View details of an existing work task. If the user has appropriate permissions, this may also include historical data up to 5 years old, including previously deleted / completed work tasks. 3.4 Route Plan Features 3.4.1 Description and Priority Route plan features center around creating, modifying, and managing route plans. Priority: High Without route plans it is impossible to receive alerts regarding when scheduling issues arise.

Software Requirements Specification for Schlumberger Scheduling Assistant Page 11 3.4.2 Use Case Diagram 3.4.3 Functional Requirements REQ 3.4 1: Modify Route plan Used by: Schedulers, Managers Modifies the route plan. This may include asking the automated scheduler for recommended modifications. REQ 3.4 2: Create New Route plan Used by: Schedulers, Managers A new route plan is created on the system. One or more existing work tasks are marked as being included in the new route. REQ 3.4 3: Review Route plan Used by: Schedulers, Managers, Auditors, Field Workers If the user has appropriate permissions, the system returns the queried route plan for the users to review.

Software Requirements Specification for Schlumberger Scheduling Assistant Page 12 If the user has appropriate permissions, this may also include historical data up to 5 years old, including previously deleted route plans. REQ 3.4 4: Delete Route plan Used by: Schedulers, Managers The route plan is deleted. All allocated and unused work resources are unallocated. REQ 3.4 5: View Route Plan Analytics (Low Priority) Used by: Scheduler View information regarding the effectiveness of previously planned route schedules. 3.5 Resource Management Features 3.5.1 Description and Priority The view is used for managing the work resources used in work tasks. The primary goal is for all users to be up to date regarding the availability of work resources. Priority: Medium These features enable our users to dynamically add work resources to assist in route planning. 3.5.2 Use Case Diagram

Software Requirements Specification for Schlumberger Scheduling Assistant Page 13 3.5.3 Functional Requirements REQ 3.5 1: Add new Work Resource Used by: Resource Manager, Manager Create a new work resource type on the system with its associated meta data, such as the time of its availability. REQ 3.5 2: Update Work Resource Availability Used by: Resource Manager, Manager Modify a work resource to indicate how much of the resource is available at a location (either permanently or during a specified time interval) REQ 3.5 3: Remove Resource Used by: Resource Manager, Manager The work resource type is deleted on the system. REQ 3.5 4: View Work Resource Availability Used by: Resource Manager, Manager, Route Scheduler, Auditors The availability of the queried work resource is returned to the user. If the user has appropriate permissions, this may also include historical data up to 5 years old, including previously deleted work resources. REQ 3.5 5: View Work Resource Analytics Used by: Resource Manager, Manager Aggregated information about work resources is made available to the user. 3.6 Locations of Interest Features 3.6.1 Description and Priority Locations of interest features are central to scheduling route plan as route plans comprise a sequence of locations of interest. This set of features allows managers to create, update, and remove locations of interest from the system. Meta data for a location of interest includes availability over time. Priority: High. Route planning cannot be performed without the ability to manage locations of interest.

Software Requirements Specification for Schlumberger Scheduling Assistant Page 14 3.6.2 Use Case Diagram 3.6.3 Functional Requirements REQ 3.6 1: Add a location of interest Used by: Managers Create a new location of interest. REQ 3.6 2: Update a location of interest Used by: Managers Modify the meta data associated with a specific location of interest. REQ 3.6 3: Remove a location of interest Used by: Managers Remove a location of interest from the system. REQ 3.6 4: View locations of interest Used by: Managers, Auditors View the meta data associated with specific locations of interest. If the user has appropriate permissions, this may also include historical data up to 5 years old, including previously deleted locations of interest.

Software Requirements Specification for Schlumberger Scheduling Assistant Page 15 3.7 System Analytics Features 3.7.1 Description and Priority System analytics features center around the ability of a system admin to determine how well behaved the system is, identifying the performance of data connections and databases in the system and viewing error and debugging logs. Priority: Medium System analytics features facilitate the identification of system issues and analysis of performance. 3.7.2 Use Case Diagram 3.7.3 Functional Requirements REQ 3.7 1: View system performance Used by: System Admin View statistics about system performance REQ 3.7 2: Debug system Used by: System Admin

Software Requirements Specification for Schlumberger Scheduling Assistant Page 16 See any error and debug messages produced by the system, to diagnose errors or bottleneck issues. REQ 3.7 3: Restart Database Used by: System Admin Delete items in the database that are no longer needed. 3.8 Logging Features 3.8.1 Description and Priority Logging features are used to ensure auditability and accountability within this system by recording the actions of various users interacting with the system. Priority: Medium Logging adds the ability to trace user actions for auditing purposes. 3.8.2 Use Case Diagram 3.8.3 Functional Requirements REQ 3.8 1: Log Data Entry Caused by: Raw data source Records whenever data arrives from a raw data source, along with its appropriate tags such as timestamp and raw data source identification. REQ 3.8 2: Log Modification of Route Plan

Software Requirements Specification for Schlumberger Scheduling Assistant Page 17 Caused by: Route scheduler Records whenever a route scheduler modifies a route plan, along with its appropriate tags such as the modification type, route plan modified, the modification, timestamp and user identification. REQ 3.8 3: Log Modification of Work Resource Caused by: Resource manager Records whenever a resource manager modifies a work resource, along with its appropriate tags such as the modification type, work resource modified, the modification, timestamp and user identification. REQ 3.8 4: Log Modification of Location of Interest Caused by: Manager Records whenever a Manager modifies a location of interest, along with its appropriate tags such as the modification type, location of interest modified, the modification, timestamp and user identification. REQ 3.8 5: Retrieve Log of Raw/Processed Data Caused by: Analyst Retrieves the records for the raw/processed data requested by the analyst in order to find patterns and develop new processing algorithms and filters. REQ 3.8 6: Retrieve Raw Data Resulting in Processed Data Used by: Auditor Retrieves the records for all raw data resulting in a piece of processed data, for auditing purposes. REQ 3.8 7: Retrieve Processed Data Resulting in Route Alert Used by: Auditor Retrieves the records for all processed data resulting in a given route alert for auditing purposes. REQ 3.8 8: Retrieve Actions Taken by A User Related to Route Plan Used by: Auditor Retrieves the records for all logged route plans modified by any user for a given time period for auditing purposes. REQ 3.8 9: Retrieve Data Seen/Available to User in Given Time Period Used by: Auditor Retrieves the records for all logged data visible by any user for a given time period for auditing purposes. REQ 3.8 10: Retrieve Route Plans/Work Resource Analytics Used by: Manager Retrieves the records for logged route plans/ work records produced by route schedulers and resource managers for monitoring purposes.

Software Requirements Specification for Schlumberger Scheduling Assistant Page 18 3.9 User Management Features 3.9.1 Description and Priority User management features center around the ability of a system administrator to create and manage user information and resource access permissions for each user. Priority: High User management is critical for SSA software system. Without proper permission management, users may maliciously access data they shouldn t have access to. 3.9.2 Use Case Diagram 3.9.3 Functional Requirements REQ 3.9 1: Add a new user Used by: System admin Add a new user to system, and set their permission to resources REQ 3.9 2: Update user Used by: System admin Update current existing user s information or permissions REQ 3.9 3: Remove user

Software Requirements Specification for Schlumberger Scheduling Assistant Page 19 Used by: System admin Delete a user s information from the system REQ 3.9 4: View user Used by: System admin, Auditor View user information and permissions of queried user. If the user has appropriate permissions, this may also include historical data up to 5 years old, including previously deleted users. 3.10 Authentication Features 3.10.1 Description and Priority Authentication allows the system to recognize users and ensure that they have the proper permissions before allowing them to modify or access data. Priority: High Security is our client s highest priority, and without a way to verify users before giving them access to data, SSA is a failure from a security standpoint. 3.10.2 Use Case Diagram

Software Requirements Specification for Schlumberger Scheduling Assistant Page 20 3.10.3 Functional Requirements REQ 3.10 1: Login Used by: All users Users send their credentials to the system, allowing the system to determine which (if any) features they are allowed to access. REQ 3.10 2: Logout Used by: All users Users notify the system that they have completed their session. 4. Other Nonfunctional Requirements 4.1 Security Requirements Security is a major priority; at no point will a user be allowed to access data if they do not have the appropriate permissions. In order to accomplish this, SSA has two layers of security built in, one between a user and the views and actions that the user is allowed to take, and another layer between the views and the database storing all of the company s information. In order to retrieve or modify data from the system, users would first need to have access to the views that would allow them to take such an action, and then their request would be checked against their permissions before finally potentially retrieving or modifying the data they are requesting. In order to enable this, Azure offers its Active Control Service (ACS), which authenticates trusted users and allows them to use the system. Additionally, all connections to the cloud service will be via secure channels (such as HTTPS). For sensitive parts of the system, such as the addition and removal of processing algorithms or the modification of user permissions, approvals from a manager or another party may be required. In this case, a value will be added to the object in question (user or algorithm), indicating whether the object is pending approval or has already been approved. Objects pending approval will not be used by the database. The ability to grant approvals can be changed along with user permissions. 4.2 Performance Requirements The system must be able to consistently process incoming raw data at a rate of one packet per second per raw data source. 4.3 Scalability Requirements The system must be able to scale up to concurrently process hundreds of thousands raw data sources.

Software Requirements Specification for Schlumberger Scheduling Assistant Page 21 4.4 Reliability Requirements All received raw data packets must be logged and eventually processed. Data must be available for auditing for at least 5 years. Appendix A: Glossary User Role Definitions Analyst Person who creates algorithms and route notifiers to process raw data and create route alerts. Auditor Person who reviews past actions taken by users in the system and the root causes of those actions. They can views all types of data in the system, although they cannot modify any of the data. Field Worker Person who uses the route plan to complete work tasks at locations of interest. They also update work tasks as they are completed. Manager Person who monitors the efforts of a route scheduler and resource manager and adds locations of interest to the system. Raw Data Source A source of stream of Raw Data into the system. Resource Manager Person who manages and updates the work resources listed in the system. Route Scheduler Person who is responsible for creating and editing route plans, and modifying them when issues arise. System Admin Person who monitors and runs the overall system, including managing system users and their permissions, as well as checking system analytics. Item Definitions Automated Scheduler An algorithm that suggests a route plan.

Software Requirements Specification for Schlumberger Scheduling Assistant Page 22 Locations of Interest A location involved in a work task or route plan. Examples include well sites, work resources storehouses, route stops, etc. Processed Data The result of processing raw data using processing algorithms. Processing Algorithms Algorithms that convert inputs into processed data. These inputs to these algorithms may include raw data, processed data, and / or historical (previously computed and stored) data. These algorithms may have predictive elements. Examples include the impact of weather on locations of interest or the availability of work resources. Raw Data External Data added to the system. Examples include weather data, military activity, etc. Processed using Processing Algorithms to generate Processed Data. Route Alert Indications of a change in a status within a route plan. These are added by route notifiers and are forwarded from route plans to users. They includes a timestamp and a reference to the processed data that caused it to be generated. Route Analytics Statistics and summaries of the effectiveness and accuracy of route plans Route Notifier Stream processor that modifies route plans by adding route alerts. Subscribes to processed data associated with specific work resources or locations of interest. Updates the work resources and/or locations of interests to reflect the existing or predicted change of status according to the processed data and sends route alerts to work tasks to notify them of these changes. Route Plan A sequence of scheduled work tasks and the locations of interest traveled to complete these tasks. System Analytics Data about how well the system is performing. Examples include query times, db capacity, debug info, etc. Work Resources People & objects allocated to complete work tasks. These may or may not be consumed by the work task. Examples include vehicles, raw materials, field workers. Work Resource Analytics Statistics and summaries of the usage and utilization of work resources.

Software Requirements Specification for Schlumberger Scheduling Assistant Page 23 Work Task A job to be completed at a location of interest along with the necessary associated work resources. These tasks can be assigned to field workers. Appendix B: Analysis Models Overall System:

Software Requirements Specification for Schlumberger Scheduling Assistant Page 24 DB Interactions Model: