0% found this document useful (1 vote)
38 views207 pages

E119190-1692107358374-330248-SAD Assignment

Uploaded by

airjaffna.lk
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (1 vote)
38 views207 pages

E119190-1692107358374-330248-SAD Assignment

Uploaded by

airjaffna.lk
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 207

Higher Nationals

Internal verification of assessment decisions – BTEC (RQF)


INTERNAL VERIFICATION – ASSESSMENT DECISIONS

Programme title HND in Computing

Mr.V.Sulojan Mr.S.Hariarthan
Assessor Internal Verifier
Unit 34: System Analysis & Design
Unit(s)
Automated system for E-Solutions Private Limited
Assignment title
Dharmika Rathakrishnan
Student’s name
List which assessment criteria Pass Merit Distinction
the Assessor has awarded.

INTERNAL VERIFIER CHECKLIST

Do the assessment criteria awarded match


those shown in the assignment brief? Y/N

Is the Pass/Merit/Distinction grade awarded


justified by the assessor’s comments on the Y/N
student work?

Has the work been assessed


Y/N
accurately?
Is the feedback to the student:
Give details:
• Constructive? Y/N
• Linked to relevant assessment Y/N
criteria? Y/N
• Identifying opportunities for
improved performance? Y/N
• Agreeing actions?
Does the assessment decision need
Y/N
amending?

Assessor signature Date

Internal Verifier signature Date


Programme Leader signature (if required)
Date

Confirm action completed


Remedial action taken
Give details:

Assessor signature Date

Internal Verifier
Date
signature
Programme Leader
Date
signature (if required)
Higher Nationals - Summative Assignment Feedback Form

Student Name/ID Dharmika Rathakrishnan

Unit Title Unit 34: System Analysis & Design

Assignment Number 1 Assessor Mr.V.Sulojan

15.08.2023 Date Received 15.08.2023


Submission Date
1st submission
Date Received 2nd
Re-submission Date
submission

Assessor Feedback:
LO1 Evaluate the strengths and weaknesses of the traditional and agile systems analysis methodologies

Pass, Merit & Distinction P1 M1 D1


Descripts

LO2 Produce a feasibility study for a system for a business-related problem

Pass, Merit & Distinction P2 M2


Descripts

LO3 Analyse their system using a suitable methodology.


Pass, Merit & Distinction P3 M3 D2
Descripts

LO4 Design the system to meet user and system requirements.


Pass, Merit & Distinction P4 M4
Descripts

Grade: Assessor Signature: Date:

Resubmission Feedback:

Grade: Assessor Signature: Date:

Internal Verifier’s Comments:

Signature & Date:

* Please note that grade decisions are provisional. They are only confirmed once internal and external moderation has taken place and
grades decisions have been agreed at the assessment board.
Pearson Higher Nationals in
Computing
Unit 34: Systems Analysis & Design
Assignment 01
General Guidelines

1. A Cover page or title page – You should always attach a title page to your assignment. Use
previous page as your cover sheet and make sure all the details are accurately filled.
2. Attach this brief as the first section of your assignment.
3. All the assignments should be prepared using a word processing software.
4. All the assignments should be printed on A4 sized papers. Use single side printing.
5. Allow 1” for top, bottom , right margins and 1.25” for the left margin of each page.

Word Processing Rules

1. The font size should be 12 point, and should be in the style of Time New Roman.
2. Use 1.5 line spacing. Left justify all paragraphs.
3. Ensure that all the headings are consistent in terms of the font size and font style.
4. Use footer function in the word processor to insert Your Name, Subject, Assignment No, and
Page Number on each page. This is useful if individual sheets become detached for any
reason.
5. Use word processing application spell check and grammar check function to help editing your
assignment.

Important Points:

1. It is strictly prohibited to use textboxes to add texts in the assignments, except for the
compulsory information. eg: Figures, tables of comparison etc. Adding text boxes in the body
except for the before mentioned compulsory information will result in rejection of your work.
2. Avoid using page borders in your assignment body.
3. Carefully check the hand in date and the instructions given in the assignment. Late
submissions will not be accepted.
4. Ensure that you give yourself enough time to complete the assignment by the due date.
5. Excuses of any nature will not be accepted for failure to hand in the work on time.
6. You must take responsibility for managing your own time effectively.
7. If you are unable to hand in your assignment on time and have valid reasons such as illness,
you may apply (in writing) for an extension.
8. Failure to achieve at least PASS criteria will result in a REFERRAL grade .
9. Non-submission of work without valid reasons will lead to an automatic RE FERRAL. You will
then be asked to complete an alternative assignment.
10. If you use other people’s work or ideas in your assignment, reference them properly using
HARVARD referencing system to avoid plagiarism. You have to provide both in-text citation
and a reference list.
11. If you are proven to be guilty of plagiarism or any academic misconduct, your grade could be
reduced to A REFERRAL or at worst you could be expelled from the course
Student Declaration

I hereby, declare that I know what plagiarism entails, namely to use another’s work and to present it
as my own without attributing the sources in the correct form. I further understand what it means to
copy another’s work.

1. I know that plagiarism is a punishable offence because it constitutes theft.


2. I understand the plagiarism and copying policy of Edexcel UK.
3. I know what the consequences will be if I plagiarise or copy another’s work in any of the
assignments for this program.
4. I declare therefore that all work presented by me for every aspect of my program, will be my
own, and where I have made use of another’s work, I will attribute the source in the correct
way.
5. I acknowledge that the attachment of this document signed or not, constitutes a binding
agreement between myself and Pearson , UK.
6. I understand that my assignment will not be considered as submitted if this document is not
attached to the assignment.

[email protected] 15.08.2023
Student’s Signature: Date:
(Provide E-mail ID) (Provide Submission Date)
Higher National Diploma in Computing

Assignment Brief

Student Name /ID Number Dharmika Rathakrishnan

Unit Number and Title Unit 4: Systems Analysis & Design

Academic Year 2021/22

Unit Tutor Mr.V.Sulojan

Assignment Title Automated system for E-Solutions Private Limited

Issue Date 15.04.2023

Submission Date 15.08.2023

IV Name & Date

Submission format

The submission should be in the form of an individual written report written in a


concise, formal business style using single spacing and font size 12. You are required to
make use of headings, paragraphs, and subsections as appropriate, and all work must
be supported with research and referenced Please provide in-test citations, reference
list and bibliography using Harvard referencing system. Please also provide a
bibliography using the Harvard referencing system.
The recommended word limit is not less than 5000 words, although you will not be
penalised for exceeding the total word limit.

Unit Learning Outcomes:

LO1 Evaluate the strengths and weaknesses of the traditional and agile systems analysis
methodologies.
LO2 Produce a feasibility study for a system for a business-related problem.
LO3 Analyse their system using a suitable methodology.
LO4 Design the system to meet user and system requirements.
Assignment Brief and Guidance:

*Please note that assignment guidance is for reference only and should be more specific
in detail to meet customized needs.
Assignment brief
Case study
The new automated system is designed to replace the current, manual, error-prone
process of E-Solutions private Limited. The automation of existing process is to reduce
the company’s expenses and enhance the productivity significantly. This transformation
also would support for:
1) Successful teams working
2) Completing projects on time and within budget due to a better understanding of
system requirements and tasks to be completed
3) Starting projects on time through automated project scheduling system.

In the proposed system, the Project director creates a project and a “project profile” for
each project. The creation of the project profile includes identification of project
employee costs, the assignment of tasks to the project, and the assignment of a project
manager. The project profile is consisted of project id, project personnel cost, a list of
tasks assigned, and the project manager. The Project director also creates the teams for
a given project, assigns employees to the teams, and assigns a team leader. The Project
manager is responsible for assigning tasks to various teams working on the projects(s).
The Team Leader assigns tasks to the team members.

Additional functionality includes:


• Produce and update information about different software projects, project teams,
specific team member assignments and team skills.
• Perform function point analysis to identify the personnel cost of the project and
provide information to generate invoices upon completion of project phases.
• Monitor projects and identify completed tasks and ongoing tasks of each project.

Activity 01
Discuss traditional and agile system analysis methodologies used in the industry by
comparing the strengths and weaknesses of them. Critically evaluate two
methodologies by referring to the examples to support your answer.

Activity 2
Produce a feasibility report for the scenario given above and assess the importance of
feasibility criteria used for the system investigation. Critically evaluate the strengths
and weaknesses of feasibility study with relevant to the proposed solution.

Activity 3
Analyse and review the system requirements of the proposed solution given in the
scenario using a suitable methodology. Functional and non-functional requirements of
the system should be clearly mentioned. Assessment of the effectiveness and suitability
of the chosen methodology should be provided with proper justifications.

Activity 4
Produce a system design specification for the above scenario and assess the
effectiveness of your design and the methodology used with reference to how it meets
the user requirements.
Your system design specification should include architectural design, interface design,
database design, and program design.
Grading Criteria Achieved Feedback

LO1 Evaluate the strengths and weaknesses of the


traditional and agile systems analysis
methodologies.

P1 Discuss the strengths and weaknesses of the traditional


and agile systems analysis methodologies.

M1 Compare and contrast the strengths and weaknesses of


the traditional and agile systems analysis methodologies.

LO2 Produce a feasibility study for a system for a


business-related problem.

Page | 11
P2 Produce a feasibility study for a system for a
business related problem.

M2 Evaluate the relevance of the feasibility criteria


on the systems investigation for the business
related
problem.

LO1 & LO2


D1 Critically evaluate the strengths and weaknesses of the
traditional and agile methodologies and feasibility study.

LO3 Analyse their system using a suitable


Methodology

P3 Review a system using a suitable methodology for a


business-related problem.

Page | 12
M3 Analyse the effectiveness of the methodology used in
providing a solution for a given business context.

LO4 Design the system to meet user and system


Requirements

P4 Design a fully functional system to meet user and


system requirements for the business related
problem.

M4 Assess the effectiveness of the system design


with reference to the methodology used and how the
design meets user and system requirements.

LO3 & LO4


D2 Justify the choice of the analysis methodology
used in
the context of the business problem.

Page | 13
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Acknowledgement.
I would like to express my special recognition of thankfulness to my lecturer Mr.Sulojan,
his support and continuous guidance enabled me to complete my assignment successfully.
It would not have been possible without his support and assistance. Our Center Manager
Mr. B. Gajanan who gave me the golden prospect to do this assignment on SAD. This
opportunity also provides me with so many new learnings about so many things which are
related to our topic and social too. And I’m also grateful to my all-other lecturers who were
hand in hand with me during the time of developing the assignment and at last, I would like
to thank my friends and my parents and the almighty who was supporting on all my ups
and downs.

Thank You.
Dharmika Rathakrishnan.
HND in Software Engineering 36.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 14


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Table of Contents
Table of Figures................................................................................................................ 17

Table of Tables. ................................................................................................................ 17

Introduction to System Development Life Cycle (SDLC). ........................................... 18

Activity 01 ......................................................................................................................... 21

Methodology of Software Development Life Cycle (SDLC). ....................................... 21

Traditional Methodology. .............................................................................................. 21

Agile Model. .................................................................................................................. 32

Principals of agile and traditional methodologies. ......................................................... 50

Strengths and weaknesses of traditional and agile methodology................................... 52

Conclusion of strengths and weaknesses of traditional and agile methodology. ........... 54

Comparison between agile and traditional methodologies. ........................................... 55

Critical Evaluation of strengths and weakness of agile and traditional methodology. .. 57

Conclusion. .................................................................................................................... 59

Activity 02 ......................................................................................................................... 61

Feasibility Report ........................................................................................................... 61

Feasibility Report for E-Solution Private Limited. ........................................................ 68

Important of the feasibility report for E-Solution Private Ltd. ...................................... 94

Strengths and weakness of feasibility report. ................................................................ 95

Activity 03. ...................................................................................................................... 100

Software Requirements Specification (SRS). .............................................................. 100

Requirements gathering. .............................................................................................. 102

Functional requirements............................................................................................... 107

Non-Functional requirements. ..................................................................................... 107

Comparison table between the functional and non-functional requirements............... 108

SRS Report for E-Solution Private Limited................................................................. 110

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 15


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Activity 04. ...................................................................................................................... 129

SDS Report for E-Solution Private Limited. ............................................................... 129

Justification on effectiveness of system design to meet the user and system requirements.
...................................................................................................................................... 199

Conclusion of choice of analysis methodology used in the contrast of the business


problems. ...................................................................................................................... 201

References. ...................................................................................................................... 203

References for Figures. .................................................................................................. 206

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 16


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Table of Figures.
Figure 1: Software Development Life Cycle. .................................................................... 18
Figure 2: Waterfall Model. ................................................................................................ 23
Figure 3: Spiral Model. ...................................................................................................... 24
Figure 4: V Model. ............................................................................................................. 26
Figure 5:RAD Model ......................................................................................................... 29
Figure 6: Agile Method. ..................................................................................................... 32
Figure 7: Kanban Methodology. ........................................................................................ 36
Figure 8: Scrum Method. ................................................................................................... 39
Figure 9: Extreme Programming. ...................................................................................... 41
Figure 10: FDD .................................................................................................................. 43
Figure 11: Crystal Method ................................................................................................. 45
Figure 12: Lean Method..................................................................................................... 47
Figure 13: SRS Document. .............................................................................................. 100
Figure 14: Method of requirements gathering. ................................................................ 102
Figure 15: Types of requirements analysis. ..................................................................... 107

Table of Tables.
Table 1: Comparison between agile and traditional methodologies. ................................. 56
Table 2: Comparison table between the functional and non-functional requirements. ... 109

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 17


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Introduction to System Development Life Cycle (SDLC).


SDLC, or Software Development Life Cycle, is a process for producing software with the
highest quality and lowest cost in the shortest amount of time (Alexandra, March 10, 2023).

SDLC provides a well-structured sequence of stages that enables an organization to swiftly


deliver high-quality software that has been thoroughly tested and is ready for production
use. The SDLC process ensures that software is produced in a structured and organized
manner, with an emphasis on quality, functionality, and customer satisfaction.

Figure 1: Software Development Life Cycle.


Advantages of Software Development Lifecycle (SDLC).

1. Better Project Management: SDLC provides a project management framework,


allowing software development teams to plan, track, and control project progress.
2. Improved Communication: SDLC highlights the necessity of communication
amongst many stakeholders in the software development process.
3. Reduced Costs: By discovering defects and difficulties early in the development
process, SDLC can assist in minimizing software development costs.
4. Improved Software Quality: SDLC ensures that all components of the software
development process are thoroughly explored and tested by taking a systematic
approach to software development. This is especially true in mission-critical
systems, where software errors can have serious implications.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 18


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Steps of Software Development Life Cycle.

SDLC (Software Development Life Cycle) is a framework that describes the steps involved
in software development at each phase. It describes the detailed approach for developing,
deploying, and maintaining software. SDLC defines the entire development cycle, which
includes all tasks involved in designing, generating, testing, and deploying a Software
Product.

Stage1: Planning and requirement analysis

The most critical and necessary stage in SDLC is requirement analysis. It is carried out by
senior members of the team with input from all stakeholders and domain experts or SMEs
in the industry. At this point, the quality assurance requirements are planned for, and the
risks connected with the projects are identified. A meeting is set up with the client by the
business analyst and project organizer to acquire all the facts, such as what the customer
wants to construct, who will be the end user, and what the product's purpose is. A
fundamental grasp or knowledge of the product is required before developing it.

Stage 2: Design the plan.

Once the project direction has been agreed, the team begins developing a design plan that
covers all main components of the new product, including its:

• Architecture (programming language, databases, interfaces, operating system,


templates, APIs, and so on).
• List of features.
• Infrastructure is required.
• User interface design.
• Security precautions that are required (for example, SSL encryption, password
protection, recommended database migrations, and so on).

Stage 3: Develop the project.

The development team becomes acquainted with the DDS and begins working on the code.
This is typically the most time-consuming part of SDLC; hence developer propose
employing agile approaches to accelerate development. This phase yields operational
software that meets all the SRS and DDS standards. While the code is still undergoing

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 19


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

advanced testing, the team should run basic tests on the product (such as static code analysis
and code reviews for numerous device kinds).

Stage 4: Testing the project.

Following the generation of the code, it is tested against the requirements to ensure that the
products address the needs identified and obtained during the requirements stage. Unit
testing, integration testing, system testing, and acceptability testing are all performed
during this stage.

Stage 5: Deployment of the project.

The program is deployed once it has been certified and no defects or problems have been
identified. The software may then be released as is or with suggested enhancements in the
object portion depending on the assessment. After the software is launched, it must be
maintained.

Stage 6: Maintenance of the project.

When the client begins to use the designed systems, genuine challenges and requirements
arise that must be addressed on a regular basis. The procedure of caring for the developed
product is called maintenance.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 20


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Activity 01
Methodology of Software Development Life Cycle (SDLC).

The SDLC approach provides a methodical management structure with specific


deliverables at each stage of the software development process. As a result, all stakeholders
agree on software development goals and needs in advance and have a plan in place to
achieve those goals (Velimirovic, 2023 Nov 17).

There are two types of this methodology.

1. Traditional Methodology.
2. Agile Methodology.

Traditional Methodology.

Traditional software development approaches are based on the software development


lifecycle's pre-defined phases/stages. The development flow is unidirectional here, from
requirements to design, then to development, testing, and maintenance (Narasimman, 14th
Jul, 2023).

In traditional methodologies, such as the Waterfall model, each step includes precise
deliverables and detailed documentation that has been thoroughly reviewed.

Advantages of Traditional Methodology.

1. Structured Approach: The traditional technique takes a structured and linear


approach to software development, which aids in the organization of the process.
Each phase has its own set of objectives and deliverables, which aids in the project's
focus and clarity.
2. Predictable Timeline: The traditional technique follows a well-defined timeline,
which aids in projecting the project's completion date. This results in better resource
planning and scheduling, which leads to better project management.
3. Specific deliverables: Deliverables are explicit and well-defined in each phase of
the traditional technique. This ensures that the project is progressing as expected
and provides a clear picture of the project's state.
4. Reduced Risks: Because the traditional technique is structured, it aids in lowering
the risks involved with software development. The traditional technique focuses on

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 21


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

requirements collection and design, which aids in the early identification and
resolution of potential issues.
5. Documentation: The traditional technique places a premium on documentation at
all stages of the SDLC. This aids in the preservation of a clear and complete record
of the project, which can be important in future development, maintenance, and
support operations.
6. Simple to grasp: The traditional technique is simple to grasp and communicate to
stakeholders, which can aid in achieving buy-in and support.

Disadvantages of Traditional Methodology.

1. Inflexibility: Traditional technique is a strict and sequential approach that can be


inflexible and make it difficult to make modifications or adjustments. It is difficult
to go back and make modifications after a phase has been finished without affecting
the overall project timeframe and budget.
2. Limited client input: Until the later stages of the project, traditional methodologies
do not provide many opportunities for client input and feedback, which can lead to
a misalignment between customer expectations and the result.
3. Longer Development Time: Because each phase must be finished before moving
on to the next, the traditional process takes longer to complete. This might cause
scheduling delays and be an issue while working on time-sensitive projects.
4. Higher Cost: Because of the emphasis on paperwork and the requirement for
specialized roles in each step of the project, conventional methodologies are more
expensive. This can make adopting this methodology challenging for small
businesses or startups with limited resources.
5. Higher Risk: Because it relies on forward preparation and assumptions about
project requirements, conventional methods might be riskier. If these assumptions
are inaccurate, it might result in costly rework and project delays.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 22


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Types of Traditional Methodology.


Waterfall Model

The Waterfall approach is used in the software development life cycle to build a system in
a linear and sequential manner. This paradigm is known as Waterfall because it progresses
from one phase to the next in a systematic downward manner (Serengeti, 07.09.2021).

The output of one stage serves as the input for the next. One of the model's important
aspects is that each phase must be completed before proceeding to the next, and the phases
cannot overlap.

Figure 2: Waterfall Model.


Principals of Waterfall Model.

1. Sequential structure: The waterfall model splits developer operations into phases
that are sequential. Developer can only progress to the next step of a project when
the current one has been completed.
2. Customer involvement is minimal: A waterfall project has little to no customer
interaction. This is primarily because operations begin only once the customer's
requirements and objectives have been clearly specified.
3. Robust documentation: This methodology also includes detailed documenting of
all requirements, the development process, and the result. This contains everything
from a timetable to the specific steps developer will take to solve the client's
difficulties.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 23


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Advantages of Waterfall Model.

1. It is simple to grasp and manage.


2. It performs admirably in large, sophisticated applications.
3. It works when team members are scattered across the country.
4. It is not necessary for team members to have extensive experience.

Disadvantages of Waterfall Model.

1. Change is extremely difficult to accept and implement.


2. Before beginning the project, all requirements must be known.
3. It prevents the team from adjusting to the previous phase.
4. Users, stakeholders, and the team communicate infrequently.

Spiral Model.
The spiral model is one of the most prominent Software Development Life Cycle models
for risk management. It appears to be a spiral with multiple loops in its diagrammatic form
(Sayan Kumar Pal, 11 May 2023).

This approach is named from the spiral shape it takes when producing a product, and each
revolution includes an improvement to the previous version of the software. The
engineering team defines the spiral model's operations so that after they complete a
revolution, they can develop or add to the prototype.

Figure 3: Spiral Model.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 24


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Principals of Spiral Model.

1. Iterative Process: The Spiral Model is built on an iterative strategy, which entails
repeating the same development and testing procedure until the software is
complete.
2. Risk Management: Throughout the software development lifecycle, the Spiral
Model stresses risk management.
3. Incremental Development: The program is created in incremental steps, with each
step building on the preceding one.
4. Feedback mechanism: The Spiral Model includes a feedback mechanism that
allows for ongoing feedback from customers and other stakeholders.
5. Flexibility: The Spiral Model is adaptable and may be tailored to the individual
requirements of a project.

Advantages of Spiral Model.

1. It enables stakeholders to evaluate the project and make go/no-go choices.


2. Unlike the waterfall model, it allows for change since, after one cycle, it can include
fresh developments in the news cycle.
3. Over multiple cycles, the time estimates get more accurate, and the remainder are
removed from the project.
4. It is useful for huge and complex problems since it can handle client feedback.
5. Early in the software life cycle.

Disadvantages of Spiral Model.


1. When executed, it may be more expensive than the waterfall.
2. The risk analysis step is critical to the project's success.
3. The analyst's competence is required for the risk analysis.
4. It is not suitable for minor jobs.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 25


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

V Model.
The V methodology is a highly rigorous SDLC methodology that includes a testing phase
alongside each development phase. The V model is an extension of the waterfall paradigm
that involves sequential software development and testing. It's referred to as the Validation
or Verification Model (Thomas Hamilton, May 6, 2023).

The V-Model is a software development life cycle (SDLC) model that depicts the software
development process in a systematic and visual manner. It is built on the concept of a "V,"
with the two legs of the "V" representing the progression of the software development
process from requirements gathering and analysis to design, implementation, testing, and
maintenance.

Figure 4: V Model.
Principals of V model.

1. Large to Small: In the V-Model, testing is done in a hierarchical manner. For


example, project team needs generate the High-Level Design and Detailed Design
phases of the project. The requirements they are specifying grow more specific and
detailed when each of these phases is completed.
2. Data/Process Integrity: According to this principle, the successful design of any
project necessitates the inclusion and cohesiveness of both data and processes. At
each need, process elements must be identified.
3. Scalability: This principle asserts that the V-Model concept is adaptable to any IT
project, regardless of size, complexity, or duration.
4. Cross-referencing: Cross-referencing is the direct correlation between
requirements and matching testing activity.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 26


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Phases of V model.

1. Analyze requirements: Regardless of approach or structure, the first step in any


software development project is to identify what the software should accomplish -
its usefulness. The utility's scope is determined by bringing together all
stakeholders, including users, the app's sponsors/owners, and any other relevant
party whose use may be impacted.
2. Design of system/functionalities: The requirements analysis then informs the
functional design of the proposed software system. At this stage, the required
functionalities, the user-interface components through which they will be accessed,
high level user stories, workflows, and data structures are all determined.
3. Design of architecture: The architectural design step comes after the
system/functionalities design phase. Typically, at this point, several viable technical
options are suggested, and decisions are made based on their technical and
economic advantages and disadvantages.
4. Design of components: The component design stage of the software development
process determines the low-level, granular specifics of specific components. Each
capability, as well as the components that comprise it, is discussed in full, including
how they all fit together.
5. Coding/Implementation: The real code that each detail of each component
consists of and is required to bring them all together into functionalities of a
complicated software system is written in this, the main, phase.
6. Phases of V-model testing: A summary of the four testing phases, which correlate
to the development phases:
a) Component tests: Component tests are intended to ensure that the tiniest
components of a working software system function as intended. Component testing
is typically carried out using Selenium automation test frameworks such as PyUnit,
JUnit, JEST, Jasmine, and others.
b) Integrity checks: After components have been tested and confirmed in isolation,
integration tests ensure that they are working properly and communicating with one
another. The functional definition, system architecture, use cases, or process
descriptions can all be used to create integration tests.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 27


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

