Você está na página 1de 32

CASE STUDY 1: ABC CORP

Background

Edward Norton established ABC Corp 15 years ago in Houston. Initially, the
company used to manufacture hardware components, such as LAN cards,
keyboards, and sound cards. Over the years, the business of the ABC Corp has
expanded and the company now has three manufacturing plants and several offices
in different cities across US. The company has also started manufacturing other
computer products, such as processors, motherboards, and memory chips.

The Existing System

In the existing system, the products are manufactured at the different


manufacturing plants of ABC Corp. The company has a distribution model in which
the distributors, retailers and the ultimate customers are involved.

The company decides the price of the product on the basis of the following factors:

The costs involved in the distribution model.

The various festival seasons discount, which the company wants to offer to the
ultimate customer.

The geographical location of the place, where the product needs to be supplied.

The demand of the product in the market.

The price that the competitors are offering.

In the current system, as these calculations are performed manually there could be
a possibility that the price calculated is erroneous. It is also possible that the
duplicate data gets stored in multiple files and this leads to data redundancy and
wastage of the storage space. As no security and backup mechanism exist there is
also a chance of data getting tampered or lost.

The Envisioned System

The management of ABC Corp has decided to cut down the business operation costs so
that price of the products can be reduced. As a first step towards reducing the costs, the
company has decided to change the current distribution model to direct selling. This
would eliminate the margins, which were being paid to the distributors and retailers. To
ensure that the direct selling is effective and their customer base

does not get affected, the company decided to launch their Website, which will
enable the customers to directly place orders online.

While developing the Website, the following points need to be taken into
consideration:

A centralized database to store the product information. Centralized data storage


will help in faster data access and implementing the security mechanism.

An automated price calculation system to calculate the prices of the product


accurately. As the company decides the price of the product on the basis of the
various factors as mentioned above, the costs involved in these factors may vary
from time-time. The online system will take care of updating these costs accurately
and on time. The various role holders at the company who might be interested in
knowing the latest costs can also get the updated information online.

An authentication and authorization module to validate the users and the buyers
credentials to minimize data tampering.

The buyers should be facilitated with a mechanism where by they can keep on
adding the products to the shopping cart in a single session. Finally, while placing
the order they may decide to order for all the products added to the shopping cart
or some of them.

The payment mechanism has to be online and there should be a provision for
accepting the credit card payments. The system should also provide functionality
for validating the credit card details.

To implement the above functionalities, the Website needs to have the following
modules:

User authentication and login module: This module will ensure that only the
authorized users are allowed to login and access the Website.

A new user registration module for registering new users.

An online catalog module to enable users to browse through various categories of


products.

A shopping cart module to store the products selected by a user in a session.

A price calculation module to calculate product prices quickly and accurately.

A payment module to enable buyers to make online payments.

You can design the online system using a 3-tier architecture, which can consist of
the following components in the different tiers:

Presentation tier: Consisting of servlets and JSPs. JSP pages can be used for
accepting data and displaying final results to the users. Servlets can be used to
manage application flow depending upon the user requests.

Business logic layer: Consisting of session beans and entity beans. The system will
need to manage transactions while a buyer buys products online. Security features
will also be implemented to secure online payments. Using enterprise beans for
developing the application will help you to take advantage of the transaction and
security features provided by the EJB container in the J2EE application server.

Data tier: Consisting of SQL Server 2000 database to store the relevant data.

The following components can be used to perform different operations in the


application:

Session beans: For computing the price of the product, incorporating the shopping
carts functionality, and invoking entity bean methods.

Entity beans: To store the product, customer, order, and bill information in the
database.

Servlets and JSP: To call the methods of the session and entity beans and display
the retrieved data to the user.

INSTRUCTOR NOTES

Project Activities

The students will get 8 hours to complete the project. The activities to be
performed during this period are:

Analyze the case study to identify the system processes.


Create the technology diagram that represents the various technologies used at
the different tiers of the application and to display the interaction among various
layers of the N-tier application.
Create a flow diagram, representing the logical flow of the application.
Create a use case diagram, representing the functional requirements of the
application.

Create a sequence diagram of the application architecture.


Create the database in SQL Server 2000.
Create the login module using JSP, servlet, session bean, and entity bean.

Create the registration module by using JSP, servlet, session bean and entity bean.

