Upload
selman-mohammed
View
225
Download
1
Embed Size (px)
Citation preview
8/2/2019 ASTU Financial Sys Design Document
1/24
0 | P a g e
Table of Contents
1. INTRODUCTION AND OVERVIEW .................................................................................................................... 1Project objective.................................................................................................................................. 1
Scope of the project ................................................................................................................... 1
Development tools used ..................................................................................................................... 1
2.ARCHITECTURE VIEW OF THE SYSTEM ....................................................................................................... 2
2.1 logical view ............................................................................................................................ 2
2.2 process view ........................................................................................................................... 4
2.3 implementation view .............................................................................................................. 5
2.4 deployment view(physical view) ............................................................................................. 6
3. detailed design ............................................................................................................................... 7
4. sample user interface design and implementation code ................................................................ 10
5. test scenario ................................................................................................................................ 16
6. test plan....................................................................................................................................... 17
7.reflection ...................................................................................................................................... 23
8.reference ...................................................................................................................................... 23
8/2/2019 ASTU Financial Sys Design Document
2/24
1 | P a g e
1. Introduction and overviewProject objective
The general object of the project is to change the manual way of doing jobsto be automated that can be used using computers and other automation
machines.
Save Accountants time taken to prepare payroll. Reduce the resource taken to do the manual jobs by changing it to be
automated.
Reduce the labor power needed for doing the manual job. Securing employees information (data). Protect authorized persons from accessing employees information (data).
Scope of the project
The scope of this project includes the following
It creates and print payrolls based on the input given It creates and prints reports It creates and print Budget request It creates and print Budget allocation The system only runs on window based operating systems. The system is a desktop application
Development tools used
Modeling
Enterprise architectureInterface design
Microsoft visual basicDatabase design
SQL Compact sever 3.5Additional tools used
Microsoft office management Windows sniping tool Paint
8/2/2019 ASTU Financial Sys Design Document
3/24
2 | P a g e
2. Architectural views of the system2.1logical view
Functional requirements:- The system should allow adding, modifying, and deleting data to/from thedatabase. The system should allow payroll accountant to update the database of
employees.
The system must be able to generate payroll based on the data it is fetched. The system allow user to print their document The system should restrict unauthorized users from accessing the database. The system should allow users to print reports.
8/2/2019 ASTU Financial Sys Design Document
4/24
3 | P a g e
8/2/2019 ASTU Financial Sys Design Document
5/24
4 | P a g e
2.2 Process view
8/2/2019 ASTU Financial Sys Design Document
6/24
5 | P a g e
2.3 implementation view
Component diagram
8/2/2019 ASTU Financial Sys Design Document
7/24
6 | P a g e
2.4 Physical view
Deployment diagram
8/2/2019 ASTU Financial Sys Design Document
8/24
7 | P a g e
3. Detailed designGeneral account unit component:-
This component has a login menu ,report menu, print menu, AcE payroll menu,
AdE payroll menu, and CoE payroll menu .
This unit is mostly responsible for issues related to Payment. Some of the issues
are as following
2. Paying salary for employees, non-caf students, etc.3. Preparing Payroll4. Preparing report to the budget unit, whether or not the allocated budget is
spent for the desired purpose.
This unit is composed of persons that have different responsibilities, they are
stated as following
Unit Head: - Head of the general accounts unit.
Expenditure Accountant: - Rechecks documents approved by the united head.
Cashier: - Prepares payments.
Payroll Accountant: - Prepares payroll.
Secretary: - Assist the unit head and other coworkers.
Loan Accountant: - Responsible for issues related with loan.
We have some classes for this component and we will discuss one class which is
Academic Employee class (AcE) this class describes the payroll preparation for the
academic employees in ASTU .
8/2/2019 ASTU Financial Sys Design Document
9/24
8 | P a g e
visbilty
Attributes method
visibility
hidden Name: char Insert_Name() : void public
hidden Salary: double Insert_salary():void public
hidden
Pension :double
Insert_pension() :void public
hidden Transport: int Insert_transport():void public
hidden house allowance :
double
Insert_houseallowance(): void public
hidden professional
allowance: double
Insert_proffessionalallowance() :void public
hidden account no :int Insert_account_no() :void public
hidden deductive
allowance :double
Insert_deductiveallowance():void public
hidden Net_payable Calculate_net_payable() :void public
hidden income tax :int Calculate_incometax() :void public
hidden Gross_salary Calculate_gross_salary() :void public
Project Finance Unit (component 2)
The Project Finance component is responsible for issues listed as following
Collect internal income like, Clearance, ID loose and repair, and penalty Approving and paying cost for different projects, like construction Preparing audit report for the budget unit. Issues related to Purchasing Checking PV(recite)
8/2/2019 ASTU Financial Sys Design Document
10/24
9 | P a g e
The component interfaces are
clearance ID/meal card AU guest house Extension students Penalty Start page
project finance unit classes :-
AU_Guest_House Income_from students ID/meal card Extension students Clearance Login Report Database classes .we will focus on clearance class as an example
Clearance class has :-
- attributes: Name: student who pay for the clearance . data type is char ID no :student ID no. data type int
Amount paid : the amount of money a student pay for the clearanceThe attributes of this class are hidden. Data typedouble
Methods:
Insert_Amount_Paid():void
Insert_Name ():void
Insert_ ID():void
Visibility of this component methods are public.
8/2/2019 ASTU Financial Sys Design Document
11/24
10 | P a g e
4. sample user interface and implementation code
8/2/2019 ASTU Financial Sys Design Document
12/24
11 | P a g e
Sample login code
Private Sub Button3_Click(sender As System. Object , e As System.EventArgs)
Handles Button3.Click
If GAUUserNameTextBox.Text = "general accountant" And
GAUPasswordTextBox.Text = "expenditure accountant" And
ExpeAccountantRadioButton.Checked Then
PayrollTabControl.Visible = True
GAULoginGroupPanel.Visible = False
ElseIf GAUUserNameTextBox.Text = "legure accountant" And
GAUPasswordTextBox.Text = "legure accountant" And
LegureAccountantRadioButton.Checked Then
PayrollTabControl.Visible = True
GAULoginGroupPanel.Visible = False End If End Sub
8/2/2019 ASTU Financial Sys Design Document
13/24
12 | P a g e
Sample User interface #2
Code
// printer button
Private Sub ButtonX2_Click(sender As System.Object, e As System.EventArgs)
Handles ButtonX2.Click
Dim Printer = New DGVPrinter
If ConEmpMonthTextBox.Text = "" Then
8/2/2019 ASTU Financial Sys Design Document
14/24
13 | P a g e
MsgBox("Please Enter A Month!")
ElseIf ConEmpYearTextBox.Text = "" Then
MsgBox("Please Enter A Year!")
Else
Printer.Title = "Adama Science and Technology University"
Printer.SubTitle = "Payroll for the Contract Employees " &
"Month: " & ConEmpMonthTextBox.Text & " Year: " &
ConEmpYearTextBox.Text & " E.c"
Printer.SubTitleAlignment = StringAlignment.Center
Printer.SubTitleFormatFlags = StringFormatFlags.LineLimit Or
StringFormatFlags.NoClip
Printer.PageNumbers = True
Printer.PageNumberInHeader = False
Printer.PorportionalColumns = True
Printer.HeaderCellAlignment = StringAlignment.Near
Printer.PrintPreviewDataGridView(Me.ConEmpDataGridView)
End If
End Sub
///report button
Private Sub ButtonX3_Click(sender As System.Object, e As
System.EventArgs) Handles ButtonX3.Click
ConEmpReport.Visible = True
End Sub
8/2/2019 ASTU Financial Sys Design Document
15/24
14 | P a g e
///auto calculation
Private Sub SalaryTextBox_TextChanged(sender As System.Object, e As
System.EventArgs) Handles SalaryTextBox.TextChanged
Dim salary, incometax, netpayable As Single
salary = CDbl(Val(SalaryTextBox.Text))
If salary 150 And salary 650 And salary 1400 And salary
8/2/2019 ASTU Financial Sys Design Document
16/24
15 | P a g e
IncomeTaxTextBox.Text = incometax
netpayable = salary - incometax
NetPayableTextBox.Text = netpayable
ElseIf salary > 2350 And salary 3500 And salary 3500 Then
incometax = salary * 0.35
IncomeTaxTextBox.Text = incometax
netpayable = salary - incometax
NetPayableTextBox.Text = netpayable
End If
End Sub
8/2/2019 ASTU Financial Sys Design Document
17/24
16 | P a g e
5. Test scenarios
Security scenario
Verify username and password values
Minimum characters 5
Maximum characters 15
Less than the minimum or more than the maximum is not allowed
a-z and 0-9 are valid types to be entered
expected outcomes after ok button :-
valid and it leads to next window invalid username and password error message blank value error message
senario2
performance scenario adding a new employee the system display the new employee at the
maximum throughput .
add a new employee and delete the new employee the system shouldupdate its database efficiently and delete the employee details fatly.
When Clicking the print button , if its correct data to be printed, thesystem display the printed document and invoke the file to the printer
machine.
8/2/2019 ASTU Financial Sys Design Document
18/24
17 | P a g e
6. test plan
6.1 Introduction
test plan is A high-level document that defines a software testing project so that
it can be properly measured and controlled. It defines the test strategy and
organized elements of the test life cycle, including resource requirements,
project schedule, and test requirements.
The goal of this document is to develop a test plan for automated finance design
system. This document defines all the procedures and activities required to
prepare for testing of the functionalities of the system .
The objectives of the test plan are to define the activities to perform testing,
define the test deliverables documents and to identify the various risks and
contingencies involved in testing.
6.2 Features to be tested
The software features that will be tested :-
Login
Add, delete, modify user from the data base
Request budget
print budget report
documentation
6.3 Features that will not be tested:-
Reliability of the system
Hardware requirements
Scalability of the system
8/2/2019 ASTU Financial Sys Design Document
19/24
18 | P a g e
Mostly we can not test Nonfunctional requirements
6.4 Environment requirements
Hardware requirements
Computer with the minimum requirement of 1gb RAM 80GB hard disk
printer
Software requirements
Windows XP and later operating system
.net frame work 3 or higher
SQL compact server edition 3.5 or higher
Junit
6.5 Testing strategies
Unit testing
A unit in software development is the smallest piece of code that can be tested.
Unit testing in this case will involve a detailed testing of the units of code that canbe tested within each component. The components are made up of classes and
the classes are made up of methods which have decision outcomes. The Unit tests
will be based on the decision outcomes of the methods in the classes. The
expected results for each of the steps in the unit tests will be derived through a
means independent of the application to be tested. A unit test passes, if all the
unit test cases for each unit test pass their respective tests.
Unit test the system by using the following unit test development strategy
8/2/2019 ASTU Financial Sys Design Document
20/24
19 | P a g e
Identify Unit Test Objectives and Pass-Fail Criteria Design the Tests, the Test Environment, and Operator Instructions Identify and Acquire the Unit Test Data Notes Identify How Long Each Unit Test Needs to Run Unit Test Coverage Strategies Code and Execute the Tests Analyze the Results
Integration testing
Integration testing covers the tests carried out when components of the systemthat are developed separately, are being systematically integrated to one another
to complete the whole system. 4 components have been identified for this
application. These are: budget unit component, general account unit component,
project finance unit component and income generation unit Component.
We use incremental integration technique .
The 4 components will interact with each other in some cases such as when
budget unit components want an approval from the general account unit
component.
When the general account unit head want to see the overall budget and audit
report , in this case he must use the 3 components data.
8/2/2019 ASTU Financial Sys Design Document
21/24
20 | P a g e
Some test cases for integration testing
Test case for
budget officer
Scenario validity Expected output
Test case 1 User enters
username and
password
valid Directs to the
budget unit
window
Test case 2 User enters
username and
password
invalid Invalid username
and password
displayed
test case 3 Enter a special
character
invalid Error message
displayed
Test case 4 The user enters
nothing and pressthe ok button
invalid Please enter a
username andpassword
massage appear
Test case 5 User logged in
and use the
system and if the
system power is
off
Valid but
unexpected
shutdown
The user must
logged in again to
use the system
Test case 6 User logged in
and close thewindow without
logging out
Valid and
immediate close
The system must
close the accountas if the user
were logged out
8/2/2019 ASTU Financial Sys Design Document
22/24
21 | P a g e
System testing
The system test plan will cover tests at a higher level and will be more or less
based on the testing of the steps in the Use Case description .This test is carried
out when all the components must have been integrated and tested. Theexpected results for each of the steps in the Use Case description will be derived
through a means independent of the application to be tested.
We have some approaches of system testing this are:
Performance test
Tests are designed to determine the performance of the actual system compared
to the expected one. Tests are designed to verify response time, execution time,
throughput, resource utilization and traffic rate.
We will examine end to end response time. CPU time. Database access time. Waiting time.
Stress test
The system is deliberately stressed by pushing it to and beyond its specified limits
It ensures that the system can perform acceptably under worst-case conditions,
under an expected peak load. If the limit is exceeded and the system does fail,
then the recovery mechanism should be invoked
Load and stability testing
We will apply a large no of users for the system and run the system for a long
period of time without restarting, a number of problems are likely to occur:
the system slows down
the system encounters functionality problems
the system crashes altogether
8/2/2019 ASTU Financial Sys Design Document
23/24
22 | P a g e
Acceptance testing
Acceptance testing as a subset of system testing is designed to demonstrate to
the customer that the system generally meets requirements. It occurs when all
the bugs found in the system testing have been cleared or a concession to ignorethem has been obtained from the customer. It ends when the acceptance test
certificate is formally signed off by the customer.
We will demonstrate acceptance testing by the following issues.
Check that :-
The system work.
Major features of the system work.
participants
Customers of the system are the major participants of the acceptance testing .
They will use the system and test whether the system satisfy their needs or not.
And we will release a beta version for experts to give their suggestions about the
system .
8/2/2019 ASTU Financial Sys Design Document
24/24
23 | P a g e
7. reflections
This project gives as a detailed knowledge about software development
processes. we get some knowledge about test strategies. How we can apply them
on our system.
8. Reference
Software Quality Engineering - Testing, Quality Assurance and Quantifiable
Improvement
Software Quality Assurance From Theory to Implementation
Auerbach.Manage.Software.Testing.Mar.2008-BBL
Software Quality assurance lecture slides
The element of UML style