c) System evaluations: System tests, which relate to the system/functionalities design


phase, validate the functionality of the complete software system and its
communication with external systems such as browsers, hardware, and so on.
d) Acceptance examinations: Acceptance tests, which correspond to the
requirements analysis phase, are the highest level of abstraction. Testing is
typically performed in the user environment and is aimed to ensure that the software
meets high-level business objectives as well as non-functional performance metrics
such as load speeds, UX quality, and so on (Adam, SEPTEMBER 24, 2021).

Advantages of V model.

1. It allows project managers to precisely track progress.


2. Process Clarity and Structure: The V-Model provides a process for software
development that is clear and structured, making it easy to understand and follow.
3. The V-Model places a high emphasis on testing, which helps to assure the software's
quality and reliability.
4. Improved Traceability: The V-Model establishes a clear link between the
requirements and the finished product, making it easier to track and manage
software changes.
5. Better Communication: The V-Model's obvious structure aids in communication
between the customer and the development team.
6. This model prioritizes verification and validation activities early in the life cycle,
increasing the likelihood of producing an error-free and high-quality output.

Disadvantages of V model.

1. Uncertainty and high risk.


2. It is unsuitable for complex or object-oriented programs.
3. It is not appropriate for projects with ambiguous requirements and a high chance of
change.
4. This model does not allow for phase iteration.
5. It does not handle concurrent events well.
6. Inflexibility: Because the V-Model is linear and sequential, it might be difficult to
adjust to changing needs or unforeseen events.
7. Time-Consuming: The V-Model can be time-consuming because it necessitates
extensive documentation and testing.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 28


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

RAD Model.
The RAD model is an agile technique that emphasizes continuous iterations and prototypes
based on user feedback. It enables developer to incorporate updates based on usage rather
than a strict development schedule (Emmanuel Egeonu, June 7, 2022).

Rapid Application Development focuses on capturing user needs through workshops or


focus groups, early prototype testing by customers using iterative concepts, reusing existing
prototypes (components), continuous integration, and rapid delivery.

Figure 5:RAD Model


Principals of RAD Model.

1. Rapid Prototyping (RAD) focuses on quickly generating software prototypes to


obtain user feedback and validate requirements early in the development process.
2. The RAD paradigm divides the project into smaller components or modules,
enabling for incremental development and delivery. Each iteration of the software
adds additional features.
3. For each iteration, RAD projects adhere to rigorous time limitations called
timeboxes. This guarantees that the development team stays focused and that the
project moves forward quickly.
4. In the RAD model, user interaction is critical. Users actively participate in the
prototyping phase, providing feedback and suggestions to mold the product to their
specific requirements.
5. To accommodate changes and incorporate feedback, RAD takes an iterative and
flexible approach. Throughout the development cycle, the development team
changes and adjusts the software based on user input.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 29


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Phases of RAD Model.

1. Requirements Planning: Requirements Planning entails the application of


numerous techniques used in requirements elicitation such as brainstorming, task
analysis, form analysis, user scenarios, FAST (Facilitated Application
Development Technique), and so on. It also includes the whole structured strategy
that describes the necessary data, how to get it, and how to process it to build a final
refined model.
2. User Description - In this phase, developer will collect user feedback and build the
prototype with developer tools. In other words, it entails re-examining and
validating the data gathered in the first phase. During this phase, the dataset
properties are also discovered and explained.
3. Construction - During this step, the prototype is refined and delivered. It entails
using strong automated technologies to convert processes and data models into the
final functional result. This phase includes all necessary modifications and
additions.
4. Cutover - All interfaces between the various modules built by distinct teams must
be thoroughly tested. The usage of powerfully automated tools and subparts
facilitates testing. This is followed by user acceptance testing.

Advantages of RAD Model.


1. It improves flexibility by allowing developers to respond to changes and include
new functionality and features during the construction process.
2. To make delivery process much more simplified, developer can design fast
iterations that reduce time frames.
3. It is reliant on customer collaboration to satisfy all stakeholders, including users,
developers, and clients.
4. Because code vulnerabilities are repaired before the final release, it provides
improved risk management solutions.
5. Integrations can be performed early on, and code reused at any point, resulting in
less testing time.
6. Fast evaluations can be performed, resulting in increased output with fewer
workers.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 30


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Disadvantages of RAD Model.


1. Many people and departments must work together to make this happen. This might
get perplexing if not properly structured and carried out.
2. If developer have a large team that is largely made up of new or inexperienced
developers, it might lead to challenges such as code documentation concerns.
3. It requires somewhat more talented engineers to carry out iterations and change
code during the development phase because they will understand each component
of the project quickly.
4. The RAD methodology is usually only appropriate for projects that need to be
developed and delivered fast.
5. Rapid Application Development necessitates user involvement at multiple stages,
making the process far more complicated than with other techniques.

Conclusion of traditional methodology.

Traditional approaches are plan-driven, with work starting with the elicitation and
documenting of a comprehensive set of requirements, then moving on to architectural and
high-level design development and assessment. The traditional approach to project
management stresses linear processes, documentation, upfront planning, and priority. The
traditional model is a model that is based on customs, time-honored beliefs, values, and
history and is used to guide economic decisions such as manufacturing and distribution.
This model is simple to grasp and apply. Small projects with well-defined needs are ideal.
A quick technique to finish the project. It is simple to monitor the project's progress.
Traditional approaches include six steps such as requirements gathering, planning, design,
development, testing, deployment, and maintenance.

Traditional techniques are divided into six types. Waterfall models, spiral models, rad
models, iterative models, incremental models, and v models are examples. However,
developer currently use some of the traditional models mentioned above such as waterfall,
v, spiral, and rad. The waterfall model allows project managers to easily see consecutive
phases by mapping dependencies and subtasks to each phase of the process. They outline
the timetables and deadlines for each step. The SDLC Waterfall Model is most effective
when the project's teams or individuals fully comprehend its idea. The V model directs
where testing should begin as early in the SDLC life cycle as feasible. It may be utilized
for any large software project, whether in business, the military, or the public sector. The

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 31


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

spiral approach allows for progressive product launches and refining at each step of the
spiral, as well as the option to produce prototypes at each level. The Spiral model is
employed by the world's premier software businesses because it is one of the most versatile
SDLC models available. Spiral allows project teams to create highly customized products.
The RAD approach provides fast delivery by reducing total development time owing to
component reusability and simultaneous development. When a system can be modularized
and deployed incrementally, RAD should be employed. Traditional model may, however,
be less adaptive and malleable to changes, potentially resulting in lengthier development
cycles and difficulties in addressing changing client demands. Agile techniques have grown
in favor in recent years due to their increased flexibility, cooperation, and iterative
development approaches.

Agile Model.

The Agile Model is a software development process that is incremental and iterative. It
predetermines the number, duration, and scope of each repetition. In the Agile process
model, each iteration is considered a brief "frame" that typically lasts two to four weeks
(Thomas Hamilton, April 15, 2023).

The project scope and requirements are established at the start of the development process.
The number of iterations, duration, and scope of each iteration are all precisely determined
in advance. In the Agile process model, each iteration is considered a brief time "frame"
that typically lasts one to four weeks. The segmentation of the entire project into smaller
pieces aids in reducing project risk and total project delivery time requirements.

Figure 6: Agile Method.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 32


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Features of Agile Model.

1. Sprints: A Sprint is a basic concept in Agile that enables for faster project delivery
with fewer difficulties. Essentially, here is when the team divides the project into
smaller, more manageable portions. The team then meets on a regular basis to polish
and maybe further break them down.
2. Scrum meetings: Scrum meetings are held every day and at the end of each Sprint.
Scrum is a cooperation methodology that enables highly collaborative teamwork.
These meetings are frequently held at the start of the workday to better prepare the
team for the day's tasks.
3. Open interaction: This is where the team and stakeholders have an open and honest
discussion regarding the project management process. The goal is for the process to
be transparent. The team can use Agile project management technologies like
Trello, Asana, Jira, and Kanbanzie to do this.
4. Product and service review: This is a continual process in which the project is
inspected, and any adaption requirements are determined. The review involves all
stakeholders (internal and external). This is done on a frequent basis during the
project's existence.

Phases of Agile Model.

1. Gathering requirements: During this step, developer must define the criteria.
developer should describe business prospects and estimate the time and effort
required to complete the project. People can assess the technical and economic
viability based on this information.
2. Design the needs: Once the project has been selected, collaborate with stakeholders
to create the requirements. People can use a user flow diagram or a high-level UML
diagram to demonstrate the functionality of new features and how they will interact
with existing system.
3. Construction/iteration: Work begins when the team determines the requirements.
Designers and developers begin work on their project, which seeks to deliver a
functional product. The product will go through several rounds of development;
thus, it will have simplistic, minimal functionality.
4. Testing: The Quality Assurance team checks the product's performance and looks
for bugs during this step.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 33


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

5. Deployment: During this phase, the team releases a product for the user's
workplace.
6. Feedback: The final stage after releasing the product is feedback. In this stage, the
team receives product feedback and works through it.

Technics used in Agile Model.

1. User stories are brief, basic explanations of a feature or function that describe the
needs or requirements of the user. They are used to gather and express user
requirements in an understandable and prioritized manner.
2. A backlog is often used by agile teams to manage the list of features or functions
that must be produced. The backlog is prioritized depending on the needs of the
customer, and the development team works through it in sequence.
3. Sprint planning is the process of planning the work that will be completed in the
upcoming sprint. The team goes over the backlog, chooses which items to work on,
and estimates the time it will take to accomplish each item.
4. Daily stand-up meetings are brief daily meetings during which the development
team assesses progress, addresses difficulties, and organizes the day's work. The
meetings are intended to foster team collaboration and communication.
5. Sprint reviews are meetings held at the end of each sprint to assess completed work
and gather input from stakeholders. The assessment focuses on the functionality
provided as well as the work quality.
6. At the end of each sprint, meetings are held to examine the development process
and identify areas for improvement. The retrospective focuses on the development
process rather than the completed work.
7. Pair programming is a process in which two developers collaborate on a single
assignment.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 34


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Advantages of Agile Model.


1. Improved Software Quality: Agile divides the project into smaller, more
manageable chunks. This allows the team to concentrate on high-quality
development, collaboration, and testing. Iterations include frequent builds, testing,
and reviews.
2. Possibility of Change: Working with an agile method requires the team to stay
focused on generating an agreed-upon subset of the software's features in each
iteration. This allows teams to continuously revise and reprioritize the whole
product backlog.
3. Transparency in Progress: With an agile methodology, clients have the unique
chance to participate actively throughout the project. They are given a say in the
process, from prioritizing functions to arranging iterations and review sessions, as
well as frequent software updates with new features.
4. Costs and schedule are predictable: In an agile approach, each sprint has a set
duration. This means that the cost is predictable and limited to the amount of work
that the team can complete within a set time frame. The client can easily grasp the
average cost of each feature when presented with the estimates supplied in each
sprint.
5. Sprints allow for early delivery: Sprints often last one to four weeks. Using this
strategy enables teams to deliver new features more regularly and with greater
certainty.
6. Prioritization of Business Value: Because the client is free to prioritize features,
the team can assess what is most critical to the client's business.

Disadvantages of Agile Model.

1. Inadequate documentation: This is one of the most difficult difficulties that teams
confront while transitioning from Waterfall project management to an Agile
approach. Agile teams reduce vast amounts of data into smaller user stories with
little to no information. This makes it difficult for a developer to understand the
precise customer needs.
2. Creep in scope: Scope creep is another key impediment. Customer requirements
are continually changing, resulting in an expansion of the project scope.
Deliverables grow rapidly, and new features are frequently added to the workload.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 35


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

3. Time is of the essence: Another item to add to the list of Agile problems is time.
Members of the team must arrange daily standup meetings, which can disturb their
workflow. Furthermore, the Agile mindset necessitates ongoing collaboration
between developers, testers, clients, and other project stakeholders.
4. Long-term initiatives are not recommended: one of the most prevalent Agile
issues arises when teams attempt to apply the methodology to unsuitable projects.
Agile iterations are designed to incrementally produce smaller deliverables, which
is great for software development.

Types of Agile Model.


Kanban Methodology.

Kanban is an Agile Software Development Methodology that is widely used. It is


essentially a signaling device that directs the movement of components in a 'pull'
production system established as part of the TPS (Toyota Production System)
(shubhammodi, 27 Mar, 2022).

Kanban was first used in manufacturing to regulate inventory throughout the supply chain,
as part of a process known as just-in-time (JIT) manufacturing. In project management, the
Kanban methodology applies the same notion by guaranteeing that the amount of required
work is proportional to the team's work capabilities.

Figure 7: Kanban Methodology.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 36


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Principals of Kanban Methodology.

1. Begin with the existing workflow: The Kanban framework stresses incremental,
progressive adjustments. As a result, the team must begin with the present workflow
and gradually enhance it.
2. Limit existing tasks: It is critical for the team to recognize its own limitations and
cap the WIP accordingly. Taking on more than people can handle can squander time
and have a negative impact on the project.
3. Respect current roles and responsibilities: One significant reason for Kanban's
success is that it does not necessitate a complete revamp of an organization's
existing work culture. Many businesses are resistant to current approaches because
they are uneasy with change.
4. Encourage leadership at all levels: Traditional project management approaches,
for example, require clearance from the project manager for even the smallest
activities. Kanban empowers the worker working on the job to make decisions.

Phases of Kanban Methodology.

Stage 0: Begin Kanban work stages with a clean board. This board is where people keep
track of all chores. People can add own deadlines, status updates, priority, assignees, and
so forth. An automated Kanban board is built once all of tasks have been added.

Stage 1 – “To do list.”: The to-do list column is typically the first column in a
conventional. This is one of the first Kanban phases when work is completed, where people
list all unfinished ideas and tasks. As a result, people can also call it "not started."

Stage 2 – “In progress”: The "in progress" list is the second in the working Kanban stages.
In-progress, as the name implies, lists all projects that are currently in the pipeline and being
worked on.

Stage 3 – “Done”: The done or completed column displays all completed jobs. When
people are finished with marketing campaign, simply drag it to the done column. And with
that, the developer has completed the stages or the four major Kanban phases.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 37


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Advantages of Kanban Methodology.

1. Increased visibility: Visualization is a crucial Kanban technique, and the Kanban


board is the method's most identifiable aspect. Every project has a backlog of tasks
to complete, as well as a set of process states that a job must go through before it
can be delivered.
2. Enhanced productivity: Improved efficiency automatically leads to higher
productivity, which is the next Kanban benefit. Kanban increases productivity by
changing the emphasis from starting to finishing tasks.
3. Keeping the team from becoming overburdened: Traditional management
strategies rely on preparing ahead of time and delegating work to team. As a result,
teams are burdened with more work than they can handle.
4. Enhanced productivity: Improved efficiency automatically leads to higher
productivity, which is the next Kanban benefit. Kanban increases productivity by
changing the emphasis from starting to finishing tasks (Siderova, n.d.).

Disadvantages of Kanban Methodology.

1. Process Stability is required: Kanban excels in a factory-like setting with


consistent, repeating production streams. Tasks progress through multiple states at
a constant rate. It cannot handle work that generates numerous additional sub-tasks
and must be put on wait for weeks.
2. There is no explicit iteration: When a card hits the bottom of the board, the
mission is finished. There is no room for it to be a nice first attempt that must be
improved. This is ineffective in creative endeavors. People can experiment with
adding more to the process.
3. The board has not been updated: It appears that updating the board should be
simple. In practice, though, updating the board must be a top priority.
4. The board is overly simplistic: Kanban includes only three columns: 'to do,' 'in-
progress,' and 'done' in its most basic form. People have a to-do list with an in-
progress status.
5. Over-complicated Board: Things, tend to become lost when developer add
additional stages and intricacies. If new team members do not understand the board
after a few days, it is a warning sign that something is wrong.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 38


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Scrum Method.

The agile scrum approach is a sprint-based project management technique that aims to
provide the most value to stakeholders (Sean Peek, 28 April 2023).

Scrum is an agile framework that is adaptable, rapid, flexible, and effective in delivering
value to the client throughout the project's development. Scrum's fundamental goal is to
meet the needs of the customer through an atmosphere of communication transparency,
group responsibility, and continual improvement. The development process begins with a
rough understanding of what needs to be produced, followed by the creation of a list of
characteristics ordered by priority (product backlog) that the product's owner desires.

Figure 8: Scrum Method.


Principals of Scrum Method.

1. The ability to exert control over the empirical process: Scrum's empirical
process is built on real evidence and testing rather than philosophy. Transparency,
inspection, and adaptability are the three key concepts in empirical process control.
2. Self-organization: Because the Scrum method relies on many people, self-
organization is necessary. Everyone involved is empowered to work autonomously,
and the self-organization principle encourages more buy-in from all parties while
making individual contributions easier to analyze.
3. Collaboration: Scrum is a collaborative process, as indicated by the numerous
roles that are involved (more on this below). This approach also emphasizes three
aspects of collaboration: awareness, articulation, and appropriation.
4. Prioritization based on values: This technique entails organizing and prioritizing
tasks based on their importance and how quickly they must be finished.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 39


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

5. Time constraint: Scrum tasks are accomplished in "sprints," with time limits set to
each. Other parts, such as "sprint planning" and daily meetings, have precise start
and stop timings as well. This time-boxing ensures that everyone involved
understands how much time is allotted to each stage, with the purpose of reducing
wasted time and delays.
6. Iterative development: This last point refers to the realization that a project may
need to be refined several times during the development process. Iterative
development enables the team to make changes and manage change more
effectively.

Advantages of Scrum Method.

1. Compliance with expectations: The customer defines their expectations, outlining


the value that each requirement/history of the project offers, the team estimates
them, and the Product Owner establishes its priority based on this information.
2. Reduced time to market: The client can begin using the most significant features
of the project before the product is finished.
3. Timely Prediction: Using this process, developer know the team's average sprint
speed (story points), which allows us to anticipate when a specific functionality that
is still in the backlog will be accessible.
4. Improved software quality: The working approach and the requirement to obtain
a functional version after each iteration contribute to improved software quality.

Disadvantages of Scrum Method.

1. Due to the lack of a fixed end-date, Scrum frequently leads to scope creep.
2. If they aren't committed or cooperative, there's a good probability the project will
fail.
3. Adopting the Scrum framework in big groups is difficult.
4. Only experienced team members can ensure the framework's success.
5. Team members can become irritated by daily meetings.
6. Any team member who leaves in the middle of a project might have a significant
negative impact on the project.
7. Quality is difficult to implement until the team goes through a rigorous testing
process.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 40


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Extreme Programming.

Extreme Programming (XP) is an agile software development approach that attempts to


deliver higher quality software while also improving the development team's quality of life
(PAL, 09 May, 2023).

In terms of proper engineering methods for software development, XP is the most detailed
of the agile frameworks. The purpose of XP was (and continues to be) to eliminate
opposition to modifying code within development projects. In more traditional software
development processes, code is frequently left alone after it is written (except for
debugging). With XP, people evaluate the code so thoroughly that developers may decide
to completely rewrite it after just one iteration.

Figure 9: Extreme Programming.


Principal of Extreme Programming

1. Working software is the primary indicator of project progress.


2. As a result, software should be built and deployed in small increments to ensure
project progress.
3. Even last-minute adjustments to the specifications should be considered.
4. Documentation is valued over face-to-face contact.
5. Continuous feedback and client interaction are required for the development of
high-quality software.
6. Simple design that involves and improves over time is preferable to doing a
complicated design up front to handle all probable circumstances.
7. Delivery dates are set by empowered groups of outstanding persons.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 41


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Advantages of Extreme Programming

1. Working software is the primary indicator of project progress.


2. As a result, software should be built and deployed in small increments to ensure
project progress.
3. Even last-minute adjustments to the specifications should be considered.
4. Documentation is valued over face-to-face contact.
5. Continuous feedback and client interaction are required for the development of
high-quality software.
6. Simple design that involves and improves over time is preferable to doing a
complicated design up front to handle all probable circumstances.
7. Delivery dates are set by empowered groups of outstanding persons.

Disadvantages of Extreme Programming

1. According to some experts, Extreme Programming is more concerned with code


than with design. This could be a concern because proper design is critical for
software programs. It aids in their sales in the software market. Furthermore, defect
documenting in XP projects is not always good. Failure to document defects may
result in the recurrence of similar faults in the future.
2. Another downside of XP is that it does not measure code quality assurance. It may
result in bugs in the original coding.
3. If programmers are geographically divided, XP is not the ideal option.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 42


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Feature-driven development (FDD)

Feature Driven Development (FDD) is an agile paradigm for software development.


Feature-driven Development (FDD) is one of several agile techniques or approaches
(Scrum, XP, DSDM, and Crystal are a few examples) (9 December 2022, Reiling, John).

FDD iterations are shorter than Scrum iterations, the documentation is more thorough, and
there are fewer meetings. FDD teams release minor features regularly to make tracking and
error correction easier. This lowers the risk. FDD, like other Agile techniques, allows teams
to ship features quickly, but it's better suited to larger, long-term projects and large teams.

Figure 10: FDD


Principals of Feature-driven development (FDD)

1. Each large project should be created step by step.


2. The procedures should be straightforward and well thought out.
3. Every team member should understand the importance and consistency of the
process.
4. There are advantages to short iterative development cycles. This method allows
people to prevent problems and fast improve functionality.

Phases of Feature-driven development (FDD)

1. Creating an overall Model: The development team collaborates in the first stage
to create an object model of the domain problem. The major purpose is to develop
a model for the area domain. The lead architect follows them and provides direction.
2. Making a Feature List: Following the creation of an object model by the
development team. They decide which characteristics the customer or user desires.
These characteristics serve as the project's construction barriers. This assists the
group members in navigating the procedure.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 43


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

3. Planning based on the feature: The third stage focuses on feature management
and how the development team typically implements them. To avoid difficult
challenges, it is critical to evaluate the team workloads, dangers, and other critical
variables.
4. Feature-based design: The team's plans all have a design. The chief programmer
applies knowledge from the first modeling step to choose all the team's features and
define domain classes.
5. Building based on the feature: The final stage is to put all the elements required
to support the concept into action. In other words, the team begins software
development after developing, testing, and inspecting the code.

Advantages of Feature-driven development (FDD)

1. Keeping complexity to a minimum: Because it divides huge and complex projects


into smaller components that can be delivered relatively rapidly, the FDD technique
is excellent for them. As a result, FDD is great for teams that are constantly behind
schedule.
2. There will be fewer meetings: The meeting-centric aspect of some agile
approaches irritates many project teams. Because FDD communicates through
documentation, teams may devote more time to developing precise, actionable
tasks.
3. Scalable: As a company grows, so do its FDD initiatives. Development proceeds
at a continuous pace by producing tiny feature sets in one to two-week iterations,
allowing progress to be maintained and new staff to be brought up to speed quickly.

Disadvantages of Feature-driven development (FDD)

1. Complexity: FDD might be more complex than other agile approaches because it
requires a sequence of tiny, well-defined phases to provide a feature. This can make
it more challenging for new team members to grasp and implement the process.
2. Time and resources: To be successful, FDD necessitates a large investment of both
time and resources. It entails a succession of modest, incremental development
cycles that can take time to plan and execute.
3. Dependencies: To progress, FDD relies on the supply of modest, incremental
features. This can lead to feature dependencies, which can have an influence on the
whole delivery timetable if one item takes longer to develop than intended.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 44


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

4. Limited visibility: Because FDD focuses on delivering small, incremental


additions, it might be difficult to see the project's overall progress. This can make
it difficult for stakeholders to comprehend the general direction and progress of the
project.
5. Limited control: Because FDD stresses the delivery of modest, incremental
features, the team's control over the product may be limited. This can make it
difficult to guarantee that the product satisfies the needs of the customer and
corresponds with the broader aims and objectives of the project.

Crystal Methodology.
The crystal approach is a lightweight or agile technique that focuses on individuals and
their relationships. The approaches are color-coded according to the level of risk to human
life (Satyabrata_Jena, 19 Apr 2023).

