Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Acknowledgement
No.
Topics
Chapter[1]: Introduction
1.1
Purpose
1.2
Glossary
1.3
Overview of Document
Chapter[2]: Introduction of CSM
2.1
Introduction
2.2
Meaning of courier services
2.3
Scope
2.4
Aim of project:
2.5
Vision statement:
2.6
Objective
Chapter[3]: Project Planning
3.1
The software process
3.2
software process model
3.3
Team Structure
3.4
Deliverables and Milestones
3.5
Gantt chart
Chapter[4]: Software Requirements Specification
4.1
How existing system work
4.2
Limitation of existing system
4.3
Proposed System & Its Advantages
4.4
Requirements Specification
4.5
Other Nonfunctional Requirements
4.6
Feasibility Study
4.7
Stakeholder
Chapter[5]: System Analysis
5.1
Fact-Finding Techniques
5.2
Interview & Questionnaire
5.3
Sample Interview Questions & Related Topics
Page
5.4
A sample Questionnaire
5.5
Activity Dependencies, Activity network and Activity Timeline
5.6
Use Case diagram
5.7
Activity diagram
5.8
Sequence diagram
5.9
Class Diagram
5.10
Entity Relationship Diagram
Chapter[6]: Implementation
6.1
Introduction
6.2
Considerations
6.3
Implementation
Chapter[7]: Construction & Deployment Considerations
7.1
Considerations
7.2
Testing
7.3
Implementation
7.4
Post Implementation and Maintenance
Chapter[8]: Discussion and Conclusion
8.1
Discussion
8.2
Conclusion
8.3
Future work
References & Conclusion
Chapter [1]
Introduction
(1.1) Purpose
This Software Requirements Specification (SRS) document will provide a detailed description of the
steps, phases and design necessary for the Courier System Management (CSM). This SRS document
will allow for a complete understanding, of what is to be expected of the CSM to be constructed. A
clear understanding of the CSM and its functionality will allow for the correct software system to be
developed for the users of the software, and will be used for the development of the future stages of
the project. This SRS document will provide the foundation for the project. From this SRS
document, the CSM can be designed, constructed, and finally implemented and tested.
This SRS document will be used by the software engineers for helping and working side-by-side
with the system analysts while constructing the CSM, and the Courier end users. The software
engineers will also use the SRS document to fully understand the expectations of this CSM, to
construct the appropriate software. The Courier end users will be able to use this SRS document as a
test, to see if the software engineers and system analysts will be able to construct the system
according their expectations. If it is not to their expectations, then the end users can specify how it is
not to their liking, and the software engineers will change the SRS document and ultimately the
software, to fit the end users needs.
(1.2) Glossary
CSM
SRS
Software
Software Engineering
SRS document
Systems Analysis
Systems Design
Deliverables
Stakeholder
Flowchart
System Flowchart
Project Management
Information System
Heuristic
Data Modeling
Chapter [2]
Introduction of CSM
(2.1) Introduction
In modern age, as time increase, needs & requirements of the person are also increased. They want
more facility & try to do their task quickly & within time.
Within the country, the things can be imported through post service. However, it consumes the time
& sometimes problem of damage or missing occur. The courier service is one of the solutions of
these problems. It is used to send some things to any person within time.
The courier company has number of branches, which are spread over the country. So that when
person wants to send things then he has to contact at nearest courier service branch. The courier
company creates the schedule & gives internal/external services. The courier service work as
destination office or source office. The source office branch receives the order means consignments
& sends it to the destination courier branch. The company has certain rules according to the weight.
Using the courier service person can easily send his/her parcel to other person in the particular
destination within the time. Now days, 50% of companies of the world uses the services of various
courier company.
(2.3) Scope
This project provides the facility to all users to send and receive the courier. They can get the
information of the status of the courier. System development is also considered as a process backed
by engineering approach. Courier agency is considered as an expansion of business relations. It
contributes a lot by providing quick & fast services of sending documents letters (formal & informal
both) to business as it enables any business to flourish.
This project is for only Domestic Courier Management. In this project we only focus on Client
Management and partially Employee Management .
(2.6) Objective
When we have already entered the 21st century, we may not afford to listen words like Sorry,
Misrouting, Confusion, Late deliveries, loss of Packets, No-response, No feedback etc. We have
tried to make all these miss happening & feel pleasure to couriers. The main object of this project is
given below:
1. The main object of this project is that it facilitate user to communicate in a faster manner in
comparison of manual system. Through this system, the status of the courier can be known easily
whereas in manual system it is difficult.
2. To propose all in one system that include both tracking & Courier System.
3. To develop a software solution for courier service system that provide best service, error free and
last longer.
4. To study their current information system and identify how business processes handle by an
information technology solution.
Chapter [3]
Project Planning
(3.1) The software process
A process is a collection of activities, actions, and tasks that are performed when some work product
is to be created. In addition, a software process is a set of activities that leads to the production of a
software product. These activities may involve the development of software from scratch in a
standard programming language like Java or C/C++. Although there are many software processes,
some fundamental activities are common to all software processes:
Task
May - 13
June - 13
1 2 3 4 5 6 7 8 9
Proposal
Requireme
nts
Specificati
on
Modelling:
Analysis
Modelling:
Design
Presentatio
n
1
0
1
1
July - 13
1
2
1
3
1
4
August - 13
1
5
1
6
1
7
1
8
1
9
September - 13
2
0
2
1
2
2
2
3
2
4
Chapter [4]
Software Requirements
Specification
(4.1) How existing system work
Description of the event-flow of present system is pointed out below:
1. Client go to the nearest courier branch office and collect information about the destination
branch office.
2. Then client calculate the cost for sending courier.
3. Now client fill the form. The Details included in the form are
Sender mobile no
4. Now Customer will hand over his or her good to the branch.
5. If everything is okay way bill is printed out. It contains all the information to identify the
delivery .
6. Then the data for a particular courier maintained in a proper file. A person summarizes all
the data of the courier in a register, this work require a high-level of attention since it has to
be taken care that no wring entry goes into the register.
Online chat room: User can chat with company through online chat room.
Be update: Client get all update via Email or SMS about courier e.g., whether packet is
delivered, pending or returned to the client etc.
Easy Redirect: Client can easily redirect the courier.
Easy in maintaining information: Staff can be easily update information about a specific
courier using bar code reader or QR code reader.
Routing Information: A Sender can see the all routing information and estimated date of
delivery.
User satisfaction: The system is such that is stands up to the user expectations like easy and
faster retrieval of information.
Safety: The system will be accessible by only the authorized users. As information, being the
most crucial for the organization, then the safety of information is importation.
Highly accurate: resources being used by the system will be compatible with the latest
technologies available in the market, as proposed system uses highly technically compatible
resources, there will be very less wear and tear.
Less time consuming: work carried out by the staff at various stages will be less time
consuming
Security Requirements:
Security of the system shall be definitely be maintained through the password system. Each
employee of every branch office will need to be authenticated with a login id and password. Any
employee cannot change the system date to make proxy presentation of yourself.
Every software project begins with a judgment as to whether the project is valuable or not. This is
called a feasibility study. Sometimes this assessment is carried out in a detailed and systematic
fashion.
Software feasibility has three solid dimensions:
Technical Feasibility
Operational feasibility
Cost-benefit analysis(Economic Feasibility)
Before beginning a project, there is a crucial decision that must be made: Is the proposal technically
feasible? That is, will the technology actually work?
The answer of the above question is: This project is technically feasible. It successfully satisfies the
users basic requirements. The tools and application softwares used in this project are very popular
and easily available across the world.
ASP.NET provides a complete environment for building, deploying and running .NET Web
Applications.
Some of the most general advantages of ASP.NET are listed below is short:
Ease of Development
o Simplified page development model
o Modular, well-factored, extensible architecture
o Superior debugging and tracing support
Performance, Scalability, Reliability
o Compiled, not interpreted
o Rich Caching Support
o Web form scalable session state
o Automatically detects and recovers from errors
Ease of Deployment and Configuration
o No need to bring down web server
o XML Configuration files
The .NET Framework provides a feature-rich application environment, simplified
development and easy integration between a numbers of different development languages.
Bar code reader now a day is it not a very expensive technology.
Operational feasibility:
The system will have easy to understand interface for different modules. It does not require any
programming skill to use the system. After a little training, the users will be able to work with it at
ease.
(4.7) Stakeholder
Stakeholder refers to any person, who is not a developer, but has a proper role with interest, in the
project.
Stakeholders for the proposed system are as follows:
Manager of the Branch:
o He can provide details about the overview of company under a single roof. Since the
workability of staff will be increase and the owner will get benefits from it.
Administrator:
o He will access the Whole software.
User:
Chapter [5]
System Analysis
(5.1) Fact-Finding Techniques
Fact-finding techniques are extremely important because these are the facts based on which analysts
can or should build the system that comprises of a friendly environment for the end user to work
with. This is the reason why fact-finding is an important activity.
Some of the most simple and useful fact finding techniques that can or should be followed are
pointed out below:
Interview & Questionnaire.
Document Sampling (Detailed examination of checking-in & out, billing forms and other
related documents).
Work Site Observation.
1)
2)
3)
4)
5)
How sender contact branch office and get info about destination?
How track the courier and get update.
How much is the cost to send a courier according to weight?
What is the route of courier & estimated time needed to deliver the courier?
How handle such acts like those that pending or return backed to the client etc.
Courier Services:
1) Process of handling a customer (How & by whom), when he/she comes/arrives the 1st
time.
2) Booking process of a customer.
3) The delivery process of a courier to a customer.
Billing Process:
1) How (& by whom) the bill payment process of a customer is done?
2) What happen if the courier is redirect?
3) Is there any advanced processes related with the billing process?
E-Mail ID:
Position/Post:
Experience:
Interview
Time/Date:
Approval:
_______________________
Signature With Date
1)
2)
5)
7)
Yes/No Question
1) Have any online tracking system:
Yes / No
2) Have any online branch info: Yes /
No
3) Billing Form: Yes / No
4) If any other types of forms
available:
Manual/Mixed
1) How does this system work?
3)
Answer:
2) What is the Educational Qualification about Employee?
Answer:
3) Approximately how much time is consumed by the current
working process?
Answer:
4) How calculate the cost of courier?
Answer:
5) Are you satisfied with the current working system?
Answer:
6) What happen if courier lost or damage?
Answer:
7) Do you think Your employee cope with new system?
Answer:
Computerized
1) How & by whom the
computerized system is user?
Answer:
Tasks:
T1=Data collection
T2=Administration
T3=Branch management
T4=document handling
T5=Customer management
Activity Dependencies:
Task
T1
T2
T3
T4
T5
Activity network
Duration(Days)
7
5
6
7
4
Dependency
T1(M1)
T2(M2)
T2(M3)
T1(M4)
Activity Timeline
Admin
Manag
es
Company details
Consignme
nt
n Employee
details
Manag
es
Delivery Boy
n
Delive
r
Customers
Information
n
Manag
es
Manag
es
1
1
Staf
n
Manag
es
Chapter [6]
Implementation
6.1 Introduction
In this phase, the coded programs were tested using different testing methodology in order to
drag out the errors of at the time of execution in practical or in simulation environment. The
full code has been successfully compiled and interpreted where the syntax errors have been
identified and carefully solved. The program design checking methods was used while
coding to define the logical errors. Desk checking method had been used to check the
program design and then running method was used for the corresponding code.
6.2 Considerations
We have thus far completed up to modeling phase. The next phases are construction and
deployment. Construction phase includes Coding and Testing; and deployment involves
Implementation and Maintenance. Short descriptions of the phases after coding are described
in the following sections.
6.3 Implementation
When the new system is completed, replacing/modifying the existing manual system in an
appropriate manner is a major task to the success of the project. Improper installation can
prevent the improvement of the organization, even if the designed software is a quality
product.
In the implementation phase, following tasks occur:
Training personnel
Conversion procedures
Post-implementation review
Conversion is the process of changing from the old system to the new one. It must be properly
planned and executed.
Chapter [7]
Construction & Deployment
Considerations
(7.1) Considerations
We have thus far completed up to modeling phase. The next phases are construction and
deployment. Construction phase includes Coding and Testing; and deployment involves
Implementation and Maintenance. Short descriptions of the phases after coding are described
in the following sections.
(7.2) Testing
Testing is a process of executing a program with the intent of finding an error. A good test
case is one that has a good probability of finding yet undiscovered error. All tests should be
traceable to customers requirement. Test should be planned long before testing begins.
Testing Principles
A good test case is one that has a high probability of finding a yet undiscovered error.
A good test is not redundant.
A good test should be neither too simple nor too complicated.
Types of testing
There are two basic approaches to testing functional and structural. Functional testing is also
called Black Box Testing Structural testing is called white Box testing.
The black box approach to testing is to devise sample data that is representative of all possible
data. We then run the program, input the data and see what happens. This type of testing is
termed black box testing because no knowledge of the workings of the program is used as part
of the testing; we only consider inputs and outputs.
Black box testing enables the software engineer to find error in the following categories:
Incorrect or missing functions.
Interface Errors.
Errors in data structure or external database access.
Performance errors
Initialization errors.
White box testing makes use of knowledge of how the program works the structure of the program
as the basis for devising test data. In white box testing every statement in the program is executed at
some time during the testing. This is equivalent to ensuring that every path (every sequence of
instructions) through the program is executed at some time during testing. This testing help the
software engineer in the following directions:
Guarantee that all the independent paths within the module have been exercised at least once.
Exercise all logical decisions on their true and false sides.
Execute all loops at their boundaries and within their validity.
Exercise internal data structure to ensure their validity.
Levels of Testing
The basic levels of testing are:
o Unit testing
o Integration testing
o System testing
o Acceptance testing
Unit Testing
Unit testing focuses verification effort on the smallest unit of software design the software
component or module. Using the component-level design description as a guide, important control
paths are tested to uncover errors within the boundary of the module. Therefore, Unit testing tests
each component in isolation.
The goal of this testing level is to see if the modules have been be integrated properly. In other
words, the emphasis is on testing the interactions among the modules. This testing activity can be
considered as testing the design.
Integration Testing
The goal of this testing level is to see if the modules have been be integrated properly. In other
words, the emphasis is on testing the interactions among the modules. This testing activity can be
considered as testing the design. There have two type of different incremental integration strategies
are given below:
o
o
Top-down integration.
Bottom-up integration.
System Testing
In this testing entire software is tested. The goal is to see if the software meets its requirements.
System testing is actually a series of different tests whose primary purpose is to fully exercise the
computer-based system. Although each test has a different purpose, all work to verify that system
elements have been properly integrated and perform allocated functions.
The types of system tests that are worthwhile for software-based systems.
Recovery Testing
Security Testing
Stress Testing
Performance Testing
Acceptance Testing
Acceptance testing is preformatted using real data of the client to demonstrate that software is
working satisfactorily.
Validation Checks
Validation refers to different set of activities that ensure that the software that has been built is
traceable to the customer requirement. Validation is the check that the product made is what was
required.
(7.3) Implementation
When the new system is completed, replacing/modifying the existing manual system in an
appropriate manner is a major task to the success of the project. Improper installation can prevent the
improvement of the organization, even if the designed software is a quality product.
In the implementation phase, following tasks occur:
Training personnel
Conversion procedures
Post-implementation review
Conversion is the process of changing from the old system to the new one. It must be properly
planned and executed. Three methods are common in use, these are:
Parallel System.
Direct Conversion.
Pilot System.
The keys to reduce the need for maintenance while making it possible to carry on with essential
tasks more efficiently are as follows:
More accurately defining the users requirement during systems development.
Preparation of system documentation in a better way.
Using more effective ways for designing processing logic and communicating it to project
team members.
Making better use of existing tools and techniques.
Chapter [8]
Discussion and Conclusion
8.1 Discussion
The software is verified and validated for different critical inputs and it produces accurate result. The
software can be modified according to user requirements. The database files used in this software are
designed carefully to overcome the problems of storing and retrieval of information generally related
to traditional file processing system. A well-designed Graphical User Interface (GUI) was designed
carefully to make it user friendly.
8.2 Conclusion
There is always a scope of betterment and this system is not against this perception. At present the
software system satisfies most of the functions of a very general Courier system management
system.
1. The courier services are automated as hand written documentation is minimized to a bare
minimum the software is fully implemented.
2. The data can be easily backed up onto a reliable media so that no or minimal data loss is there in
References
Software Engineering
By Sommerville
Software Engineering: Theory and Practice
By Forrest Shull and Roseanne Tesoriero
Software Engineering for Students, 4th edition
By DOUGLAS BELL
www.wikipedia.org
www.google.com