Skip to content

amila1998/OSGI_FrameWork-Bakery-Shop

Repository files navigation

Contributors Forks Stargazers Issues MIT License


Logo

OSGI FrameWork for Bakery Shop

Sri Lanka Institute of Information Technology
Software Architecture - SE3030

Assignment 01
SE3030_WE_72

Table of Contents
  1. Scenario
  2. Workflows
  3. Manifest implementation (Exported services / imported services)
  4. Roadmap
  5. Contributing
  6. License
  7. Contact
  8. Acknowledgments

Scenario

Our system is being used to run a bakery shop. Customer consumer can create an account with the store. Then they'll be able to place orders. The administrator user can add items to the store and create accounts for delivery people. Customers' orders will be accepted by the cook consumer, who will also be able to add recopies to the store. The delivery person consumer can then accept deliveries and update the status of those that have been completed.

If a customer already has an account, they will be asked to login during the registration process. They will be asked to enter their name, phone number, email address, and address if they do not already have one.

During the process of adding an item, the administrator should enter the item's name, category, price, and quantity. The administrator can also register delivery people by providing their name, phone number, and login username and password. By entering the food item, recipe Id and name, and recipe description into the store system, the cook will save recipes to the system. The cook also can retrieve customer order information, update the status, and send the information to the delivery person. The delivery person will retrieve delivery information and, once the delivery has been completed, they will be able to update the delivery status.

(back to top)

Built With

Microkernel architecture pattern
The microkernel architecture pattern (sometimes referred to as the plug-in architecture pattern) is a natural pattern for implementing product-based applications. A product-based application is one that is packaged and made available for download in versions as a typical third-party product. However, many companies also develop and release their internal business applications like software products, complete with versions, release notes, and pluggable features. These are also a natural fit for this pattern. The microkernel architecture pattern allows you to add additional application features as plug-ins to the core application, providing extensibility as well as feature separation and isolation.

(back to top)

Workflows

Customer workflow


Customer workflow

Admin workflow


Customer workflow

Cook workflow


Customer workflow

Delivery Workflow


Customer workflow

(back to top)

Manifest implementation (Exported services / imported services)

Bakery Item Producer


Bakery Item Producer

Bakery Delivery Producer


Bakery Delivery Producer

Bakery Delivery Consumer


Bakery Delivery Consumer

Bakery Customer Producer


Bakery Customer Producer

Bakery Cook Producer


Bakery Cook Producer

Bakery Cook Consumer


Bakery Cook Consumer

Baker Item Producer


Baker Item Producer

Bakery Admin Consumer


Bakery Admin Consumer

(back to top)

Roadmap

  • Open the project via Eclipse
  • Run All the MANIFEST.MF

Commands of bundle install and run in OSGi framework.


Admin Consumer & Producer and Item Producer Active State

Admin Consumer & Producer and Item Producer Active State


Check Admin Producer and Items Producer connectivity with the Admin Consumer

Check Admin Producer and Items Producer connectivity with the Admin Consumer


Bakery Customer Consumer & Producer and Bakery Items Producer Active State

Bakery Customer Consumer & Producer and Bakery Items Producer Active State


Check Customer Producer and Items Producer connectivity with the Customer Consumer

Check Customer Producer and Items Producer connectivity with the Customer Consumer


Bakery Cook Consumer and Bakery Admin Producer Active State

Bakery Cook Consumer and Bakery Admin Producer Active State


Check Bakery Cook Consumer connectivity with Bakery Admin Producer

Check Bakery Cook Consumer connectivity with Bakery Admin Producer


Delivery Consumer & Producer and Item Producer Active State

Delivery Consumer & Producer and Item Producer Active State


Check Delivery Consumer & Producer and Item Producer connectivity

Check Delivery Consumer & Producer and Item Producer connectivity

Sample screenshots of its behavior & outputs.


Add Items to the bakery

Add Items to the bakery


Add delivery person

Add delivery person


Customer registration

Customer registration


Customer Login

Customer Login


Buy Items

Buy Items

Buy Items

Buy Items


Adding a recipe

Adding a recipe


Driver Login and Show Delivary list

Driver Login and Show Delivary list

See the open issues for a full list of proposed features (and known issues).

(back to top)

Contributing

Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.

If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!

  1. Fork the Project
  2. Create your Feature Branch
  3. Commit your Changes
  4. Push to the Branch
  5. Open a Pull Request

(back to top)

License

Distributed under the SLIIT License.

(back to top)

Contact

Group Leader - Wijesuriya W A D J K D - IT20750374 - it20750374@my.sliit.lk

Member - Senarathne S M A D - IT20089436 - it20089436@my.sliit.lk

Member - Udayantha Yapa Y M S - IT20045708 - it20045708@my.sliit.lk

Member - Kumarasingha S N - IT20151638 - it20151638@my.sliit.lk

Project Link: https://github.com/amila1998/OSGI_FrameWork-Bakery-Shop

(back to top)

Acknowledgments

Thank all SLIIT Lectures and who helps to develope and understand this Architecture

(back to top)