Crystal's primary focus is the first point of the Agile Manifesto: individuals and interactions
over processes and tools. Crystal approach is a collection of many methodologies, and it
always considers team size. As a result, Crystal can be further subdivided into color groups
based on the size of the team and the complexity or size of the project.

Figure 11: Crystal Method


Principals of Crystal Methodology.

1. Simplicity: Keep the process and project management as simple as possible,


eliminating needless complications that might stymie productivity and progress.
2. Team Collaboration: Promote open discourse, knowledge sharing, and collective
decision-making among team members by encouraging good communication and
collaboration.
3. Reflective Improvement: Reflect on the project's progress on a regular basis and
alter the methodology and processes based on feedback and lessons learned.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 45


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

4. Frequent Delivery: Emphasize incremental and frequent delivery of working


software, allowing for early input and validation from stakeholders.
5. Personal Skills: Recognize and recognize each team member's unique skills and
capabilities, allowing them to offer their expertise successfully.

Advantages of Crystal Methodology.

1. Improve and facilitate team communication and accountability.


2. The team's flexible strategy enables them to respond effectively to the demanding
needs.
3. Allows the team to work with the most effective member.
4. Teams communicate directly with one another, which lowers managerial overhead.
5. Faster delivery - The framework allows the team to release working software more
quickly, which can help the team acquire a competitive advantage in the market.
6. Higher quality - Because the framework focuses on quality, the team can find and
correct errors earlier in the development process, resulting in a higher quality
output.
7. Improved customer satisfaction - The framework encourages consumer
participation, allowing the team to develop goods that suit the needs of the client,
resulting in higher customer happiness.

Disadvantages of Crystal Methodology.

1. A lack of well-defined plans may result in confusion and loss of focus.


2. Inexperienced teams may be slowed by a lack of organization.
3. I'm not sure how a remote team can discuss information informally.
4. Lack of predictability - The framework's emphasis on adaptability and flexibility
may result in a lack of predictability, making project deadlines and budgets difficult
to plan and forecast.
5. Lack of paperwork - Because the framework places an emphasis on communication
and collaboration, there may be a lack of documentation, making it difficult to track
progress and keep track of choices.
6. Limited scalability - The framework may not be ideal for large or complex projects
due to the lack of structure and predetermined plans, which may make managing
teams at scale challenging.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 46


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Lean Method.

Lean software development is a concept that focuses on increasing efficiency and reducing
waste in the software development process. This technique has its origins in the 1980s Lean
manufacturing movement (Lutkevich, Ben, 12 Mar 2023).

It is also known as the Minimum Viable Product (MVP) approach since both ways of
thinking aim to accelerate development by focusing on new deliverables. Toyota is credited
for inspiring the lean development method, which aims to optimize production while
minimizing waste. After witnessing Toyota's lean technique, several other production
teams adopted the same concept.

Figure 12: Lean Method.


Principals of Lean Method.

1. Eliminating Waste: Identifying and eliminating wastes such as redundant code,


process delays, poor communication, quality issues, data duplication, more jobs in
the log than accomplished, and so on.
2. Fast delivery: Previously, lengthy time planning was the key to corporate success,
but with the passage of time, it has been discovered that engineers spend too much
time designing complicated systems with unnecessary features.
3. Amplify Learning: Learning is enhanced by extensive code review and cross-team
meetings. It is also assured that specific information is not gathered by one engineer
who is creating a specific piece of code by using paired programming.
4. Builds Quality: LSD is all about reducing waste while not sacrificing quality. Test-
driven programming is frequently used by developers to analyze code before it is
developed.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 47


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

5. Respect Teamwork: Rather than dominating team members, LSD focuses on


empowering them. Setting up a collaborative environment, maintaining optimal
balance when there are short deadlines and a massive workload.
6. Delay the Commitment: This occurs frequently in conventional project
management when people create application, and it turns out to be absolutely
unsuited for the market.
7. Optimizing the whole system: The lean approach allows managers to break an
issue down into its constituent parts to optimize the team's workflow, establish unity
among members, and inspire a sense of shared responsibility, all of which result in
improved team performance.

Advantages of Lean Method.

1. LSD eliminates superfluous process phases while creating software, saving time,
and simplifying the development process.
2. With an emphasis on MVP, Lean Software Development focuses on key
functionality, eliminating the risk of wasting time on ineffective builds.
3. It improves the engagement power of team as more and more individuals
contribute, resulting in an optimized overall workflow and minimized losses.
4. LSD streamlines the development process and saves time by eliminating redundant
steps.
5. It prioritizes critical functions and eliminates the danger of wasting time on
ineffective buildings.

Disadvantages of Lean Method.

1. Make it as scalable as other frameworks because it is heavily dependent on the


people engaged.
2. It is difficult to keep up, thus it is difficult for developers to collaborate with team
members since disagreement may arise.
3. It results in a challenging decision-making process since consumers must precisely
define their expectations for development to continue uninterrupted.
4. Inadequate documentation
5. Lack of adaptability for planned tasks or rigorous timeframes
6. Predictability is lacking.
7. Reliance on customer participation

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 48


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Conclusion of agile methodology.

The Agile methodology is a project management technique that stresses constant


collaboration and improvement by splitting the project into stages. The Agile approach is
a style of project management that divides a project into stages. It entails ongoing
engagement with stakeholders as well as continual development at each level. The Agile
software development life cycle is a defined sequence of steps that a product goes through
from start to finish. Concept, conception, iteration, release, maintenance, and retirement are
the six stages.

Agile methodologies include scrum, kanban, crystal, lean, feature driven model, and
dynamic system development model. However, Scrum and Kanban are the most widely
employed agile approaches in software businesses today. These approaches have grown in
popularity and are now industry standards. Scrum differs from other Agile approaches in
that work is divided into sprints of one to four weeks. Kanban aids in the visualization of
work, the reduction of work-in-progress (WIP), and the rapid transition of work from
"Doing" to "Done." Kanban is ideal for teams with a high volume of inbound requests of
varying priority and size.

Increased client satisfaction, higher project visibility, improved team cooperation, and the
capacity to react to changing needs are all advantages of an agile approach. Through regular
retrospectives, it also supports continual development and learning, allowing teams to
enhance their procedures and create higher-quality software. Agile is now the most
prevalent software development lifecycle paradigm in the software industry. Agile
methodologies have changed software development techniques by allowing teams to be
more responsive, collaborative, and adaptive. Its concepts and practices are still evolving
and inspiring new methods of working in areas other than software development.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 49


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Principals of agile and traditional methodologies.

Principals of traditional methodology.

1. In the conventional method, thorough requirement analysis and documentation are


required. Identifying project objectives, obtaining user requirements, and creating
system specifications are all part of ensuring a clear grasp of what needs to be built.
2. Once a phase is finished, the conventional practice stresses stability and minimum
modifications. Changes are often more difficult and expensive to execute as the
project advances because the emphasis is on adhering to the stated plan and
reducing deviations.
3. A fundamental element of conventional approach is extensive documentation.
Documentation that is detailed aids in the capture of requirements, design decisions,
implementation details, and test cases, resulting in improved understanding,
maintenance, and knowledge transfer.
4. The conventional process follows a linear development, with each step relying on
the preceding phase's completion. This provides a methodical and structured
approach, with each phase building on the previous one's outcomes.
5. Traditional approach requires much planning. It entails developing project plans,
schedules, and resource allocation to efficiently predict and manage project
timeframes, costs, and deliverables.
6. Formal assessments and approvals are essential components of the conventional
approach. These are often performed at the conclusion of each phase to analyze
deliverables, validate against requirements, and assure quality before moving on to
the next phase.

Principals of agile methodology.

1. Our first aim is to satisfy the client by delivering valuable software on time and on
a consistent basis.
2. Accept changing needs, especially if they emerge late in the development process.
Agile methods use change for the benefit of the customer's competitive advantage.
3. Deliver functioning software on a regular basis, from a few weeks to a few months,
with a preference for the shorter duration.
4. Throughout the project, businesspeople and developers must collaborate on a
regular basis.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 50


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

5. Build initiatives around motivated people. Give them the atmosphere and support
they require and trust them to do the task.
6. Face-to-face communication is the most efficient and effective way of transmitting
information to and within a development team.
7. The key indicator of progress is functional software.
8. Agile procedures foster long-term growth. Sponsors, developers, and consumers
should be able to keep up the pace indefinitely.
9. Continuous focus on technical excellence and smart design improves agility.
10. Simplicity--the art of doing as little labor as possible--is crucial.
11. Self-organizing teams produce the finest architectures, requirements, and designs.
12. The team reflects on how to become more effective at regular intervals, then tweaks
and adapts its behavior accordingly.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 51


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Strengths and weaknesses of traditional and agile methodology.

Strengths of traditional methodology.

1. Undisputed Orientation: Each team member is aware of their duties and the main
deliverables because everything has been planned. This enables them to work
effectively and with minimal constant monitoring.
2. Regulate at a Top Standard: In a traditional setting, the operation manager’s
department has almost complete power, and sometimes even minor changes must
be authorized by the manager. This restricts variances from the program’s initial
range.
3. Detailed paperwork: The foundation of conventional project management
research methodologies is appropriate documentation. The paperwork can be used
as guidelines for future projects in addition to standardizing the entire procedure.
4. Efficacy Cost: For relatively minor and step-by-step undertakings, corporations
favor the classic research approaches. They take much less time, require fewer
programmers, and have fewer resources to complete. It is less expensive since these
initiatives do not require the utilization of heavy machinery and advanced
technology.
5. Better Client Satisfaction: Traditional projects don't need to be extremely
sophisticated to meet the demands of the client. Each approach of project
management places a high importance on customer satisfaction. The customer's
requirements are taken into consideration throughout the entire project process.

Weaknesses of traditional methodology.

1. Quite slow: It is going to be a slow development if client isn’t clear about the
requirements. because traditional project management's sequential methodology
makes changes challenging.
2. No client focal point: There isn’t much space for the customer’s opinion in every
development process. Until the product is finished, the clients are not involved or
accepting of the entire development process.
3. The absence of central authority: There are individual subcontractors controlling
the ropes of development. There isn't any centralized authority or single dynamic
teamwork and leadership.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 52


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

4. Time management: The time mismanagement issue can arise in traditional


methodology due to a lack of mutual teamwork, unity, and mutual development.
5. Absence of intuition: Traditional Methodology doesn't leave much room for the
application of novel concepts. The sequential approach does not allow for ongoing
evolution.
6. Abnormal coordination: The subcontractors work individually rather than as a
single dynamic team. No effort is made to promote harmony, cooperation, and
dedication to progress.
7. SEO for the local area: All individual subcontractors simply care about their own
efforts and talent. If something goes wrong, there isn't a mutual defense and
problem-solving effort.

Strengths of agile methodology.

1. Continuous enhancement and quality control: In a conventional waterfall


project, a project manager would normally discuss the objectives with the client
early in the planning stage and then follow up with them at significant checkpoints
along the way to provide updates on the project's status and expectations.
2. Greater adaptability to changing needs: A PM can make frequent project
adjustments using an agile model and quick sprint cycles. Working in an agile
approach allows people to take the current products that have been finished in prior
sprint cycles and shift course at a right angle if it is necessary, regardless of whether
it is due to external environmental shocks or a sudden change in wants by the
customer.
3. A practical strategy for clients: A better level of collaboration with the customer
will inherently result from an agile model's vastly increased client involvement and
evaluation throughout the project schedule.
4. Faster initial value delivery times: Agile management can also produce a minimal
viable product (MVP) before the overall project conclusion.
5. Increased internal dialogue: Most of the advantages developer have already
discussed directly affect the input or experience of the client. Agile methodologies,
however, also assist a PM in maximizing the effectiveness of their team. An agile
project fosters ongoing communication among its team members internally by
routinely reviewing and accepting new tasks.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 53


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Weaknesses of agile methodology.

1. Lack of long-term planning: Agile management's greatest strength (the ability to


respond quickly and effectively to change at most points in the project timeline) can
also be viewed as one of its biggest weaknesses. Agile projects frequently lack a
distinct vision for the finished product because changes to requirements and
specifications can be implemented so quickly.
2. No clear picture of costs upfront (difficult planning): This issue most likely
coexists with a dearth of long-term planning.
3. Lack of cross professionally trained teams available: Agile management
typically involves a lot more team autonomy and delegation. To keep up with the
project's rapid pace, they will have to make crucial decisions without the PM's input.
4. Issues with coordinating the work: Agile management frequently produces better
results for the client since it is more dynamic than conventional waterfall processes.
Agile management, however, can raise risk and lead to dysfunction if done
incorrectly.

Conclusion of strengths and weaknesses of traditional and agile methodology.

Traditional project management approaches have some advantages that make them
appropriate for project types. Team members may operate effectively and autonomously
and produce solutions that are both cost-effective and client-focused with the help of a well-
defined orientation and thorough preparation. These approaches, however, suffer from
glaring flaws such delayed change adaptation, lack of client interaction, and coordination
challenges with subcontractors.

Agile approaches have their own set of advantages, including client collaboration that is
pragmatic and continual improvement, adaptability to changing needs, and client
participation. Additional benefits include the capacity to provide initial value rapidly and
the encouragement of team communication. However, agile also has disadvantages, such
as a lack of long-term planning and upfront cost uncertainty, which can make managing
projects successfully difficult. Another factor is the requirement for well-organized, self-
sufficient teams and appropriate coordination to prevent potential dangers and dysfunction.

The requirements and nature of the project will determine whether to use traditional or agile
approaches. Traditional ways might be effective for simple, step-by-step projects with clear

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 54


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

goals and little modifications, but agile methodologies are better suited for tasks where
flexibility, client involvement, and ongoing development are essential. Finding the ideal
balance and using the best methodology can result in productive projects and pleased
clients.

Comparison between agile and traditional methodologies.

Parameters Agile Project Traditional Project


Management Management
Flexibility and Emphasizes flexibility and Emphasizes planning and
Adaptability adaptability predictability
Project Requirements Prioritizes customer Prioritizes following a
satisfaction and working strict plan and meeting
software project requirements
Communication Encourage face to face Rely on written
communication and documentation and formal
collaboration communication
Project phases and Uses short sprints for Uses longer project phases
planning planning and delivery. for planning and delivery.
Allows for changes and Has a rigid plan that is
adjustments throughout difficult to change.
the projects.
Team Functionality Cross-functional teams Functionally divided
teams
Organization Self-organizing teams Hierarchically organized
teams
Organizational Linear Iterative
Structure
Project Scale Large-scale Small and medium scale
Development Model Lifecycle model Evolutionary delivery
model
User Requirements Clearly defined before Interactive inputs
coding or implementation

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 55


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Escalation Management When problems occur, the Escalation to managers


entire team works together when problem arise
to resolve it.
Model preference Agile model favors Traditional model favors
adaption anticipation
Product or process Less focus on formal and More serious about
planned one sprint at a processes than the product
time
Test documentation Tests are planned one Comprehensive test
sprint at a time planning
Effort estimation Scrum master facilitates Project manager provides
and the team does the estimates and gets
estimation. approval from PO for the
entire project.
Reviews and approvals Reviews are done after Excessive reviews and
each iteration. approvals by leaders
Client Involvement low high
Table 1: Comparison between agile and traditional methodologies.
The Agile and Traditional techniques are the two main ones covered within the software
development lifecycle. Agile is distinguished by flexibility, client happiness, and usable
software. Short planning and delivery sprints along with iterative development are used,
allowing for ongoing feedback and adjustments. Together with frequent and casual
communication, team members are more likely to work together. Planning, predictability,
and adherence to a detailed plan are all stressed in traditional project management. It has
lengthier project stages and follows a linear, sequential development approach. Written
paperwork and formal meetings are frequently used in communication, which helps with
accurate progress tracking and accountability but may impede on-the-spot problem solving.

When it comes to project planning and delivery, traditional methodologies require months
or years to fulfil all milestones, whereas agile methodologies concentrate on generating
working software based on input in smaller chunks of time. In contrast to Traditional, which
emphasizes rigorous adherence to a predetermined plan, Agile places a high priority on
customer happiness and usable software. Agile's adaptability enables teams to use resources
more effectively while responding quickly to shifting client needs and market situations. It

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 56


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

can be difficult to adjust to traditional's rigid structure. While Traditional focuses on


structured teams with obvious lines of authority, Agile promotes self-organizing teams with
autonomy and accountability.

Agile technique is more appropriate than traditional methodology for putting the suggested
system into action in the case of automating the process at E-Solutions Private Limited. For
example, Agile's iterative methodology enables ongoing client participation and
adjustments in software development projects with changing requirements. The project can
be tracked more effectively and completed on schedule by breaking it up into smaller
sprints. The new capabilities of creating and updating project data is consistent with Agile's
emphasis on flexibility and effective teamwork. Agile gives the project director the freedom
to collaborate closely with the client, get feedback, and modify requirements as necessary.
Reduced errors, on-time completion, and increased productivity are all guaranteed by this
flexibility. E-Solutions can successfully manage projects, minimize delays, and meet its
goals of decreased costs and higher productivity by implementing Agile. Comparing the
agile and traditional methodology, agile methodology is commonly used more than
traditional methodology in the software industry.

Critical Evaluation of strengths and weakness of agile and traditional methodology.

Agile and traditional project management approaches are suitable for various project types
since they each have unique benefits and drawbacks. Organizations can choose the best
strategy for their projects by being aware of these approaches' strengths and drawbacks.

Traditional project management techniques, like Waterfall, perform best on jobs with
clearly defined objectives and dependable needs. These approaches provide organized
work sequencing, transparent documentation, and systematic planning. When activities can
be completed separately and team members can adhere to a predetermined order, traditional
ways are effective. The predictability and consistency of established approaches are their
strongest points. They offer a transparent roadmap for the development of the project,
making it simpler to manage resources and expectations. Long-term planning enables more
precise resource allocation and budgeting, which can be essential for some projects.

Traditional approaches, however, have drawbacks. They lack the agility of Agile
techniques, which means they could find it difficult to adapt to changing requirements.
Limited user participation could result in a final product that falls short of consumer

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 57


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

expectations. Incomplete user feedback can lead to expensive adjustments later in the
project.

Agile methodologies are ideal for dynamic projects that call for user collaboration and
frequent revisions. Its versatility and emphasis on providing value fast are its assets. The
focus on customer satisfaction is one of its key benefits since it enables early and ongoing
user input, ensuring that the project efficiently satisfies user needs. Agile's iterative
structure allows for frequent feedback, which empowers teams to make critical adjustments
right away. Agile also promotes self-organizing teams and excellent communication,
fostering a collaborative and effective atmosphere.

Agile has drawbacks as well. Due to the absence of advanced preparation and the possibility
of scope modifications, project timelines and prices may be unclear. Iterative development
may not be appropriate for projects with clear and strict requirements. The concentration
on immediate objectives may obscure the bigger strategic picture, potentially leading to a
misalignment with long-term organizational goals.

Both agile and conventional methods have their advantages. Agile projects are flexible and
collaborative, whereas traditional projects are reliable and well-planned. The decision is
based on the particulars, complexity, and aims alignment of the project. A hybrid strategy
might work. Effective project management and customized success are made possible by
an understanding of strengths and shortcomings.

The adoption of an automated project scheduling system to E-Solutions is perfectly in line


with the Agile methodology. Planning and delivery are carried out effectively because to
its constant updates, agility, and user collaboration. Early functional advancements that are
individualized by user input are what keep customers happy. Agile encourages
collaboration because of its self-organizing teams and iterative process, which fits the
automated system's continuous development. This decision ensures that E-Solutions will
streamline project planning, resource use, and delivery timelines. Agile's adaptability
allows ongoing improvements that support productivity and cost-cutting objectives. The
use of Agile to E-Solutions ensures effective project management, prompt value delivery,
and customer satisfaction, leading to successful outcomes and satisfied customers.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 58


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Conclusion.

The software development lifecycle (SDLC) is a time- and cost-effective procedure used
by development teams to design and construct high-quality software. SDLC's purpose is to
reduce project risks via proactive planning so that software satisfies customer expectations
during production and beyond. It consists of several stages, including requirements
gathering, design, development, testing, deployment, and maintenance. The SDLC
technique used is determined by the project needs, organizational preferences, and industry
norms.

Understanding and documenting requirements, planning, and scheduling, maintaining


stability while a project is being carried out, stressing documentation, obtaining formal
reviews and approvals, and implementing testing and quality assurance procedures are
some of the core SDLC elements. This approach is classified into two categories.
Traditional approach and agile methodology are two examples.

Traditional techniques are plan-driven, starting with the elicitation and documenting of a
comprehensive set of requirements, then moving on to the creation and inspection of
architectural and high-level designs. Traditional methodologies also have the great benefit
of encouraging early planning and allowing for the definition of costs and staffing
decisions, goal setting, measuring system performance, and validating points at all stages
of the development life cycle to enhance the quality of the final product.

In other hand, the agile SDLC technique relies on cooperative decision-making between
the teams responsible for requirements and those for solutions, as well as an iterative,
spiraling process for creating useful software. Sprints, which are regularly repeated cycles
of work, often last two to four weeks. The systematic succession of phases that a product
goes through as it develops from start to finish is known as the agile software development
life cycle. Concept, conception, iteration, release, maintenance, and retirement are its six
phases. Timely and consistent release of beneficial software, accept change, deliver
frequently, collaborate, have autonomy, and be motivated, improved communication The
guiding principles of agile approach are functional software and stable work environments.

Scrum, Kanban, Extreme Programming (XP), Lean Development, and Crystal are the five
primary Agile techniques. The most well-known agile development technique is scrum.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 59


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Teams operate in time-boxed sprints of two to four weeks, with each member having a
specific role such as scrum master or product owner—that is explicitly defined. Agile
approaches provide early and continuous feedback by having teams produce functioning
software in brief iterations, allowing them to react fast to changing requirements and client
demands.

The decision between traditional and agile approaches depends on several variables,
including the nature of the project, client demands, collaboration, and organizational
culture. To establish an appropriate equilibrium between predictability and flexibility,
many companies now use hybrid techniques that integrate components from both
disciplines.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 60


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Activity 02
Feasibility Report

A feasibility study is a report that assesses the viability of a collection of potential project
pathways or solutions (indeed team, March 10, 2023).

The person who writes a feasibility report assesses the feasibility of several ideas and then
recommends the best alternative. The goal of a feasibility study is to assess the viability of
various solutions or project pathways and select the best choice. The feasibility report helps
readers comprehend the viability of various approaches to a problem or project by breaking
them down.

Important of feasibility report.

1. Marketing research: Marketing research is undertaken to determine whether the


project is appropriate for the present and future corporate culture. During this phase,
the consultants will seek data on the overall impact on the business structure,
workers, and organization.
2. Financial analysis: Financial planning is critical for managing the organization's
various activities within budget constraints. Financial analysts examine overall
capital needs, sales and pricing, break-even outputs, and the quantity of sales
necessary to achieve profit in the company.
3. Management research: Management research is carried out to identify the total
resources necessary for the project's effective completion. Some projects, such as
manufacturing, will require more physical resources, whilst some IT initiatives will
necessitate many human resources.

Advantages of feasibility report.

1. Risk assessment: A feasibility report can assist in identifying potential risks and
problems connected with a project.
2. Resource allocations: Organizations can assess the resources needed for the
project by completing a feasibility study.
3. Cost-benefit analysis: Feasibility studies provide for a thorough cost-benefit
analysis. They aid in determining the whole cost of the project, which includes
initial expenditures, continuing expenses, and prospective profits.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 61


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

4. Market analysis: A complete assessment of the target market is often included in


a feasibility report. It aids in the comprehension of client needs, preferences, and
market demand.
5. Decision making tools: Feasibility reports offer decision-makers accurate
information to analyze the viability of a project and make educated decisions.
6. Communication with stakeholders: Feasibility reports allow effective
communication among stakeholders such as investors, executives, project
managers, and team members.
7. Project planning and execution: Feasibility reports serve as a roadmap for project
planning and execution.
8. Funding and finance: Feasibility studies can help people find funding and
financing solutions.

Types of feasibility report.

Scheduling feasibility, operational feasibility, legal feasibility, economic feasibility, and


technical feasibility are the five categories of feasibility studies.

1. Technical feasibility reports

The technical feasibility assessment examines the organization's technological resources


for accessibility (Nandaniya, Jul 10/2023).

If technological resources are available, the research team will undertake evaluations to see
whether the technical team can customize or upgrade current technology to meet the
project's new style of operation by thoroughly inspecting the hardware and software.

Advantages of technical feasibility reports.

