The purpose of this project is to create the connection between different departments of the company βSmartCar inc.β. The main business of the company βSmartCar inc.β is car production. The firm has five departments (sales, finance, accounting, production and stock), which are strongly interconnected. All processes of buying and getting information about the production execution are supported by web application.
Tutor: contact Christian Ohrfandl in case of fire π₯
Organisational | Headlines |
---|---|
π Project Folder | π BPMN |
π Time tracking | π¦ How to run |
β Task List | π© Process Description |
- copy git repo to your local machine using a git client of your choice (https://github.com/mathck/wmpm.git)
- where the pom.xml file is located run "mvn clean install" (install maven)
- open project with any Java IDE of your choice (IntelliJ, Eclipse, ...)
- define the run configuration: Java Application, main class: SmartCarApp
- Press
βΆοΈ RUN!
Starting condition: Order has been received Result: Order has been logged in the system, customer is informed on carOrder retrieval and payment is initialized Process: Order information is extracted from the carOrder and stored in customer database. According to carOrder information, check for financial solvency is initialized or advance payment is initialized.
Starting condition: Message including customer information (Name, Address, Birthdate) as well as amount of money Result: Positive or negative solvency check. Process: Using several interfaces, relevant data for the solvency check will be received. During the consolidation process, decision on the solvency will be based on a predefined ruleset and fed back to the main process.
Starting condition: The processor will receive the carOrder message after initial payment was completed Result:Required machine elements will be ordered if necessary or reserved for production Process: The information on the product ordered is extracted from the message and the database is queried for required parts in the production table. Availability of parts is checked in the database. If not enough parts are available, the ordering system is messaged. Otherwise, the production process is notified that production of the carOrder can start right away..
Starting condition: Receive message containing missing parts Result: Missing parts are ordered and production can be scheduled according to scheduled delivery date Process: Extract information on required parts, notify production facility using a SOAP interface, retrieve information on scheduled delivery date. Forward information to plan production processor.
Starting conditions: Processor receives message containing the exact carOrder. All machine elements have been reserved for production prior to message dispatch. Result: Production process is scheduled. Finalize carOrder node will be notified once production is completed Process: Extract carOrder information. Schedule machine time using a FIFO approach. Send expected delivery date to finalize carOrder node.
Starting condition: Production finished an carOrder Result: Payment will be requested. If successful, carOrder will be dispatched Process: Information on finished orders is received from production planning node. Payment will be requested using SOAP interface of invoice department.If successful, carOrder will be dispatched.
Starting condition: Any component sends a message to the processor consisting of message body and receiver. Result: Consumer will receive an email consisting of the relevant mail. Process: Extract information on message body and recipient from message. Retrieve mail address from user database. Create and dispatch mail using SMTP.