Software Engineering Project
Software Engineering Project
Members:
Chevaughn Walker 1203383
Julia Pottinger 1200639
Carlington Palmer 1201861
Stephen Hing 1306717
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Contents
Background to the Problem .................................................................................................................................1
Identification and Justification of process model and methodology being used ................................................4
Work Breakdown Structure .................................................................................................................................6
Precedence Table .................................................................................................................................................8
Gantt chart ........................................................................................................................................................ 11
Risk Mitigation table......................................................................................................................................... 12
Risk Mitigation ................................................................................................................................................. 13
Reporting Structure .......................................................................................................................................... 20
Roles and Responsibilities of team members ................................................................................................... 21
A Breakdown of major Roles and their responsibilities ................................................................................... 24
Accurately assess the needs of their clients, should be familiar with the SDLC. ................................. 25
Understand what clients want, and to present the proposed solutions in terms that the user can
visualize and understand. .............................................................................................................................. 25
Responsibility: ............................................................................................................................................. 25
Responsibility: ............................................................................................................................................. 26
Object Oriented Analysis .................................................................................................................................. 29
Problems, opportunities, objectives and constraint matrix ............................................................................. 32
Actor Identification Form of existing system .................................................................................................... 34
Use Case Identification Form of existing system .............................................................................................. 35
Use Case Diagram of Existing
System.36
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Project
Background
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
PROJECT
PLAN
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
SMARTBOX TECHNOLOGY
Phone: 876-962-1946
Email:[email protected]
Fax: 876-622-7481
DATE OF REQUEST
02/09/2014
Request delayed
Request rejected
Authorized Signatures:
_____________________________________
Project Executive Sponsor
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Name of System: The name of the system is Ulti-Stocks and Database Management. This name is
suitable because of its likeness to the problem it was designed to solve i.e. inventory/stock
management and creating a customer database to manage customer and stock information
efficiently.
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
The object oriented methodology is also being incorporated as an object oriented system is
easier to manage and maintain and the user will be able to understand the system better as it will be
built in a way related to real world scenarios as our software will more closely reflect the real world.
In addition the Object Oriented approach is very stable in that if we want to make small changes to
the system, the entire system wont be affected.
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Problem
Definition
Risk
Analysis
Establish
Business
Objectives
Feasibility
Report
System
Analysis
Fact
Finding
/Elicitation
Identification
of Problem
Design and
Development
Define System
Requirements
Cause and
Effect Analysis
Network
Design
Design
System
Environment
Design Security
and System
Controls
Implementation,
Testing and
Training
Database
Design
User
Interface
Design
Debug and
Test Software
Code
User
Interface
Creating and
Testing
Databases
Train
Users
Create
User
Manual
Implement
Software
Code system
and security
controls
Install
Systems
Environment
and Network
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Precedence Table
Task Description
Detailed Activity
Task
Predecessor
Duration
(Days)
Identification of
Problem
A,B
A,B
Network Design
15
25
16
Database Design
-Create ERD
-Choose database structure
-Design database architecture
-design database schema
-design referential integrity
constraints
Environment
Design
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
software application
Design Security
and System
different users
controls
15
13
H,I,J,K,L
15
H,I,J,K,L
25
10
10
database from
software/hardware failure
-define how to protect
communications on the
network
Design User
Interface
with system
Code User
Interface
Database
security controls
Install Systems
environment and
Network
System Evaluation.
Software
Implement
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Software
it.
Create User
Manual
10
10
system.
Train Users
The duration for each activity to be completed is stated in the durations column. The
duration is represented in days.
10
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Gantt chart
A 2
B
C
D
2
8
Task
15
25
16
Start
Duration
15
13
15
25
10
10
10
10
11
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Description
1
2
3
4
Catastrophic
Critical
Marginal
Negligible
Risk Summary/Description
Customer fail to participate
Malfunction of Computers / System
failure
Lack of experience in Software
Development
Insufficient capital
Change of project requirements
Insufficient time to complete project
A team member may be unable to
continue school
Risk Category
Customer Risk/Customer
characteristics
Technology
Probability
14%
Impact(1-4)
3
10%
Technical Risk
35%
Budget
Scope
Business Impact
Project completion risks
30%
25%
15%
19%
2
3
3
3
12
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Risk Mitigation
A Team Member may be unable to continue School.
Students from time to time are unable to continue with their education at university as a result of
financial issues, being deregistered, late enrollment, death or illness. This results in the team being
short on a member and this places strain on the remaining members.
Mitigation: Meetings will be held to discuss the possibility of any member having to discontinue
school. Measures will be put in place to have the work delegated in a manner that if 1 person
discontinues then the aspect of the project that they are doing will jeopardize the entire project.
Monitoring: Students progress will be monitored to ensure that they are completing their part of the
project in a timely manner. They will also be asked on different intervals about their state of affairs
with the school.
Managing: The team will have to find ways to finish the project without the team member. Delegate
work that wasnt completed by that member and try as best as possible to complete the project on
time.
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
set and roles in the organization. Persons that will be interacting with the system directly will be
given special training so as to ensure that are well equipped to use the system.
Monitoring: During the development of the system at various stages the employees will be met with
and the different software that will be used in the system and the different interfaces will be
discussed with them. An idea of their technical experience and what they know and dont know to do
will be gathered and based upon that knowledge training sessions will be held to teach them. Their
progress will be monitored and improvements noted and any adjustments that need to be made in
their training will be made.
Managing: In the event that the employers cannot use the system properly then we would have to
create an interface that they can use more easily or that they are more familiar with. If that does not
work, then the company will have to hire new employees that are tech savvy and will be better able
to use the system.
Customer fail to participate
An important part of the entire end result is that the customers that come into the store are willing to
fill out the form and provide information so that the database can be created on the customers that
want to repair electronic items.
Mitigation: The team will do their best to create a form that is efficient in collecting all the relevant
information and at the same time does not take a lot of time to fill out. A prototype of the form
filling out process could be created so that the customer would have a feel of what is coming and
valuable feedback could be gained from this that would help the team to know what to add or
subtract from the form.
14
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Monitoring: This process would be monitored over a period of time and questionnaires could be
given to the customers so as to find out their opinion on the entire process.
Managing: If the customers are reluctant to fill out the form then another method to gather the
needed data will have to be implemented.
Mitigation: The Company will create a parallel system that can act as a solution if the current
system should fail. The system will also have an auto-backup feature that will ensure only minimal
data is lost from the databases if a system failure should occur.
Monitoring: The system is checked regularly for malicious software and other types of intrusions.
Checks for signs of a possible system crash will be carried out, thus giving an early warning system
for system failures.
Managing: If the system fails, then the early warning system would have predicted it but we were
just unable to stop it. In such a case, the databases would have already been backed up and the
alternative system put in place to ensure the continued operation of the system.
15
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Insufficient capital
Companies from time to time attempt to save money by suggesting surprisingly low budgets for
complex projects. At times these companies refuse to adjust the budget to a seemingly sensible
budget. With a budget being too low, most of the expectations of the company cannot be met not
unless the developers suffer a loss in the process.
Mitigation: A detailed pricing scheme will be given to the company highlighting the different costs
for the project and how the final estimate was reached. With a logical and detailed explanation of
16
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
how the final figure was reached, the company is generally less likely to try and undercut the figure
being given. Once a figure is agreed on, a written agreement is signed between the vendor and the
company to ensure the project is funded to at least this figure.
Monitoring: Our team plans to deliver regular progress reports to the company in an effort to keep
them interested in spending money. If an investor sees that his money is working, he/she is more
likely to continue investing.
Management: In the event the company attempts to undercut the agreed price, then the written
agreement will be used as leverage to say that this is what we agreed on and if we do not get that
amount then it will be very difficult for you to get the finished system that you want at the deadline
that you want and with the quality that you want.
Change of Project Requirements
During a projects development cycle, the company may have a change of heart or comes across a
problem that they didnt notice before or forgot to mention. Whenever this happens the development
team is usually asked to adjust their project to suit the new requirements of the company. These
changes create added difficulty for the development team. This could affect whether or not the team
is able to meet the deadline. If the deadline is no longer feasible then this added pressure can cause
forced errors in the system.
Mitigation: The development team will conduct detailed interviews with the company in an attempt
to cover all angles. This should ensure that most of the necessary features are included in the system
that the company and the team agree to build and that the product we are producing, and the
17
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Monitoring: During the development cycle of the project, the company will be requested for
consultation and testing of the project. Prototypes will be created at various stages of the project so
that any issues that the company may have with the system can be dealt with in a fast and timely
manner. This will create a sort of early warning system for the team, allowing us to predict possible
changes.
Managing: Should the development team come to the realization that their idea of the product
requirements differs from those of the customer, the customer should be immediately notified and
whatever steps necessary to rectify this problem should be taken. Preferably a meeting should be
held between the development team and the customer to discuss at length this issue. If the company
needs the project to be delivered on the agreed date then we will add more members to the team to
compensate for the additional work or have the current team work longer hours.
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
A schedule has been established to monitor project status. Falling behind schedule would indicate a
potential for late delivery. The schedule will be followed closely during all development stages.
Managing:
If it becomes apparent that the project will not be completed on time, the only course of action
available would be to request an extension to the deadline from the customer. In the event that this is
not possible then the area of the project that was completed will be given to the customer and further
tasks will be held towards seeking time to finish the project.
19
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Reporting Structure
Project Manager
Designer
Chief
Engineer
Development
Manager
Coder/
Programmer
Technical
Writer
/Librarian
Requirements
Analyst
Architect
GUI
Designer
Project
Database
Designer
Systems
Environment
Designer
Trainer
Interaction
Designer
20
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Team Member
Functions
Julia Pottinger
Chevaughn Walker
Development Manager
Chevaughn Walker
Julia Pottinger
of conflicting projects.
-address issues from the team,
which it is unable to resolve
internally
Designer
Carlington Palmer
Chevaughn Walker
inclusive of:
Stephen Hing
Julia Pottinger
by different users
-design how to protect the
database from
software/hardware failure
-define how to protect
communications on the
network
- Define all the technology
required to support the
software application
-Delegate task to other
designers
-supervise other designers that
report to him.
21
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
- Generate system-level
description of what the system
is to do.
GUI Designer
Chevaughn Walker
Chevaughn Walker
Julia Pottinger
Create ERD
-Choose database structure
-Design database architecture
-design database schema
-design referential integrity
constraints
Chief Engineer
Stephen Hing
Coder/Programmer
Carlington Palmer
Chevaughn Walker
Stephen Hing
software
Julia Pottinger
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Technical Writer/Librarian
Julia Pottinger
Requirements Analyst
Chevaughn Walker
23
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
questionnaires.
- Conduct cause and effect
analysis of the problem at
hand
- Ascertain from the customer
the features and behaviour of
the proposed system.
Architect
Carlington Palmer
Trainer
Stephen Hing
Carlington Palmer
24
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Connect and communicate between software developers, programmers and other members of
the technical team and the non-technical users who actually work with the project every day.
Accurately assess the needs of their clients, should be familiar with the SDLC.
Understand what clients want, and to present the proposed solutions in terms that the user can
visualize and understand.
-Building a Team
Know which resources will be needed, this can include members of the programming team,
software developers and even outside vendors. Understanding who to turn to get the job done
is an essential part of the job.
Programmer
Responsibility:
Responsible for the underlying architecture for the software program, as well as for
overseeing the work being done by any other software engineers working on the project.
Act as a mentor for new or lower-level software developers or programmers, as well as for
all the members on the development team.
Code, test and troubleshoot programs utilizing the appropriate hardware, database, and
programming technology.
Trainer
Responsibility:
Training
25
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Prepare and maintain training materials for standard products and end user applications.
Present using a variety of techniques and styles, including team exercises, group discussions,
presentation slides, and demonstrations.
Monitor level of success of training engagements and recommend suggestions for continued
improvements.
Work with clients to identify specific training needs and prepare individual curriculum to fulfil
needs.
Assist with end user support to ensure highest level of client satisfaction.
Provide assistance with software installation and implementation.
GUI Designer
Responsibility:
Design the graphical environment for the software ensuring that the different users will be
able to easily interact with the system
Responsible for ensuring that users with different access can only see certain aspects of the
system.
Librarian
Responsibility:
To ensure that all the relevant documents that are to be developed at every stage of the SDLC
are created in a timely and efficient manner. Also ensuring that these documents are up to
standard.
26
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
To keep all relevant document including receipts and the documents used in the analysis
phase in order and have them available when necessary.
Chief Engineer
Responsibilities
Determines the (stakeholders) needs that the product must meet and continually oversees the
development of the product to ensure that its on target to meeting those needs.
Listens to the stakeholders and then negotiates with the project team to address the
stakeholders needs (and desires).
Architect
Responsibilities
Ensuring the product or service under development achieves its performance and other
qualitative requirements.
Guiding the interfacing and Integration of the solution components of this project into the
existing architectural landscape.
Requirements Analyst
Responsibilities
Technical Writer
Responsibilities
Providing early feedback to the core and extended teams about e.g. desirable features.
Creating closer and more productive relationships with the various stakeholder communities
(through e.g. creating tutorials, reference manuals, technical overviews, brochures, video,
audio, etc.)
27
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Designer
Responsibilities
Finding solutions to known requirements.
Exploring the requirement space.
Coder
Responsibilities
Implementing i.e. user stories in whatever language is most suited to the problem at hand
28
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
The store clerk takes the customer request and if the item is on the rack or in the
display case he/she takes the item, cashes it and gives it to the customer.
If the item that the customer wants is not on the shelf then the clerk will go into the
stock room and search for the item.
This causes inefficiencies when dealing with their customers as it is error prone and
sometimes the item that the customer wants is not there. The waiting process at times is long and
tedious for the customer. Due to the inefficient inventory system that Smartbox has, at times the item
that the customer wants is not in stock. The store then tries and source the item. This can take 3-4
weeks.
It also takes time for the employee in the store to search for the item in the store room after
the customer has requested the item that they want. This takes a bit of time as there are a lot of items
in the store room. The customer waits an average time of 10-20 minutes for the clerk to search the
stock room and to return with the item or in some instances without the item if the item is out of
stock.
29
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Smartbox does an inventory check every two weeks. This is really inefficient and time
consuming as it is manual and takes on average 1-2 days. It is error prone as:
They may forget to write down the correct amount for a particular stock.
The book in which they keep track of the items sold may be incorrect or illegible and
this may result in the calculating of items sold to be wrong. This may also result in
the calculation of the items left in stock to be incorrect as at times they subtract the
number of items sold from that of the number of items that were bought.
Other problems sometimes arise as they cannot find invoices and sales receipts and as
such they cannot accurately calculate the number of items left in stock. Whenever this
happens they have to go into the stock room and check every item that is there.
At Smartbox, they do not have a computerized customer database in which they store
customer information and the repairs that they are getting done. The process is like this:
The item is recorded in a book and the customer is asked to make a deposit of half the
cost of repairing the item. The customers first name and telephone number is taken
and recorded in the book.
While the item is being repaired the technician at times takes items from the store
room to repair the item. However, this item is not recorded in the sales book that is to
be used to determine the items left in the store room. The customer is billed for this
item however a copy of the sales receipt is not made and placed with those used to
check sales made from the store room.
30
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
After the item is repaired the customer is called. At times the customer is not called
as their information cannot be found and they have to come to the store and ask if
their item is repaired.
The problems with this system are that Smartbox record all the customer and repair
information in a book. When the items are finished being repaired it takes a long time for the
employee to find the contact information for the customer to inform them to come and collect the
item. This is so as they have to search through the entire book looking for the item. At times there
are several of the same items being repaired so the employer has no idea which customer it belongs
to.
In addition to that, at times the parts used to repair the item are taken from the store and the
customer is billed for it along with being billed for the repairs that were done. They do not have a
proper inventory system in place that keeps track of the items that are used for repair and update the
amount of that item left in stock.
31
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Cause-And-Effect Analysis
Problem or
System Objective
Insufficient
customer data
customer information to
approximately 30
the customer.
Opportunity
is too outdated
and is not
preformed
regularly as
required
32
System Constraint
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
needs to be refilled. It
customers.
The waiting
To provide stock
The system
process at times
information and
developed must be
is long and
significantly reduce
latest windows
customer.
operating system
33
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Counting of
stock.
They include:
automated one.
particular stock.
in stock.
miscount results in an
incorrect amount of stock
being reported and this may
result in further problems
when the expected amount of
stock is not there.
34
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Items taken
from stock room technician uses items from the feature which requires
and used in
repairs arent
being recorded
as sales.
stock.
35
Clerk
provides input
Cashier
to the system?
Who or what
receives outputs
from the
Clerk
Cashier
Customer
system?
Are interfaces
required to
other systems?
Are there events
that are
automatically
triggered at a
predetermined
time?
Who will
maintain
information in
The Clerk
the system?
34
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Actors
What
information
does the actor
needs from the
system?
What
information
does the actor
provide to the
system?
Customer
To request a
service.
Purchase
information
_____
Clerk
To help manage
stock and
customer
requests.
Previous stocks
that have been
written down
and the amount
sold(to calculate
current stuck)
The current
inventory of
items.
Cashier
Bills customer
Price of item
35
Does the
system need to
inform the
actor of any
changes or
events that
have occurred?
_____
_____
_____
_____
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Arrange
Payment
Order
item
Supply data
<<Association>>
<<include>>
<<include>>
Update
inventory
Clerk
Check store
room
<<include>>
Purchase
<<extend>>
Item
Customer
Takes customer
info
Request
Repair
<<extend>>
Assign
computer to
customer
<<extend>>
Request Internet
service
<<include>>
<<include>>
Allocates
chosen time
Choose time
Bills customer
Cashier
Issues receipt
Cash items
36
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
The Ulti-Stocks and Database Management System shall make it easier for the
employees of Smartbox to keep track of the items currently in stock.
The system shall have a display stock feature which enables employees to view their
entire stocks along with the amount in supply and prices.
The user shall be able to save customer information in a database so that it can be
easily accessed.
The sales and costs of items shall be automatically calculated and the system shall
prompt the user of ordering when the stocks are low.
The Smartbox System shall allow users to add new items to their stocks that they
want to be sold.
The cashier shall help with customers requests and make sure these services are met
and efficiently billed.
The clerk is to check the system inventory and adequate update it to maintain daily
business.
Software Features
Feature
Complete Inventory Tracking
Benefits
Record, update and search items such as product types and prices.
Calculator
Edit Inventory
Allows users to add new items to their stocks that they want to be
37
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
sold.
Controlled User Security
Display Feature
Enables users to view their entire stocks along with the amount in
supply and prices.
Non-functional requirements
The system shall prompt users to enter a password if before gaining access to any
information. This will enhance the security of the system
The system shall have user accounts which allow only specific user to have certain rights.
The system shall have quick recovery times of approximately 1-3 minutes in case of errors or
failures. This shall be dependent on the processor speed of the computer the user is using.
The system runtime shall take a matter of seconds to execute and display output. The system
shall be very robust.
The Smartbox system shall be very scalable in the amount of platforms it can be installed on
i.e. laptops, desktops, notebooks and even some cellular phones, particularly those with
38
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
android technology.
They will also ensure that all manuals applicable to the implementation of the system are
available when needed.
39
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Who or what
Clerk
provides input
Cashier
Merchant
Cashier
Customer
to the system?
Who or what
receives outputs
from the
Clerk
system?
Are interfaces
required to
other systems?
An order
request is
Are there events signaled when
that are
stocks are on a
automatically
low
triggered at a
predetermined
time?
Who will
maintain
information in
The Clerk
the system?
40
Technician
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Actors
What
information
does the actor
needs from the
system?
What
information
does the actor
provide to the
system?
Customer
To request a
service.
Purchase
information
_____
Clerk
To help manage
stock and
customer
requests.
Previous stocks
that have been
written down
and the amount
sold(to calculate
current stuck)
Cashier
Bills customer
Price of item
Takes customer
order,
Record item
that was
bought, cashes
item,
Check if item is
in stock,
Count stock,
Calculate sold
items.
Collect
customer info,
Contact
customer
Invoice,
Sales receipts,
Price,
Stock count,
Customer info,
Customer who
owe,
Store clerk
Does the
system need to
inform the
actor of any
changes or
events that
have occurred?
_____
The current
inventory of
items.
_____
_____
Customer
request,
Calculation
Customer info,
Stock info,
Merchant
To order new
Stock count ,
Confirmation
41
_____
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
stock
Ulti-Stocks
System
Database
System
Technician
Maintains
items currently
in stock
Stores
customer
information
1.Identify the
problem with
the system
2. Fix the
problem and
bill for new
equipment
used to fix the
computer and
to then
compile a bill
Types of stock
needed,
Amount of
stock need
Item info
Customer
personal info
such as contact
info and
address
Stock
inventory of
parts and items
that may be
needed.
42
of purchase,
delivery dates
The current
inventory of
items
Info on
customers and
the items they
have left for
repairs
Customer
billing for
repairs
restock
Whether or not
the inventory
is empty
When item has
been repaired
If new parts
are required
and if the
customer
would like to
continue with
repairs by
purchasing
these parts.
Whether or not
the item have
been picked up
by the
customer
The removal of
stock that has
been
purchased and
used in repairs.
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Arrange
Payment
Order
item
Supply data
Update
inventory
<<Association>>
<<include>>
<<include>>
Clerk
Check store
room
<<include>>
Purchase
<<extend>>
Item
Customer
Takes customer
info
Request
Repair
Request Internet
service
<<include>>
<<extend>>
Assign
computer to
customer
<<extend>>
<<depend>>
<<include>>
Choose time
Bills customer
Allocates
chosen time
Issues receipt
Cashier
Cash items
Tracks store
inventory
Inventory System
<<depend>>
Identify Problem
Buy Stocks
Fix Problem
43
Merchant
Technician
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Request Purchase
SB2014-01
High
Customer
Inventory System
Smartbox-Interested
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
ALTERNATE COURSES:
CONCLUSION:
POST-CONDITION:
BUSINESS RULES
IMPLEMENTATION
CONTRAINTS AND
SPECIFICATIONS
ASSUMPTIONS:
OPEN ISSUES:
45
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
ALTERNATE COURSES:
CONCLUSION:
POST-CONDITION:
BUSINESS RULES
IMPLEMENTATION
CONTRAINTS AND
SPECIFICATIONS
ASSUMPTIONS:
OPEN ISSUES:
Database System
Customer
Smartbox-Interested
The use case describes the event of storing repair info for a customer
The customer must have an item to be repaired.
The customer must have valid identification
The uses case is initiated when the customer states the problem with the
device.
Actor Action
System Response
Step 1: The customer indicates Step 2 The system verifies if the device
they have an item for repair
can be repaired.
Step 4:The system collects info on the
malfunctioning device and customer
Step 3: The customer provides Step 5: The system records collected
device info and personal info
data to database
Step 6: The system issues date to
recollect device
Step 7: The system records recollection
dates
Alt-Step 2: The device the customer wants to repair might be too
damaged for repair.
The use case concludes when the customer receives date to collect device.
The customers device info is recorded along with some contact info.
There are no refunds only exchanges.
Only cash and debit/credit cards are accepted.
The customer should be willing to provide certain personal info to be
stored
The customer will be back to collect the device
46
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
ALTERNATE COURSES:
CONCLUSION:
POST-CONDITION:
BUSINESS RULES
IMPLEMENTATION
CONTRAINTS AND
SPECIFICATIONS
ASSUMPTIONS:
OPEN ISSUES:
Buy Stocks
SB2014-03
High
Merchant
Inventory System
Smartbox-Interested
The use case describes the merchant buying products to restock the
inventory
The inventory must be running low
The merchant must have supplier
The uses case is initiated when the inventory is low and a reorder is
alerted
Actor Action
System Response
Step 2: The store manager
Step 1 A reorder stocks alert is
contacts merchant to buy
generated.
stocks.
Step 3:The system generates a report on
what inventory items needs to be
replenished
Step 4: The merchant buys
Step 5: The system updates the
inventory items from the
inventory system with the newly bought
stores suppliers.
items
Alt-Step 1: A reorder stocks alert is not generated because inventory is
not running low
The use case concludes when the inventory system is updated with the
newly bought items.
The inventory system must be updated
There are no refunds only exchanges.
Only cash and debit/credit cards are accepted.
There might be a bug in the system in calling the reorder function even
when the inventory is not running low
The inventory is running low
47
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
ALTERNATE COURSES:
CONCLUSION:
POST-CONDITION:
BUSINESS RULES
IMPLEMENTATION
CONTRAINTS AND
SPECIFICATIONS
ASSUMPTIONS:
OPEN ISSUES:
Inventory System
Customer, Clerk
Smartbox-Interested
The use case describes how the inventory is maintained by the system
New items added to the inventory are verified
Items removed from the inventory via purchases are verified
This use case is initiated as soon as a purchase is made
Actor Action
System Response
Step 1: A customer requests
Step 2: The system is checked for item
purchasing an item
availability
Step 3: The system gets stored info on
the item selected for purchase
Step 4: The system generates cost of
item
Step 5: That item is removed from the
inventory for sale
Step 6: The inventory system is updated
of the sale of an item,
Alt-Step 2: The requested item might not be available therefore a sale
would not be made
The use case concludes when the inventory system is updated of the sale
of an item, which has been removed from stock
The inventory system tracks amount of each items left in stock
There are no refunds only exchanges.
Only cash and debit/credit cards are accepted.
Incorrect data might be stored about an item in stock
The inventory updates itself after sales
48
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Sequence Diagrams
Customer
Purchase Item
Supply Data
Payment
AcceptsItem
Clerk
User Interface
Check Stock
Takedata
Ulti-Stock System
Track itemfile
Verify
GiveItem
Calculatefee
GenerateFee
UpdateInvento
ry
49
Check
itemfile
showfile
StoreData
StoreData
Database
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Customer
Repair Item
IssueDate
Clerk
User Interface
Ulti-Stock System
EnterInfo
generatedate
VerifyDevice
Verify
50
createfile
storeData
Database
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Merchant
User Interface
Inventory System
Ulti-Stocks System
RequestOrder
EnterOrder
Update
SendReport
BuyStock
Reorder
51
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Customer
Inventory System
User Interface
PurchaseItem
Purchase
CheckStock
getdata
Update
GenerateCost
RemoveItem
Update
52
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Class Diagram
Customer
-name :string
-id:int
-address:string
-down_payment:float
-tel_num:int
+Customer()
+Customer(string, int, string float, int)
+SetName(string):void
+GetName():string
+SetId(int):void
+GetId():int
+SetAddress(string):void
+GetAddress():string
+SetD_Payment(float):void
+GetD_Payment():float
+SetTelNum(int):void
+GetTelNum():int
+MakePayment():void
+OrderItems():void
+CollectItems():void
Store Clerk
-name: string
-Id: integer
-salary: integer
-address: string
- inventory: Inventory
-customer: Customer
-merchant: Merchant
+checkStock(): bool
+getCustomer(): void
+getInventory(): void
+makePayment(): void
+addStock(): void
+addCustomer(): void
Technician
-repair_num:int
-cost:float
-items_used:string
-customer:Customer
-Technician()
-RecordItemsUsed(int,string):void
-GetCustomerInfo():void
Inventory
Type: string
ItemNum: integer
Price: integer
TotNumofStock: integer
+ countStock(): integer
+ checkIfStockAvail(): bool
+ getType(): integer
+ searchStock(): bool
+ reorder(): void
+ calculate(): void
Merchant
-email:string
-phone: integer
-address:string
-merhantRep:string
-Item_name: string
-Price: integer
-Type: string
-amount: integer
+sell_stock(): void
+getOrder(): void
+deliverItem(): void
+recievePayment():void
53
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Address
Address
ID
ID
Name
Name
Cashier
Cashed
Distributes
Customer
Purchase
ID_code
Amount
Item_name
Merchandiser
Supply
Product
Item_name
Type
Price
ID_code
Type
Price
Amount
54
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Process Diagram
Reorder
No
Place order
Purchase or
Repair
Purchase
Is
product
availablility?
Picking up
Complete
payment
Repair
Dropping off or
picking up?
Dropping
Take customer
info
Make deposit
55
Yes
Cash product
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Activity Diagram
Reorder Product
NO
YES
[Check place
next order]
[Check if
Purchase]
[Check
product
availablility]
YES
Place order
Purchase
[Check
purchase
more]
NO
NO
Cash product
YES
YES
NO
Repair
[Check
Dropping
off]
NO
Picking up
YES
Take customer info
and Item
Make deposit
56
Complete payment
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Appendices
57
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Appendices
Minutes
Minutes for Meeting held on Sunday February 10, 2013.
Meeting was called to order at 1 pm.
The meeting was held to discuss the different aspects of the project that we had to work on. Work
was delegated to each member of the group. Carlington did the RSS form. Julia did the background
to the problem and the problem statement, whilst Chevaughn and Stephen did the Cause and Effect
table. The work was put together and Submitted via email to the teacher.
Further plans were made as to how to move forward with the project. A date for the next meeting
was set. It was agreed that the group would meet again on Sunday February 16, 2014.
58
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
to how it should be approached were decided upon. It was agreed upon that Miss needed to look at
the project and see how far we were and if we were on the right track. It was also brought up by a
member of the group that the only place we should have the problem statement and the expected
solution was in the RFISS form. It was checked and found to be true and the project6 was then
corrected accordingly. The meeting was adjourned at 5:00 pm..
A date was not set for the next meeting.
60
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
61
Group 3
Chevaughn Walker 1203383
Carlington Palmer 1201861
References
ISQTB- International Software Testing Qualifications Board. (2012, January 12). What is Prototype
model- advantages, disadvantages and when to use it? Retrieved March 2014, from ISQTB - Exam
Certification: http://istqbexamcertification.com/what-is-prototype-model-advantages-disadvantagesand-when-to-use-it/
Tilloo, R. (2013, August 4). What Is Incremental Model In Software Engineering ? Its Advantages
& Disadvantages. Retrieved March 2014, from Technotrice :
http://www.technotrice.com/incremental-model-in-software-engineering/
62