1) Early in the NPD process, organizations may discover possible technical difficulties
and opportunities with the use of technical feasibility research.
2) Businesses may lower the risk of failure and related expenses by detecting possible
technical issues early in the NPD process.
3) The danger of delays and cost overruns is decreased with the assistance of technical
feasibility study, which also enables businesses to identify the resources and
technology needed to support the product.
4) Technical feasibility study can aid in enhancing the quality of the finished product.
Companies may design and build products that meet or exceed consumer

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 62


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

expectations, hence boosting customer happiness and loyalty, by recognizing


technological needs and restrictions.
5) By discovering novel technologies and strategies that can enhance the product,
technical feasibility analysis can also promote innovation. it can assist businesses
in finding chances for patentable ideas that could provide them with a competitive
advantage.

Disadvantages of technical feasibility report.

1) Technology changes quickly, thus by the time the project is put into practice,
something that was once thought to be theoretically possible may have become
outmoded or obsolete.
2) Technical feasibility assessments tend to be more technical in nature and may not
consider other important aspects of a project, such as market demand, economic
viability, or legal and regulatory restrictions.
3) It might take some time to complete a thorough technical feasibility assessment and
write a thorough report.
4) The expenses associated with the resources needed to carry out an exhaustive
technical feasibility assessment, such as specialized equipment, qualified
employees, and research materials, might be high.

2. Financial feasibility reports

Financial feasibility enables a company to do a cost-benefit analysis. It outlines the


investment required to get the desired degree of benefit (profit) (Martins, June 27th, 2023).

Total cost and expenses are regarded to come at the same time. With this information,
businesses may assess their current financial situation and forecast future monetary needs,
as well as the sources from which they might obtain them.

Advantages of financial feasibility report.

1) The study does a thorough review of income sources, expenses, and financial
predictions to assist estimate the project's or venture's potential profitability.
2) A study on the project's financial viability analyses and assesses the financial risks
involved.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 63


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

3) By evaluating the financial resources needed for project implementation, the report
supports capital planning.
4) A well-written financial feasibility study makes the project more appealing to
prospective lenders or investors.
5) The report offers a foundation for efficient cost control and budgeting throughout
the project's lifespan.

Disadvantages of financial feasibility report.

1) Reports on financial viability frequently make assumptions, forecasts, and


estimates.
2) Financial feasibility analyses frequently just consider financial considerations while
excluding other crucial elements like operational viability, market demand,
technology needs, or legal and regulatory restrictions.
3) Intangible variables like brand reputation, customer happiness, and staff morale
may not be sufficiently considered in financial feasibility assessments since they
frequently place a higher priority on quantitative financial data.
4) A thorough financial feasibility report can be difficult and time-consuming to
prepare.

3. Operational Feasibility

The degree of supplying service to needs is examined in Operational Feasibility, as well as


how easy the product will be to manage and maintain after deployment (Shan, 2023).

Other operational scopes include assessing the usability of the product, determining
whether the offered solution by the software development team is acceptable, and so on.

Advantages of operational feasibility report.

1) The study offers a realistic evaluation of the feasibility of implementing the


proposed project or system within the current operating context.
2) For the project to be successful, the report assists in identifying the precise
operational needs.
3) Decision-makers are given thorough information in the report to help them make
wise project implementation decisions.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 64


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

4) An operational feasibility report outlines the operational needs, deadlines, and


milestones to aid in effective project planning.

Disadvantages of operational feasibility report.

1) There are typically arbitrary judgements and views involved in evaluating


operational viability.
2) It can be difficult to predict how a project or system implementation will operate.
3) An operational feasibility study may not include a thorough implementation
strategy, even if it does identify operational requirements and potential difficulties.
4) The study might not fully assess all implementation-related resource needs, such as
those for infrastructure, technology, and human resources.

4. Legal Feasibility

A project's legality is examined in the Legal Feasibility study. This involves examining
project legal implementation difficulties such as data protection acts or social media
legislation, project certificate, license, copyright, and so on. Legal Feasibility research is
research to determine whether a proposed project meets legal and ethical standards (admin,
April 6, 2015).

Advantages of legal feasibility report.

1) The study makes sure that the business or project complies with all relevant legal
standards.
2) Legal risks and potential liabilities related to the project are listed in a legal
feasibility assessment.
3) The report contributes to the protection of intellectual property rights and
guarantees that the necessary steps are taken to secure any innovations, trademarks,
copyrights, or trade secrets connected to the project.
4) The necessity for legal agreements, such as contracts, licenses, or partnerships is
assessed in the study, and it makes sure that these documents are well-structured
and serve to safeguard the interests of all parties.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 65


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Disadvantages of legal feasibility report.

1) A thorough legal feasibility assessment can be difficult and time-consuming to


conduct.
2) Legal interpretations and rulings are included in legal feasibility studies.
3) Legal feasibility studies might not fully address all legal facets.
4) It is possible for laws and rules to alter throughout time. If there are major legal
advancements or changes in the regulatory environment, a legal feasibility analysis
may become out of date.
5) various areas, jurisdictions, or nations may have various laws and regulations.

5. Schedule Feasibility

In a Schedule Feasibility Study, timelines/deadlines for proposed projects are assessed,


including how many times teams will take to finish the final project, which has a significant
influence on the organization because the project's purpose may fail if it is not completed
on time (Satyabrata_Jena, 2023).

Advantages of schedule feasibility report.

1) The report aids in ensuring that project deadlines and schedules are based on
accurate evaluations of the resources, dependencies, and limitations that are present.
2) A report on the scheduling feasibility enables efficient resource management and
optimization.
3) The report assists in locating and reducing scheduling hazards.
4) All project stakeholders will have a clear timeframe and plan thanks to a scheduling
feasibility study.
5) The report is used as a yardstick for assessing the performance and progress of the
project.

Disadvantages of schedule feasibility report.

1) Scheduling feasibility studies rely on hypotheses, projections, and estimates.


2) Scheduling feasibility assessments frequently priorities deadlines and schedules
above other important project components.
3) A thorough schedule feasibility study can be difficult and time-consuming to
conduct.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 66


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

4) Stakeholders may consider a timetable to be a definite plan if it has been developed


based on the feasibility assessment.
5) A scheduling feasibility study could set arbitrary deadlines and goals for projects.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 67


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Feasibility Report for E-Solution Private Limited.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 68


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 69


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 70


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.1 Introduction to the company.

Figure 13: Logo of E-Solution Private Ltd.

E-Solution Private Limited is a software business with headquarters in Sri Lanka that
focuses on offering clients in various sectors cutting-edge IT solutions. E-Solutions has
made a name for itself as one of the top software development and consulting services
companies in the nation by placing a heavy emphasis on cutting-edge technology and
employing a skilled team of experts. Custom software development, mobile application
development, web development, enterprise software solutions, and IT consulting are just a
few of the many services the business provides.

E-Solutions provides thorough IT consulting services. The company's skilled consultants


closely collaborate with clients to assess their current IT infrastructure, pinpoint areas for
improvement, and provide ideas to boost productivity and accomplish business objectives.
E-Solution Pvt Ltd continues to be a market leader in Sri Lanka's software development
sector thanks to its dedication to innovation, customer satisfaction, and technical
excellence. The company works hard to stay on top of new trends and technologies while
providing businesses with sophisticated software solutions that help them compete in the
quickly changing digital landscape.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 71


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.2 Purpose of the company

Figure 14: E-Solution Private Ltd Company.

The mission of Sri Lankan software company E-Solution Pvt Ltd is to provide cutting-edge
software solutions that enable companies to prosper in the digital time. E-Solutions aims to
be a leading provider of software solutions by delivering high-quality software, resolving
difficult business issues, encouraging innovation, long-term relationships, and assistance
in the IT sector.

As a reputable and cutting-edge software provider, E-Solution Pvt Ltd has made a name
for itself by enabling businesses to adjust to the rapidly evolving technological
environment. With a defined mission and a focus on the needs of its clients, E-Solutions is
well-positioned to make a difference in the world by offering cutting-edge software
solutions that help its clients accomplish their objectives and promote sustainable growth.

1.3 Aim of the project.

The aim of this project is to create a reliable and effective system that will enable the E-
Solution Company to improve resource management, streamline operations, promote
collaboration, and acquire insightful information about project performance. The system
will enable the business to address difficulties effectively and adapt to future expansion
while integrating smoothly with current tools and systems by automating time-consuming
operations, optimizing resource allocation, and offering real-time monitoring and reporting
capabilities. For the E-Solution Company, this project aims to increase efficiency, improve
communication, and guarantee effective project delivery.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 72


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4 Objective of the project

1. Systems should be able to do time-consuming, repetitive operations like data entry,


document management, and configuration manually to reduce effort and free up team
members and project managers to work on more productive tasks.
2. The system should provide insights into resource availability, a balanced workload, and
talent matching to enable the effective allocation and usage of resources. As a result,
resources are distributed more effectively across sectors and are supplied to the
appropriate sectors at the appropriate times.
3. Collaboration and communication between the project team, company members, and
clients should be facilitated by the system. To enhance cooperation and information
sharing, it should include capabilities like centralized document sharing, assignments
and follow-ups, discussion forums, and real-time updates.
4. Identify and assess the issues facing the E-Solution Company, such as ineffective
resource management, scheduling conflicts, delays, and trouble managing
dependencies.
5. Detailed visibility into project information, progress, and performance descriptions
should be provided via the plan. It needs to provide real-time reports and dashboards
that offer information on the state of the project, important performance metrics, and
potential obstacles.
6. By offering capabilities like milestone tracking, automatic alerts and notifications,
follow-up data, and change management, the system should enable project monitoring
and control.
7. The system should be flexible enough to scale and adapt for the E-Solution Company's
changing needs as it grows or takes on more challenging projects. It should also
integrate with other tools and systems already in place at the company, including
enterprise resource planning (ERP) systems, document management systems, and
enterprise systems.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 73


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.5 Scope of the project.

This project's goal is to switch E-Solution Private Limited Company's present manual
project management procedure to an automated system. The constraints of manual
processes, which impede productivity, teamwork, and decision-making as the organization
expands and takes on increasingly challenging tasks, are what drive the need for this
transformation. E-Solutions wants to reorganize processes, increase productivity, and
promote better teamwork by deploying an automated project management system. For
more effective and fruitful project outputs, the automated system will assure data accuracy,
provide real-time visibility into project performance, and promote critical thinking. The
automated system aims to dramatically increase the efficacy and efficiency of project
management through the provision of tools for planning, tracking, communication,
reporting, and resource management.

1.6 Manual project management system in E-Solution Private Ltd.

Figure 15: Manual Project Management.

E-Solution Private Limited Company now assigns tasks to employees using a manual
project management method. The use of manual processes and non-automated technologies
to implement procedures is known as manual process design. To plan, track, and manage
projects, businesses rely on manual, paper, and communication channels. Small enterprises
or organizations with straightforward business requirements might benefit from an
automated project management system. However, depending only on manual procedures
can be ineffective, error-prone, and impede cooperation and sound decision-making when
project complexity and organizational size expand. An E-solution software company's

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 74


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

manual management processes may reduce productivity and efficiency. It restricts real-
time visibility, data accuracy, and critical thinking. The organization may get rid of these
issues and gain more simplified scheduling, more productivity, and better project results by
implementing an automated project management system.

To reorganize procedures, boost productivity, foster collaboration, and get real-time


visibility into project performance, E-Solutions frequently choose to go from a manual to
an automated project management system. Automation systems provide project managers
with tools for planning, tracking, communication, reporting, and resource management,
making project management more successful and efficient.

1.7 Need for the project.

Figure 16: Task automation.


1. Complex requirements, many projects, and interdependencies are frequent features
of software development projects. The administration of complicated software
projects is facilitated by automation of project management systems, which
optimizes the use of tools, scheduling, and resource allocation.
2. Scrum and Kanban are two popular agile approaches used by E-Solution Company.
Agile activities like as sprint planning, backlog management, and real-time work
tracking may be made easier by automation, ensuring that team members do them
efficiently.
3. To make collaboration, translation, and tracking of code changes easier, an
automated project management system may be integrated with Git and other version
control tools.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 75


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

4. Decentralized distribution teams are frequently seen in E-Solution Company.


Improved cooperation and communication among geographically scattered project
teams is made possible by an automated project management system with
collaboration tools, real-time communication channels, and shared document
storage.
5. Strict quality control and testing procedures are needed for software projects. Test
case management, defect detection, and test execution control capability may be
added to automated project management systems using testing tools, assuring
effective management of test execution.
6. Software businesses frequently engage in intimate client interaction, necessitating
careful coordination and feedback handling. Through dedicated portals, shared
documents, and feedback management tools, automated project management
systems may promote customer cooperation, resulting in more customer
involvement and better outcomes.

1.8 Types of feasibility report.

1.8.1 Technical feasibility report.

1. Easily manageable, user-friendly programs: new tasks and project requirements


must be easily created by the project manager. A user-friendly method for managing
project information, such as project ID, labor expenses, assigned tasks, and project
manager, should be provided by the system. For each project, the project manager
must be able to designate team members and team leaders.
2. Group management and management: The capacity to create project teams and
assign members to such teams is a requirement for the project manager. The strategy
should permit the selection of a team leader who may give team members new
assignments. Members of the group may access assigned tasks, view them, and
change their work progress.
3. Create and update content: The system should allow for the development and
update of software project information. The framework should preserve and update
the precise roles of functional groups and group members. For effective production
allocation, the system should allow for tracking team member abilities and
competences.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 76


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

4. Costing and analysis of the workplace: To calculate labor expenses for the work
properly, the system should offer job point analysis. Give the details required to
produce invoices based on the stage of work finished. Based on the services
rendered, the quantity of products, and the project's duration, the plan should
determine the project's cost.
5. Project and task management: Users should be able to monitor the status and
progress of each project using the system's real-time project tracking capabilities.
Each project's duties should be visible and trackable inside the schedule, both
completed and continuing. Notify and inform the appropriate people when there are
project deadlines, milestones, or updates.

Software and hardware requirements for the system.

1.8.1.1 Software requirements of the system.

Operating System. Windows 11, macOS

Web Browser. Google Chrome, Microsoft Edge

Database Software MySQL

Communication and collaboration Zoom, Microsoft Teams


tools

Security Software Antivirus program

Server Software XAMPP Server

IDE Software VS Code

User authentication and access Single Sign-On (SSO)


control
Web Server Apache HTTP Server

Programming Languages Java, HTML, PHP

Frameworks Angular

Table 2: Software Requirements.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 77


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.8.1.2 Hardware requirements of the system.

Processor Intel Core i7 11th generation


RAM 8GB or 16GB
Hard Drive 512 GB or 1 TB
Graphis Unit Intel Iris Xe Graphis or Intel UHD
Graphics
Network Connectivity Ethernet or wi-fi

Table 3: Hardware Requirements


1.8.1.3 Functional Requirements.

The system needs to provide job management and project detail updates. It should make
team management, delegation, and progress monitoring possible. Information about the
software project, including team responsibilities and skills, should be created, and
maintained. The system must enable the compilation of invoices, manage expenses, and
estimate labor costs. Users should be informed of task status, milestones, and adjustments
via real-time project monitoring. Access to project information should be granted based on
user roles and secure user credentials.

1.8.1.4 Non-Functional requirements.

Multiple users and huge project data should be handled by the system without slowness or
downtime. It must provide little data loss and stable operation. User data and system access
should be protected by strong security measures. To support growing project sizes and user
counts, the system should be scalable. It is crucial to have a user-friendly interface and clear
instructions. It is necessary for the system to be compatible with widely used networks,
devices, and operating systems. It should be simple to maintain and upgrade the system.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 78


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.8.2 Legal Feasibility Report.

This legal report's goal is to evaluate the legal concerns and potential hazards related to the
automation of business activities in a Sri Lankan e-solution software company. To
guarantee compliance with relevant laws and regulations, the report's goal is to identify and
resolve regulatory considerations. E-Solutions Software Company must take action to
guarantee compliance with all relevant laws and regulations. It is advised that user get legal
counsel from attorneys knowledgeable in Sri Lankan law about the requirements of the
business.

The e-solution can reduce potential legal risks by taking care of these legal issues,
allowing the automated project management system to function in a compliant way.

1. Information security and privacy: Strong data security procedures safeguard


sensitive project and user data, fostering confidence and conforming to regulatory
requirements. Information security and privacy. The e-solution software company
may show that it is committed to protecting client information by following these
rules and guaranteeing that all legal obligations are met.
2. Building Trust and Confidence: The e-solution software company may increase
its clients' trust and confidence by prioritizing information security and privacy.
Customers are more inclined to interact with a business that respects their privacy
and takes appropriate security precautions to safeguard their sensitive information.
Stronger connections, recurring business, and favorable recommendations may
result from this.
3. Protecting Intellectual Property: In addition to customer information, an e-
solution software business may also handle priceless intellectual property, such
trade secrets or proprietary software code. Information security measures aid in
preventing unauthorized access, theft, or exploitation of this intellectual property,
preserving the company’s competitive edge and market position.
4. Managing Legal and Reputational Risks: Inadequate protection of client
information may have legal repercussions, such as penalties and court challenges.
A data breach or privacy violation can also seriously harm the e-solution software
company's image. By giving information security and privacy a priority, the
business can reduce these risks, stay out of legal trouble, and keep a good name in
the marketplace.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 79


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

5. Increasing Competitive Advantage: In the software sector, information security


and privacy are rapidly becoming distinguishing features. Customers are more
inclined to select a software provider that exhibits a dedication to data security. The
e-solution software company can outperform competitors by putting in place strong
information security measures and protecting privacy.

1.8.3 Operational Feasibility Report.

An automated project management system's suitability and feasibility are assessed in the
performance report for e-solution Private Ltd. This paper examines the operational facets
of the suggested system and assesses its operational viability. The study considers things
like organizational preparedness, the influence of new policies on old policies, and the
requirement for training.

Based on an investigation of efficiency, E-Solutions Private Limited finds that using an


automated project management system is more productive and lucrative. The system's
functionality and features match the organization's business requirements, but the benefits
that are anticipated, such greater scheduling, better visibility, and simpler communication,
are notoriously challenging to put into practice. The operational effectiveness and business
process success of a company may be improved with the right training and change
management practices in place.

Function of automated project management system in E-Solution private ltd.

1. Login: System authorization is provided through secure login capability. Project


director, project manager, and team leader can access this system.
2. Dashboard: having access to user profiles, which include personal data and
preference updates. shows recent activity, reports, and task data for the logged-in
user. Links or shortcuts to frequently used services should be provided.
3. Interface of project director: Create new projects, specify project parameters, and
arrange project objectives and deadlines. resource management, resource
allocation, and board recruiting. defining work priorities, distributing assignments
to project participants, and keeping track of project advancement. monitoring
expenses, controlling expenditures, and managing project budgets. Create project
reports, monitor project progress, and evaluate project success. enables board
members and company members to collaborate and communicate. Determine

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 80


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

project risks, evaluate their effects, and put mitigation plans into action. Maintain
version control, distribute files, and manage project documentation.
4. Interface of project manager: Project creation, resource management, task
assignment, progress monitoring, communication, budgeting, document
management, risk assessment, and reporting are all features available through the
project manager interface in the automated project management system. The project
manager is given the ability to efficiently plan, assign resources, monitor progress,
work with team members, and manage budgets. The interface offers a complete
toolbox for efficient project management, facilitating the successful delivery of
projects.
5. Interface of team leader: Review tasks, provide fresh working conditions, and
keep an eye on project development. the management of dependent tasks,
availability checks, and task assignment to group members. project-specific
resource management, resource management, and dispute resolution. Obtain project
reports, monitor team progress, and examine project data. gaining access to project-
related documents, adding files, and sharing them with other team members. Get
updates, reports, and reminders for job to stay on top of project-related
developments.
6. Monitoring of dashboard: To offer a thorough overview of all active projects,
including their status, development, and significant ideas. Monitoring project
progress and individual performance is important for keeping all members up to
date. Manages the distribution of resources for projects, including team members,
tools, and supplies. To inform members of project changes or significant milestones
via automated alerts and notifications.
7. Invoices and personal cost analysis: Based on pre-defined criteria, create, and see
invoices for completed project stages or milestones. a facility study carried out to
calculate a project's labor costs based on its complexity. Determine the overall labor
cost for the project considering the services rendered, the timeframe, and the
workforce. Creates bills based on the phases of a project that have been finished
and the corresponding labor charges. To make sure projects stay under budget,
track, and evaluate project expenses, including labor costs. Create financial
statements that detail the costs, income, and profits of E-Solution company.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 81


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.8.4 Scheduling Feasibility Report.

This design feasibility analysis focuses on process capabilities in an e-solution software


company and examines the possible advantages and difficulties of automating project
management systems. This report's goal is to evaluate the viability and effectiveness of
incorporating automated scheduling capabilities into an organization's project management
procedures.

System automation may significantly enhance project management procedures and help an
e-solution software company's companies succeed with the right preparation, training, and
support.

1.8.4.1 Milestone of the project.

In the process of putting an automated system into place, milestones are crucial
checkpoints. They act as significant progress indicators, ensuring that the project stays on
course and achieves its goals. The E-Solution Company can track its progress, address
problems, and deliver the automated system successfully and on schedule by establishing
milestones.

Milestone Start date End date Number of


Days
Describe the project's 05/05/2023 05/05/2023 01 Days
goals and parameters.

Make a feasibility 06/05/2023 09/05/2023 04 Days


analysis.

Collection of 10/05/2023 12/05/2023 03 Days


specifications.

Make a schedule. 13/05/2023 13/05/2023 01 Days

Initiate system 14/05/2023 16/05/2023 03 Days


implementation.

Design the system. 17/05/2023 21/05/2023 05 Days

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 82


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Development the 22/05/2023 28/05/2023 07 Days


system.

Testing the system. 29/05/2023 31/05/2023 03 Days

It is up to the user to 01/06/2023 05/06/2023 05 Days


train the system.

The project's gradual 06/06/2023 10/06/2023 05 Days


deployment is planned
and carried out by E-
solution Private
Limited.

Construct documents 11/06/2023 15/06/2023 05 Days


and update the
maintenance.

Obtain client feedback. 16/06/2023 19/06/2023 04 Days

Project completion. 20/06/2023 26/06/2023 07 Days

Table 4: milestone of the project.

1.8.4.2 Gantt chart of the project.


An effective project management tool for visualizing activities, deadlines, and
dependencies is the Gantt chart. It is essential for putting the automated system into place
since it allows for efficient project activity planning, scheduling, and monitoring. The Gantt
chart allows improved resource allocation and coordination, which eventually results in the
effective deployment of an automated system.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 83


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Figure 17: Gantt Chart of the project.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 84


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.8.5 Economical Feasibility Report.

E-Solutions Pvt Ltd wants to replace its present manual and error-prone procedures with
an automated project management system to cut costs and boost production. This paper
evaluates the possible economic gains by looking at the costs and advantages of the
suggested plan.

1.8.5.1 Cost of the system.

Cost Type Explanation Price


Software Costs Costs related to acquiring or licensing project Rs.
management software are included in this 40,000
category.

Costs associated with Costs associated with infrastructure and Rs.


infrastructure and development may include purchasing new 35,000
development software or engaging experts to help with
system integration.

Structures and Materials For the automation project management Rs:


system to function, make the appropriate 55,000
hardware and infrastructure investments.
Think about needs for storage, network
infrastructure, and server capacity.

Training Costs Training expenses might include paying for Rs.


classes, workshops, or online training 15,000
resources. Materials for instruction, teacher
fees, and staff time are all examples of costs.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 85


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Data migration cost Data extraction, transformation, and Rs.


integration costs may be included, as well as 25,000
any necessary data cleansing or
transformation.

Costs associated with to install a project management system, the Rs.


hardware and hardware infrastructure, which includes 45,000
infrastructure servers, networking hardware, and storage
devices, might be modified or purchased.

Costs for ongoing Costs for ongoing maintenance and support Rs.
maintenance and support may include those for system upgrades, bug 55,000
patches, software updates, and support
contracts with software suppliers or outside
service providers.

Total Initial investments Rs. 2,70,000

Table 5: Implement the cost of the system.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 86


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.8.5.2 Analysis that benefits systems.

The System Benefit Analytic Table in the Economic Impact Report gives a summary of the
advantages that an automation project management system may offer. It demonstrates the
precise advantages it offers to a business in terms of cost savings, productivity gains,
revenue augmentation, risk reduction, and other important areas. Act as expected to ensure
that company can make educated decisions regarding the use of it and are aware of the
possible return on investment.

Advantages Overview Measures That Profit Prediction


Can Be for the Year
Measured

