Project plan

Posted by tnewton on Fri, 29 Oct 2021 05:10:01 +0200


I didn't know how to start writing the project requirements specification at the beginning. It's not what I first thought of HTML or program code. The most difficult part of website construction is project planning, which describes the process of a project from scratch.

I 👑 catalogue

one ❤ī¸ Purpose of preparation:

   Clarify the business background, business scope, basic business logic and business framework. The expected readers include project sponsors, end users, project investors, project management team, project implementation team and other projects

two ❤ī¸ Reference documents:

  "ESMS3.x Detailed design description design document.doc": Template of detailed design specification.

three ❤ī¸ Name explanation:

  • ESMS: Electronic Shopping Mall System.
  • B/S: Browser/Server.
  • C/S: Client/Server.
  • B2B: Service to Service business to business, a business form of e-commerce.
  • B2C: Service to Consumer, a business form of e-commerce.
  • C2C: customer to customer, a business form of e-commerce.
  • CSS: it is the abbreviation of cascading style sheets. CSS language is a markup language. It does not need to be compiled and can be directly executed by the browser.
  • HTML: Hypertext Markup Language.
  • JAVASCRIPT: a program scripting language developed by Sun Microsystems (it is a rigorous object-oriented language suitable for developing master-slave applications on the Internet), often referred to as JS.
  • MVC: MVC is the abbreviation of model, view and controller. View and user interaction lead to controller change through events. Controller change leads to model change.
  • Connection pool: a tool used to manage database connection objects, such as dbcp, c3p0, etc
  • Ajax: its full name is "Asynchronous JavaScript and XML", which refers to a web page development technology for creating interactive web page applications.

four ❤ī¸ Project background:

4.1 design background:

  With the continuous development of science and technology, there are more and more online readers. In order to provide users with better book resources, it is necessary to establish a learning e-commerce system based on the existing information achievements to provide users with more convenience
 Information exchange tools and platforms.

4.2 project organization:

🛩ī¸ Project source:

Oracle Java discipline division.

🛩ī¸ Client:

vector IT Project Department

🛩ī¸ Developer:

vector IT development department moom project team

five ❤ī¸ Function overview:

five point one 🛩ī¸ Functional structure:

five point two 🛩ī¸ Function Description:

   vector E-commerce platform, mainly including:There are five functional modules: Book display, shopping cart management, transaction management, user management and application management.

🛩ī¸ Function description of e-commerce system:

  • đŸĨ‡ Book display: realize the functions of book preview, book details and book retrieval.
  • đŸĨ‡ Shopping cart: realize the functions of adding goods, modifying quantity, deleting goods, emptying shopping cart and settlement.
  • đŸĨ‡ Transaction management: realize the functions of order list, order details, query details and evaluation.
  • đŸĨ‡ User management: realize the functions of login, registration, password modification and personal information modification.
  • đŸĨ‡ Application management: add receiving address, maintain receiving address, delete receiving address and favorites.

six ❤ī¸ System use case:

six point one 🛩ī¸ Top level use cases:

6.1.1 🏅 E-commerce system

6.1.2 🏅 Commodity display

6.1.3 🏅 Shopping cart management

6.1.4 🏅 Transaction management

6.1.5 🏅 user management

6.1.6 🏅 Application management

seven ❤ī¸ Project flow chart:

eight ❤ī¸ Database design:

eight point one 🛩ī¸ E-R diagram:

eight point two 🛩ī¸ Data entity Description:

  • đŸĨ‡ User table (user)
Field nametypeconstraintdescribe
user_idNUMBERPkPrimary key
login_nameVARCHAR2(64)Login name
real_nameVARCHAR2(64)Real name
grade_idNUMBERMember level ID
passwordVARCHAR2(100)not nullpassword
emailVARCHAR2(200)e-mail address
card_numbeVARCHAR2(64)not nullID card No.
mobileVARCHAR2(64)not nullTelephone
phoneVARCHAR2(64)cell-phone number
send_addressVARCHAR2(100)Shipping Address
head_picVARCHAR2(50)Avatar picture
  • đŸĨ‡ Product table

  • đŸĨ‡ Order details (item)

  • đŸĨ‡ Product_evaluation

  • đŸĨ‡ Receive_address

  • đŸĨ‡ Evaluation_reply

  • đŸĨ‡ Payment and distribution method table

  • đŸĨ‡ Product browse log table (browse_log)

  • đŸĨ‡ User favorite table (interest)

  • đŸĨ‡ Category_product relationship table

  • đŸĨ‡ Category table

  • đŸĨ‡ Book information table (news)

  • đŸĨ‡ User_grade

  • đŸĨ‡ Invoice information table

eight point three 🛩ī¸ Entity relationship description:

alter table "Lmonkey_evaluation_reply"
   add constraint FK_Lmonkey_EVAL_REFERENCE_Lmonkey_PROD foreignkey("evaluation_id")
      references "Lmonkey_product_evaluation" ("evaluation_id");

alter table "Lmonkey_item"
   add constraint FK_Lmonkey_ITEM_REFERENCE_Lmonkey_ORDE foreign key ("order_id")
      references "Lmonkey_order" ("order_id");

alter table "Lmonkey_item"
   add constraint FK_Lmonkey_ITEM_REFERENCE_Lmonkey_PROD foreign key ("product_id")
      references "Lmonkey_product" ("product_id");

alter table "Lmonkey_product_evaluation"
   add constraint FK_Lmonkey_PROD_REFERENCE_Lmonkey_USER foreign key ("user_id")
      references "Lmonkey_user" ("user_id");