Create the online catalog module using JSP, servlet, session bean and entity bean.

Create the shopping cart module using JSP, servlet, and session bean.
Create the payment module using JSP, servlet, session bean and entity bean.

Create the price module using JSP, servlet, session bean and entity bean.

Create the project documentation by using the formats provided in the later
section.

Present the project to the faculty. The faculty will assign marks based on the
evaluation criterias specified in this section.

PROJECT EXECUTION

This book contains four case studies. These case studies will be allocated to each
student. The student can start working on the project after the completion of the
third cycle that is the lesson on Entity Beans.

Phases in Project Execution

The project will be carried out in the following phases:

System Analysis: This phase involves conducting a detailed study of the existing
system to depict the functionality of the system. The analysis phase is the most
crucial phase in a project because it helps developers to identify various processes
and their function in the system. The project teams will analyze the existing
system along with its shortcomings before moving on to the development phase.

Development: This phase involves developing the project based on business


specifications.

Testing and debugging: This phase involves testing the project before submitting it
to the coordinator.

Documentation: This phase involves documentation of the entire project life cycle
starting from the system analysis phase to the testing phase. Documentation is
one of the most important aspects of computer programming. The project
documentation should be submitted to the coordinator in the formats given in this
book before the project walkthrough. The blank report following the case studies is
to be filled up, detached from the book, and submitted on the given date.

Project Standards and Guidelines

This project requires knowledge of almost all the technologies and architectures
you have learned during the course. For example, you might use CMP entity beans
to store information in the database. You can use session beans to invoke entity
bean methods. Servlets can be used for accepting end user input and invoking
session bean methods. You can use HTML or JSP whenever you need to focus on
the presentation aspect of the application data.

You need to decide which programming techniques, paradigms, and architectures


to use. Here we will give you hints about the technologies that are appropriate for

different programming aspects. You can use MS-SQL Server 2000 to store the
database that you will use.

You can use Unified Modeling language (UML), which you learned in the earlier
course, to design the use case and sequence diagrams.

Once your project design is ready, you can decide upon the different technologies
to be used to implement the different project functionalities. We suggest the
following technologies:

You can use CMP entity beans to store and retreive data from the database.

You can use session beans to invoke entity bean methods.

You can use servlets for validating user input, and invoking session bean methods.

You can use HTML or JSP pages for accepting user input and displaying results.

Project Activities

The students will get 8 hours to complete the project. The activities to be
performed during this period are:

Analyze the case study to identify the system processes.


Create the technology diagram that represents the various technologies used at the
different tiers of the application and to display the interaction among various layers of
the N-tier application.

Create a flow diagram, representing the logical flow of the application.

Create a use case diagram, representing the functional requirements of the


application.
Create a sequence diagram of the application architecture.
Create the database in SQL Server 2000.
Create the login module using JSP, servlet, session bean, and entity bean.

Create the registration module by using JSP, servlet, session bean and entity bean.

Create the online catalog module using JSP, servlet, session bean and entity bean.

Create the shopping cart module using JSP, servlet, and session bean.

Create the payment module using JSP, servlet, session bean and entity bean.

Create the price module using JSP, servlet, session bean and entity bean.

Create the project documentation by using the formats provided in the later
section.

Present the project to the faculty. The faculty will assign marks based on the
evaluation criterias specified in this section.

Project Timelines

The students should ensure that they complete the following activities before
beginning with the actual coding of the system:

Analysis of the case study

Technology architecture design

Session
Task to be Performed
#

Create the new registration module.

Create the login module.

Create the online catalog module/ search

module/ publishing order module.

Create the shopping cart module/ librarian

module/ printing units details module.

Session
Task to be Performed
#

Create the price module/ book issue-return

module/ printing status and delivery status

module.

Create the payment module.

Deploy the application.

Test the application.

Debug the application.

TECHNOLOGY DIAGRAM

Top Level Diagram representing the technologies used to develop


a J2EE EJB application.

USE CASE DIAGRAM

Use case Diagram representing the functional relationship


among various actors in the system.

1.31

SEQUENCE DIAGRAM

New employee registration

SEQUENCE DIAGRAM
Displaying manufacturer list

SEQUENCE DIAGRAM
Storing purchase order information in the database

LOGICAL FLOW DIAGRAM

Logical Flow Diagram representing the control flow of


purchase order module.

Você também pode gostar