Increase improved Increasing 20 Rs. 1,50,000


efficiency effectiveness It percentage of
streamlines project projects completed
management
procedures,
increasing
effectiveness.
Makes sure
resources are used
effectively and cuts
down on idle time.

Cost reduction Reduces operating Savings on Rs. 90,000


expenses by administrative
getting rid of expenses (20%)
manual and paper
operations.
Strengthens
manufacturing and
allocation
processes, cuts, and
avoids

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 87


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

inefficiencies, and
lowers labor costs.

Advanced Facilitates simple An improvement Rs. 80,000


Collaboration teamwork among in teamwork and
project involvement (30
participants via a %)
centralized
platform. Offers
tools for real-time
communication
that promote
productive
teamwork and
dispute resolution.

Careful Decision Makes it possible An increase in Rs. 60,000


Making for data-driven making well-
decision makers to informed
have precise and decisions (10%)
current project
information. Offers
information on the
performance,
hazards, and
resource allocation
of a project.

Higher levels of Higher levels of An improvement Rs. 70,000


client satisfaction client satisfaction in customer
are produced as satisfaction scores
project delivery (40%)
and performance
are strengthened.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 88


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Offers accurate
project activities,
transparent project
information, and
timely project
completion.

Risk Risk management Reduction in the Rs. 70,000


management provides proactive 40 percentage of
risk management failed projects
and prompt
response. It
identifies and
minimizes project
risk via visibility
and control.

Total (Current Rs. 4,57,000


Value)

Table 6: Analysis that benefits systems.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 89


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.8.5.3 Returns on Investment (ROI).

A financial statistic called return on investment (ROI) is used to assess an investment's


profitability. It gauges an investment's profit or return in relation to its outlay of capital.
ROI is frequently used to evaluate the financial success of projects, services, or
infrastructure investments and is stated as a percentage or ratio.

The flexible metric of return on investment (ROI) may be used to evaluate a range of
investments, including capital projects, marketing initiatives, equipment purchases, and
technology installations. It aids decision-makers in evaluating investment possibilities,
prioritizing investment-based allocations, and evaluating investment feasibility and
possible returns.

ROI = Profit / cost of investment * 100

Profit = current value – cost of investment

Analysis of ROI of the project.


Profits = Total (Current value) – total initial investment

= Rs. 4,57,000 - Rs. 2,70,000

= Rs. 1,87,000

ROI (%) = (profits / total initial investment) * 100

= (Rs. 1,87,000 / Rs. 2,70,000) * 100

= 0.6925 * 100

= 69.25 %

Total profit of the project is Rs. 4,57,000 and total initial investment is Rs. 2,70,000 so,
finally Return on Investment of project is 69.25 %.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 90


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.9 Conclusion.

A feasibility report is a thorough analysis that assesses a proposed project or program's


performance, viability, and likelihood of success. It looks at several variables, including
technical, financial, legal, operational, and organizational viability to see if the project is
feasible and worthwhile pursuing. Feasibility reports provide in-depth analysis of project
dynamics and impact, assisting the E- Solutions software team in making decisions, and
they also help the team to identify potential problems.

A technical feasibility study evaluates a project's technical aspects, including the


availability of resources, infrastructural requirements, software compatibility, and technical
expertise required for execution. E-Solution Software Company can use it to compare if
the suggested mission can be effectively developed and applied from a technological
perspective.

The economic feasibility study assesses a task's financial viability. The expected costs,
benefits, and ability return on investment (ROI) are all examined. This document gives E-
Solution Software Company the information they need to assess the project's financial
viability and compatibility with the agency's spending limits and long-term economic
objectives.

In a legal feasibility study, the assessment of the assignment's regulatory and criminal
requirements is the focus. It ensures that the suggested assignment conforms with all
relevant laws, regulations, and corporate standards. It aids in reducing criminal risks and
preventing capacity jail issues that might arise throughout the implementation and
management of the assignment for E-Solution Software Company.

A venture's alignment with the current operations, procedures, and capacities of E-Solution
Software Company is assessed in the operational feasibility assessment. It evaluates how
the assignment will impact the organization's workforce, resources, and personnel. This
document gives the company the information it needs to decide if the project can be
integrated into its current operations without causing major interruptions.

Assessment of the project timeframe, milestones, and scheduling requirements is the


expertise of the scheduling feasibility report. It assesses if it is possible to complete the
project within the desired time while considering any dependencies, resource availability,

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 91


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

and capability risks. This record helps E-Solution Software Company effectively plan and
timetable the job, ensuring that it will be completed on schedule.

As they provide important insights into the technical, economic, legal, operational, and
scheduling aspects of an enterprise, feasibility evaluations are essential to E-Solution
Software Company. They support decision-making, risk reduction, resource allocation,
compliance, and operational efficiency, ensuring the successful execution of projects that
are in line with the aspirations and objectives of the company.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 92


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 93


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Important of the feasibility report for E-Solution Private Ltd.

An e-solution software business should consider feasibility before deploying the automated
project management system shown in the scenario. The feasibility study is used to establish
if the predicted benefits outweigh the expenditure needed to execute the automation
process, and he is. The financial ramifications are looked at, including development
expenses, hardware and software costs, training costs, and continuing maintenance costs.
This research makes sure that the business can maximize expenses and achieve a decent
return on its investment. The effectiveness and efficiency of a corporation are examined in
the feasibility study together with the potential effects of an automated project management
system. It investigates how the system may boost resource allocation, increase efficiency,
reduce manual mistakes, and simplify procedures.

Feasibility study quantifies the resources—skilled labor, hardware, and software—


necessary for the implementation and maintenance of automated project management
systems. Helps the agency build suitable allocation plans and training requirements by
assisting in the identification of resources for each need. The technological compatibility
of the suggested solution with the business's current systems and software is examined in
the feasibility study. ensures that the system will operate without issues or conflicts inside
the company's IT environment. These tests aid in avoiding alignment problems and
guarantee accurate application.

When determining whether to use a self-developed and validated project management


system, feasibility studies consider the preparedness and acceptability of important
company, such as project managers, managers, employees, and team leaders. It allows the
board to design efficient communication, training, and change management strategies by
identifying any potential changes. For an e-solution IT company to determine if it is feasible
and acceptable to use an automated project management system, feasibility study is crucial.
It improves decision-making, lowers risk, and ensures that programs are implemented
properly, leading to increased production, cost savings, and efficiency.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 94


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Strengths and weakness of feasibility report.

Strengths of feasibility report.

1. Making educated Decisions: Feasibility reports provide insightful information and


useful insights that facilitate making educated decisions. Organizations can make
decisions based on a clear understanding of potential risks and benefits by providing
a thorough study of numerous elements.
2. Risk Identification: Project-related risks and difficulties are systematically noted
in feasibility reports. Organizations can create strategies to reduce risks and deal
with issues before they become more serious because of this proactive approach.
3. Allocation of Resources: A feasibility report includes a thorough breakdown of the
necessary financial, technical, and human resources. This facilitates resource
allocation for businesses in an efficient and effective manner, reducing wastage and
improving project results.
4. Understanding the Market: Market research and analysis are frequently included
in feasibility studies, providing information on demand, rivalry, and possible
market prospects. Organizations may better adjust their projects to the needs of the
market and take advantage of trends by using this expertise.
5. Goal Alignment: Feasibility reports evaluate how well a project aligns with the
goals, mission, and strategic objectives of an organization. This guarantees that
projects make a positive contribution to the organization's overall direction.
6. Flexibility and Adaptability: Feasibility reports frequently include backup plans
and alternate scenarios, enabling organizations to modify their strategy if conditions
change.
7. Communication tools: Feasibility studies are useful communication tools because
they present complex information in a well-organized and understandable manner.
This promotes teamwork, teams' alignment, and efficient stakeholder
communication.
8. Project Focus: By looking at several components of a project, feasibility reports
assist organizations in defining the project's scope, goals, and significant
checkpoints. This emphasis improves the planning and implementation of projects.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 95


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Weakness of feasibility report.

1. Assumption based: Feasibility assessments heavily rely on assumptions about


potential outcomes, market developments, and other variables. If these
presumptions turn out to be incorrect, it may result in faulty conclusions and bad
choices.
2. Limited Predictive Power: Because the future is inherently unpredictable,
feasibility studies cannot account for every possible variable or unforeseen
circumstance that can affect the project.
3. Subjectivity: The opinions and biases of individuals who undertake the analysis
might have an impact on feasibility studies. This could cause some aspects to be
overestimated or underestimated, which would influence the report's accuracy.
4. False Information: Due to time or resource restrictions, feasibility reports may not
contain all necessary information. This might lead to inaccurate or biased
assessments.
5. Overemphasis on Financial Metrics: Feasibility assessments frequently place an
excessive reliance on financial metrics while occasionally ignoring other crucial
components like social, environmental, or ethical considerations.
6. Lack of Flexibility: Feasibility studies may not sufficiently address the possibility
of project adaptation or change depending on new information or evolving
circumstances.
7. Narrow Scope: Feasibility reports may place a heavy emphasis on financial facts
and quantitative information, potentially omitting qualitative elements that may be
crucial to the project's success.
8. Complexity: A feasibility report may not fully account for all subtle aspects and
interdependencies, which results in an oversimplified picture, depending on how
complex the project is.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 96


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Analyzing the Strengths and Weaknesses of Feasibility Reports for Implementing an


Automated Project Scheduling System at E-Solution Company

For e-solution company, feasibility reports are crucial decision-making tools since they
offer a thorough assessment of a project's potential while also identifying its inherent
strengths and shortcomings. A feasibility report has many different advantages. The first
benefit is that it makes it easier to do a comprehensive and all-encompassing analysis of a
project's different sides, from technical and financial concerns to operational, legal, and
organizational considerations. This thorough examination helps to spot potential barriers
and provides a clear assessment of the project's viability, enabling e-solution company to
make wise decisions about how to carry it out.

The feasibility study gives e-solution company the tools it needs to make intelligent
decisions. The study gives the business the tools it needs to track the project's development,
allocate resources wisely, and predict prospective market opportunities. This guarantees
that the path of e-solution company is steered by a sound strategy based on empirical
findings rather than guesswork. Another key aspect is the study's focus on risk assessment
and mitigation. The possibility of the software project's success is increased by e-solution's
ability to effectively build risk mitigation methods and contingency plans by digging into
potential issues and impediments inside the project.

The inclusion of cost estimates, ROI studies, and potential cost reductions in the feasibility
report gives the e-solution company a thorough grasp of the project's financial viability.
This enables the business to match its objectives with its resources, creating a financially
sound project. The feasibility report has advantages, but it also has drawbacks. The future's
inherent uncertainties are one noteworthy worry. By relying too heavily on assumptions,
feasibility evaluations may fail to fully account for changes in regulations, market trends,
or technological improvements. To overcome this limitation, e-solution company must
continue to be watchful by routinely examining market trends, reacting to changing
conditions, and keeping an eye out for prospective changes in the business environment.

Sometimes, feasibility studies focus too much on the technical, financial, and operational
components while unintentionally omitting important social and environmental
ramifications. To fill this gap, e-solution company should think about conducting additional
evaluations that take sustainability issues into account. The results of feasibility reports

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 97


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

may be skewed by subjectivity and bias. E-solution company can lessen this risk by
encouraging openness, including a range of viewpoints in decision-making, and obtaining
external validation through independent audits. The feasibility study's reliance on current
data opens the door to potential mistakes brought on by inaccurate or out-of-date data. This
shortcoming can be addressed by E-solution company by routinely reviewing and updating
the study to guarantee its applicability and correctness.

Although risk assessments and mitigation strategies are included in feasibility studies, not
all potential risks or challenges may be addressed. To effectively deal with unforeseen
issues, a proactive strategy comprising thorough risk analysis, extensive contingency
planning, and watchful issue recognition becomes essential. The benefits of a feasibility
assessment give e-solution company the confidence and foresight to start projects.
Although the report has flaws, e-solution company may overcome them by adopting a
proactive and flexible strategy, making sure that the company's endeavors are supported by
well-informed decision-making, thorough assessments, and a dedication to success.

Critical evaluation of strengths and weakness of feasibility report.

A feasibility study serves as a compass in the field of project management, pointing


organizations in the direction of successful decision-making and project execution. This
thorough evaluation of a proposed project looks closely at its technical, financial,
operational, legal, and organizational issues. Its goal is to provide readers a thorough grasp
of the opportunities and problems that lie ahead so they may make wise decisions.

Feasibility reports come in a variety of formats, each one focused on a different topic.
Technical feasibility examines the project's technology components to make sure that the
necessary tools and resources are accessible. The project's alignment with the company's
financial objectives is determined by evaluating the project's financial ramifications.
Operational feasibility evaluates the project's ability to be carried out operationally. Legal
and regulatory issues that can impede the project are addressed in the legal feasibility
section. The project's organizational viability is evaluated by looking at how well it fits
within the business's current structure and goals.

These kinds of feasibility assessments are essential for the installation of an automated
project scheduling system. Technical viability guarantees that the infrastructure and
technology required to support the implementation of the system are in place. The system's
economic viability is determined by evaluating the prospective cost savings and return on

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 98


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

investment. Operational viability ensures that the business has the operational capability to
use and operate the system in an efficient manner. The system conforms with laws and is
in line with the organization's goals thanks to legal and organizational feasibility.

E-Solution Company benefits in several ways from the automated project scheduling
system put in place based on the feasibility report as it strives for effective project
management. Since the feasibility report gives E-Solution a comprehensive picture of the
system's functionality and prospective outcomes, a clear course of action is guaranteed. The
system also equips the business with the tools necessary to optimize resource allocation,
task delegation, and project timeframes.

The automated solution encourages seamless teamwork and client collaboration, improving
coordination and communication. Processes are streamlined, bottlenecks are diminished,
and productivity is increased because of this increased efficiency. The feasibility analysis
served as a guide for E-Solution's choice to install the system, positioning the business at
the forefront of innovation and giving it the tools necessary to successfully complete
challenging projects.

Before starting a project, feasibility assessments serve as guiding beacons by providing a


comprehensive overview of the surroundings. These analyses are extremely useful tools for
developer since they give a thorough grasp of the difficulties and opportunities that lie
ahead. By using an automated project scheduling system, which was made possible by this
study, E-Solution was able to gain a competitive edge in the field of project management
and represent a strategic shift towards excellence and efficiency.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 99


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Activity 03.
Software Requirements Specification (SRS).

A software requirements specification (SRS) is a document that outlines the functions and
performance standards for the software. It also outlines the functionality the product must
have to satisfy the demands of all parties involved (users and company) (Krüger, January
17, 2023).

Figure 18: SRS Document.


An SRS not only helps verify that all requirements are completed, but it also keeps teams
coordinated and working towards a shared vision of the product. In the end, it may assist
people in making crucial choices about the lifespan of product, such as whether to retire a
feature that has become dated. Making an effective SRS requires time and thought.
However, the time spent writing an SRS is repaid at the development stage. team will have
a greater understanding of product, the commercial demands it meets, its target market, and
the estimated time of completion.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 100


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

The following are some objectives an SRS should reach:

1. Give the consumer input to make sure the IT company is aware of the problems the
software system should resolve and how to resolve such problems.
2. Simply by laying out the criteria, people might aid in breaking an issue down into
smaller components.
3. Increase the pace of testing and validation.
4. Encouraging reviews.

Components of an SRS.

An SRS should possess the qualities listed below:

1. Correct: should always represent the functioning and specifications of the product.
2. Unambiguous: there shouldn't be any room for doubt about how the rules should
be interpreted.
3. Complete: should include all the functionality a customer has requested.
4. Consistent: The same norms and abbreviation must be used throughout the whole
document.
5. Ranked according to stability or relevance: Every need is significant, regardless
of how it is ranked for stability or relevance. However, some are essential and must
be completed before other obligations, while others may wait. It is preferable to
categorize each demand according to how crucial and stable it is.
6. Verifiable: An SRS is only verifiable if all the requirements are possible to be
independently confirmed. If there is a way to quantitatively assess if the finished
program satisfies a requirement, it is verifiable.
7. Modifiable: An SRS must systematically and distinctly specify each requirement.
If anything changes, the dependent requirements and the requirements can be
adjusted without affecting the others.
8. Traceable: An SRS is traceable if it clearly identifies the source of each of its needs
and makes it simple to refer to each requirement in subsequent development.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 101


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Requirements gathering.

The process of determining and specifying what a software system must perform to satisfy
the demands of its users is known as requirements gathering. Stakeholder interviews, user
needs analysis, and the creation of precise specifications that developers may utilize to
design the system are all part of this process (Tornqvist, Mar 26).

Figure 19: Method of requirements gathering.


Benefits of requirements gathering.

1. less flaws in the product that was delivered.


2. Faster delivery of the completed product with less development rework.
3. reduced unneeded features.
4. lower development costs.
5. fewer needs that are miscommunicated.
6. fewer project snags.
7. greater levels of stakeholder satisfaction.
8. greater levels of developer satisfaction.
9. higher levels of user and customer satisfaction.
10. products with a relevant feature set and good performance.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 102


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Phases of requirements gathering.

Step 1: Assign roles

Assigning responsibilities to project is the first stage in the requirements collection process.
People now need to determine who the project stakeholders are. Any participant in the
project, including internal and external partners, is referred to as a stakeholder. The project
manager, project administrator, designers, product testers, and developers are additional
positions. These professionals can assist people in determining the needs and assets people
require to achieve the project's objectives.

Step 2: Interview the stakeholders.

Meet with project stakeholders once people have determined who they are to learn more
about what they expect from the project. Because stakeholders are the ones for whom
developer are ultimately producing deliverables, it is important to understand what they
want. Since the stakeholders are the ones for whom the project will eventually be
developed, people should consult them to help people construct list of needs.

Some questions can ask include:

a) What is the objective of this project?


b) What in your opinion would ensure the success of this project?
c) What worries you about this project?
d) What would you like this good or service to accomplish that it currently doesn't?
e) What modifications to this project would you suggest?

Step 3: Gather and document.

The third phase of the procedure occurs at the same time as the second. As developer
interview stakeholders, will acquire information. Have all the information developer
require before beginning assignment because the objective is to document as much as
developer can. Utilize a project management tool to gather and record this data. developer
may maintain project requirements, project communication, and project plan all in one
location in this manner. Here are some samples of things developer may record:

a) responses from stakeholders to interview questions.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 103


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

b) Stakeholder inquiries.
c) Intervenor requests.
d) Stakeholder feedback.
e) During interviews, there may be queries and remarks.

Step 4: List assumption and requirements.

Using the data, developer have acquired, construct a requirements management strategy.
Think about the inquiries developer first sought to resolve throughout the needs collecting
procedure. Use them to develop needs goals, which may include:

a) Length of project schedule: Developer may use a Gantt chart to visualize any
project needs that depend on project milestones and to map out project timetable.
While certain criteria may only be applicable during specific project phases, others
may be applicable for the whole life of the project.
b) Participants in the project: Decide exactly how many designers, developers, or
managers developer will need to complete each phase of project, as well as who
else will be on team.
c) Project hazards: Identifying project needs involves understanding project risks.
Determine which risks, such as stakeholder comments, schedule delays, and a lack
of funding, are most important by using a risk register. Plan a brainstorming session
with the team to come up with ways to mitigate these risks.

Step 5: Obtain consent.

To make sure developer are addressing user demands after formalizing project
requirements, developer will need stakeholders' approval. By ensuring that stakeholders are
aware of the project's boundaries from the start, encouraging good communication may
also help prevent scope creep. After that, developer may go on with implementation
strategy, which can involve gathering resources and putting together a team.

Step 6: Evaluate development.

Monitoring the development of project is the final step in the procedure. As developer
progress through the project execution process, developer may utilize project management
software to keep track of project budget and other needs. With project management
software, developer can monitor changes to project in real-time and respond quickly when
something goes wrong.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 104


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Requirements gathering ways.

1. Brainstorming: When gathering requirements, brainstorming is done to elicit as


many ideas as possible from a group of individuals. Typically used to pinpoint
potential problems to solve and make specifics of possibilities clear.
2. Focus group: When building an AS-IS process document and determining the
scope of migration initiatives, reviewing an existing system's documentation might
be helpful. In a perfect world, developer would even be examining the requirements
that were used to create the present system as a basis for capturing the ones that are
in place now. To ask inquiries and validate the completeness of requirements,
developer frequently find tidbits of information buried in existing papers.
3. Interface analysis: A software product may have either human or automated
interfaces. Integration is merely another interface for other systems and devices.
Making ensuring that developer develop useable software requires using user-
centric design methodologies, which are quite effective. Interface analysis is crucial
for making sure developer don't miss requirements that aren't immediately obvious
to users by looking at the contact points with other external systems.
4. Interviews: Interviews with users and stakeholders are essential to developing
outstanding software. Developer is highly unlikely to meet the needs of the users
and stakeholders if developer don't comprehend their objectives and expectations.
To effectively evaluate and consider each interviewer's opinion, developer must
also be aware of their perspective. A superb analyst will learn more from an
interview than an ordinary analyst thanks to their ability to listen.
5. Observation: An analyst can pinpoint a process flow, steps, pain areas, and chances
for change by watching users. There are two types of observations: passive and
active (questioning while observing). Active observation is more useful for
understanding an existing business process, but passive observation is better for
receiving feedback on a prototype (to fine-tune requirements). Either strategy is
viable.
6. Use case scenarios: Use case scenarios are written explanations of how developer
believe team members will carry out the project. These scenarios can contain the
project participants, expectations for them, and the actions they'll take to achieve
project's objectives.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 105


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

7. Prototype: A relatively new method of acquiring requirements is prototyping. With


this method, developer collect early requirements and utilize them to create a
prototype of the solution. developer provide this to the customer, who then provides
develoepr with more specifications. developer switch the program and go back and
forth with the client. This iterative method continues for the predetermined number
of iterations or until the product satisfies most business requirements.
8. Mind mapping: Mind mapping is a visual brainstorming technique that is very
useful for determining the project requirements developer need. Put the main
project goal in the center of mind map. List the kind of goods developer need in
bubbles that branch off from the primary goal. developer can add additional specific
criteria as the map spreads out until developer have written down every requirement
for project.
9. Requirements workshop: Workshops are a great way to obtain needs.
Collaboration among the interested stakeholders results in a more organized
requirement document than a brainstorming session. The generation of domain-
model artefacts (such as static diagrams and activity diagrams) is one technique to
document the cooperation. Two analysts will be more beneficial for a workshop
than one.
10. Reverse engineering: When a migration effort lacks access to enough
documentation of the current system, reverse engineering will reveal the system's
functionality. It won't indicate what the system ought to do or when the system is
doing improperly.
11. Surveys and questionaries: A survey or questionnaire can be used to gather
information from many people who are too many to interview given the time and
financial restrictions. The survey may require respondents to choose an option, rate
something ("Agree Strongly, agree"), or answer open-ended questions in their own
words. Designing surveys is challenging since responders may be skewed by the
questions.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 106


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Types of requirements analysis

The success of a system or software project may be evaluated thanks to the extremely
important procedure known as requirements analysis. There are two main categories of
requirements.

a) Functional requirements.
b) Non-functional requirements.

Figure 20: Types of requirements analysis.


Functional requirements.

These are the specifications that the system must meet to satisfy the end user's fundamental
needs. As a requirement of the contract, all these features must be built into the system
(Kompaniets, February 17, 2023).

These are shown or described as the input to be provided to the system, the operation carried
out, and the intended outcome. In contrast to non-functional needs, they are essentially the
user-stated criteria that are visible in the finished product.

Non-Functional requirements.

In essence, they are the requirements for quality that the system must meet in accordance
with the project contract. Depending on the project, these criteria may be prioritized
differently or used to a different degree. Additionally known as non-behavioral
requirements (Gorbachenko, 2023).

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 107


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

They mostly address matters like:

a) Portability
b) Security
c) Maintainability
d) Reliability
e) Scalability
f) Performance Reusability
g) Flexibility

Comparison table between the functional and non-functional requirements.

Functional requirements Non-Functional requirements


A functional requirements defines a A non-functional requirements defines
system or its component. the quality atribute of a software system.

It specifies “what should the software It places constraints on “how should the
system do?” software system fulfill the functional
requirements?”

Functional requirements is specified by Non-functional requirements is specified


user. by technical peoples eg- architect,
technical leaders, software developers.

It is mandatory. It is not mandatory.


It is captured in use case. It is captured as a quality attribute.
Defined at component level. Applied to a system as a whole.
Helps developer verify the functionality Helps developer verify the performance
of the software. of the software.

