10 METHODOLOGY
10.1 Introduction
The figure below shows the incremental models that are chosen in developing this project. This
model has been selected because project can be developed through cycle of phase. The
development of the project is that it must follow the phase that is a phase at a time. If there is any
correction, it can be done in the middle of the process.
These models specify the way the software is developed with each stage of iteration and process
to be carried to out to implement those stages.
In incremental models, each iteration stage is developed and hence each stage will be going
through requirements, design, coding and finally the testing modules of the software
development life cycle
Incremental development is done in steps from analysis design, implementation,
testing/verification, maintenance.
Characteristics of Incremental Model
1. System is broken down into many mini development projects.
2. Partial systems are built to produce the final system.
3. First tackled highest priority requirements.
4. The requirement of a portion is frozen once the incremented portion is developed.
Incremental model included five phases which are:
I. requirement
II. analysis,
III. design,
IV. implementation
V. unit testing, integration and system testing and operation.
10.2 Methodology Justification
The incremental model is chosen to develop this project because of these some factor
I. Security
The model is more organized and easy to understand the flow
II. Flexibility
Allow to have changes happen in the middle of the process, the system still can be
implemented and proceed so that all the modules that want to be achieved is success
III. Saves time
As the system that is developed using the cyclic model, the developing of the project
can be continuously done although there is some error in the middle of the process.
IV . It is easier to test and debug during a smaller iteration.
V. Lowers initial delivery cost.
VI. Easier to manage risk
Because risky pieces are identified and handled during it’d iteration.
VII. Generates working software quickly and early during the software life cycle.
10.3 Project Life Cycle
10.3.1 Requirement Gathering
Requirement gathering is the first step for this methodology for the project.
The product analysis expertise identifies the requirements. And the system functional
requirements are understood by the requirement analysis team. To develop the
software under the incremental model, this phase performs a crucial role.
On this phase, all requirements are gathered together so that all of the needed
requirement can be stated, analyse and process.
All the requirements will be analyse if it is suitable to develop the system. Also on
this phase, all the materials that are required have been prepared.
I. Hardware
a) Personal Computer (PC)
b) processer : 64-bit, four-core, 2.5 GHz minimum per core
c)Ram 4GB and Above
d) Hard Disk 20GB and Above
II. Software
a) Google Chrome / Microsoft edge
b) visual studio /python/ pycharm
c) SQLite DB Browser
The purposes of this phase are to:
Complete process reengineering of the functions to be supported, e.g., verify what
information drives the business process, what information is generated, who generates it,
where does the information go, and who processes it.
Develop detailed data and process models including system inputs and outputs.
Develop the test and evaluation requirements that will be used to determine acceptable
system performance.
10.3.2 Design
This is the Second stage that used so that the flow of the project will be successful. After gather
all the important information related to the project, a framework is develop to show the flow of
the system so that this system flow will be easily understand.
During this phase, the system is designed to satisfy the functional requirements identified in the
previous phase. Since problems in the design phase can be very expensive to solve in later stages
of the software development, a variety of elements are considered in the design to mitigate risk.
These include:
Identifying potential risks and defining mitigating design features
Performing a security risk assessment
Developing a conversion plan to migrate current data to the new system • Determining
the operating environment
Defining major subsystems and their inputs and outputs
Allocating processes to resources
In this phase, a design of context diagram, data flow diagram (DFD) and entityrelationship
diagram (ERD) is used to show the flow of the system specifically.
10.3.3 Implementation
This phase is initiated after the system has been tested and accepted by the user.
After all information has been gathered and the design has been created, we will start
to develop the system to make sure that it is able to use by different user.
10.4.4 Testing
Once the developers build the software, then it is deployed in the testing environment.
Then the testing team tests the functionality of the entire system.
In this fifth phase of SDLC, the testing is done to ensure that the entire application
works according to the customer requirements.
At this phase, the system will be tested. If there is any error occur or detected, it must
be solved at this phase and if there any changes made, it need to be re-implement
back to design phase to make sure that the flow of the system is not affected.
10.3.5 Deployment
After the system is free from error and bugs, the system will then be deployed for market. The
testing that takes place will approve the validity of the system for marketing.
By then, it is mandatory to monitor the system time to time to make sure that if any changes had
to be done, it is noticed.
When to use the Incremental model:
This model can be used when the requirements of the complete system are clearly defined
and understood.
Major requirements must be defined; however, some details can evolve with time.
There is a need to get a product to the market early.
A new technology is being used
Resources with needed skill set are not available
There are some high risk features and goals.
Disadvantages of Incremental model:
Needs good planning and design.
Needs a clear and complete definition of the whole system before it can be broken down
and built incrementally
Total cost is higher.