alter table "Lmonkey_product_evaluation"
   add constraint FK_Lmonkey_PROD_REFERENCE_Lmonkey_ORDE foreign key ("order_id")
      references "Lmonkey_order" ("order_id");

alter table "Lmonkey_product_evaluation"
   add constraint FK_Lmonkey_PROD_REFERENCE_Lmonkey_PROD foreign key ("product_id")
      references "Lmonkey_product" ("product_id");
alter table Lmonkey_RECEIVE_ADDRESS
   add constraint FK_Lmonkey_RECE_REFERENCE_Lmonkey_USER foreign key ("user_id")
      references "Lmonkey_user" ("user_id");
alter table "Lmonkey_order"
   add constraint FK_Lmonkey_ORDE_REFERENCE_Lmonkey_PAYM foreign key ("payment_id")
      references "Lmonkey_payment" ("payment_id");

alter table "Lmonkey_order"
   add constraint FK_Lmonkey_ORDE_REFERENCE_Lmonkey_INVO foreign key ("invoice_id")
      references "Lmonkey_invoice" ("invoice_id");

alter table "Lmonkey_order"
   add constraint FK_Lmonkey_ORDE_REFERENCE_Lmonkey_RECE foreign key ("reveive_address_id")
      references Lmonkey_RECEIVE_ADDRESS ("reveive_address_id");

alter table "Lmonkey_order"
   add constraint FK_Lmonkey_ORDE_REFERENCE_Lmonkey_USER foreign key ("user_id")
      references "Lmonkey_user" ("user_id");
alter table "Lmonkey_browse_log"
   add constraint FK_Lmonkey_BROW_REFERENCE_Lmonkey_USER foreign key ("user_id")
      references "Lmonkey_user" ("user_id");

alter table "Lmonkey_browse_log"
   add constraint FK_Lmonkey_BROW_REFERENCE_Lmonkey_PROD foreign key ("product_id")
      references "Lmonkey_product" ("product_id");
alter table "Lmonkey_user"
   add constraint FK_Lmonkey_USER_REFERENCE_Lmonkey_USER foreign key ("grade_id")
      references "Lmonkey_user_grade" ("grade_id");
alter table "Lmonkey_interest"
   add constraint FK_Lmonkey_INTE_REFERENCE_Lmonkey_PROD foreign key ("product_id")
      references "Lmonkey_product" ("product_id");

alter table "Lmonkey_interest"
   add constraint FK_Lmonkey_INTE_REFERENCE_Lmonkey_USER foreign key ("user_id")
      references "Lmonkey_user" ("user_id");
alter table "Lmonkey_category_product"
   add constraint FK_Lmonkey_CATE_REFERENCE_Lmonkey_CATE foreign key ("category_id")
      references "Lmonkey_category" ("category_id");

alter table "Lmonkey_category_product"
   add constraint FK_Lmonkey_CATE_REFERENCE_Lmonkey_PROD foreign key ("product_id")
      references "Lmonkey_product" ("product_id");

eight point four 🛩ī¸ Entity data initialization:

Initialize user information table
INSERT INTO users VALUES ('admin', 'admin', '', '021-61209549', 
'13900000000', 'Shanghai', 'Shanghai', 'vector Lane 668, road', 0, '12345678');
INSERT INTO users VALUES ('tarena', 'tarena', '', '021-61209549',
'13900000000', 'Shanghai', 'Shanghai', 'vector Lane 668, road', 0, '12345678');
Initialize order status table
INSERT INTO orderstatus VALUES (1,'payment...','Waiting for buyer's payment...');
INSERT INTO orderstatus VALUES (2,'harvest...','Waiting for buyer's confirmation...');
INSERT INTO orderstatus VALUES (3,'end','The order has been closed.');
Initialize payment method table
INSERT INTO payway VALUES (1,'Cash on Delivery');
INSERT INTO payway VALUES (2,'Post office remittance');
INSERT INTO payway VALUES (3,'Bank transfer');

nine ❤ī¸ Performance requirements:

nine point one 🛩ī¸ Performance environment:

  • đŸĨ‡ Operating system: Linux operating system
  • đŸĨ‡ Virtual machine: JDK13
  • đŸĨ‡ Browser: Firefox 2.0 \ chrome \ IE8 or above
  • đŸĨ‡ Web server: Apache Tomcat 7.0
  • đŸĨ‡ Database: Oracle 11g
  • đŸĨ‡ Design tool: IBM Rose 2018
  • đŸĨ‡ IDE tool: idea2020.1

nine point two 🛩ī¸ Start up requirements:

  • đŸĨ‡ Initialize all product information to memory when the server starts
  • đŸĨ‡ Initialize the shopping cart listener when the server starts

nine point three 🛩ī¸ Entrance requirements:

  • đŸĨ‡ vector e-commerce system entrance
  • http://localhost:8088/ lmonkey/index.jsp

nine point four 🛩ī¸ Business performance:

  • đŸĨ‡ Maximum concurrent quantity 1000
  • đŸĨ‡ Maximum number of online users 20000
  • đŸĨ‡ Maximum response speed < = 5ms (< = 200m / 5ms concurrent, non user registration, MAIL confirmation and product release)
  • đŸĨ‡ Fault free operation time > = 7 * 24h
  • đŸĨ‡ CPU utilization shall not exceed 20%


For reference only, pay attention to the blogger's upload in the later stage of the blogger's meeting, and realize the e-commerce website according to the code of the project plan.

Topics: Java