Functional testing like system integration, Non functional testing like performance,
end to end, API, testing, etc are done. stress, usability, security testing, etc are
done.

Usually easy to define. Usually more diificult to define.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 108


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Example: Example:
1) whenever a user connects into the 1) Emails should be sent no more than 12
system, authentication must be hours after engaging in such an action.
performed. 2) Each request should be processed
2) Shutdown of the system in the event of within 10 seconds.
a cyberattack. 3) When there are more than 10,000
3) Every time a person registers for the concurrent visitors, the website should
first time on a certain software system, a load in 3 seconds.
verification email is issued to them.

Table 7: Comparison table between the functional and non-functional requirements.


Functional requirements identify the functions that each component of a software system
must perform. The question "What should the software system do?" is addressed. These
specifications, which the users must submit for the system to work, are necessary. They are
often documented in use cases and aid in system integration and end-to-end testing, which
serve to validate the software's functioning.

Non-functional requirements specify the standards or limitations the software system must
meet. In doing so, they provide a response to the query, "How should the software system
fulfil the functional requirements?" Technical experts like architects, technical leaders, and
developers define these needs. Non-functional requirements are requirements that apply to
the system as a whole; they are optional, but they are essential to ensure the system's
performance. They are recorded as quality attributes and support testing methods including
performance, stress, usability, and security testing to confirm the software's functionality.

In comparison to functional requirements, non-functional requirements are sometimes


harder to define. They cover things like reaction times, scalability, safety precautions, and
usability standards. Non-functional requirements could state, for instance, that emails must
be sent within 12 hours after a certain action, that each request must be handled within 10
seconds, or that the website must load quickly when there are more than 10,000 concurrent
users. These specifications guarantee that the software system satisfies user expectations
and performs according to predetermined performance criteria.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 109


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

SRS Report for E-Solution Private Limited.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 110


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 111


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 112


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.1 Introduction about the importance of SRS Report for E-Solution Private Limited.

Figure 21: SRS Report.

An important task for E-Solution Private Limited, a top software provider in the sector, is
the creation of an automated project scheduling system. The creation of an extensive
Software Requirements Specification (SRS) report is crucial to the project's success. A key
document outlining the functional and non-functional requirements, restrictions, and
expectations of the automated project scheduling system is the SRS report.

The project's goals and scope are clearly and succinctly explained in the SRS report. It
specifies the precise attributes and capabilities that the scheduling system must have, such
as work distribution, resource administration, and project tracking. The SRS report serves
as a roadmap for the developer by outlining these needs in detail, ensuring that everyone is
on the same page and working towards the same objectives.

Between the company, including the client, project managers, developer, and testers, the
SRS report acts as a communication tool. It makes effective cooperation possible and aids
in expectation management. The SRS report promotes conversations and explanations by
outlining the project's needs, which lowers the likelihood of misunderstandings and
potential disputes during the development process.

When planning and estimating a project, the SRS report is crucial. It helps in planning the
project's schedule, allocating resources, and estimating costs. The SRS report allows for
proper planning, ensuring that the project is carried out within the specified time and
financial limits by clearly describing the project's requirements and restrictions. The SRS
report acts as a standard for testing and quality control. It offers a foundation for developing

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 113


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

test cases and confirming the functionality of the system. The testing team may confirm
that all the required specifications are satisfied, and the system works as intended by
consulting the SRS report.

To develop an automated project scheduling system for E-Solution Private Limited, the
SRS report is of utmost significance. It serves as a roadmap, promoting efficient
communication, project planning, and quality control. The E-Solution Private Ltd lays a
strong basis for the effective creation and implementation of the scheduling system by
devoting time and effort to producing a thorough SRS report, thus increasing their
productivity and efficiency in project management.

1.2 Selected methodology for E-Solution Private Ltd.

Figure 22: Agile Methodology.

As a software development, the preference lies with the Agile approach, particularly the
Scrum methodology, for implementing automated project scheduling systems. Embracing
Scrum's iterative and collaborative principles ensures streamlined and efficient project
execution, fostering successful outcomes in the realm of software development.

The Scrum model, which is part of the Agile methodology, has several benefits that make
it easier for the software development that will meet the E-Solution Private Ltd.’s
automated project scheduling system. The Agile methodology, specifically the Scrum
framework, offers substantial benefits to developer in implementing the E-Solution Private
Ltd. automated system. Scrum's iterative and incremental approach allows for continuous

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 114


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

feedback and adaptation, ensuring that the development process remains flexible and
responsive to changing requirements. This is particularly advantageous in the dynamic
landscape of the IT industry, where technology and market demands can evolve rapidly.

Scrum's emphasis on collaboration and self-organizing teams fosters a sense of ownership


and accountability among developer, promoting a more engaged and motivated workforce.
This leads to improved productivity and better overall project outcomes. Scrum encourages
regular communication and transparency between company members, ensuring that all
parties are aligned with project goals and progress.

Compared to traditional methodologies, such as the Waterfall model, Agile and Scrum
provide superior adaptability and responsiveness. In the traditional approach, changes in
requirements often lead to costly and time-consuming rework, while Agile's incremental
development allows for more efficient adjustments and reduced risk of project failure.

Developer can apply the Agile and Scrum methodology throughout various stages of
implementing the E-Solution Private Ltd. automated system. During the initial planning
phase, they can work closely with company members to prioritize requirements and create
a backlog of tasks. Sprint planning sessions enable the team to set achievable goals for each
iteration, and regular sprint reviews and retrospectives provide opportunities for continuous
improvement.

Agile, especially Scrum, proves to be a more effective and efficient methodology for
developer in implementing the E-Solution Private Ltd. automated system. Its flexibility,
collaborative nature, and focus on delivering incremental value make it the preferred choice
for modern IT companies, driving successful project completion and fostering a culture of
continuous improvement.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 115


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.2.1 Advantages of Scrum Methodology.

1. Flexibility and Adaptability: Scrum encourages an incremental, iterative


approach, enabling developer to adjust to shifting priorities and requirements. This
implies that the developer of an automated project scheduling system can swiftly
adapt to changing needs, include new features, and modify the system considering
user feedback and new project requirements.
2. Faster Delivery: Because Scrum focuses on shorter development cycles called
sprints, it is possible to deploy the automated project scheduling system in small
increments, enabling earlier releases of crucial functionality. This quick delivery
strategy guarantees that company members may begin taking advantage of the
system's features sooner and can offer input for ongoing enhancement.
3. User Involvement: Throughout the development process, Scrum promotes users'
active participation and collaboration. The automatic project scheduling system can
be customized to match each user's unique needs and preferences by involving
project managers, team members, and other users.
4. Enhanced Communication: Daily stand-up meetings and frequent sprint reviews
are key components of Scrum, which promote open dialogue and transparency. This
implies that developer can rapidly discuss progress, difficulties, and future
adjustments in the context of putting in place an automated project scheduling
system, assuring alignment with project objectives and expectations.
5. Continuous Improvement: Scrum lays a big focus on taking what developer learn
from each sprint and applying it to the next one. Based on user feedback and actual
usage, developer can continuously improve the functionality, user experience, and
performance of an automated project scheduling system.
6. Clear Prioritization: Scrum's product backlog aids in classifying features and
functionalities according to their value and priority. This prioritization can be used
by developer to make sure that the automated project scheduling system's most
important parts are created first, maximizing its effectiveness.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 116


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.2.2 Disadvantages of Scrum Methodology.

Even though the Scrum technique has many benefits, it's crucial to consider its drawbacks
while putting one in place at the software firm. Scrum has certain limitations, such as the
possibility for scope creep, lack of predictability, dependence on good teamwork,
dependency on large-scale projects, and need on strong team communication.

But by employing tactics like using scaling frameworks for bigger projects, establishing
structured estimation, and forecasting techniques for better predictability, encouraging
effective communication and collaboration within the team, incorporating necessary
documentation practices, and maintaining a well-defined product backlog with a strong
product owner to manage scope creep, these difficulties can be overcome. E-Solution
private ltd company automated system can maximize the advantages of Scrum while
minimizing potential dangers and assuring the effective adoption of the automated project
scheduling system by proactively addressing these drawbacks.

1.3 Requirements gathering for E-Solution Private Ltd automated project scheduling
system.

For the software business E-Solution Private Ltd to deploy the automated project
scheduling system, requirements collecting is of the highest significance. It is essential to
ensure that the system satisfies the unique requirements and expectations of the business
and its e-solution company. E-Solution may obtain a thorough grasp of the functions,
features, and restrictions that the scheduling system should have by gathering requirements.
This knowledge helps the developer to plan and create a solution that supports the goals of
the business and improves project management effectiveness.

Requirements collecting encourages effective cooperation and communication among


company members, allowing them to offer suggestions, define expectations, and spot
possible problems before they arise. It also acts as a starting point for project planning,
estimating, and validation, ensuring that the system is created, put into use, and achieves
the expected results on schedule. Overall, requirements gathering ensures a clear grasp of
what the automated project scheduling system must do, which lays the groundwork for a
successful implementation.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 117


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.3.1 Interviews.

Set up separate one-on-one or group interviews with the project director, team leader, and
project manager. To cover a range of topics, such as project objectives, intended
functionality, user needs, and probable obstacles, prepare a series of structured questions.
To facilitate the exchange of thoughts and insights, conduct the interviews in a relaxed and
open setting.

1.3.2 Surveys and questionaries.

Create and give the project manager, team leader, and project director surveys or
questionnaires. Ask pertinent questions about features, user experience, integration needs,
and intended outcomes connected to the deployment of the automated project scheduling
system. Encourage participants to offer thorough criticism and recommendations for
improvement.

1.3.3 Regular meetings and interview.

To get updates, insights, and comments, schedule frequent meetings and conversations with
the project manager, team leader, and project director. Encourage open communication and
foster a teamwork atmosphere where participants are free to express their ideas, worries,
and suggestions.

1.3.4 Document Analysis

Ask the project manager, team leader, and project director for any pertinent project
paperwork, such as project charters, requirements papers, and business process
documentation. Examine these papers to learn more about the project management
techniques now in use, any gaps that have been found, and any prospective needs for the
automated project scheduling system. Determine the areas where the automated system
may improve efficiency, streamline operations, and improve project monitoring and
reporting.

1.3.5 Prototype and Demos.

Send the project manager, team leader, and project director prototypes or early iterations
of the automated project system. To get their opinions on the system's usability, user
interface, and overall user experience, conduct evaluations and demos. Include their
recommendations and demands in the system development and design process.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 118


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4 Requirements collected for E-Solution Private Ltd.

1.4.1 Functional requirements for E-Solution Private Ltd.

For E-Solution Private Ltd. to build the automated project scheduling system, obtaining
functional requirements is essential. These specifications outline the precise attributes,
capabilities, and features the system must have to satisfy the demands of the business. E-
Solution can make sure that the automated project scheduling system is in line with their
project management goals by defining and documenting key functional requirements, such
as work allocation, resource management, project monitoring, and reporting. The project
manager, team leader, and project director can collaborate, communicate, and capture the
crucial functional requirements for a successful implementation of the automated project
scheduling system using efficient requirement gathering techniques like interviews,
workshops, surveys, and document analysis.

1.4.1.1 Project Director.

a) Login: The project director should have a safe way to enter their credentials to access
the system. To guarantee authorized access, authentication measures like a username and
password should be in place.

b) Dashboard: The project director needs a thorough dashboard that offers a summary of
all active projects, their statuses, and important performance metrics. A quick peek at
project progress, resource allocation, financial indicators, and other pertinent project-
related data should be provided through the dashboard.

c) Build the Project Profile: The system should allow the project director to build and
manage project profiles. The project director may specify the project's specifics, goals,
benchmarks, deliverables, and timeframes using this feature.

d) Choosing Team Leaders for the Team: The project director should be able to choose
team leaders to manage project teams. To guarantee efficient project execution, this
component enables effective team management and responsibility delegation.

e) Create the Team for the Project and Assigning Team Members: The project director
should be able to build and manage project teams inside the system, including assigning

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 119


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

team members. The project director can use this capability to allocate team members to
projects based on their qualifications, experience, and availability.

f) Assign the Project Manager: A project manager should be able to be assigned by the
project director to oversee and coordinate the project. Through the course of the project
lifetime, this feature guarantees efficient project management and leadership.

g) Monitoring: Real-time project monitoring tools should be available to the project


director so they can keep tabs on the general status of the project, resource usage, and
financial data. For simple monitoring and decision-making based on project performance,
the interface should include visual representations, such as charts or graphs.

h) Features that can be updated: The project manager should be able to alter system
requirements and project features. This capability enables ongoing project specification
improvement and situational or need-driven adaptation.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 120


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.1.2 Project Manager.

a) Login: The project manager should have a safe way to enter their credentials to access
the system. To guarantee authorized access, authentication measures like a username and
password should be in place.

b) Dashboard: A thorough dashboard that gives a rundown of all active projects, their
states, and important performance metrics should be available to the project manager. A
quick peek at project progress, resource allocation, financial indicators, and other pertinent
project-related data should be provided through the dashboard.

c) Task Assigning Team Leaders: Within the system, the project manager should be able
to allocate tasks to team leaders. For effective delegation and administration, the interface
should enable the project manager to provide job specifics, due dates, priority, and
dependencies when allocating tasks to team leaders.

d) Generating Phase Reports: Project milestones, deliverables, and related


documentation for each project phase should be included in phase reports that the project
manager is able to create. The interface should offer the instruments and models required
to produce thorough phase reports that emphasize successes, difficulties, and subsequent
actions.

e) Billing: The project manager should be able to create invoices or bills based on resource
usage, project milestones, and established payment conditions. The interface should enable
bill generation customization depending on project specifications and financial constraints.

f) Monitoring: To be able to track overall project progress, resource use, and financial
KPIs, the project manager should have access to real-time project monitoring services. For
simple monitoring and decision-making based on project performance, the interface should
include visual representations, such as charts or graphs.

g) Collaboration and communication: The interface should make it easier for the project
team members to work together and communicate, enabling the project manager to assign
tasks, provide updates, and give the team feedback. To promote effective cooperation,
features like message boards, messaging systems, or connectivity with team
communication tools should be included.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 121


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.1.3 Team Leader.

a) Login: The system should allow the team leader to log in securely using their own
credentials. To guarantee authorized access, authentication measures like a username and
password should be in place.

b) Dashboard: A thorough dashboard that offers a summary of current projects,


milestones, and project status should be available to the team leader. The team leader
should be able to monitor and manage project health using the dashboard's key performance
indicators (KPIs), which should show project progress, resource allocation, and timetables.

c) Supervision: The team leader should have access to tools that allow for real-time project
monitoring, such as task completion status, progress tracking, and milestone
accomplishments. To assist in swiftly analyzing project status and highlighting areas that
need attention, the interface should include visual representations such as charts or progress
bars.

d) Task allocating to Team Members: Within the system, the team leader should be able
to allocate tasks to team members. To guarantee effective project planning and resource
allocation, the interface should allow users to provide job descriptions, dates, dependencies,
and priority while assigning tasks.

e) Ability to update and maintain correct team information: Ability to update and
maintain correct team information including team member profiles, duties, and contact
information, is a skill that the team leader should possess. To promote efficient resource
allocation and project staffing, the system should enable the team leader to keep track of
and update the skills, knowledge, and certifications of team members.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 122


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.1.4 Team Member.

a) Login: Team members should have a secure login option to use their individual
credentials to access the system. To guarantee authorized access, authentication measures
like a username and password should be in place.

b) Dashboard: Each team member should have a dashboard that shows an overview of the
work they have been given, their deadlines, and their top priorities. To keep team members
updated on their tasks, the dashboard should include updates, notifications, and progress
indicators linked to the project.

c) Monitoring: Team members should have access to project monitoring tools so they can
keep tabs on the status of the tasks they have been given. Clear views of job statuses,
completion rates, and any dependencies or obstacles impacting their work should be
available through the UI.

d) Document Management: Team members should be able to upload, access, and


collaborate on project-related documents thanks to the interface's document management
features. To enable appropriate document management and information exchange within
the team, functions for version control and document sharing should be implemented.

e) Time Tracking and Reporting: Team members should be able to track and report the
amount of time spent on their tasks or activities using the interface. This feature makes it
easier to measure time accurately while also enabling analysis of resource allocation and
project status reports.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 123


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.2 Non-Functional requirements for E-Solution Private Ltd.

For E-Solution Private Ltd. to execute the automated project system, non-functional needs
must be considered. These specifications are concentrated on the system's usability,
performance, security, scalability, and other quality elements. E-Solution can make sure
that the automated project system satisfies the specified levels of efficiency, reliability, and
user satisfaction by identifying and resolving non-functional needs, such as reaction time,
user interface intuitiveness, data protection measures, and system capacity. The collection
of non-functional criteria ensures that the implemented system complies with the
company's expectations and delivers a seamless and secure project management experience
through excellent communication and collaboration among the project manager, team
leader, and project director.

1. Performance: To ensure that the system operates effectively, especially during


times of high demand, developer optimizes the code and design. To achieve optimal
throughput, reaction time, and resource utilization, they execute load testing and
performance tuning. This makes sure that the system can effectively handle the
workload of project management duties.
2. Usability: The automated project scheduling system's interface was designed with
the user's needs in mind. They keep simplicity in mind when designing the user
interface, making it simple for project team members to utilize the system without
substantial training.
3. Security: To safeguard project data against unauthorized access and potential
breaches, developer employ strong security measures. To make sure that only
authorized personnel may access critical project information, they implement data
encryption, robust authentication procedures, and role-based access controls.
4. Reliability: Stability and consistency were given top priority during the
development of the automated project scheduling system. To ensure that the system
operates dependably throughout time and lower the risk of disruptions to project
management operations, they carry out thorough testing to find and fix any potential
faults or difficulties.
5. Scalability: As the organization's project management needs expand, the system's
developer made sure it could handle a rising number of activities, users, and data
volumes. They use technology and scalable structures to support future growth
without sacrificing performance.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 124


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

6. Maintainability: To ensure the system's maintainability, developer concentrate on


producing clear, modular code and thorough documentation. They create the system
with simple updating and adaptability in mind, making it possible for new features
or changes to be quickly added to suit evolving project management requirements.

1.5 Effectiveness of scrum methodology in the requirements analysis.

In the Scrum process, requirement analysis is crucial in assisting developer in implementing


an automated system effectively. The developer may make knowledgeable judgements and
establish reasonable goals if the project requirements are properly understood and clarified
at the beginning. This crucial phase guarantees that the development process accurately
reflects the goals and expectations of the organization, reducing the possibility of expensive
adjustments later in the project.

The creation of a clearly defined product backlog is where requirements analysis in Scrum
plays a vital role. This phase lays the groundwork for succeeding sprints as the developer
works with team members to collect and prioritize user stories and features. This thorough
analysis enables the developer to pinpoint future issues, dependencies, and resource needs,
allowing him to manage resources wisely and plan.

Requirement analyzing facilitates transparency and communication within the developer


and with company members. Clear and concise user stories lead to a shared understanding
of project objectives, fostering a collaborative environment where everyone is on the same
page.

Developer applies requirements analyzing at the early stages of the implementation


process. Once the product backlog is established, the developer conducts sprint planning
meetings to select specific user stories for the upcoming sprint. This careful selection
ensures that each sprint delivers tangible value and brings the project closer to completion.

Throughout the development cycle, the developer continually reevaluates and refines the
product backlog based on feedback and changing priorities. This adaptability is a key
strength of Scrum, allowing developer to stay responsive to evolving business needs.

Requirement analyzing in Scrum methodology serves as a crucial compass for developer,


guiding them on the path to building a successful automated system. Its emphasis on
collaboration, clarity, and adaptability ensures that the development process remains
focused and user-centric, leading to a product that truly meets the user expectations.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 125


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.6 Justification on agile methodology for E-Solution Private Ltd.

The choice of the Scrum methodology for implementing the automated system at E-
Solution Private Ltd is well-justified, as Agile, and specifically Scrum, offers numerous
advantages that align perfectly with the demands of the project.

Scrum's iterative approach allows for incremental development and continuous feedback,
which is paramount in an ever-evolving IT landscape. By breaking down the project into
manageable sprints, the developer can regularly evaluate progress, incorporate changes,
and ensure that the final product meets the user's dynamic requirements effectively.

Scrum's emphasis on collaboration and self-organizing teams plays a vital role in fostering
a motivated and engaged workforce. With a clear definition of roles and responsibilities,
developer have the autonomy to make decisions and take ownership of their work, leading
to higher job satisfaction and productivity. The daily stand-up meetings promote effective
communication, enabling team members to address challenges promptly and maintain
focus on project goals.

The user is actively involved throughout the development process in Scrum. Through sprint
reviews and demos, company members can provide feedback and witness the product's
evolution firsthand. This level of transparency ensures that the project remains aligned with
the user's vision and expectations, minimizing the risk of miscommunications and
unexpected surprises during the final delivery.

Scrum's adaptability is another significant advantage. In a competitive and rapidly changing


market, the ability to respond quickly to new insights or changing priorities is invaluable.
The flexibility of Scrum allows the developer to pivot when necessary, ensuring that the
automated system remains cutting-edge and relevant upon completion.

By employing Scrum, E-Solution Private Ltd. can achieve a faster time-to-market for their
automated system. The shorter development cycles and iterative nature of Scrum enable
rapid and regular releases of functional increments, providing tangible value to the client
throughout the project. the decision to utilize Scrum methodology for implementing the
automated system to E-Solution Private Ltd. is well-justified due to the multitude of
advantages it offers. Its iterative, collaborative, and user-centric nature allows for effective
project management, enhanced team productivity, and seamless alignment with evolving
business needs. With Scrum's adaptability and focus on continuous improvement, E-

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 126


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Solution Private Ltd. can confidently navigate the complexities of the software
development process and deliver a successful automated system that meets and exceeds
client expectations.

1.7 Conclusion.

The creation of the automated project scheduling system by E-Solution Private Limited
requires a thorough Software Requirements Specification (SRS) report. The roadmap-like
nature of this report, which outlines both functional and non-functional criteria, ensures
effective team communication. E-Solution can benefit from flexibility, teamwork,
customer happiness, transparency, and visibility by implementing the Scrum model inside
the Agile methodology.

To address the unique requirements of diverse positions within the organization, the
requirements-gathering process makes use of a variety of methods, including interviews,
questionnaires, and prototypes. The system will be of good quality and will achieve project
management objectives if non-functional needs like performance, usability, security,
stability, scalability, and maintainability are taken care of.

The automated project scheduling system at E-Solution Private Limited will be


successfully implemented using the Scrum methodology. It promotes active developer
participation, collaborative meetings, and continual improvement, all of which are exactly
in line with the company's goals. By utilizing Scrum, E-Solution is able to continuously
improve the system, adapt to shifting demands, and provide a reliable and intuitive
automated project scheduling solution.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 127


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 128


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Activity 04.
SDS Report for E-Solution Private Limited.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 129


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 130


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 131


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 132


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 133


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 134


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.1 Introduction to System Design Specification Report to E-Solution Private Ltd.

Figure 23: SDS Report.

Effective project management is essential to remain one step ahead of the competition in
the fast-paced environment of the e-solution company, where cutting-edge technology and
quick invention are the keys to success. The System Design Specification Report (SDSR),
a crucial document that establishes the foundation for building an automated project
scheduling system that is smooth and effective and is suited to the demands of the company,
as is a crucial part of this process.

An automated project scheduling system's technical architecture, functional specifications,


and design components are all laid out in detail in the System Design Specification Report.
It acts as a foundational manual for the software developer, project managers, and
employees of company, ensuring that everyone engaged has a distinct understanding of the
design and functionality of the system.

An automated project scheduling system is crucial for an e-solutions business for several
reasons. Such a solution improves teamwork and user and user group collaboration by
streamlining project operations. Project managers may concentrate on higher-value
activities by automating repetitive processes, which will enhance productivity and hasten
project completion. The System Design Specification Report allows for modification to
satisfy the unique requirements of the projects run by the e-solution provider. Each project
could have its own specifications, from data security measures to client connection

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 135


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

protocols. The SDSR makes sure that the automated project scheduling system may be
smoothly customized to meet these specific objectives.

The project management system is made more scalable and future-proof thanks to the
SDSR. The automated project scheduling system must be scalable as the e-solution
company expands and takes on bigger, more complicated tasks. The business may foresee
potential problems and create a system that can handle expansion without causing
substantial interruptions with the help of a well-defined specification report. The
foundation of an e-solution company's automated project scheduling system is the System
Design Specification Report. It enables the business to improve communication, streamline
project workflows, and easily adjust to shifting demands. An e-solutions provider may
increase productivity, user happiness, and eventually gain a competitive edge in the rapidly
changing digital environment by investing in a well-crafted SDSR.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 136


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.2 Software used to implement the system.

