Upload
karthiknalam
View
499
Download
9
Embed Size (px)
Citation preview
Simulated Company
SIMULATED COMPANY
1. Introduction
Simulate a small manufacturing company. The resulting application will
enable the user to take out a loan, purchase a machine, and over a series of monthly
production runs, follow the performance of their company
2. Problem Specification
2.1 Existing System
In the existing system, that is the daily life application the industry or
company, where the company invests amount by taking loan, purchase machinery
and raw material, and recruit employees. The employees manufacture the
products, the produced products will be marketed and the profits and losses will
be calculated. Here some of the activities are performed manually; the limitation
is more time will be spent on some of the activities.
2.2 Proposed System
The proposed system is a simulation that is the computerized application for
the small manufacturing company. The simulated company also provides the
features like taking a loan, purchase a machine, methods for the production, and
the performance as well as the profits and losses of the company. Here all the
applications will be done completely as computerized applications. As a
computerized application most of the time will be saved.
3. System Requirements & Analysis
3.1 Requirements
3.1.1 Software Requirements
Operating System : Windows XP
Software used : Rational Rose Version 2003
1
Simulated Company
3.1.2 Hardware Requirements
Processor : Intel Pentium IV
RAM : 256 MB
Hard Disk : 20 GB
3.1.3 Functional Requirements
1. The system should run independently.
2. The system should be web enabled.
3. The system should generate reports for sales (Profits & Losses)
4. The reports should be available on multiple formats.
5. The system should provide the search functionality.
3.2 Analysis
3.2.1 Use case diagram
Use-case modeling is a specialized type of structural modeling concerned with
modeling the functionality of a system. Use-case modeling typically starts early in a
project and continues throughout a system development process. Two main elements
are Actors and Use cases.
An actor is a user or external system with which a system being modeled
interacts. An actor is external to a system, interacts with the system, may be a human
user or another system, and has goals and responsibilities to satisfy in interacting with
the system.
A use case defines a functional requirement that is described as a sequence of
steps, which include actions performed by a system and interactions between the
system and actors.
2
Simulated Company
The identified actors are:
1. Company owner
2. Bank manager
3. Employee
4. Inventory manager
5. Sales manager
Use cases are:
1. Company owner request for loan
2. Bank manager check details, issue loan
3. Company owner invest money
4. Company owner purchase machinery, recruit employees
5. Employees manufacture products
6. Inventory manager manage products
7. Sales manager market products
8. Sales manager generate reports, submits sales information
9. Company owner receive Sales information
3
Simulated Company
request for loan
give details
invest amount
purchase mechinery
recruit employees
receive slaes information
company owner
givesalarytoemployees
employee
manufacture productsinventory manager
manage products
market products
generate sales reports
submit sales information
sales manager
<<include>>
sanction loan
check details
bank manager
<<include>>
Figure 3.2.1 Use case diagram for simulated company
The company owner requests for a loan to invest amount and give his details to the
bank manager. The bank manager checks out the details given by the company owner and
issue the loan. The company owner invest money and purchase machinery, and recruit
employees. Employees manufacture products. Inventory manager manage the products for
the market on demand. The sales manager markets that products and generate sales reports
and submit them to the company owner.
4
Simulated Company
3.2.2 Sequence diagram
A sequence diagram shows elements as they interact over time, showing an
interaction or interaction instance. Sequence diagrams are organized along two axes: the
horizontal axis shows the elements that are involved in the interaction, and the vertical axis
represents time proceeding down the page. The elements on the horizontal axis may appear in
any order. Sequence- diagrams are made up of a number of elements, including class roles,
specific objects, lifelines, and activations.
: company owner
loan application form
bank manager
bank database
1: request for loan
2: give loan application
3: fill application
4: check out application
5: sanction loan
6: save loan details
7: invest amount
8: purchase machinery
9: recurit employees
Figure 3.2.2 Sequence diagram for company owner
The company owner requests for the loan. Bank manager give loan application form
to the company owner. Company owner fills the application and submit to the bank manager.
Bank manager checks out the loan application form and issue the loan. Company owner
invest amount, purchase machinery and recruit employees. Bank manager saves loan details
into the bank database.
5
Simulated Company
: employee:warehouse :inventory
manager:sales
manager:company
owner
1: manufacture products
2: store products
3: manage products
4: market products
5: generate reports
6: send reports
Figure 3.2.2 Sequence diagram for employee
Employees manufacture the products and store the products into the warehouse. The
inventory manager maintains the products in the warehouse. Sales manager markets products
and generate sales reports, submit those reports to company owner.
3.2.3 Collaboration diagram
A collaboration diagram shows elements as they interact over time and how they are
related. Collaboration diagrams are especially useful for visualizing the impact of an
interaction on the various elements, because you can place an element on a diagram and
immediately see all the other elements with which it interacts. Collaboration diagrams are
made up of a number of elements, including class roles, specific objects, association roles,
and specific links.
6
Simulated Company
: company owner
loan application form
bank manager
bank database
7: invest amount8: purchase machinery9: recurit employees
1: request for loan
2: give loan application5: sanction loan
3: fill application
4: check out application
6: save loan details
Figure 3.2.3 Collaboration diagram for company owner
The company owner made a request for loan then the message flow is in between the
company owner and the bank manager. Bank manager checks the application and issue the
loan and save the loan details into the database. The company owner invests amount and
purchase machinery and recruit employees.
: employee
:warehouse
:inventory manager
:sales manager
1: manufacture products
5: generate reports
:company owner
2: store products
3: manage products
4: market products
6: send reports
Figure 3.2.3 Collaboration diagram for employee
7
Simulated Company
Employees manufacture products and store in the warehouse. The inventory manager
maintains products to market. The sales manager market those products and generate sales
reports submit reports to the company owner.
3.2.4 Activity diagram
Activity diagrams are very similar to a flowchart because you can model a workflow
from activity to activity. An activity diagram is basically a special case of a state machine in
which most of the states are activities and most of the transitions are implicitly triggered by
completion of the actions in the source activities.
apply for loan
give details
invest amount
purchase machinery
recruit employees
check details
issue loan
application rejected
manufacture products
manage products
market products
generate sales reports
submit sales reports
[ ok ]
[ not ok ]
sales managerinv entory manageremployeebank managercompany owner
Figure 3.2.4 Activity diagram for simulated company
The process is started by the company owner that is the initial state, company owner
apply for a loan and give his details. Bank manager checks the details, if the conditions
satisfied then issue loan. The company owner invest that amount and purchase machinery,
recruit employees. Employees manufacture products, inventory manager manage the
products and sales manager market those products, generate sales reports and submit those
reports to the company owner.
8
Simulated Company
4. System Design
4.1 Class diagram
A class diagram is a picture for describing generic descriptions of possible
systems. Class diagrams and collaboration diagrams are alternate representations of
object models. Class diagrams contain classes and object diagrams contain objects,
but it is possible to mix classes and objects when dealing with various kinds of
metadata, so the separation is not rigid.
The identified classes are:
1. Company owner
2. Bank Manager
3. Loan Application Form
4. Employees
5. Warehouse
6. Inventory manager
7. Sales manager
8. Bank database
Identifying attributes:
1. Company owner: name, address
2. Bank manager: name, designation
3. Loan Application Form: loanno, loanname, loanamount, loandate
4. Employees: eid, ename, designation, address
5. Warehouse: location
6. Inventory manager: id, name
7. Sales manager: id, name
8. Bank database: name
9
Simulated Company
Identifying Operations
Company owner
apply for loan
fill application
purchase machinery
recruit employees
receive sales reports
Bank manager
check out application
issue loan
Employees
manufacture products
store products
Warehouse
store products
Inventory manager
manage products
Sales manager
market products
generate sales reports
send sales reports
Bank database
save load details
Identifying relationships
Association
10
Simulated Company
warehouselocation : String
storeproducts()warehouse()
inventorymanagerid : Stringname : String
manageproducts()inventorymanager()
BankDatabasename : String
saveloandetails()BankDatabase()
Employeeseid : Stringename : Stringdesignation : Stringaddress : String
manufactureProducts()storeproducts()Employees()
salesManagerid : Stringname : String
marketproducts()generatesalesreports()sendsalesreports()salesManager()
LoanApplicationFormloanno : Stringloanname : Stringloanamout : numberloandate : date
LoanApplicationForm()
BankManagername : Stringdesignation : String
checkoutloanapplication()sanctionloan()BankManager()
1..*
1
1..*
1CompanyOwnername : Stringaddress : String
applyforloan()fillapplication()purchasemachinery()recruitemployee()receivesalesreports()CompanyOwner()
1..*1..*
1
11
1
Figure 4.1 Class diagram for class diagram
4.2 State chart diagram
State chart diagrams model the dynamic behavior of individual classes or any other
kind of object. They show the sequences of states that an object goes through, the events that
cause a transition from one state to another and the actions that result from a state change.
Each state represents a named condition during the life of an object during which it satisfies
some condition or waits for some event. A state chart diagram typically contains one start
state and multiple end states. Transitions connect the various states on the diagram. As with
activity diagrams, decisions, synchronizations, and activities may also appear on state chart
diagrams.
11
Simulated Company
applying for loan
processing loan request
invest money
purchasing machines
recruiting employees
manufacturing products
inventory control
marketing
Figure 4.2 State chart diagram for simulated company
The initial state is applying for a loan, and next state is processing loan application,
and the next states entered are investing amount, purchasing machinery, and recruiting
employees. The next state is manufacturing products and storing products in the warehouse.
The inventory manager maintains products so the next state is inventory control. The final
state is marketing the product that is done by the sales manager.
4.3 Component diagram
Component diagrams provide a physical view of the current model. A component
diagram shows the organizations and dependencies among software components, including
source code components, binary code components, and executable components. These
diagrams also show the externally-visible behavior of the components by displaying the
interfaces of the components. Calling dependencies among components are shown as
dependency relationships between components and interfaces on other components.
12
Simulated Company
company owner
bank manager
bank database
employees
inventory manager
warehouse
sales manager
Figure 4.3 Component diagram for simulated company
Company owner depends upon the bank manager and employees. Bank manager
depends on the bank database. Warehouse depends on the employees. The inventory
manager depends on the warehouse. Sales manager depends on the warehouse to market the
products.
4.4 Deployment diagram
A deployment diagram shows processors, devices, and connections. Each model
contains a single deployment diagram which shows the connections between its processors
and devices, and the allocation of its processes to processors.
company bank
bank database
Figure 4.4 Deployment diagram for simulated company
13
Simulated Company
5. Coding
//Source file: W:\\OOAD Lab\\Coding\\Simulated Company\\Class Diagram\\CompanyOwner.java
public class CompanyOwner
{
private String name;
private String address;
public LoanApplicationForm theLoanApplicationForm;
public BankManager theBankManager;
public Employees theEmployees[];
public salesManager theSalesManager;
/**
* @roseuid 4B0CFD75002F
*/
public CompanyOwner()
{
}
/**
* @roseuid 4AF006000144
*/
public void applyforloan()
{
14
Simulated Company
}
/**
* @roseuid 4AF0071A008F
*/
public void fillapplication()
{
}
/**
* @roseuid 4AF0060701CD
*/
public void purchasemachinery()
{
}
/**
* @roseuid 4AF0060F0061
*/
public void recruitemployee()
{
}
/**
15
Simulated Company
* @roseuid 4AF0061403AA
*/
public void receivesalesreports()
{
}
}
//Source file: W:\\OOAD Lab\\Coding\\Simulated Company\\Class Diagram\\LoanApplicationForm.java
public class LoanApplicationForm
{
private String loanno;
private String loanname;
private number loanamout;
private date loandate;
/**
* @roseuid 4AFA7F2701F7
*/
public LoanApplicationForm()
{
}
}
//Source file: W:\\OOAD Lab\\Coding\\Simulated Company\\Class Diagram\\BankManager.java
public class BankManager 16
Simulated Company
{
private String name;
private String designation;
public CompanyOwner theCompanyOwner;
public BankDatabase theBankDatabase;
public LoanApplicationForm theLoanApplicationForm[];
/**
* @roseuid 4B0CFD7500DA
*/
public BankManager()
{
}
/**
* @return boolean
* @roseuid 4AF006F10132
*/
public boolean checkoutloanapplication()
{
return true;
}
/**
* @roseuid 4AF006FC03B1
17
Simulated Company
*/
public void sanctionloan()
{
}
}
//Source file: W:\\OOAD Lab\\Coding\\Simulated Company\\Class Diagram\\BankDatabase.java
public class BankDatabase
{
private String name;
public BankManager theBankManager;
/**
* @roseuid 4B0CFD75008C
*/
public BankDatabase()
{
}
/**
* @roseuid 4AF008C20216
*/
18
Simulated Company
public void saveloandetails()
{
}
}
//Source file: W:\\OOAD Lab\\Coding\\Simulated Company\\Class Diagram\\Employees.java
class Employees
{
private String eid;
private String ename;
private String designation;
private String address;
public CompanyOwner theCompanyOwner;
public warehouse theWarehouse;
/**
* @roseuid 4B0CFD74036B
*/
public Employees()
{
}
/**
* @roseuid 4AF006A203C2
*/
19
Simulated Company
public void manufactureProducts()
{
}
/**
* @roseuid 4AF0076D0371
*/
public void storeproducts()
{
}
}
//Source file: W:\\OOAD Lab\\Coding\\Simulated Company\\Class Diagram\\salesManager.java
public class salesManager
{
private String id;
private String name;
public inventorymanager theInventorymanager;
public CompanyOwner theCompanyOwner;
/**
* @roseuid 4B0CFD7403B9
*/
20
Simulated Company
public salesManager()
{
}
/**
* @roseuid 4AF007C10376
*/
public void marketproducts()
{
}
/**
* @roseuid 4AF007C700E5
*/
public void generatesalesreports()
{
}
/**
* @roseuid 4AF007D000D4
*/
public void sendsalesreports()
{
21
Simulated Company
}
}
//Source file: W:\\OOAD Lab\\Coding\\Simulated Company\\Class Diagram\\warehouse.java
public class warehouse
{
private String location;
public Employees theEmployees;
public inventorymanager theInventorymanager;
/**
* @roseuid 4B0CFD7402CF
*/
public warehouse()
{
}
/**
* @roseuid 4AF0075F022B
*/
public void storeproducts()
{
}
22
Simulated Company
6. Conclusion
The simulated company is that provides all the features as in the real time application
and all the requirements are fulfilled. The simulated company calculates the performance of
the company based upon the productivity and sales and it generates the reports. Based on the
reports further development will be continued. Simulated company is easily understandable
to the users.
23
Simulated Company
7. Bibliography
1. Unified Modeling Language ……Grady Booch, Ivar Jacobson, James
Rumbaugh
2. Software Engineering ……………Roger. S. Pressman
Web Reference
1. www.omg.org
2. www.ibm.com /rational
3. www.google.com
4. http://sourceforge.net/projects/
5. http://www.onesmartclick.com/programming/case-studies.html
24