CS 553 Spring 2004

 Web Service Descriptions


Overall Project Description

For the class, you will develop 2 web-services. In the first phase of the project, you will develop a mostly standalone web service. In the second phase of the project, you will develop a web service which uses one or more of your classmates web-services. The goal is that by the end of the course, the class will have a set of  inter-locking web services. Each service should be mostly independently constructed, yet the entire system should perform a meaningful function. In order to keep the projects all on the same topic, the class will focus on business-process related services. Other "universes" of services include medical or scientific classes of web services; however, we will not be exploring those in this class.

We will use a model company,  as described below. Also described below are the sample services, data types needed for the service, and descriptions of some sample  functions this service might provide.  

Company Description:

Fubar, Inc.  makes small wireless sensors and software for these devices.  Some of the sensor product lines it offers for sale to the public. Fubar also  creates new sensor products for customers on on contract basis.  In addition to hardware, Fubar's software division creates applications to run on the sensors. As with the hardware, some of these are sold to the public, and some are built as custom offerings on a contract basis.  Fubar also tracks sensor network deployments and fixes problems with customer's equipment.

The goals of the web services below is create a model company. In  the first round, you will pick a  sample service below and implement it  as a
"stand alone" service (as best is possible). In phase  2, you will use 1 or more of the services built in phase 1.

Phase 1 Project

Below are a set of service choices and description on what each of these software packages should model.  Each service must model some aspect of the company. Various parts of the company must be represented as a data type (which may be a collections of simpler types). You can think of these types as columns or sets of columns in a database relation (table).  For example, an employee would be its own type and consist of a collection of simpler types. Likewise, a "part" might also recursively contain other parts, which could contain other parts. A "job description" might be another type.

Some Example Types:

Employee
Benefit
Job
Part - abstract. (e.g, a sensor of a specific type).
Part - specific, (e.g. something with a serial number)
Supplier
Program - abstract
Program - customer's specific copy
Return Materials Authoriation
Asset
Purchase
Sale
Customer organization
Customer contact
Contract (for a job)
Trouble Ticket
Location

Assignment

Look over the service list, and have some choices in mind to select during class.

Next Week:

Sample Business-Process Web Services

Human Resources (Service desinger: Amit)

This service maintains information about the employees.

Fixed Asset Management (service designer: Rich P.)

The FAM service keeps track of the physical assets (the "stuff") that the company uses, but does not sell. For example, soldering irons, computers, monitors, furniture.

Purchasing (service designer: Stan)

This service models the purchases of the company.  The basic abstraction  is the purchase order, which represents something the company is buying.

Inventory (service designer: Yufei)

The basic function of this service is to keep track of the finished products. In Fubar's case, the this system deals with sensor nodes. Some basic basic types include individual sensors (serial numbers), types of sensors (part numbers), groups of these (lots) and locations of where they are stored and moved.

Manufacturing (service designer: Scott)

This service keeps track of the manufacturing of the sensor nodes, e.g. what parts are on-hand, how many are in what stages of being built, and what needs to be ordered.
 

Sales (service designer: Mike W.)

This service keeps track of what the company has sold, both in terms of hardware and software.  This needs to keep track of price quotes, shipped units and software keys for customers.

Deployment (service designer: Mike P.)

The deployment service keeps track of sensors and software that  have been deployed at various customer sites.


Trouble Tracking  (service designer: John)

This system is a "bug-tracker".  When a sensor node fails, it gets logged in here. As they are repaired, it also gets logged here.

Project Management (Service designer: Vijay)

When a customer requests a specific hardware or software to be build under a contract, the progress of the contract is maintained in this service.
Material Requirements Planning


Round 2 Web service choices

Accounts Payable


Accounts Receivable


General Ledger


Payroll

Return on Investment