An essential component for effective project management is the automated project


scheduling system. Software like Edraw Max is helpful for making precise diagrams for
designing and implementing such a system, while Adobe XD and Canva help with building
a user-friendly interface. The XAMPP server offers a good environment for backend
programming, and MySQL manages the database. Together, these software solutions
provide a well-organized and aesthetically pleasing framework, enabling teams to expedite
project workflows and produce excellent results.

1.2.1 E-draw max.

Figure 24: Edraw max.


A flexible and user-friendly program called Edraw Max helps in the creation of many
different diagrams, such as ER, use case, architectural, and DFD diagrams for the system.
For effectiveness and success, an automated system employing Edraw Max must be put
into place. Teams can visualize complicated concepts, recognize system relationships, and
effectively express ideas thanks to the software's easy interface and wealth of capabilities.
Edraw Max enables businesses to create reliable automated solutions, promoting efficient
project management and improved decision-making skills.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 137


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.2.2 Canva.

Figure 25: Canva.


Canva is a potent graphic design tool that is essential in producing aesthetically pleasing
logos and other design components for e-solution businesses. Using an automated system
in conjunction with Canva has several advantages, including boosted production and
improved processes. Businesses may conserve time and resources while assuring good
branding by automating several design-related chores. Businesses can easily design eye-
catching logos and images using Canva's user-friendly interface and large collection of
templates, increasing their brand identity and market presence.

1.2.3 Adobe XD.

Figure 26: Adobe XD.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 138


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Adobe XD is a useful tool for creating prototypes for automated systems like the project
scheduling system and building user-friendly, interactive interfaces. It is crucial because it
facilitates cooperation between designers and developer and streamlines the design process.
Developer may quickly generate and iterate on interface designs by integrating an
automated system with Adobe XD, resulting in a user-friendly and aesthetically pleasing
solution. By enabling seamless interaction with the automated system, this connection
enables project managers, directors, team leaders, and participants, optimizing project
management and boost productivity.

1.2.4 XAMPP Server.

Figure 27: XAMPP Server.


A robust and well-liked web development environment, XAMPP server makes it easier to
construct automated systems. It is crucial since it offers a complete platform for hosting
and testing the system before deployment. Developer may ensure flawless component
integration, test functionality, and spot any problems by using XAMPP. A solid and
dependable automated system is produced by this simplified development approach,
allowing for effective project management, and giving organizations the tools, they need
to stay ahead in the ever-evolving digital market.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 139


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.2.5 MySQL.

Figure 28: MySQL.


A significant part of implementing automated systems is played by MySQL, a well-liked
and dependable relational database management system. Its importance rests in effectively
handling and storing enormous volumes of data produced by the system. The automated
system can securely store project information, work assignments, and user information by
using MySQL to construct and manage databases. This data centralization facilitates easy
information retrieval and analysis, promoting effective project scheduling and
strengthening organizational decision-making processes.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 140


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.3 Diagrams of the E-Solution Private Automated Project Scheduling System.

For a thorough and effective approach, diagrams must be included in the installation of an
automated project scheduling system. These visual representations offer a transparent
roadmap that makes it easier to spot possible bottlenecks, allocate resources, and identify
essential paths. Diagrams facilitate communication among team members and business
personnel by graphically displaying job dependencies and deadlines. This promotes a
smooth workflow and eventually helps the project be completed successfully and on
schedule.

1.3.1 Entity-Relationship (ER) Diagram.

Figure 29: ER Diagram.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 141


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

An Entity-Relationship (ER) diagram is a graphic depiction of the logical structure of a


database system that shows the connections and characteristics between various items. An
ER diagram is crucial for putting in place an automated project scheduling system. It
enables a thorough comprehension of the system's design and relationships between
different parts. Project Profile, Project, Task, Team, Team Member, Team Leader, Project
Manager, Bill, and Project Director are just a few of the many entities included in this ER
Diagram. Specific qualities enhance each entity. The project profile object is made up of
the following attributes: name, cost, description, and resources. The project scheduling
system is defined by entities like Project, Task, Team, and their associated properties.

The ability to develop projects, project profiles, tasks, and teams grants the project director
a crucial position. Team Leaders, Team Members, and Project Managers can all be chosen
by the project director for their respective positions. Projects are worked on cooperatively
by teams, and team members are actively involved in tasks. By exercising power over team
management, the Team Leader makes sure that tasks are assigned and managed in an
efficient manner. The Project Manager oversees designating Team Leaders, creating
invoices, and managing the project. This hierarchical structure guarantees effective
coordination and tracking of development. The ER diagram is a key tool for understanding
and implementing the complex dynamics of an automated project scheduling system,
fostering effective communication and decision-making.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 142


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.3.2 Use case Diagram.

Figure 30: Use case Diagram.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 143


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

A use case diagram is a graphical depiction of how system components interact with
different actors, such as the project director, project manager, and team leader, to show how
users interact with a software system. A use case diagram is essential for putting in place
an automated project scheduling system. It gives developer a comprehensive grasp of user
roles, system functionalities, and their relationships, assisting them in comprehending user
needs, establishing system behavior, and ensuring project goals are met. The use case
diagram directs the development process, enabling efficient communication, precise
design, and successful implementation of the automated project scheduling system by
outlining user tasks and system replies.

1.3.3 Data Flow Diagram (DFD) Level-0

A Data Flow Diagram (DFD) Level 0 diagram gives a summary of data flows and system
activities while emphasizing the system's high-level relationships with external entities. A
DFD Level 0 diagram is necessary for the deployment of an automated project scheduling
system. It describes the essential features and shows how inputs, procedures, and outputs
are connected. This helps developer understand system behavior, delineate data flow paths,
and pinpoint crucial elements.

1.3.3.1 Project Director

Figure 31: DFD 0 Diagram for project director.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 144


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.3.3.2 Project Manager

Figure 32: DFD 0 Diagram for project manager.


1.3.3.3 Team Leader

Figure 33: DFD 0 Diagram for team leader.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 145


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.3.4 Data Flow Diagram (DFD) Level-1.

An in-depth look at how processes, data stores, and data flows interact inside a system is
provided by a Data Flow Diagram (DFD) Level 1 diagram. A DFD Level 1 diagram is
essential when creating an automated project scheduling system. It illustrates data
transformations and interactions by dissecting high-level processes into minutely detailed
subprocesses. This graphic helps developer by giving them a detailed grasp of how the
system works, allowing for more accurate design and seamless component integration. The
DFD Level 1 diagram gives developer the tools they need to create a strong, integrated
automated project scheduling system, assuring effective project management and
execution.

1.3.4.1 Project Director.

Figure 34: DFD 1 Diagram for project director.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 146


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.3.4.2 Project Manager.

Figure 35: DFD 1 Diagram for project manager.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 147


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.3.4.3 Team Leader.

Figure 36: DFD 1 Diagram for team leader.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 148


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.3.5 Architecture Diagram.

Figure 37: Architecture Diagram.


A software system's hierarchical component arrangement and interactions are graphically
represented in an architecture diagram, more precisely a layered architecture diagram. A
layered architectural diagram is essential for building an automated project scheduling
system. To help developer create a modular and scalable system, it defines the system's
structural layers, including display, application logic, and data storage. By fostering a clear
grasp of component duties and dependencies, this diagram enables developer to write well-
organized code that is easy to maintain and integrate. The automated project scheduling
system has a solid foundation thanks to the layered architectural diagram, which also
increases adaptability and reliability.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 149


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4 Evidences for the E-Solution Private Automated Project Scheduling System
Interfaces.

The automated project scheduling system's user interface has been carefully designed to
priorities usability while adhering to both user and system constraints. User interactions
have been carefully considered to ensure that they are simple and seamless. This design
strategy tries to improve the user's overall experience by making it easier to navigate and
interact with the system's features. The interface encourages optimal usage and satisfaction
by carefully considering user needs and system requirements, which helps the automated
project scheduling system succeed.

1.4.1 Landing Page.

Figure 38: Landing page.


The user will find four standout alternatives on the automated project system's landing
page: Home, About Us, Contact, and Login. The dedicated logins page is automatically
reached by clicking the Login button, allowing quick access to the system's features and
resources.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 150


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.2 Logins Page.

Figure 39: Logins.


The user will be taken to a login interface after clicking the Login button on the landing
page. Director, Manager, and Leader access options are available to users. Selecting one
of these buttons will take the user to the login page that is appropriate for their chosen role
inside the system.

1.4.3 Login.

Figure 40: Login.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 151


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

The username and password boxes are present in the login interface, which is the same for
the Director, Manager, and Leader positions. The system can be accessed by users by
inputting their specific credentials. "Remember Me," "Forgot Password," and "Continue
with Social Media". Functions are in this interface. Users can access their own dashboards
after successfully logging in.

1.4.4 Project Director.

1.4.4.1 Dashboard.

Figure 41: Dashboard of project director.


This acts as the project director's dashboard and central control point for efficient
management. The project profile, project, task, project manager, team leader, team
member, and team buttons are located on the sidebar. Any button can be clicked to reveal
a controlled grid view interface. The login page is ready to be used if the director decides
to log out. The director is given the ability to view and offer feedback from clients and team
members through a feedback form function. Utilize the Settings button to customize the
system. Keep track of task overviews as well as the overall, upcoming, finished, and
ongoing project status. The scheduling calendar allows for additions by providing insight
into project and task schedules. Client messages are accommodated within this thorough
dashboard.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 152


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.4.2 Project Profile.

1. Manage Form.

Figure 42: Manage Project Profile.


By selecting the Project Profile button on the dashboard, the director may access the project
profile management interface. It has an intuitive design with a grid view, the ability to add
project profiles, and a search capability. The grid view gives the Director thorough visibility
into project profiles and allows for the viewing, deleting, and changing of details. The
update button makes editing easier and, when clicked, displays an update form, while the
delete button speeds up removal. The 'Add Project Profile' button for new entries presents
an input form. The search button makes it possible to search effectively, improving the
accessibility and manipulation of project profile information.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 153


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

2. Add Form.

Figure 43: Add Project Profile.


This interface appears when director click the 'Add Project Profile' button in the
management form. It includes crucial elements including the id, name, costs, description,
and resources of the project profile. The information is saved in the project profile table
within the e-solution database after all necessary information has been entered and the 'Add
Project Profile' button has been clicked. This information is seamlessly integrated and made
accessible in the project profile grid view within the same management form by becoming
available in those details.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 154


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

3. Update Form.

Figure 44: Update Project Profile.


This interface can be accessed by clicking the 'Update' button in the grid view of the project
profile management form. The Project Director has the authority to change project profile
information to his preference. The required adjustments are performed by interacting with
the grid view, then the 'Update Project Profile' button is clicked. The project profile table
stored in the e-solution database and the grid view both quickly reflect the changes,
guaranteeing accuracy and synchronization of the new project profile data.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 155


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.4.3 Project.

1. Manage Form.

Figure 45: Manage Project Form.


By selecting the Project button on the dashboard, the director may access the project
management interface. It has an intuitive design with a grid view, the ability to add project,
and a search capability. The grid view gives the Director thorough visibility into the project
and allows for the viewing, deleting, and changing of details. The update button makes
editing easier and, when clicked, displays an update form, while the delete button speeds
up removal. The 'Add Project’ button for new entries presents an input form. The search
button makes it possible to search effectively, improving the accessibility and manipulation
of project information.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 156


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

2. Add Form.

Figure 46: Add project form.


This interface appears when the director clicks the 'Add Project' button on the management
form. Project id, project name, description, type of team, project manager id, cost, start
date, end date, and project profile id are just a few of the fields it includes. The Project
Director can choose easily from logical combo boxes the project profile id, project manager
id, and type of team (for example, designers, QA Engineers, back-end developers). The
data is safely stored within the project table of the e-solution database after all necessary
information has been entered and the 'Add Project' button has been clicked. To facilitate
effective tracking and management, this seamless integration makes sure that the input
details are quickly made accessible and visible inside the project grid view, which is located
within the same management form.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 157


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

3. Update Form.

Figure 47: Update project form.


This interface can be accessed by clicking the 'Update' button in the grid view of the project
management form. The Project Director has the authority to change project information to
his preference. The required adjustments are performed by interacting with the grid view,
then the 'Update Project’ button is clicked. The project table stored in the e-solution
database and the grid view both quickly reflect the changes, guaranteeing accuracy and
synchronization of the new project data.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 158


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.4.4 Task.

1. Manage Form.

Figure 48: Manage task form.


By selecting the Task button on the dashboard, the director may access the task
management interface. It has an intuitive design with a grid view, the ability to add task,
and a search capability. The grid view gives the Director thorough visibility into the task
and allows for the viewing, deleting, and changing of details. The update button makes
editing easier and, when clicked, displays an update form, while the delete button speeds
up removal. The 'Add Task’ button for new entries presents an input form. The search
button makes it possible to search effectively, improving the accessibility and manipulation
of task information.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 159


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

2. Add Form.

Figure 49: Add task form.


The director is shown this interface after clicking the 'Add Task' button on the task
management form. Task id, task name, description, staff name, resource, cost, start date,
end date, duration, sub task no, sub task name, and sub task description are just a few of
the fields it includes. The project ID can be easily selected by the project director from a
logical combo box. The task duration is automatically calculated and presented in the
duration text box when the start and end dates are clicked.

When the necessary information is entered and the 'Add Task' button is clicked, the data is
safely stored in the task table of the e-solution database. Because of the seamless
integration, the task grid view, which is part of the same management form, has quick
access to and visibility of input information. The project scheduling system can track and
handle tasks more efficiently thanks to this functionality.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 160


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

3. Update Form.

Figure 50: Update Task Form.


This interface can be accessed by clicking the 'Update' button in the grid view of the task
management form. The Project Director has the authority to change task information to his
preference. The required adjustments are performed by interacting with the grid view, then
the 'Update Task button is clicked. The task table stored in the e-solution database and the
grid view both quickly reflect the changes, guaranteeing accuracy and synchronization of
the new task data.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 161


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.4.5 Project Manager.

1. Manage Form.

Figure 51: Manage Project Manager Form.


By selecting the Project Manager button on the dashboard, the director may access the
Project manager management interface. It has an intuitive design with a grid view, the
ability to add project manager, and a search capability. The grid view gives the Director
thorough visibility into the project manager and allows for the viewing, deleting, and
changing of details. The update button makes editing easier and, when clicked, displays an
update form, while the delete button speeds up removal. The 'Add Project Manager’ button
for new entries presents an input form. The search button makes it possible to search
effectively, improving the accessibility and manipulation of project manager information.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 162


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

2. Add Form.

Figure 52: Add Project Manager Form.


Director is shown this interface after clicking the 'Add Project Manager' button on the
project manager management form. It includes crucial fields like the project manager id,
project manager's name, contact information (including phone number, gender, email, and
address), date of birth, age, and experience. The age is automatically calculated when the
date of birth is selected and is then presented in the age textbox. The information is securely
stored within the project manager table of the e-solution database once all required
information has been entered and the 'Add Project Manager' button has been triggered. The
entered data is quickly accessible and visible in the project manager grid view, which is
housed within the same management form, thanks to this seamless connectivity. This
improved feature makes it easier for the project scheduling system to track and manage
project managers effectively, which improves the management process.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 163


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

3. Update Form.

Figure 53: Update Project Manager Form.


This interface can be accessed by clicking the 'Update' button in the grid view of the project
manager management form. The Project Director has the authority to change project
manager information to his preference. The required adjustments are performed by
interacting with the grid view, then the 'Update Project Manager’ button is clicked. The
project manager table stored in the e-solution database and the grid view both quickly
reflect the changes, guaranteeing accuracy and synchronization of the new project manager
data.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 164


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.4.6 Team Leader.

1. Manage Form.

Figure 54: Manage Team Leader Form.


By selecting the team leader button on the dashboard, the director may access the team
leader management interface. It has an intuitive design with a grid view, the ability to add
team leader, and a search capability. The grid view gives the Director thorough visibility
into the team leader and allows for the viewing, deleting, and changing of details. The
update button makes editing easier and, when clicked, displays an update form, while the
delete button speeds up removal. The 'Add Team Leader’ button for new entries presents
an input form. The search button makes it possible to search effectively, improving the
accessibility and manipulation of team leader information.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 165


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

2. Add Form.

Figure 55: Add Team Leader Form.


Director are shown this interface after clicking the 'Add team leader’ button on the team
leader management form. It includes crucial fields like the team leader id, team leader’s
name, contact information (including phone number, gender, email, and address), date of
birth, age, and experience. The age is automatically calculated when the date of birth is
selected and is then presented in the age textbox. The information is securely stored within
the team leader table of the e-solution database once all required information has been
entered and the 'Add Team Leader’ button has been triggered. The entered data is quickly
accessible and visible in the team leader grid view, which is housed within the same
management form, thanks to this seamless connectivity. This improved feature makes it
easier for the project scheduling system to track and manage team leader effectively, which
improves the management process.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 166


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

3. Update Form.

Figure 56: Update Team Leader Form.


This interface can be accessed by clicking the 'Update' button in the grid view of the team
leader management form. The Project Director has the authority to change team leader
information to his preference. The required adjustments are performed by interacting with
the grid view, then the 'Update team leader’ button is clicked. The team leader table stored
in the e-solution database and the grid view both quickly reflect the changes, guaranteeing
accuracy and synchronization of the new team leader data.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 167


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.4.7 Team Member.

1. Manage Form.

Figure 57: Manage team member form.


By selecting the team member button on the dashboard, the director may access the team
member management interface. It has an intuitive design with a grid view, the ability to
add team member, and a search capability. The grid view gives the Director thorough
visibility into the team member and allows for the viewing, deleting, and changing of
details. The update button makes editing easier and, when clicked, displays an update form,
while the delete button speeds up removal. The 'Add Team Member’ button for new entries
presents an input form. The search button makes it possible to search effectively, improving
the accessibility and manipulation of team member information.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 168


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

2. Add Form.

Figure 58: Add team member form.


Project director are taken to this interface after choosing the 'Add Team Member' button on
the team member management form. The Project Director has the authority to add a new
employee to the team. The essential sections covered by this thorough form are staff id,
name, description, contact information (including phone number, gender, email, and
address), date of birth, age, job description, and experience. After choosing the birthdate,
age is automatically calculated and shown in the appropriate textbox.

Through the job description combo box, the project director may easily specify the staff
members' work level, such as internship, beginner, etc. The data is securely stored within
the team member table of the e-solution database after all necessary information has been
given and the 'Add Team Member' button has been pressed. The team member grid view,
which is located within the same management form, has quick access to and visibility of
the entered details thanks to the process' seamless connection. The project scheduling
system's ability to track and manage team member more efficiently is considerably
improved by this increased functionality, which also benefits the management process.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 169


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

3. Update Form.

Figure 59: Update team member form.


This interface can be accessed by clicking the 'Update' button in the grid view of the team
member management form. The Project Director has the authority to change team member
information to his preference. The required adjustments are performed by interacting with
the grid view, then the 'Update team member’ button is clicked. The team member table
stored in the e-solution database and the grid view both quickly reflect the changes,
guaranteeing accuracy and synchronization of the new team member data.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 170


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.4.8 Team.

1. Manage Form.

Figure 60: Manage team form.


By selecting the team button on the dashboard, the director may access the team
management interface. It has an intuitive design with a grid view, the ability to add team,
and a search capability. The grid view gives the Director thorough visibility into the team
and allows for the viewing, deleting, and changing of details. The update button makes
editing easier and, when clicked, displays an update form, while the delete button speeds
up removal. The 'Add Team’ button for new entries presents an input form. The search
button makes it possible to search effectively, improving the accessibility and manipulation
of team information.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 171


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

2. Add Form.

Figure 61: Add team form.


The Project Director is sent to this interface after selecting the 'Add Team' button on the
team management form. A thorough form with important fields like team id, name,
description, number of employees, manager id, leader id, and team type. Through simple
combo boxes, the Project Director can quickly specify the manager ID, leader ID, and team
type (such as development team, QA team, design team, data science and analytic team).

The data is securely stored within the team table of the e-solution database after all required
information has been provided and the 'Add Team' button has been activated. The team
grid view, which is part of the same management form, can quickly access and see the
entered details thanks to this seamless connectivity. The project scheduling system can
track and manage teams more effectively because of the improved connectivity, which
optimizes the overall management process and increases its efficacy.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 172


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

3. Update Form.

Figure 62: Update team form.


This interface can be accessed by clicking the 'Update' button in the grid view of the team
management form. The Project Director has the authority to change team information to
his preference. The required adjustments are performed by interacting with the grid view,
then the 'Update team’ button is clicked. The team table stored in the e-solution database
and the grid view both quickly reflect the changes, guaranteeing accuracy and
synchronization of the new team data.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 173


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.5 Project Manager.

1.4.5.1 Dashboard.

Figure 63: Dashboard of project manager.


This dashboard's functionality is streamlined, and it was created to serve as the project
manager's main hub. The buttons for Projects, Tasks, and Billing in the sidebar each open
a specific form when clicked. For logging out, a seamless transition to the login page is
made possible. Through the Feedback Form, Project Managers can interact with clients and
team members by accessing and providing feedback. Utilize the Settings option to modify
the system to the requirements. It is simple to find overviews of projects and task statuses,
which include overall, upcoming, finished, and ongoing work. Additional insights include
task deadlines, complete project budgets, and priority rankings for past-due tasks offering
a complete project management experience.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 174


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.5.2 Project Overview.

Figure 64: Project Overview.


This acts as the project overview interface for the project manager. An extensive snapshot
of the project is provided via this interface, including the project id, name, description,
manager id, start date, termination date, and project profile. The project manager can make
decisions and manage the project effectively thanks to this concise overview's clear and
succinct explanation of its major characteristics.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 175


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.5.3 Assign Task.

1. Manage Form.

Figure 65: Assign task grid view interface.


The manager can access the task management interface by choosing the 'Task' button on
the dashboard. This interface has a user-friendly design with a grid view, assigning tasks
functionality, and a powerful search feature. The manager has a thorough overview of every
task thanks to the grid view, which makes it easy to inspect, delete, and change specifics.
The update button helps editing and, when activated, displays an update form, greatly
streamlining the procedure. The delete button speeds up deletion in a similar manner. The
'Assign Task' button, which displays an input form, speeds up the process of assigning new
tasks. By facilitating efficient information retrieval and manipulation within the task
management process, the search function improves efficiency.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 176


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

2. Add Form.

Figure 66: Assign task interface.


This interface, which has fields for the task id, project manager id, and team leader id,
facilitates task assignment by the project manager. The Project Manager selects the
necessary IDs from simple combo boxes with ease. The information is securely recorded
and displayed right away in the grid view of the 'Manage Task' form in the Project
Manager's domain after selecting all three IDs and pressing the 'Add Assign Task' button.
The project management workflow is improved by the effective task delegation and
monitoring provided by this seamless approach.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 177


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

3. Update Form.

Figure 67: Update assigned task.


This interface, which was created to improve task management, enables Project Manager to
quickly update allocated tasks. With fields for task id, project manager id, and team leader
id, the form adjusts simple with intuitive inputs. The 'Update Assign Task' button can then
be used to adjust when Project Manager updates task details as appropriate. Project
Managers may easily see a comprehensive overview of changed assignments because to
the updated information's smooth integration into the grid view within the manage task
form. This facilitates task management.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 178


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.5.4 Billing.

1. Manage Form.

Figure 68: Manage billing form.


By selecting the billing button on the dashboard, the manager may access the project
management interface. It has an intuitive design with a grid view, the ability to add billing,
and a search capability. The grid view gives the manager thorough visibility into the project
and allows for the viewing, deleting, and changing of details. The update button makes
editing easier and, when clicked, displays an update form, while the delete button speeds
up removal. The 'Add Billing’ button for new entries presents an input form. The search
button makes it possible to search effectively, improving the accessibility and manipulation
of billing information.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 179


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

2. Add Form.

Figure 69: Add billing form.


The Project Manager is sent to this interface after selecting the 'Add Billing’ button on the
billing management form. A thorough form with important fields like bill id, name,
description, project manager id, client name, date, task id, project id, and total charge.
Through simple combo boxes, the Project Manager can quickly specify the project manager
ID, task ID, and project id. Total charge will automatically calculate, and that charge will
show in the total charge text box.

The data is securely stored within the billing table of the e-solution database after all
required information has been provided and the 'Add Billing’ button has been activated.
The billing grid view, which is part of the same management form, can quickly access and
see the entered details thanks to this seamless connectivity. The project scheduling system
can track and manage bills more effectively because of the improved connectivity, which
optimizes the overall management process and increases its efficacy.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 180


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

3. Update Form.

Figure 70: Update billing form.


This interface can be accessed by clicking the 'Update' button in the grid view of the billing
management form. The Project Manager has the authority to change bill information to his
preference. The required adjustments are performed by interacting with the grid view, then
the 'Update billing’ button is clicked. The billing table stored in the e-solution database
and the grid view both quickly reflect the changes, guaranteeing accuracy and
synchronization of the new billing data.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 181


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.6 Team Leader.

1.4.6.1 Task.

Figure 71: Task Overview.


This interface, which is used by Team Leaders as the task overview interface, offers a
summary of the task's id, team leader id, and staff id. To help Team Leaders efficiently
supervise and manage their assigned tasks and team members, this layout provides a clear
and focused view of crucial task-related information.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 182


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.6.2 Team Members.

1. Add Form.

Figure 72: Assign team member.


Team leaders can easily assign team members to tasks using this intuitive interface. This
interface accelerates the process of assigning team members because it includes task, staff,
and team leader identification fields. Team Leaders easily chooses the necessary IDs using
simple combo boxes. The data is securely captured and immediately shown inside the grid
view of the 'Manage Team Members' form in the Team Leader's domain after choosing all
three IDs and pressing the 'Add Assign Team Member' button. This organized procedure
promotes effective project management by improving task delegation and teamwork.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 183


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

2. Update Form.

Figure 73: Update Assign team member.


Team Leaders have the opportunity to change the assigned team member's details whenever
necessary by displaying the 'Update Assign Team Member' interface. The 'Manage Team
Members' grid view, located under the Team Leader's management domain, instantly
reflects changes made in this form. The quick and precise updates ensured by this simple
procedure improve team member assignments' visibility and accessibility for efficient
project management.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 184


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.4.6.3 Team Skills.

1. Manage Form.

Figure 74: Manage team skills form.


By selecting the team skills button on the dashboard, the team leader may access the project
management interface. It has an intuitive design with a grid view, the ability to add team
skills, and a search capability. The grid view gives the team leader thorough visibility into
the team skills and allows for the viewing, deleting, and changing of details. The update
button makes editing easier and, when clicked, displays an update form, while the delete
button speeds up removal. The 'Add Team Skills’ button for new entries presents an input
form. The search button makes it possible to search effectively, improving the accessibility
and manipulation of team skills information.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 185


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

2. Add Form.

Figure 75: Add team skill form.


The team leader is sent to this interface after selecting the 'Add Team Skills’ button on the
team skills management form. Team leader can be able to add a skill to the team member
(staff) in a team. A thorough form with important fields like staff id, team leader id, team
skills, and description. Through simple combo boxes, the team leader can quickly specify
the team leader ID, and staff ID.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 186


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

3. Update Form.

Figure 76: Update team skill form.


This interface can be accessed by clicking the 'Update' button in the grid view of the team
skills management form. The team leader has the authority to change team skills
information to his preference. The required adjustments are performed by interacting with
the grid view, then the 'Update team skills’ button is clicked.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 187


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.5 Evidences of E-Solution Private Automated Project Scheduling System Database.

A database offers a centralized and organized method of information storage by acting as


a structured repository for storing and managing data. A database is essential for efficient
data processing, retrieval, and manipulation in the automated project system. The
underlying database system, called "e-solution private ltd," which uses MySQL, guarantees
effective data management. Numerous tables, including project profile, project, task,
project manager, team leader, team member, team, and bill, are included in this database.
This structured database architecture promotes consistent data management, efficient
procedures, and dependable support for the features of the automated project system.

Figure 77: Database of automated project scheduling system.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 188


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.5.1 Tables in the database.

1.5.1.1 Bill.

Figure 78: table of bill


This is bill table in the database. Bill id, bill name, client name, date, description, total
charge, project manager id, task id, and project id are in this table. Bill id is the primary
key and have auto increment id of this table and project id, task id, and project manager id
are the foreign keys of this table.

1.5.1.2 project.

Figure 79: Table of project.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 189


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

This is table of project. Project id, project name, description, type of team, cost, start date,
end date, project manager id, and project profile id are in this table. Project id is the primary
key of this table and have an auto id increment. Project manager id and project profile are
the foreign keys of this table.

1.5.1.3 project manager

Figure 80: Project manager.


This is project manager table. Project manager id, project manager name, phone number,
gender, email address, address, date of birth, age and experience are in this table. Project
manager id is the primary key of this table. And have a auto id increment.

1.5.1.4 project profile

Figure 81: Table of project profile.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 190


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

This is the project profile table in the database. Project profile id, project profile name, cost,
description, and resources are in this table. Project profile id have an auto id increment and
the primary key of this table.

1.5.1.5 task

Figure 82: Table of task.


This is task table. Task id, task name, description, resources, staff name, start date, end
date, duration, sub task no, sub task name, sub task description and project id. Task id have
an auto id increment and the primary key of this table. Project id is the primary key of this
table.

1.5.1.6 team

Figure 83: Table of team.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 191


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

This is team table in the database. Team id, team name, description, no of employee, type,
project manager id and team leader id in this table. Team id have an auto id increment and
the primary key of this table. Project manager id and team leader id are the foreign keys of
this table.

1.5.17 team leader

Figure 84: table of team leader.


This is table of team leader table in the database. Team leader id, team leader name, phone
number, gender, email address, address, date of birth, age, and experience. Team leader id
have an auto id increment and the primary key of this table.

1.5.1.8 team member

Figure 85: Table of team member.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 192


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

This is team member table in the database. Staff id, staff name, gender, email address,
address, date of birth, age, experience, job description, and team skills are in this table.
Team member id have an auto id increment and the primary key of this table.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 193


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

1.6 Security Measurement for the E-Solution Private Automated Project Scheduling
System.

In today's digital environment, securing the security of an automated project management


system is of the utmost significance. Implementing strong security measures is essential to
safeguard sensitive data and preserve the integrity of the overall system because there are
several cyber threats and vulnerabilities present.

Secure login procedures are the first line of defense. To prevent brute-force assaults, robust
password regulations should be used, such as requiring lengthy, often changed passwords.
By forcing users to validate their identity using a second method, such a one-time code
given to their mobile device, the integration of multi-factor authentication (MFA) improves
login security.

Employing encryption protocols like HTTPS ensures that data passed between the user's
browser and the server is encrypted and is shielded from interception or alteration when it
comes to interface security. Regular security audits and vulnerability assessments are
necessary to spot and proactively resolve any possible interface issues.

The MYSQL database's security is similarly important. Strict access restrictions,


permissions that are based on roles, and routine database backups can all help to reduce the
risk of unauthorized access, data breaches, and data loss. By using parameterized queries,
a common danger to databases, SQL injection attacks are reduced.

The security of the system is further strengthened by two-way authentication. To access


sensitive information or carry out sensitive operations, users must first authenticate their
identity during the login process. Even if credentials are compromised, the danger of
unauthorized access is greatly decreased by this extra layer of security.

It's critical to keep security posture current. Applying security patches and updates on a
regular basis to the operating system, third-party libraries, and frameworks assists in
addressing known vulnerabilities and maintains the system safe from new threats.

Securing an automated project management system necessitates a thorough security


strategy. To manage projects securely and ensure the confidentiality, integrity, and
availability of sensitive data, E-Solution Private Ltd combines strong login methods,

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 194


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

interface security, MYSQL database fortification, and two-way authentication. By putting


a focus on user awareness and offering security training, users are also given the tools they
need to take an active role in maintaining the security of the system. To keep ahead of
possible attacks and safeguard the system from bad intent, security must remain proactive
and attentive as technology develops.

1.7 Future Enhancement for the E-Solution Private Automated Project Scheduling
System.

Automated project scheduling systems have significant potential in the future, thanks to
technological improvements. These systems might be improved in several crucial areas,
raising their level of production and efficiency.

The combination of machine learning (ML) and artificial intelligence (AI) skills is one of
the most promising areas of research. Automated project scheduling systems can improve
their capacity for data analysis, pattern recognition, and decision-making by using the
power of AI and ML algorithms. Project planning is more precise and agile when AI-driven
solutions are used because they can learn from previous project data, adjust to changing
conditions, and optimize schedules in real-time.

Project scheduling systems provide intriguing new possibilities because to the Internet of
Things (IoT). IoT devices may gather real-time data from a variety of sources, including
sensors on machinery or building sites, giving project managers a thorough understanding
of the project's status. To keep projects on schedule, this data-driven strategy enables
improved resource allocation, risk assessment, and timely interventions.

Project scheduling systems might benefit from blockchain technology as well. Blockchain
can offer a safe and open platform for project company members to work together, share
information, and monitor project milestones because of its decentralized and irreversible
nature. Blockchain-based smart contracts can automate payment procedures, assuring
prompt payment of suppliers and contractors based on predetermined project milestones.

Project scheduling systems may undergo a revolution with the use of cloud computing.
Project teams may easily interact from several places because to the scalability, flexibility,
and accessibility provided by cloud-based technologies. the cloud offers strong data backup
and storage capabilities, assuring the security and accessibility of project-related data.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 195


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Future project scheduling will also be significantly influenced by virtual and augmented
reality (VR/AR) technology, developer may anticipate. By allowing project managers to
perform virtual site inspections, visualize project progress in 3D, and simulate various
outcomes, VR/AR may improve decision-making and risk management.

The secret to successfully adopting these new technologies is to do it gradually and


strategically. The move to AI, IoT, blockchain, and other new technologies should be well-
planned, considering elements like data protection, interoperability, and user training, as
with any technical progress. To achieve a seamless and successful deployment, domain
experts, IT specialists, and company members must work together when integrating new
technologies into currently used project scheduling systems.

With technologies like AI, IoT, blockchain, cloud computing, and VR/AR ready to
revolutionize how we plan, manage, and carry out projects, the future of automated project
scheduling systems is bright. E-Solution Company may achieve previously unattainable
levels of efficiency, accuracy, and cooperation by strategically adopting these technologies,
which will give it a competitive edge in the dynamic field of project management and
successful project results.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 196


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 197


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 198


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Justification on effectiveness of system design to meet the user and system


requirements.

The Scrum framework and the Agile approach in general have tremendously aided in the
effective implementation of the automated project scheduling system. Agile principles have
been crucial in resolving user and system requirements, resulting in a solution that is
effective and user centric. The e-solution company has been able to negotiate the
difficulties of moving from a manual process to a simplified, automated system while
keeping a focus on user needs and producing a high-quality product thanks to the usage of
Agile practices.

The Scrum framework's focus on teams with multiple functions and cooperation has been
essential in fulfilling the stated user requirements. Within the Scrum framework, the Project
Director, Project Manager, Team Leader, and Team Members collaborate to make sure that
the establishment of the project profile, assigning tasks, team creation, and overall project
management are carried out without an issue. Regular retrospectives and sprint reviews
have made it possible to continuously enhance the system based on user feedback, making
it more logical and user-friendly.

The system's data structure has been mostly represented using the ER (Entity-Relationship)
diagram. The ER diagram offers a clear visual depiction of the system's elements and
relationships thanks to entities like Project Profile, Project, Project Director, Team, Team
Member, Team Leader, Bill, Project Manager and Task. The system's database design was
influenced by attributes associated with each entity, including ID, name, description, and
more, which have helped to facilitate effective data administration. The system's
dashboard's many forms and functionality have been identified with the help of the ER
diagram. The interactions and information flow have been influenced by linkages between
entities and their attributes, resulting in a unified and user-friendly dashboard design that
satisfies both user expectations and system needs.

Level 0 and level 1 DFD (Data Flow Diagram) diagrams have given a thorough picture of
how data flows through the system. The developer has been able to analyze data flow,
identify essential processes, and make sure that data is appropriately processed and
transmitted between various system components thanks to these visual representations.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 199


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

A high-level overview of the system's functionality from the viewpoint of the user is
provided by the use case diagram. The use case diagram has made sure that the system
meets the specific demands of Project Directors, Project Managers, Team Leaders, and
Team Members by outlining various user roles and their interactions with the system. This
precision has helped the system's functionalities to match user needs.

The system's structure and parts are laid out in the architectural diagram. It has assisted the
developer in coming up with a solid, expandable, and secure system design that satisfies
the stated user and system requirements. An automated project scheduling system that is
effective, dependable, and able to meet the needs of the e-solution company has been
created thanks to its modular design and explicitly specified relationships between
components.

The Scrum framework has been instrumental in the effective implementation of the
automated project scheduling system. The system has satiated the requirements of project
directors, project managers, team leaders, and team members by meeting user and system
requirements through iterative development, cooperation, and adaptation. The ER diagram,
DFD diagrams, use case diagram, and architecture diagram have all contributed to the
creation of a well-designed, user-friendly, and effective system that satisfies the goals of
the e-solution company to lower costs, boost productivity, and support effective project
management.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 200


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Conclusion of choice of analysis methodology used in the contrast of the business


problems.

For E-solution Private Ltd IT company, establishing an automated project scheduling


system might provide several advantages but also presents some difficulties. As they begin
this project, engineers can run into several obstacles that could hinder the system's
acceptance and integration. However, these problems may be efficiently handled by
utilizing the Scrum process inside the Agile framework, which will result in a smoother
and more effective deployment.

The opposition to changing from the current project management techniques is one of the
main difficulties that developer could face. Developer who are used to conventional
procedures may be difficult to accept the introduction of an automated scheduling system.
With its gradual and iterative approach, the Scrum methodology can aid in overcoming this
difficulty. The developer may gather helpful input and progressively increase acceptance
and buy-in for the new system by including E-Solution Company in the development
process and giving them regular demonstrations of the system's capabilities.

The difficulty of integrating the automated project scheduling system with current tools
and workflows is a possible problem as well. A variety of current systems that are essential
to E-solution Private Ltd.’s operations are probably already in place. The developer may
closely collaborate with team members to find integration points and design solutions that
smoothly integrate the new system with the current IT infrastructure thanks to Scrum's
emphasis on collaboration and adaptation.

An E-Solution IT business places a high priority on data security and privacy issues. Strong
security precautions are required when introducing an automated system that manages
sensitive project data. The Scrum approach encourages cross-functional collaboration,
enabling security specialists to collaborate directly with developer right away. The
developer may make sure that the automated project scheduling system complies with the
required security requirements by putting security best practices into practice and
performing frequent security evaluations throughout the development process.

Another potential issue is resource allocation. The balance between project tasks and the
creation of the new system may present challenges for the developer. The time-boxed
iterations of Scrum are used. The developer may maintain a constant rate of work while

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 201


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

still achieving project deadlines by splitting the project into manageable sprints and
defining attainable targets for each sprint.

When a company implements big changes, communication and teamwork can become
hard. The daily stand-up meetings and ongoing communication between team members
and product owners that are emphasized by the Scrum approach promote openness and
coordination throughout the development process. The team may identify areas for
improvement and make the required modifications to address any communication problems
by holding regular retrospective sessions.

The Scrum technique, which is a component of the Agile framework, offers a useful
strategy to address these problems even if establishing an automated project scheduling
system for E-solution Private Ltd may present some difficulties. The developer can deal
with issues including resistance to change, integration difficulties, security worries,
resource allocation, and communication difficulties by encouraging teamwork,
encouraging flexibility, and assuring regular communication. The business may effectively
incorporate the automated project scheduling system into their workflow, strengthening
project management practices throughout the company while increasing productivity and
optimizing resource utilization.

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 202


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

References.
Adam, J., SEPTEMBER 24, 2021. kruschecompany. [Online] Available at:
https://kruschecompany.com/v-model-software-development-methodology/ [Accessed 06
05 2023].

admin, April 6, 2015. sampleproposal. [Online] Available at:


http://sampleproposal.net/feasibility-study/legal-feasibility-study/ [Accessed 29 7 2023].

Alexandra, March 10, 2023. stackify. [Online] Available at: https://stackify.com/what-is-


sdlc/ [Accessed 05 05 2023].

Dharmendra_Kumar, 09 May, 2023. geeksforgeeks. [Online] Available at:


https://www.geeksforgeeks.org/software-engineering-sdlc-v-model/ [Accessed 05 05
2023].

Gorbachenko, P., 2023. enkonix. [Online] Available at:


https://enkonix.com/blog/functional-requirements-vs-non-functional/ [Accessed 7 8 2023].

Kompaniets, A., February 17, 2023. uptech. [Online] Available at:


https://www.uptech.team/blog/functional-vs-non-functional-requirements [Accessed 4 8
2023].

Krüger, G., January 17, 2023. perforce. [Online] Available at:


https://www.perforce.com/blog/alm/how-write-software-requirements-specification-srs-
document#:~:text=Tool%20for%20SRS-
,What%20Is%20a%20Software%20Requirements%20Specification%20(SRS)%20Docu
ment%3F,stakeholders%20(business%2C%20users). [Accessed 20 06 2023].

Kumar, S., 16 Nov 2022. scaler. [Online] Available at:


https://www.scaler.com/topics/software-engineering/big-bang-model-in-software-
engineering/ [Accessed 06 05 2023].

Kumar, S., 20 Nov 2022. scaler. [Online] Available at:


https://www.scaler.com/topics/software-engineering/iterative-model-in-software-
engineering/ [Accessed 06 05 2023].

Martin, M., April 8, 2023. guru99. [Online] Available at: https://www.guru99.com/what-


is-incremental-model-in-sdlc-advantages-disadvantages.html [Accessed 06 05 2023].

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 203


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Martins, J., June 27th, 2023. asana. [Online] Available at:


https://asana.com/resources/feasibility-study [Accessed 1 8 2023].

Nandaniya, H., Jul 10/2023. marutitech. [Online] Available at:


https://marutitech.com/technical-feasibility-in-software-engineering/ [Accessed 1 8 2023].

Naraisimman, P., n.d. knowledgehut. [Online] Available at:


https://www.knowledgehut.com/blog/agile/agile-project-management-vs-traditional-
project-management [Accessed 15 05 2023].

Narasimman, P., 14th Jul, 2023. knowledgehut. [Online] Available at:


https://www.knowledgehut.com/blog/agile/agile-project-management-vs-traditional-
project-management [Accessed 1 8 2023].

PAL, S. K., 09 May, 2023. geeksforgeeks. [Online] Available at:


https://www.geeksforgeeks.org/software-engineering-extreme-programming-xp/
[Accessed 08 05 2023].

PAL, S. K., 23 Apr, 2023. geeksforgeeks. [Online] Available at:


https://www.geeksforgeeks.org/software-engineering-iterative-waterfall-model/
[Accessed 06 05 2023].

Pedamkar, P., n.d. educba. [Online] Available at: https://www.educba.com/iterative-


methodology/ [Accessed 06 05 2023].

Raeburn, A., November 28th, 2022. asana. [Online] Available at:


https://asana.com/resources/extreme-programming-xp [Accessed 10 05 2023].

Rouse, M., 27 October, 2011. techopedia. [Online] Available at:


https://www.techopedia.com/definition/25976/software-development-life-cycle-model-
sdlc [Accessed 05 05 2023].

Satyabrata_Jena, 19 Apr, 2023. geeksforgeeks. [Online] Available at:


https://www.geeksforgeeks.org/crystal-methods-in-agile-development-framework/
[Accessed 10 05 2023].

Satyabrata_Jena, 2023. geeksforgeeks. [Online] Available at:


https://www.geeksforgeeks.org/types-of-feasibility-study-in-software-project-
development/ [Accessed 1 8 2023].

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 204


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Satyabrata_Jena, n.d. geeksforgeeks. [Online] Available at:


https://www.geeksforgeeks.org/overview-of-big-bang-model/ [Accessed 06 05 2023].

Serengeti, 07.09.2021.. serengetitech. [Online] Available at:


https://serengetitech.com/business/traditional-sdlc-vs-
rad/#:~:text=Traditional%20SDLC%20%E2%80%93%20Waterfall,one%20phase%20to
%20the%20next. [Accessed 05 05 2023].

Shan, V., 2023. scribd. [Online] Available at:


https://www.scribd.com/document/393257400/Operational-Feasibility [Accessed 3 8
2023].

Siderova, S., n.d. getnave. [Online] Available at: https://getnave.com/blog/kanban-


benefits/ [Accessed 06 05 2023].

team, i., March 2023. indeed. [Online] Available at: https://www.indeed.com/career-


advice/career-development/feasibility-report [Accessed 20 05 2023].

Team, K. P. N., Fri, Jun 22, 2018 @ 06:13 PM. kpipartners. [Online] Available at:
https://www.kpipartners.com/blog/traditional-vs-agile-software-development-
methodologies [Accessed 06 05 2023].

Thakur, M., n.d. educba. [Online] Available at: https://www.educba.com/agile-


development/ [Accessed 07 05 2023].

Tornqvist, M., Mar 26. bootcamp. [Online] Available at: https://bootcamp.uxdesign.cc/the-


importance-of-requirements-gathering-in-software-development-
a8102b1f666e#:~:text=Requirements%20gathering%20is%20the%20process,use%20to%
20build%20the%20system. [Accessed 18 06 2023].

Velimirovic, A., 2023 Nov 17. phoenixnap. [Online] Available at:


https://phoenixnap.com/blog/software-development-life-cycle [Accessed 1 8 2023].

Waseem, A., Mar 02, 2023. management. [Online] Available at:


https://management.org/waterfall-methodology [Accessed 05 05 2023].

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 205


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

References for Figures.


Insightconsultants.co. (2023). Available at: https://insightconsultants.co/wp-
content/uploads/2007/12/0.jpg [Accessed 7 Aug. 2023].

Management.org. (2023). Available at: https://management.org/wp-


content/uploads/2022/03/5-Stages-of-the-Waterfall-Model-1024x739.jpg [Accessed 7
Aug. 2023].

Tutorialspoint.com. (2020). Available at:


https://www.tutorialspoint.com/sdlc/images/sdlc_spiral_model.jpg [Accessed 7 Aug.
2023].

Biplus.com.vn. (2023). Available at: https://biplus.com.vn/wp-


content/uploads/2022/11/V-model-for-software-development-infographic-diagram.jpg
[Accessed 7 Aug. 2023].

Kissflow.com. (2023). Available at: https://kissflow.com/hs-fs/hubfs/Rapid-application-


development.png?width=850&height=450&name=Rapid-application-development.png
[Accessed 7 Aug. 2023].

Javatpoint.com. (2021). Available at: https://static.javatpoint.com/difference/images/agile-


vs-waterfall-model.png [Accessed 7 Aug. 2023].

Geeksforgeeks.org. (2023). Available at: https://media.geeksforgeeks.org/wp-


content/uploads/20220308185728/kboard1.jpg [Accessed 7 Aug. 2023].

Amazonaws.com. (2023). Available at: https://startinfinity.s3.us-east-


2.amazonaws.com/t/xxFYvXnlAeya4B2AkWuYLJhxeNQ9DyVarRxv7CaJ.png
[Accessed 7 Aug. 2023].

Nimblework.com. (2023). Available at: https://www.nimblework.com/wp-


content/uploads/2022/12/Extreme-programming-1024x802.webp [Accessed 7 Aug. 2023].

Cloudfront.net. (2023). Available at:


https://d3ixtcdq6iye11.cloudfront.net/storage/public/article/93/1609241398453844561.jp
g [Accessed 7 Aug. 2023].

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 206


Development
HIGHER NATIONAL DIPLOMA IN
SOFTWARE ENGINEERING

Geeksforgeeks.org. (2023). Available at: https://media.geeksforgeeks.org/wp-


content/uploads/20210422205222/crystal2.png [Accessed 7 Aug. 2023].

Kruschecompany.com. (2023). Available at: https://kruschecompany.com/wp-


content/uploads/2021/10/lean.png [Accessed 7 Aug. 2023].

Shutterstock.com. (2023). Available at:


https://www.shutterstock.com/shutterstock/photos/1890343228/display_1500/stock-
vector-vector-website-design-template-srs-software-requirements-specification-acronym-
business-1890343228.jpg [Accessed 7 Aug. 2023].

Analyticsvidhya.com. (2023). Available at:


https://editor.analyticsvidhya.com/uploads/49236requirement_gathering.jpg [Accessed 7
Aug. 2023].

Altamira.ai. (2023). Available at: https://www.altamira.ai/wp-


content/uploads/2022/12/functional-requirements-vs-non-functional-requirements.jpg
[Accessed 7 Aug. 2023].

R. Dharmika System Analysis & Pearson ID: PG71222 Page | 207


Development

You might also like