Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
219 views104 pages

SDLC

Internal verification of assessment decisions – BTEC (RQF)

Uploaded by

cewofof396
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
219 views104 pages

SDLC

Internal verification of assessment decisions – BTEC (RQF)

Uploaded by

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

Higher Nationals

Internal verification of assessment decisions – BTEC (RQF)

INTERNAL VERIFICATION – ASSESSMENT DECISIONS

Programme title BITEC Higher National Diploma in Computing

MR. Chameen
Assessor Internal
Verifier
Unit 7 – Software Development Lifecycles
Unit(s)

Software Development Lifecycles Assignment


Assignment title
Umanda Shashini Weerawickrama Gunawardhana
Student’s name

List which assessment Pass Merit Distinction


criteria 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 Y/N
comments on the student work?

Has the work been assessed


accurately? Y/N

Is the feedback to the student:


Give details:
• Constructive?
• Linked to relevant assessment Y/N
criteria? Y/N
• Identifying opportunities for Y/N
improved performance?
• Agreeing actions? Y/N

Does the assessment decision need


amending? Y/N

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 signature Date
(if required)
3

Assignment Feedback Form

Student Name/ID U S W Gunawardhana / E215925

Unit Title Unit 7 – Software Development Lifecycles

Assignment 1 Assessor
Number

Date
Submission Date 30/09/2024 Received 1st
submission

Date Received 2nd


Re-submission Date submission
Assessor Feedback:
LO1 Describe different software development lifecycles

Pass, Merit &P1 P2 M1 D1


Distinction Descripts
LO2 Explain the importance of a feasibility study

Pass, Merit & Distinction P3 P4 M3 D2


Descripts

LO3 Undertake a software development lifecycle

Pass, Merit &P5 P6 M3 M4 D3


Distinction Descripts
LO4 Discuss the suitability of software behavioural design techniques.

Pass, Merit &P7 M5 M6 D4


Distinction Descripts

Grade: Assessor Signature: Date:

Resubmission Feedback:

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


4

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.

Assignment Feedback

Formative Feedback: Assessor to Student

Action Plan

Summative feedback

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


5

Feedback: Student to Assessor

I would like to express my gratitude for you reviewing my assignment. I have much benefited
from your advice and comments, which have helped me better comprehend the subject and
my work. I am sincerely grateful for your assistance and eager to use your wisdom in my
upcoming academic pursuits.

Assessor Date
signature

Student [email protected] Date 30/09/2024


signature

Pearson Higher Nationals in


Computing

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


6

Unit 7: Software Development Lifecycles Assignment

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

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


7

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. Carefully check the hand in date and the instructions given in the assignment. Late
submissions will not be accepted.
3. Ensure that you give yourself enough time to complete the assignment by the due date.
4. Excuses of any nature will not be accepted for failure to hand in the work on time.
5. You must take responsibility for managing your own time effectively.
6. 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.
7. Failure to achieve at least PASS criteria will result in a REFERRAL grade.
8. Non-submission of work without valid reasons will lead to an automatic RE FERRAL.
You will then be asked to complete an alternative assignment.
9. 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.
10. 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

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


8

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 Pearson 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]
Student’s Signature: Date:30/09/2024
(Provide E-mail ID) (Provide Submission Date)

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


9

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


10

Higher National Diploma in Business


Assignment Brief
Student Name /ID Number U S W Gunawardhana

Unit Number and Title Unit 7: Software Development Lifecycles

Academic Year 2023/24

Unit Tutor MR. Chameen

Assignment Title Software Development Lifecycles Assignment

Issue Date 16/08/2024

Submission Date 30/09/2024

IV Name & Date

Submission format

This assignment consists of section A and section B.

The submission should be in the form of an individual report written in a concise, formal business
style using single spacing (refer to the assignment guidelines for more details). You are required to
make use of headings, paragraphs, and subsections as appropriate, and all work must be supported
with research and referenced using Harvard referencing system. Please provide in-text citation and a
list of references using Harvard referencing system.

The recommended word count is 4,500–5,000 words excluding annexures..


Minimum word count – 4,500
Maximum word count – 5,000

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


11

Unit Learning Outcomes:

By the end of this unit students will be able to:

LO1 Describe different software development lifecycles


LO2 Explain the importance of a feasibility study
LO3 Undertake a software development lifecycle
LO4 Discuss the suitability of software behavioral design techniques.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


12

Assignment Brief and Guidance:

Section A

Case 1: In the wildlife ministry of Sri Lanka intend to develop a wildlife safari system which links
all the details of sanctuaries, wetland, and national parks across Sri Lanka. Through this the
government wants to track all the details of safari drivers and to count local and foreign visitors
entering these premises. The IT department of wildlife ministry have little experience on
developing this kind of system and they have two years to complete this project.

Case 2: “ChangeU” salon needs to have a system to track their bookings and they expect to
provide better customer service through the system. This is not incredibly challenging, and the
development team also has some early experience of this kind of a project. And the main
requirement of the client is to get a high-quality product without considering the budget and time
constraints.

Activity 1

Describe two sequential models and two iterative models you have learned which can be used to
design the systems explained in the 2 given cases. Explain how the risk is managed in each
software lifecycle model identified. Pick one case out of two and select the most suitable SDLC
model along with a discussion elaborating the reasons to select the particular SDLC model.

Which system out of the given two is most suitable to be developed using the waterfall model?
Assess the merits of applying the waterfall model to the system chosen by you.

Section B

Assume yourself as a system analyst assign to analyse and design a software system for an
organization of your choice. Investigate the business and system requirements using appropriate

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


13

tools/ techniques and develop the system design with the findings.

Activity 2

Explain and discuss the purpose and the components of the feasibility report that you have to
develop in order to check the feasibility of the chosen system. Assess the impact of different
feasibility criteria included in your report to investigate the software system.

Suggest , describe and compare two technical solutions for the proposed system and pick the most
suitable one with the justification for the selection.

Activity 3

Undertake the system investigation to identify business and system requirements using appropriate
investigation tools/ techniques and develop the software system specification for the chosen
system.

Evaluate the effectiveness of the system investigation process chosen by you to fulfil the
requirements of the users and analyse the effectiveness of the SDLC followed in order to trace the
system requirements. Discuss two approaches that can be used to improve the quality of the
system in the future.

Activity 4

Analyse the software behavioural tools and techniques that could be used for the proposed system
and discuss suing examples, the most suitable behavioural techniques that could be used for your
system.

Differentiate the finite state machine (FSM) and extended FSM providing an application for each .
Justify how the data driven software can improve the reliability and the effectiveness of the
software system proposed by you.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


14

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


15

Grading Rubric

Grading Criteria Achieved Feedback


LO1 Describe different software development lifecycles

P1 Describe two iterative and two sequential software


lifecycle models.
P2 Explain how risk is managed in software lifecycle
models.
M1 Discuss using an example, why a particular lifecycle
model is selected for a development environment.
D1 Assess the merits of applying the Waterfall lifecycle
model to a large software development project.

LO2 Explain the importance of a feasibility study

P3 Explain the purpose of a feasibility report.

P4 Describe how technical solutions can be compared.

M2 Discuss the components of a feasibility report.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


16

D2 Assess the impact of different feasibility criteria on a


software investigation.

LO3 Undertake a software development lifecycle


P5 Undertake a software investigation to meet a business
need.

P6 Use appropriate software analysis tools/techniques to


carry out a software investigation and create supporting
documentation.

M3 Analyse how software requirements can be traced


throughout the software lifecycle.

M4 Discuss two approaches to improving software


quality

D3 Evaluate the process of undertaking a systems


investigation with regard to its effectiveness in improving
a software quality.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


17

LO4 Discuss the suitability of software behavioural design techniques

P7 Discuss, using examples, the suitability of software


behavioural design techniques

M5 Analyze a range of software behavioural tools


and techniques.

M6 Differentiate between a finite state machine


(FSM) and an extended FSM, providing an
application of use for both

D4 Present justifications of how data-driven software can


improve the reliability and effectiveness of
software

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


18

Table of Contents
Acknowledgement................................................................................................................................................................................................... 20
Description of two Iterative and two Sequential Models......................................................................................................................................... 21
An Explanation of Identified Software Lifecycle Model’s Risk Management Strategy..........................................................................................25
Selecting the Optimal SDLC Model for a Specific Case and reasons for Selecting that Particular Model..............................................................28
Assessing the merits of Waterfall Lifecycle Model Application for Large Software Development Projects..........................................................30
System Analysis and Design for Dialog Axiata PLC’ s management System.........................................................................................................33
An Evaluation Report to Assess the Potential of the Selected System.................................................................................................................... 41
Purpose of the Feasibility Report........................................................................................................................................................................ 41
Components of the Feasibility Report................................................................................................................................................................. 43
Assessing the Impact of different feasibility criteria on a Software Investigation...................................................................................................46
The Impact Assessment of different feasibility criteria for the Material Management System for Dialog Axiata PLC..........................................49
Exploring Technical Solutions for Material Management System for Dialog Axiata PLC: Evaluation, Comparison & Selection.........................52
System Investigation for Business and System Requirements: Employing Effective Investigation Tools and Techniques....................................65
Software System Specification................................................................................................................................................................................ 72
Evaluation of the System Investigation Process for Meeting User Requirements................................................................................................... 74
Tracing software requirements throughout the Software Lifecycle......................................................................................................................... 79
Approaches to Improving Software Quality............................................................................................................................................................ 82
Evaluation of the System Investigation Process in improving Software Quality.....................................................................................................84
Analyzing the Software behavioral Tools and Techniques that can be used for the Proposed System....................................................................87
Discuss using Examples: The Most Suitable Behavioral Techniques that could be Used for MMS.......................................................................89
Differentiating Between Finite State Machine (FSM) and Extended Finite State Machine, Including Applications of Use for Both.....................92

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


19

Justifying How Data-Driven Software Can Improve the Reliability and Effectiveness of the Proposed Material Management System................97
The Permission letter that was submitted to Obtain Permission for Research Visit.............................................................................................. 100
References............................................................................................................................................................................................................. 101

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


20

Acknowledgement

I want to thank Mr. Chameen our SDLC lecturer, from the bottom of my heart for his valuable guidance and support throughout this
assignment. His proficiency and commitment were crucial to the accomplishment of this task. I sincerely appreciate his thought-provoking
lectures and helpful criticism, which have improved my comprehension of the Software Development Life Cycle and its practical applications

Thank You.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


21

Description of two Iterative and two Sequential Models

Case 01: Wildlife Safari System

Sequential Model – Waterfall Model

Each step of the Waterfall model is finished before going on to the next in a linear and sequential manner. In the Waterfall approach, risk
management usually takes place in the project's early phases. During the preliminary planning and needs collection stage, risks are recognized,
examined, and addressed. The focus is on in-depth investigation up front to reduce hazards that become apparent later.

Given the complexity and size of the project, this model's structured approach makes it appropriate for the wildlife safari system. The
requirements analysis, system design, implementation, testing, deployment, and maintenance phases are the steps that the waterfall model goes
through in a straight line. A rigorous and organized development process is ensured by the requirement that each step be finished before moving
on to the next. Clear requirements definition and a controlled development environment are made easier with the use of the Waterfall Model in
large-scale projects like the Wildlife Safari System, where meticulous planning and documentation are essential.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


22

Iterative Model – Agile

Due to the possibly changing requirements of the wildlife safari system, it is better to apply the Agile model because of the permanent feedback.
Agile, involves several cycles of development that are usually sequential in nature and oftenacin are called iterations. The commissioning
process is cyclic, each cycle is split into the planning phase, development phase as well as review phase as required and based on the feedback
from the stakeholders as well as the emerging and changing requirements. This approach is important in the implementation of a project such as
the safari system since as the personnel work on the project and develop ideas and requirements that would be necessary to complete the work,

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


23

they can be implemented in the project without having to start from scratch. Another advantage of the adopted agile development model is that it
is an iterative process thus increasing the chances of developing a functional system that also meets the user’s needs when the requirements are
constantly changing.

Case 02: ChangeU Saloon Booking System

Sequential Model – V Model

The V model is a software lifecycle model that is distinguished by a pattern of sequential execution that is shaped like a V. It is frequently called
the validation and verification model. The V-Model is built on the idea of a testing phase that is closely related to every development phase, and

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


24

it is basically an extension of the Waterfall model. This basically indicates that every stage of the development cycle has its own testing phase.
This paradigm is renowned for its extreme discipline, with each new step commencing only once the preceding one has been successful.

As a sequential model, the V-Model is applicable in planning of the ChangeU salon booking system. The V-Model is an enhanced form of the
Waterfall Model in so far as the Validation & Verification activities formed part of all the phases of the model. The process implies requirements
specification, creation of designs, coding and then, each of these aspects can be tested iterations that correspond uniquely with the design phases.
This model directly associates each of the development phases with one or more test activities which will facilitation easy trace of problem
areas. Considering the current problem-solving approach in the salon pointing to a need for high quality output HI polishes and the current
purpose of meeting users’ needs without necessarily being constrained by time and resource, the V-Model comes in handy in testing and
validating.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


25

Iterative Model: Scrum

The Scrum is perfect for the ChangeU salon booking system because of its approach to providing the maximum result with the clients’ feedback
via iterations. Scrum divides the project into time-bound segments referred to as sprints and are usually 2-4 weeks long. In every development
sprint, the team delivers a potentially shippable product increment for stakeholders’ inspection. This process and cycle create the foundation
where there is constant learning from the client so as to make the final product that will meet the salon’s quality and functionality standards.
Scrum involves cross functionality of members and continuous feedback which will meet the client’s need of getting quality product irrespective
of time or money constraint.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


26

An Explanation of Identified Software Lifecycle Model’s Risk Management Strategy.

Risk Management in the Waterfall Model

Risk management in the Waterfall model is formalized and occurs mainly at initiation because of the process’s linearity and phase dependencies.
They are likely to be revealed early on and controlled during the early phases numerous possibilities can be discovered in the requirements
analysis and design phases. The risks associated with lack of clarity or specification dealing with requirements are managed through
comprehensive documentation and effective communication with the stakeholders. In the design phase, it is common for Business Analysts to
identify risks regarding system architecture and technical feasibility and where these risks are identified they are controlled through design
reviews. This structured approach will help in pinpointing problem areas long before development gets to parity. In the implementation phase,
risks are managed by performing tests to identify various defects and interoperability issues though critical risks can be identified at later point of
the project. Consequently, since the phase transitions are very rigid, it is always costly and time-consuming to handle issues arising later on. Risk
control in the deployment phase includes having contingency strategies of the problems that may occur and risk control during maintenance of
the system performance and users’ feedback. The major drawback of the Waterfall model is a difficulty for changes, though the systematic
approach to risks and risk management during the project is one of the key benefits of this model.

Risk Management in the V Model

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


27

With an organized methodology that prioritizes validation and verification at every level of development, the V-Model controls risk. By
guaranteeing that every development step is matched with equivalent testing activities, this paradigm expands upon the Waterfall model.
Through thorough documentation and evaluations, risks are first recognized and then reduced during the requirements analysis and design
phases. System testing is used for validation, which makes sure the system satisfies user requirements. Technical testing is used for
verification, which makes sure the components work as intended and integrate easily.
This dual approach aids in methodically locating and mitigating integration and system functionality risks. Unit, integration, and system testing
are all part of the V-Model methodology, which aims to find and fix bugs prior to system deployment. This thorough testing approach
guarantees that performance and quality-related threats to the system are adequately controlled. Careful planning and monitoring are necessary
for deployment and maintenance to handle any new problems. The V-Model offers a thorough framework for risk management at every stage
of the project lifecycle because of its systematic approach to validation and verification.

Risk Management in the Scrum

In Scrum, risk management is more frequent and team-based since it aligns with model’s approach that is based on cycles and teamwork. Risks
are handled during sprint planning where the team is able to note down and discuss on risks that are related to the coming work. Hence, the
approach here is proactive, whereby any drawbacks that may be present are optimized in a way that can assist in the reduction of being
compounded at a later stage. This means that daily stand-up meetings also include the discussion of challenges and risks thus continuously
identifying risks. This results into frequent and effective communication and this facilitates easy detection of issues if they occur. Sprint
reviews, which are held at the end of each sprint, entail a presentation of work that has been done; this usually exposes risks on issues such as
user acceptance and system functionality. Opinions that are received from these reviews are useful in modifying the team so that it does not
deliver an undesirable product. Indeed, it helps the team to assess the results of the sprint and to define what was done well and what could

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


28

have been done better therefore the risk management practices could be enhanced in the subsequent sprints through the procedure of sprint
retrospective. The way of work in Scrum is iterative and involves the team members in risk assessment, so it works well managing changing
project risks.

Risk Management in Agile

Agile's flexible and iterative methodology, which places a strong emphasis on ongoing assessment and adaption, helps reduce risks. By
dividing the project into smaller, more manageable phases, or sprints, risks are reduced. Risks are identified and assessed at the beginning of
each sprint, enabling the team to modify priorities and tactics to deal with possible problems early. At the conclusion of every sprint, regular
stakeholder feedback assists in identifying risks associated with user needs and system functionality, allowing for prompt revisions based on
the most recent discoveries. Agile encourages testing and continuous integration, which aids in the early identification and correction of errors
as well as the efficient management of technical risks. Agile's flexibility makes it possible for the project to quickly adjust to new risks or needs
modifications, preserving the responsiveness and relevance of the development process. Retrospectives and regular reviews offer chances to
consider risks and improve risk management procedures. Agile's iterative process and focus on feedback and collaboration offer a strong
framework for risk management throughout the project lifecycle, guaranteeing that the project can adjust to new requirements and obstacles as
they arise.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


29

Selecting the Optimal SDLC Model for a Specific Case and reasons for Selecting that Particular Model

Selected Case: Change U Saloon Booking System

The Scrum model is the best option for the ChangeU salon booking system. This decision is based on multiple important factors:

 Client’s priorities

The main goal of ChangeU is to produce a superior product within a reasonable price and timeline. Scrum's iterative approach, which
emphasizes delivering functional product increments and continual improvement, fits in nicely with this aim. This makes it possible to make
frequent changes in response to user feedback, guaranteeing that the finished product will fulfill the client's requirements for functionality and
quality.

 Development Team’s Experience

The development team's early exposure to related projects enhances Scrum's methodology. Scrum offers an organized yet adaptable framework
for managing project tasks and deliverables, making it appropriate for teams with a basic understanding of agile processes. Scrum places a
strong focus on collaboration and iterative development.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


30

 Flexibility and Adaptability

Short sprints, usually lasting two to four weeks, are part of Scrum's iterative process, and each sprint produces a potentially shippable product
increment. This methodical approach facilitates continuous modifications and enhancements according to input from stakeholders, an essential
aspect of a project aimed at delivering superior customer support. The capacity to adjust to shifting demands and consistently take user input
into account aids in improving the booking system's ability to satisfy user preferences and needs.

 Continuous Improvement

Regular reflection and feedback are made easier by Scrum's sprint reviews and retrospectives, which are crucial for ongoing development.
These components guarantee that ChangeU, which wants to improve customer service via the system, can continue to adapt its development
process to user requirements and market expectations. Because Scrum is iterative, the team may make incremental enhancements to the system
and quickly resolve any new issues that arise.

 Regular engagement of Stakeholders

Through sprint reviews at the conclusion of each sprint, Scrum incorporates stakeholders and offers chances to get input and match progress to
user expectations. This ongoing participation helps to manage risks associated with user acceptance and satisfaction and guarantees that the
system changes in accordance with client needs.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


31

 Collaboration and Communication

Scrum encourages close communication and cooperation between the client and the development team. This guarantees that the system satisfies
the client's expectations and promotes efficient communication for elucidating specifications and swiftly resolving problems.

Because of its flexibility, iterative nature, emphasis on continuous development, and stakeholder participation, Scrum is the best SDLC model
for the ChangeU salon booking system. It's a great fit for overseeing the development of the booking system because it supports the project's
objectives of providing a superior product and responding to customer input.

Assessing the merits of Waterfall Lifecycle Model Application for Large Software Development Projects

Most Suitable System for the Waterfall Model

Wildlife Safari System


The Wildlife Safari system, the first of the two scenarios provided, is the most appropriate system to be designed utilizing the waterfall model.

Merits of Applying the Waterfall Model to the Wildlife Safari System

 Clear and Structured Requirements

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


32

The Waterfall model works best for projects whose needs are clear-cut and consistent. The Wildlife Safari System tracks a great deal of
information about national parks, safari drivers, animal sanctuaries, and tourists. The linear method of the Waterfall model, in which specific
needs are acquired and recorded up front, is advantageous for this complexity. This guarantees that the scope is established and approved prior
to the start of development.

 Predictable Phases

The phases of the Waterfall model, which include requirements, design, implementation, testing, deployment, and maintenance, offer an
organized method for handling big projects. This predictability helps with planning and resource allocation for the Wildlife Safari System,
making sure that each stage is finished before going on to the next. This meticulous approach guarantees that every facet is handled in a
methodical manner, helping to manage the complexity of the project.

 Comprehensive Documentation

For a complicated system like the Wildlife Safari System, the Waterfall model's focus on complete documentation at every stage is
advantageous. Thorough design and requirements documentation facilitates the management of the project's intricacy and serves as a guide for
upcoming maintenance. For consistency and clarity to be maintained throughout the development process, this documentation is essential.

 Well Defined Project Timeline

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


33

The planned schedule of the Waterfall model aids in project management, especially considering the complexity of the Wildlife Safari System
and the inexperience of the IT department. The project team can follow a specified sequence of phases, which makes it easier to monitor
milestones and guarantee that each phase is finished before going on to the next. This methodical technique facilitates the management of
extensive projects with precise deadlines.
 Change Management

For a project like the Wildlife Safari System with consistent needs, this rigidity can be desirable, even though the Waterfall model is less
flexible in addressing changes once a phase is done. As a result, there is less chance of scope creep and the project can proceed according to
plan in a controlled development environment where modifications are kept to a minimum.

The Wildlife Safari System is ideally suited for the Waterfall model because of its organized methodology, precise documentation needs, and
foreseeable stages. The model is a good fit for managing the development of the wildlife tracking system because it places a strong emphasis
on rigorous planning and formal testing, which fits well with the requirements of this intricate project

System Analysis and Design for Dialog Axiata PLC’ s management System

Dialog Axiata PLC , a leading telecommunication company in Sri Lanka , needs an advanced Material Management System (MMS) in order to
optimize its logistics and inventory procedures. My objective as the system analyst assigned to analyze and design this software system is to
research existing approaches and system requirements and create a thorough system design that satisfies the demands of the company.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


34

1 Investigation and Requirements Analysis

 Understanding the current system

It's critical to comprehend the capabilities and constraints of the current material management system before designing the new one. Dialog
Axiata currently tracks inventories inefficiently, lacks real-time data access, and has trouble integrating with other systems. These are only a
few of the problems with the legacy system that the company employs for material management. The outdated architecture of the system
makes it difficult to scale and integrate modern technology.

 Requirement Gathering

A comprehensive process of requirements collecting was carried out to address these problems and fulfill the organization's needs. To
understand the demands and pain points of important stakeholders, such as inventory managers, procurement officials, and IT workers,
interviews were conducted. Furthermore, surveys and seminars were used to get feedback from end users who use the system on a daily basis.

Initially, multiple methods were utilized to collect business requirements:

1. Interviews: conducted with the participation of important parties such as logistics staff, supply chain managers, procurement officers,
and inventory controllers. These interviews provide light on the problems that the current material management procedures are now
facing as well as the changes that are wanted.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


35

2. Workshops: facilitated cross-functional team workshops to map out current procedures and pinpoint issues. Understanding the process
and the potential integration of the new technology with ongoing activities was also aided by these training.

3. Document Analysis: Examined extant materials, including inventory reports, process manuals, and purchase records, to comprehend
data needs and workflows.

4. Observation: To gain a practical understanding of the difficulties and inefficiencies in the current system, I watched the supply chain
and inventory management departments' daily activities.

5. Surveys and questionaries: To get their opinions on usability problems, needed enhancements, and system performance, end users of
the current system were given a survey. The feedback suggested that improved reporting features, more user-friendly interfaces, and real-
time updates were required.

Identified primary business requirements for the MMS

 Tracking Inventory in Real Time

The necessity of having real-time visibility into inventory levels was stressed by stakeholders. Improved decision-making and fewer
occurrences of stockouts and overstock scenarios would be made possible by this feature.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


36

 Automated procurement Process

To expedite the creation and processing of orders, the system ought to automate procurement workflows. In order to place orders efficiently,
this involves linking with supplier systems, tracking order statuses, and automatically initiating purchase orders when inventory levels drop
below predetermined thresholds. It is anticipated that automation will decrease manual intervention, quicken procurement cycles, and increase
productivity all around.

 Integration with other systems

The new system needs to be able to work smoothly with other corporate systems, such the CRM and ERP systems. The organization's
operations will be streamlined, and data consistency will be guaranteed, thanks to this integration.

 User Friendly Interface

It is imperative that the system has an intuitive and user-friendly interface to minimize training time and enable ease of use for a wide user base
that includes both technical experts and non-technical users.

 Scalability and Flexibility

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


37

The system ought to be built to handle expansion and modifications to corporate procedures in the future. This entails managing higher
transaction volumes and adjusting for changing company requirements.

 Improved Analytics and Reporting

To give actionable insights into supplier performance, procurement efficiency, and inventory patterns, advanced reporting and analytics
capabilities are needed.

System Requirement Analysis

The next stage is to convert the established business requirements into system requirements. Determining the necessary functional and non-
functional requirements for the new system entails:

Functional Requirements

 Inventory Management - Real-time inventory level tracking, automated stock replenishment, and low-stock notifications should all be
supported by the system.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


38

 Procurement Management - Features like purchase order tracking, order processing interaction with supplier systems, and automatic
order generation based on inventory levels should be included.

 Supplier Management - The system must track supplier performance measures, keep an updated database of supplier data, and make it
easier for suppliers and customers to communicate and work together.

Non-Functional Requirements

 Scalability - The system must have the capacity to manage growing amounts of information and transactions as the company expands.

 Performance - Reduced downtime and delays are required by the system, which must guarantee rapid reaction times and high
availability.

 Security - Sensitive data should be protected with strong security methods, such as encryption, access controls, and frequent security
audits.

 Usability - To ensure that all system users can easily operate it, the user interface needs to be simple to use and intuitive.

2 System Design

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


39

The next stage is to create a comprehensive system design after the requirements have been established. An architectural, database, and user
interface design blueprint is created as part of the design process for the software system.

 Architectural Design

To guarantee flexibility and scalability, the new Material Management System's architectural design will take a modular approach. A service-
oriented architecture (SOA) will be used in the system's design to make integration with other enterprise systems easier. The foundation of this
design will be microservices, in which every module (such as procurement, reporting, and inventory management) is created as a distinct
service that interacts with one another via clearly defined APIs.

Components and Modules

1. Inventory Management Module - This module will control stock movements, track inventory levels in real time, and send out low stock
alerts. It will make use of RFID technology and barcode scanning to guarantee precise and effective material tracking.

2. Procurement Management Module - The procurement process, including purchase order creation, supplier management, and invoice
processing, will be streamlined by this component. To manage procurement procedures and preserve correct financial records, it will
link with the ERP system.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


40

3. Reporting and Analytics Module - This module provides insights into supplier data, procurement efficiency, and inventory performance
through customizable reporting features and advanced analytics. It will include capabilities for data visualization and support a number
of report formats.

4. User Management Module - Permissions, role-based access control, and user authentication will be managed by this component.
According to their roles and responsibilities, it will guarantee that users have the proper access to system operations.
5. Integration Module - Integration with third-party systems, including ERP, CRM, and financial systems, will be made easier by this
module. To guarantee smooth data flow among systems, it will make use of industry-standard protocols and data interchange formats.

 Data Design

The main goal of the data design is to provide a scalable and reliable database schema to meet the requirements of the Material
Management System. Tables for suppliers, purchase orders, inventory items, and user accounts will be included in the relational model
database design. To maintain data integrity and remove redundancy, normalization techniques will be used.

 User Interface Design

The design of the user interface (UI) will give priority to accessibility and usability. It will have a simple, easy-to-navigate design with
unambiguous labeling. The user interface (UI) will be made to work with a range of devices, such as tablets, smartphones, and desktop
computers, so people from diverse platforms can utilize the system. Throughout the design process, user input will be collected to improve
and polish the interface.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


41

 Security Considerations

A crucial component of the system design is security. Several security measures will be incorporated into the Material Management
System, such as:
Data Encryption - Encryption will be used to protect sensitive data, including financial and personal information, from unauthorized
access during transmission and at rest.
Access Control - Users will only have access to the features and information pertinent to their responsibilities thanks to the
implementation of role-based access control, or RBAC.
Audit Trails - To provide an extra degree of security and accountability, the system will keep audit trails to monitor user activity and
system modifications.

3. Implementation and Testing

The stages of implementation and testing came after the design phase. Iterative development methods were used to create the system,
incorporating user feedback into successive iterations. To make sure the system satisfies all requirements and operates dependably in a variety of
scenarios, extensive testing was carried out.

An essential component of the procedure was user acceptability testing (UAT), which involved end users in assessing the usability and
functionality of the system. Final tweaks were made based on UAT feedback to make sure the system meets user expectations.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


42

An extensive examination of the current procedures and specifications was necessary for the analysis and design of Dialog Axiata
PLC's material management system. To solve the needs and challenges indicated, the suggested system design integrates contemporary
technology and approaches. Dialog Axiata PLC can anticipate notable enhancements in inventory control, procurement efficacy, and overall
operational efficiency through the use of this design. To ensure the system's successful integration into the business's operations, the system's
development, deployment, and continuing support are the following phases.

An Evaluation Report to Assess the Potential of the Selected System

A feasibility report, which assesses the viability of a proposed system, is an essential document in the project development lifecycle. The
feasibility report evaluates the viability of developing and implementing a new material management system for Dialog Axiata PLC. This
report's goal is to offer a comprehensive examination of numerous factors in order to guarantee that the project will be advantageous and
useful. Here is a thorough explanation of the purpose and main components of the feasibility report:

Purpose of the Feasibility Report

 Evaluate Viability

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


43

The feasibility report analyzes the potential of the proposed material management system in terms of its technological, operational, economic
and legal possibility of implementation. It determines whether a given project can be delivered on time, the cost and vale of the resources used
to complete the project and whether the project delivers on the key objectives of the organization.

 Identify Risks

Risks and challenges related to the project are identified in the study. Through early risk identification and mitigation strategy planning,
possible issues that could affect the system's success can be avoided or addressed by the organization.

 Justify Investment

By describing the anticipated advantages and return on investment (ROI), it offers justification for the system's necessary investment. This aids
in decision-makers' understanding of the project's worth and helps them obtain the funds they require.

 Support Decision Making

The report provides vital information to help in decision-making on whether to continue, change, or end the project. It provides stakeholders
with a comprehensive grasp of the project's viability and ramifications.

 Ensure Alignment

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


44

It ensures that the suggested system is in line with the strategic goals and operational requirements of the business. This alignment makes it
possible to make sure that the system supports the mission and objectives of the business.

Components of the Feasibility Report

1.Executive summary

An overview of the feasibility report's main conclusions, recommendations, and findings is given in this section. It provides high-level
understanding of the project's viability and possible effects on the organization to decision-makers.

2.Introduction

The introduction, which describes the objectives, goals, and purpose of the study, provides background information for the feasibility report. It
gives an outline of the report's structure and background information on the project and its importance.

3.Project Description

This part provides a detailed description of the proposed project, outlining its aims, purposes, and anticipated results. It describes the project's
objectives, lists the relevant parties, and provides justification for the project's start.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


45

4.Methodology

The approach used to carry out the feasibility study is described in the methodology section. It explains the tools, resources, data gathering
strategies, and research methodologies used to compile and examine pertinent data. It also addresses any presumptions or restrictions on the
research.

5.Technical Feasibility

This component assesses the project's technical feasibility, examining the technology requirements, infrastructure needs, and availability of
resources. It evaluates whether the proposed project can be implemented using existing or readily available technology and if the necessary
technical expertise is accessible.

6.Economic Feasibility

The project's financial viability is assessed under the section on economic feasibility. A cost-benefit analysis is part of it, which evaluates the
anticipated expenses for development, implementation, and operation in comparison to the anticipated advantages and returns on investment. It
might also consider elements like the payback duration, cost savings, and possible revenue generating.

7.Operational Feasibility

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


46

This part evaluates the suggested project's operational viability and practicality. It looks at how well the project fits in with the organizational
resources, organizational capabilities, and current business processes. It assesses possible operational effects, including modifications to
workflows, requirements for staff training, and any implementation-related hiccups.

8.Legal and Regulatory Feasibility

Legal and Regulatory Feasibility guarantees that the system under consideration conforms to all applicable laws and regulations. This entails
looking over relevant industry rules and regulatory standards as well as dealing with data security and privacy needs. Maintaining compliance
shields the company from potential legal problems and helps avoid legal problems.

9.Shedule Feasibility

Schedule Feasibility assesses the project schedule to make sure the suggested system can be created and put into operation in a fair amount of
time. This part evaluates the project's overall schedule to guarantee on-time completion, projects the project's duration, and identifies important
deliverables and milestones. The viability of the schedule aids in effective project planning and management.

10.Coclusion and Recommendations

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


47

The feasibility report's conclusions are outlined in this part, along with some practical suggestions. The analysis may recommend moving
forward with the project, making changes, or reevaluating the idea. This part provides decision-makers with a clear path forward, based on a
thorough assessment of the project's feasibility.

11.Appendices

Additional data to assist the study, such as technical specifications, sample documentation, comprehensive financial calculations, or more
research data, may be included in the appendices of the feasibility report.

Assessing the Impact of different feasibility criteria on a Software Investigation

The identification and evaluation of different feasibility criteria such that they appear in a report is important when investigating a software
system since each criterion offers a different and effective way of coming up with the feasibility of the project and its chances of success. These
are normally the objectives of the feasibility report and most of them focus on different aspects of the system under consideration. The
implication of such criteria may not be negligible, affecting decision making, resource management and organizational attainment of strategic
objectives.

 Technical Feasibility

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


48

Technical feasibility is considered as one of the significant criteria since it analyses the practical possibility of the implementation of a given
system with the existing technology. Another factor is technical feasibility, where one must compare the hardware, software and infra structure
needed, to what is already in place. This criterion affects a project because, in the course of the selection, one is able to determine whether there
will be technical constraints or compatibility problems. Lack of proper planning when it comes to the technical feasibility of a project may
result in several implementation issues – this consequently leads to increased costs, time overruns and operational disruption. For example, if
the prospective system demands robust technology which cannot be integrated with the existing system, huge revisions may be required adding
to cost and time.

 Operational Feasibility

Accessibility checks the ability of the new systematic system in the organization to keep abreast with the organization’s running procedures.
This criterion evaluates the usability of the system in the organizational setting and the repercussions on the user and the process. Operational
feasibility hard work can be evidenced by evaluating the result it has in availing to make particular that the system boosts instead of reducing
the operational performance. For instance, if the implementation of the system will interfere with existing processes or require many
modifications to be made to processes, there will be user resistance and therefore struggle to realize the promised improvements. Effective
operational feasibility analysis guarantees that the system is end-user friendly, characterized by daily operations, while offering training and
support to enhance better implementation.

 Economic Feasibility

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


49

This refers to evaluating the software system's financial sustainability. Cost-benefit analyses and other elements are considered, along with
development and operating costs and possible returns on investment. A low level of economic feasibility could mean that there are not enough
financial resources for the project, or that the expected benefits are not more than the expenditures. This may have an effect on the study by
necessitating a review of the project's financing options, budget, and sources of prospective income.

 Legal and Regulatory Feasibility

Legal and regulatory feasibility assesses how well the suggested system conforms to applicable laws, rules, and industry norms. This criterion
impacts the project by identifying potential legal risks and ensuring that the system adheres to data protection, privacy, and other regulatory
standards. There may be fines, legal repercussions, and reputational harm from noncompliance. Thus, determining the system's legal and
regulatory viability is essential to preventing legal issues and guaranteeing that it runs within the bounds of the law.

 Schedule Feasibility

The schedule feasibility assesses the project's ability to be completed in an acceptable amount of time. By establishing reasonable deadlines for
development, implementation, and deployment, this criterion has an effect on the project. Project schedule delays may result in higher
expenses, lost opportunities, and weakened stakeholder confidence. The project team can detect potential time restrictions, make appropriate
plans, and guarantee that the project proceeds according to plan by evaluating the schedule's viability.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


50

Technical, operational, economic, legal, and scheduling feasibility criteria are all important in determining a software
system's overall feasibility. The project's success, decision-making, and system alignment with organizational goals and restrictions are all
determined by these parameters, which have a significant impact. Stakeholders may make informed decisions and ensure a successful project
conclusion by using a comprehensive feasibility study, which offers a clear understanding of potential difficulties and rewards.

The Impact Assessment of different feasibility criteria for the Material Management System for Dialog Axiata PLC

Feasibility Criteria Impact Assessment Summary

Implementation may be severely hampered by


Technical Feasibility High outdated infrastructure or insufficient technological
resources. It is essential to have access to qualified
staff and be compatible with current systems to
avoid delays and technical malfunctions.

Operational Feasibility High Acceptance by users and integration with existing


workflows are critical. Adoption of the system and
operational efficiency may be impeded by a poor fit

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


51

with current procedures or user opposition. For the


shift to go well, comprehensive training and change
management techniques are required.

Economic Feasibility High A positive cost-benefit ratio is essential to the


project's financial sustainability. A low return on
investment (ROI) or excessive development and
execution expenditures relative to the anticipated
advantages could make the project unapproved. It is
imperative to conduct a thorough budget assessment
and cost-benefit analysis.

Legal and Regulatory Feasibility Medium Legal repercussions can only be avoided by adhering
to pertinent legislation and data protection laws.
Penalties and reputational harm to the company
could arise from noncompliance. For risk reduction
to be effective, it is imperative that all legal and
regulatory criteria be fulfilled.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


52

Schedule Feasibility High Realistic timelines must be followed to prevent


escalating expenses and interruptions to operations.
The overall success of the project and stakeholder
satisfaction may be impacted by delays. To properly
manage the timetable, precise scheduling and early
detection of possible delays are essential.

Security Feasibility High Data breaches, possible legal issues, and a decline in
confidence could all be caused by inadequate
security measures.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


53

Exploring Technical Solutions for Material Management System for Dialog Axiata PLC: Evaluation, Comparison
& Selection

To make sure that the technological solution selected satisfies the organization's demands and goals, it is imperative to conduct a systematic
comparison while evaluating potential options. To compare the performance, cost, and applicability of each solution, a number of factors are
evaluated. This is how a full comparison of technical solutions may be made.

Functional Requirements: Assess each solution's degree of compliance with the project's functional requirements. Think about if the solutions
have the features and functionalities required to meet the needs of the users and the intended goals.

Performance: Another important factor is performance. This entails analyzing the effectiveness of each solution both in average and optimal
operating environments. Resource usage, response times, and processing speed are a few examples of key performance indicators. For instance,
software may be chosen over more resource-intensive or slower software if it completes tasks more quickly and utilizes less system resources.

Security: Security is a top priority, especially for systems that deal with sensitive data. Examine the security elements of each system, including
access controls, encryption techniques, and conformance with industry standards. A solution that includes comprehensive security measures will
be more reliable in protecting your data from illegal access or breaches.

Integration and Capabilities: Analyze the solutions' ease of integration with third-party apps, databases, and current systems. Take into
account how well they work with data formats, APIs, and industry standards. Analyze the complexity and amount of work needed to accomplish
seamless integration.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


54

Customization and Flexibility: Assess the degree of adaptability and customization that each solution provides. Examine if they may be
modified to meet corporate needs and procedures. Think about how simple it will be to expand, change, or configure the solution to meet your
needs in the future.

User Experience: Additionally, each solution's user experience needs to be taken into account. Examining the interface design, usability, and
general user happiness are all part of this process. In contrast, a system that is difficult to use may require significant training and cause user
irritation. A solution with an intuitive interface can increase productivity and reduce errors.

Compatibility: Compatibility with current systems is still another crucial element. How well each solution connects with your present software
and infrastructure should be the basis for evaluation. Compared to a solution that necessitates significant alterations or extra interfaces, one that
smoothly connects with current systems can save time and minimize complexity.

Scalability: Scalability is also very important. You ought to assess each solution's capacity to adjust to rising demands. This includes the
capacity to manage increased user counts, bigger data sets, or more intricate tasks without experiencing a drop in efficiency. For instance, an
expanding company may find it more appropriate to use a cloud-based system that readily scales up by adding additional resources than one that
necessitates major reconfiguration.

Support and Documentation: Support and documentation are essential for guaranteeing that you have access to the materials you need and can
receive assistance when needed. Assess the level of customer service, the accessibility of support resources, and the comprehensiveness of the
documentation that each solution offers. For problems to be resolved efficiently and promptly, good support might be essential.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


55

Future Proofing and Upgradability: Assess the degree to which the solutions can change and develop over time. Think about things like the
vendor's track record of innovation, their dedication to updates and improvements, and their development roadmap. Assess the simplicity of
upgrading to newer versions or migrating to other solutions.

Through a comprehensive analysis and comparison of these variables, stakeholders are better equipped to determine
which technological solution best fits their project. Prioritizing the project's needs, limitations, and goals is crucial. You should also think about
the long-term effects and strategic fit of each option.

Technical Solutions for Dialog Axiata PLC’s Material Management System

A cloud-based solution and an on-premises solution are the two possible technical options to take into consideration when Dialog Axiata PLC
is creating a new material management system. Several considerations, including as cost, scalability, security, and integration needs, determine
which technique is best. Each strategy has its benefits and drawbacks. To ascertain which technical solution is best for Dialog Axiata PLC, the
two are detailed and contrasted here.

1.Cloud Based Solution

A cloud-based material management system makes use of cloud computing infrastructure from external cloud service providers like Google
Cloud Platform (GCP), Microsoft Azure, and Amazon Web Services (AWS). Users access the material management system through the

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


56

internet under this paradigm, which is housed on the cloud. Networking, servers, storage, and other infrastructure management are handled by
the cloud provider.

Advantages

 Scalability - Elastic scalability provided by cloud-based solutions makes it simple for Dialog Axiata to modify resources in response to
demand. Future expansion and the management of varying material volumes will benefit from this.
 Cost Efficiency - Pay-as-you-go models are common in cloud systems, which can lower initial capital costs. The fact that costs are
determined by real consumption makes it potentially more affordable than maintaining on-premises technology.
 Accessibility - Users can use the system from any location with an internet connection by using cloud-based solutions. When field workers
and remote teams need to communicate with the material management system, this is helpful.
 Maintenance and Upgrades - The latest features and security advancements are consistently accessible since the cloud provider handles
system maintenance, updates, and patches.

Disadvantages

 Security and Compliance - Concerns regarding data security and regulatory compliance arise when private information is kept on external
systems. Dialog Axiata is responsible for making sure the selected cloud provider complies with laws and industry standards.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


57

 Dependency on Internet Connectivity - Reliable internet access is necessary to use a cloud computing system. The material management
system may not be accessible during any internet disruptions.

2.Onpremises Solution

The company's computers and hardware are used to deploy and run an on-premises material management system. Within its own data center or
facilities, Dialog Axiata would oversee the physical infrastructure, which includes servers, storage devices, and network components.
Advantages

 Control and Customization - More control over the configuration and modification of the system is possible with an on-premises
solution. Dialog Axiata may deeply integrate the system with other on-premises systems and modify it to fit certain requirements.
 Data Security - Dialog Axiata is able to directly manage sensitive data when using an on-premises solution, which helps improve
security and guarantee adherence to internal rules and laws.
 Performance - Because on-premises systems are hosted locally and do not depend on external internet connections, they can offer
reduced latency and higher performance.

Disadvantages

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


58

 High Initial Costs - When compared to cloud-based alternatives, the capital cost of buying and maintaining hardware and software is
usually higher. This covers the price of IT staff, servers, storage, and backup options.
 Scalability - An on-premises system must be scaled by purchasing more hardware and software, which can be expensive and time-
consuming. Scaling is less instantaneous and flexible than with cloud alternatives.
 Maintenance and Upgrades - All system upgrades, security patches, and maintenance would be under the purview of Dialog Axiata.
This can result in more operational complexity and calls for specialized IT staff.

Comparison and Justification

The material management system of Dialog Axiata PLC's cloud-based and on-premises options are compared in the table below, along with
an explanation of why the best option was chosen.

Cloud Based On - Premises


Criteria Solution Solution Justification
Cost

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


59

Short-term costs are lower


Lower Initial costs Increased initial with the cloud-based
with a pay-as-you- hardware and software solution since it requires less
go model, variable capital expenditures, capital investment and offers
expenses according continued maintenance variable pricing based on
to usage. expenses. actual usage.

Greater flexibility and ease


elastic resources Scaling is less flexible of scaling to meet expansion
provide for easy and necessitates larger or varying demand are
scalability; change software and hardware offered by the cloud
capacity as need. investments. solution.
Scalability
Control and A system's hardware While on-premises solutions
Customizatio A cloud-based and software offer greater control and
n system's ability to be configurations can be flexibility, cloud-based
customized is greatly customized and solutions frequently deliver
typically restricted controlled using an on- more effective solutions with
to the integrations premises solution. This less complexity and faster
and customizations makes it possible to installation for the majority
that the supplier modify the system

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


60

offers. Although it
provides a
standardized
solution, deeper
customization might
necessitate more precisely to meet the
integration work. needs of the business. of company demands.

Security and The cloud provider, The business has direct On-premises solutions offer
Compliance which normally control over security more direct control over data
complies with protocols and data and security, which can be
industry-standard protection strategies crucial for extremely
certifications like when using an on- sensitive information, even
ISO 27001 and premises system. To when cloud providers offer
GDPR compliance, comply with stringent strong security measures and
is in charge of internal regulations and compliance certifications.
managing security regulatory standards, The decision is based on
for cloud-based this may be essential. Dialog Axiata PLC's unique
systems. On the security and compliance
other hand, issues requirements.
with data
sovereignty and

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


61

local law
compliance can
arise.

Cloud-based
solutions enable
remote and mobile For remote use, on-
access since they can premises solutions
be accessed from usually need VPN
any location with an connectivity or are
internet connection. limited to physical The cloud-based method
This improves locations. In contrast to increases employee
coordination and cloud alternatives, this flexibility and meets modern
productivity, may restrict operational needs by
especially for teams accessibility and make providing better accessibility
who are spread out cooperation more and facilitating remote work
geographically. difficult. and collaboration.
Accessibility
Maintenance The cloud provider Internal IT personnel Cloud-based solutions
and Upgrade maintains and are needed to handle minimize the requirement
upgrades the system, routine maintenance, for internal IT management
making sure it has updates, and of upgrades and

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


62

the most recent troubleshooting for an


security patches and on-premises solution. If maintenance, guaranteeing
features. As a result, not handled properly, minimum disruption to the
there is less this may result in system's continued updates.
downtime and less greater operational Maintaining operational
strain on internal IT complexity and maybe efficiency may benefit
resources. more downtime. especially from this.

The infrastructure
of the cloud provider
and internet speed Since on-premises While on-premises solutions
have an impact on systems make use of offer lower latency and
how well cloud- dedicated local higher performance, for
based solutions resources, they usually most use cases the total
perform. Despite provide higher advantages of the cloud-
being generally performance at lower based solution, such as
adequate, pooled latency. More scalability and less
resources could dependable and administration overhead—
potentially cause consistent performance often exceed performance
latency problems. may result from this. issues.
Performance

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


63

Recommendation

Since the company needs a solution that would be flexible, relatively inexpensive, and easily scalable, the cloud-based option proves to be more
beneficial in Dialog Axiata PLC’s case. The greater benefit that cloud model provides is a cost saving and flexibility that is in line with the
changing material management of the company and with potential further expansion of the business. Also, the elimination of the requirement for
internal maintenance and the capacity to access the system from multiple places augment operation and versatility.
Well, security and compliance issues are real, but they can be managed by choosing a reliable cloud provider who meet stringent industry
standards for security as well as the ability to meet the requirements of various regulations, for instance, SOX, HIPAA AND GLBA. Despite the
few merits associated with the on-premises model of the material management system the cloud-based solution has enjoyed the following
benefits which make it have an edge over the on-premises model for Dialog Axiata PLC; Cost, scalability and ease of maintenance.

Why Cloud based Solution is Highly Suitable?

Dialog Axiata PLC's material management system would benefit greatly from a cloud-based solution because of a number of important features
that meet contemporary business requirements. Significant benefits in terms of cost effectiveness, scalability, accessibility, disaster recovery,
maintenance, security, and creativity are provided by this method.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


64

 Cost Efficiency

Cost effectiveness is one of the strongest justifications in favor of using a cloud-based solution. The initial outlay for cloud services is typically
less than that of traditional on-premises solutions. Rather than having to shell out a lot of money for infrastructure, software, and hardware,
Dialog Axiata can use a subscription-based strategy. By using a pay-as-you-go model, significant capital costs can be reduced to reasonable
operating costs. The ability to scale resources up or down in response to demand guarantees that expenses correspond to actual utilization,
preventing waste and facilitating improved budget management.

 Scalability and Flexibility

Systems that are cloud-based provide outstanding scalability and flexibility, which are essential for handling the changing requirements of a
material management system. Without having to make adjustments to its physical infrastructure, Dialog Axiata can readily modify its resources
to meet changing material volumes and potential future expansion thanks to cloud services. This adaptability enables the organization to react
swiftly to shifting customer needs, guaranteeing that the system will continue to function well as the company grows.

 Accessibility and Collaboration

A further benefit of cloud-based systems is enhanced accessibility. These systems may be accessed from any location with an internet
connection, which is very useful for businesses with staff that are spread out geographically. The material management system is easily
accessible to Dialog Axiata's field employees and remote workers, promoting improved coordination and collaboration. Multiple users can
operate on the system at once thanks to real-time updates and access, which boosts output and efficiency.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


65

 Maintenance and Upgrades

Cloud-based solutions make upgrades and maintenance easier. Cloud providers take care of general maintenance, security patches, and system
updates, freeing Dialog Axiata's internal IT staff from these duties. This implies that the business may take advantage of the newest features
and security improvements without having to invest a significant amount of internal resources. By keeping the system up to date, automatic
updates lower the possibility of vulnerabilities and interruptions to normal operations.
Disaster Recovery and Backup

Strong backup and disaster recovery features are essential to cloud-based solutions. Automatic data backups and disaster recovery plans are
common features of cloud services, guaranteeing that data is safe and can be promptly recovered in the event of a breakdown. Its innate
resilience reduces the possibility of data loss and facilitates business continuity, which makes it simpler for Dialog Axiata to carry on with
operations even in the face of unforeseen circumstances.

 Security and Compliance

Leading cloud providers extensively allocate resources towards sophisticated security protocols, such as threat detection systems, access
controls, and data encryption. These features guarantee adherence to industry standards and assist protect sensitive data. Furthermore, a lot of
cloud providers are certified under many compliance frameworks, like GDPR and ISO 27001, which can help Dialog Axiata comply with
regulations and preserve data.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


66

 Innovation and Competitive Advantage

Solutions being delivered under the cloud model offer the use of the newest technologies and innovations. Cloud service providers themselves
are constantly updating their offering by including new technologies such as AI and ML. This enables Dialog Axiata to generate high added
value with minimal investments into the new technology. Further, constant evolution and enhancements from cloud providers are always useful
in retaining a version of competitive advantage by having the system up to date with the next best thing as it is in the tech world.

As a result of its strong disaster recovery, cost effectiveness, scalability, accessibility, ease of maintenance, and cutting-edge security features, a
cloud-based solution is a great fit for Dialog Axiata PLC's material management system. The cloud-based method is a great way to modernize
and optimize material management because it provides access to the newest developments and technologies. So, this makes it even more
appealing.

System Investigation for Business and System Requirements: Employing Effective Investigation Tools and
Techniques

System Investigation for Dialog Axiata PLC’s Material Management System

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


67

Finding the system and business requirements required for the material management system depends on the system investigation phase. To
identify the functional and non-functional needs, this phase entails performing a thorough analysis of the current processes, obtaining feedback
from stakeholders, and using the proper investigation tools and techniques. The end objective is to create a thorough software system definition
that guarantees the new system complies with Dialog Axiata's requirements.

Investigation Techniques

Interviews

In-depth information on the current material management procedures will be gathered through interviews with important stakeholders, such as
suppliers, IT staff, warehouse managers, inventory clerks, and procurement officers. Interviews will reveal inefficiencies, bottlenecks, and
problem areas in the current setup. For example, delays in purchase orders or a lack of supplier integration may be mentioned in interviews
with procurement officers, while incorrect material stock level tracking may be mentioned in conversations with warehouse managers.

Workshops

Workshops offer a cooperative setting where various interested parties can talk about the difficulties and goals of the system. We can diagram
the workflow and business procedures related to material management through organized talks. To make sure the software design meets their
expectations, workshops also give participants the chance to offer input on what they would like to see in the new system.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


68

Document Analysis

We may gain a comprehensive overview of the current tracking and management of materials by looking through existing records, such as
supplier contracts, inventory logs, and procurement reports. Gaps that the new system must fill, such redundant or missing data, are identified
with the aid of this study. Analyzing documents also aids in establishing the data entities (such as suppliers, materials, and stock levels) that the
new system needs to handle.

Observation

Real-time tracking, handling, and ordering of items can be observed by employees while they go about their daily business. This enables us to
record manual interventions that aren't included in the current documentation in addition to the procedures themselves. For example, observing
warehouse workers may identify inefficiencies in managing goods or updating inventory records that the new technology could expedite.

Surveys/Questionaries

Employers or suppliers can be surveyed to obtain quantitative data on their interactions with the present system, which can be used to better
understand how they operate. This technique aids in locating common problems or potential areas of development that might not show up in
workshops or interviews. Suppliers could be asked to score things like how simple it is to execute orders or how accurate the most recent stock
updates are on a questionnaire.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


69

Prototyping

It is possible to create a prototype or wireframe of the new system and distribute it to interested parties for input. Through prototyping,
customers may see how the new system will appear and function, which helps enhance its features based on feedback from actual users.
The system's design is made more user-friendly and tailored to the company's material management requirements thanks to this iterative
process.

Business Requirements

Dialog Axiata's material management system must meet the following important business requirements, as determined by the investigation:

1. Effective Procurement Procedure

The new system must manage contracts, track supplier performance, and automate the creation of purchase orders in order to expedite the
procurement process. Efficiency will be increased by integration with supplier systems to automate order confirmations and status updates.

2. Real time Inventory Management

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


70

The system must track material stock levels in real time across several warehouses and locations. Views of current stock levels, stock
replenishment requirements, and materials in transit should be available to users.

3. Demand Planning and Forecasting

To forecast future material demand, the system needs have forecasting tools that examine previous data. By doing this, stock levels will be
optimized and overstocking and stockouts will be reduced.

4. Supplier Management

The system needs to track performance, keep an up-to-date database of suppliers, and give users access to order history in order to facilitate
supplier relationship management. By doing this, Dialog Axiata will have reliable data to assess supplier dependability and make wise
procurement decisions.

5. Entire Reporting

Comprehensive reporting capabilities that enable managers to create personalized information on material usage, supplier dependability, stock
levels, and procurement performance must be included in the new system. These reports ought to be available for download in a variety of
formats and through dashboards.

6. Scalability and Flexibility

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


71

The system needs to grow with Dialog Axiata to accommodate more suppliers, more warehouse locations, and higher material volumes. It must
to be adaptable enough to take into account alterations to supplier relationships, workflows, or legal requirements in the future.

7. User – Friendly Interface

New users need little training with the system's user-friendly, contemporary interface. Important features like order management, reporting, and
stock updates must be available through an intuitive dashboard.

System Requirements

Functional Requirements

Inventory Management - Real-time tracking of material amounts, locations, and statuses across several sites is required of the system. It need to
be possible for users to look up particular documents by name, code, or location.

Automation of Procurement - Based on minimal stock levels, purchase orders ought to be automatically created. For larger transactions,
automated approval workflows ought to be included. Every order must have its status tracked by the system from creation to delivery.

Supplier and Contract Management - All suppliers' contact details, contract terms, and order histories must be kept up to date in the system.
Order accuracy and delivery timeframes are two examples of supplier performance indicators that need to be monitored and reported on.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


72

Demand forecasting and stock replenishment - Defined reorder points should be used by the system to initiate stock replenishment. In order to
predict future demand and suggest the ideal supply levels, it should also take into account usage history.
Asset Tracking - From procurement to storage and ultimate use, the system must monitor the flow of resources. Tracking consumption for
certain projects or maintenance tasks is part of this.

Reporting and Analytics - Custom reports on material availability, procurement effectiveness, supplier performance, and stock turnover must
be able to be generated by users. Dashboards ought to offer up-to-date information on important indicators.

User Roles and Access Control - The system needs to accommodate various user roles, like managers, procurement officers, and warehouse
employees, with the right amount of access. Only individuals with the proper authorization should have access to sensitive information, such as
supplier contracts.

Non – Functional Requirements

Scalability - As Dialog Axiata grows its business, the system needs to be scalable to handle rising data volumes and more users.

Security - Sensitive inventory and procurement data must be protected by using security measures like audit trails, role-based access control,
and encryption.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


73

Performance - Even during periods of high usage, the system must be able to manage huge datasets and process transactions quickly and
without experiencing any major delays.

Availability - To guarantee that material management processes are not disrupted, the system should have a high availability with very little
downtime.

Usability - The user interface should be simple to use and efficiently built so that users may do jobs with the least amount of instruction and
processes.

Software System Specification

 System Architecture

Service-oriented architecture, or SOA, will be used in the system to provide scalability and modularity. It will have distinct components for
supplier management, procurement, inventory control, and reporting. The system will interface with Dialog Axiata's current ERP and financial
systems, and these modules will communicate with one another via APIs.

 Database Design

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


74

All supplier, material, and transaction data will be stored in a relational database by the system. Materials, Suppliers, Purchase Orders,
Inventory Locations, and Contracts are examples of key entities. The database will be built with performance and scalability in mind,
supporting sophisticated queries and reporting requirements.
 User interface Design

The system will include an online user interface that can be accessed with any contemporary browser. The user interface will have dashboards
for reporting, procurement workflows, and real-time inventory management. Key panels will be made with the least amount of user input
possible and clear display of pertinent data.

 Integration Points

Together with Dialog Axiata's internal ERP and finance systems, the system will interface with external supplier systems for order processing
and status updates, ensuring smooth data flow.

 Security

Users will only be able to access information and features pertinent to their responsibilities thanks to the implementation of role-based access
control, or RBAC. The technology would keep a thorough audit record of every transaction and encrypt sensitive data, including financial
information and supplier contracts.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


75

The primary business and system requirements for Dialog Axiata's material management system have been
identified during the system investigation phase. We have determined the functional requirements for supplier management, real-time
inventory tracking, procurement automation, and reporting by using a variety of investigative approaches. The software system
definition, which describes the system's architecture, database design, user interface, and security measures, has been influenced by
these discoveries. Dialog Axiata will benefit from this system's ability to increase productivity, simplify its material management
procedures, and guarantee scalability as the business expands.

Evaluation of the System Investigation Process for Meeting User Requirements

I used a system investigation method that comprises observation, surveys, document analysis, workshops, interviews, and prototyping for
Dialog Axiata PLC's material management system. These methods were chosen because they ensure a thorough grasp of the demands of the
users by covering both qualitative and quantitative data collecting. Assessing how well each method meets the needs of the users provides
insight into the overall caliber of the research.

Interviews

In-depth, qualitative insights into the requirements and problems with the current material management procedures are obtained through
interviews with important stakeholders. With this approach, users' primary concerns—like inefficiencies in inventory management or

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


76

procurement—are guaranteed to receive immediate attention. Effectiveness, however, is contingent upon the interviewer's ability to accurately
record and comprehend the information supplied. Important criteria may be missed as a result of poor communication or inaccurate data.

Workshops

Workshops are useful for facilitating group conversations and pointing out required conflicts between several departments. This approach
guarantees that all significant stakeholders are involved in determining the features of the system and facilitates the development of agreement.
Workshops are an efficient way to prioritize the most important operations of the system and collect collaborative input. The problem with
workshops, though, is that louder people might occasionally take over, which could result in priorities being distorted.

Document Analysis

The system investigation team obtains a comprehensive understanding of the current procedures by going over the papers and workflows that
are already in place. Analyzing documents is very useful for making sure regulatory standards are met and for comprehending formal company
operations. However, the usefulness of this method may be limited by out-of-date or inadequate documentation.

Observation

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


77

Interviews and document analysis could miss informal procedures and practical difficulties that are revealed by watching users at work. It is
especially helpful for comprehending the day-to-day activities of procurement and warehousing employees. Nevertheless, it takes a lot of time
and might only record a small portion of the entire workflow, missing important differences in the way that work is completed.

Surveys and Questionaries

A quantitative picture of customer happiness and preferences can be obtained by using these techniques to collect data from a larger sample of
users. Since they solely address predetermined questions and frequently give no opportunity for follow-up, they are effective but may lack
depth.

Prototyping

A very useful method for getting user input on interface design and system usability is prototyping. Early system presentation to stakeholders
allows the investigation team to make necessary system improvements based on real-world user feedback. However, if stakeholders believe the
prototype represents a near-final product, they might have irrational expectations about the project's scope and timetable.

Overall Effectiveness of the Investigation Process

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


78

By combining a variety of approaches that offer a comprehensive grasp of user requirements, the selected system investigation process
successfully addresses user requirements. The investigation team obtains complete data that precisely reflects the demands of the customers by
merging quantitative data from surveys and observation with qualitative insights from workshops and interviews.

But the efficiency of the inquiry process also hinges on how well requirements are handled during the software development lifecycle. It is
imperative that the system inquiry be well recorded and organized to prevent any requirements from being missed or misconstrued during the
design and development stages.

Analysis of the Software Development Lifecycle (SDLC)

This project's selected SDLC used an iterative methodology, taking feedback into account at different points throughout the process. The
efficiency of the SDLC in tracking down system requirements is assessed in this section.

1.Requirement Analysis Phase

The results of the investigative procedure were recorded and examined throughout this stage. Functional and non-functional specifications were
created from user needs, providing a strong basis for the following stages.

Effectiveness - Because a variety of investigative techniques were used, the requirement analysis was comprehensive. Making sure that all user
opinions were fairly reflected, nevertheless, was a difficulty, particularly in situations where certain stakeholders were more vociferous than
others.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


79

2.Design Phase

The requirements were obtained and used to construct the system architecture and user interface designs during the design process. Iterative
feedback was made possible via prototyping throughout this step, assuring alignment with user expectations.

Effectiveness - User input proved invaluable during the design phase, helping to create an intuitive interface that addressed identified pain
points. On the other hand, scope creep can have resulted from late-stage design requirement modifications that were not adequately handled
3.Development Phase

The system was constructed in the development phase in accordance with the requirements set forth in the earlier stages. Ongoing
communication with users made it possible to quickly resolve any new problems.

Effectiveness - Constant communication with stakeholders made the development process efficient. But the intricacy of combining several
features presented difficulties that need constant modifications.

4.Testing Phase

Validating the system against the previously specified requirements was part of the testing step. To make sure the finished product lived up to
user expectations, user acceptability testing (UAT) was carried out.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


80

Effectiveness - To find problems before a full deployment, UAT was essential. Time restraints during testing, however, might restrict how
comprehensive the procedure is, possibly leaving certain problems unattended.

5.Implemenation and Maintenance Phase

The system was deployed and users were trained during the implementation phase, which was followed by continuous maintenance and
support.

Effectiveness - Thanks to user input in earlier rounds, the implementation was well welcomed. After launch, the system was able to adapt based
on user feedback thanks to ongoing maintenance.

Overall Effectiveness of the SDLC

Throughout the development process, the iterative SDLC demonstrated effectiveness in tracking down system requirements and adjusting to
user needs. By emphasizing ongoing input and user participation, risks were reduced and it was guaranteed that the finished product would
meet business goals.

User requirements were successfully met by the investigation process and SDLC used for Dialog Axiata PLC's material management system.
The iterative software development lifecycle (SDLC) enabled continuous adaptation to user needs throughout the development lifecycle, while
the integration of varied inquiry approaches ensured a thorough grasp of user needs. In the end, this strategy produced a material management

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


81

system that is in line with the organization's operational objectives and solves current problems. To keep the system relevant and functional in
the future, ongoing user interaction will be necessary.

Tracing software requirements throughout the Software Lifecycle

One essential procedure that guarantees a software system's conformity with its intended goals is tracing software requirements. When creating
a material management system for Dialog Axiata PLC, efficient requirements tracing ensures that stakeholders' expectations are satisfied at
every stage of the software development process. This research highlights the important tasks and procedures involved in each step of the
requirements traceability process, from identification to implementation.

 Requirement Identification

Thorough requirement identification and documenting is the first step in the requirements tracing process. A thorough grasp of stakeholders'
demands can be achieved by involving them in processes like workshops, surveys, and interviews. Every requirement, including with its
justification, priority, and source, needs to be specified in detail. Stakeholders may request features like automated procurement procedures,
real-time inventory tracking, and reporting capabilities for the material management system. By clearly stating the goals the system is supposed
to accomplish, documenting these criteria forms the basis for tracing.

 Requirement Analysis

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


82

After requirements are determined, they must be refined and validated to make sure they support business goals. This is the analysis step. In
this phase, a requirements traceability matrix (RTM) is made, which connects each need to the related design and implementation processes.
This matrix is an essential tool for monitoring each requirement's progress. The RTM will show how a need is addressed in the system design
and development, for instance, if it calls for automated notifications to be sent out in the event of low inventory. Engaging stakeholders in this
analysis stage promotes commitment to the project and guarantees thorough representation of their needs.

 Design Phase

Requirements are translated into a clear specification and an organized system architecture during the design process. It is crucial to maintain
traceability throughout this phase to make sure that each design element complies with the established requirements.
It is necessary to associate every demand with elements in the system architecture, like modules handling procurement procedures or inventory
control. Collaborating effectively as a team and making sure that everyone is aware of how the design meets user needs are made possible by
this mapping. As an example, design papers should include requirements that highlight the importance of having user-friendly interfaces for
historical data access. This will help developers create the functionality they need to implement.

 Development Phase

The primary goal of the development phase is to translate the design specifications into functional code. During this stage, effective traceability
guarantees that all requirements are reflected in the finished product. Unit testing and regular code reviews are crucial procedures that verify
conformity with stated requirements. This entails verifying the proper implementation of features such as automated reporting and real-time

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


83

inventory tracking for the material management system. Test plans ought to make explicit mention of requirements to create a clear link
between the generated code and the desired functions. Early detection of gaps or inconsistencies is made possible by this methodical approach,
which reduces the likelihood of expensive revisions later in the project.

 Testing Phase

To confirm that the system satisfies all requirements, testing is essential. To enable comprehensive verification, every test case needs to be
connected back to a particular RTM requirement. The RTM is updated with findings as testing goes on, showing which requirements have been
successfully implemented and which still need work. To make sure that every functionality is covered before deployment, for instance, if a
need for producing automated reports is tested and verified, this is noted in the RTM. This thorough approach reduces the possibility of
problems being unnoticed and improves the system's overall quality.

In conclusion, it is critical to track software requirements for Dialog Axiata PLC's material management system
throughout its lifecycle to make sure that user needs are satisfied, and corporate goals are accomplished. By means of thorough documentation,
methodical analysis, and ongoing input, the project can remain in line with its initial objectives. Good requirements tracing helps stakeholders
communicate more effectively and adapt to changes more easily, which eventually results in a successful and working system. Dialog Axiata
PLC can guarantee the long-term viability and applicability of its material management system by giving requirements tracing top priority.

Approaches to Improving Software Quality

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


84

Creating software that is reliable, efficient, and easy to use requires improving software quality. Adopting continuous integration and
deployment (CI/CD) methodologies and putting rigorous testing practices into practice are two efficient ways to improve software quality.

1 Rigorous Testing Practices


Software development relies heavily on testing to find bugs and make sure the product satisfies requirements. Adopting stringent testing
procedures may entail the following important tactics:

Automated Testing - Teams can perform tests across several settings fast and consistently with the help of automated testing
technologies. Without requiring the large time investment that manual testing does, this strategy enables for more frequent testing while
increasing test coverage. Unit, integration, and regression tests are examples of automated tests that help make sure that new
modifications don't add more defects to the existing codebase.

Test – Driven Development (TDD) - Developers that use the TDD methodology build tests before they write the related code. This
method promotes an early comprehension of the necessary and desired functionality. Developers can produce more dependable and
manageable code and, in turn, increase the software's quality by putting tests first.

User Acceptance Testing (UAT) - It is ensured that end users' wants and expectations are met by involving them in the testing process.
UAT is usually carried out in the latter stages of the development cycle and offers insightful input that can spot usability problems or
functional deficiencies. By taking user feedback into consideration prior to deployment, post-release issues are less likely to occur and
user happiness is increased.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


85

2.Continuos Integration and Continuous Deployment (CI/CD)

CI/CD is a collection of procedures that places a strong emphasis on automated deployment processes and frequent integration of code changes.
This method enhances the quality of software in multiple ways:

Frequent Code Integration - Developers are encouraged to integrate their code into a shared repository several times a day through
continuous integration. Integration problems are reduced by this regular integration since smaller code modifications are simpler to test
and fix than more substantial, sporadic ones. Teams can lower the cost and complexity of late-stage defect resolution by detecting and
resolving problems early on.

Automated Deployment - Code modifications that pass automated testing can be automatically rolled out to production settings with
continuous integration/continuous deployment (CI/CD). This lowers the possibility of human error, expedites the deployment process,
and minimizes manual involvement. Automated deployment guarantees that users receive the most recent features and updates
promptly, improving their software experience in general.

Rapid Feedback Loop - Code changes are quickly reacted to thanks to CI/CD, which gives developers quick feedback on their work.
Because of this short turnaround, any flaws can be quickly found and fixed. Teams can swiftly adjust to changes and make sure the
product continues to meet user expectations by keeping up a continuous feedback loop.

In conclusion, adopting CI/CD processes and putting strict testing techniques into place are two
practical ways to raise the caliber of software. Thorough testing guarantees that the program satisfies user requirements and helps

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


86

identify flaws early on, while continuous integration and delivery (CI/CD) optimizes the development process to enable quicker releases
and responsiveness to feedback. Organizations can greatly improve the quality of their software products and increase user satisfaction
and overall performance by concentrating on these strategies.

Evaluation of the System Investigation Process in improving Software Quality

Understanding user needs, determining system requirements, and assessing current procedures are the main goals of a systems investigation, a
crucial stage in the software development lifecycle (SDLC). This paper assesses the contribution of an efficient systems investigation to
software quality improvement, considering a number of factors like user involvement, requirement correctness, and risk mitigation.

Importance of the System Investigation

The entire process of developing software is built upon the systems investigation. It guarantees that the development team is aware of the needs
of stakeholders, which results in software that is of a higher caliber. The ultimate success of the product can be strongly impacted by how well
this process works.

Here is an evaluation of the process of undertaking a systems investigation and its effectiveness in improving software quality:

1.Identification of Requirements and pain points - The systems investigation process involves gathering requirements from stakeholders and
identifying pain points or areas of dissatisfaction with the current system. This helps in understanding the specific needs and expectations of

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


87

users and highlights areas that require improvement. By addressing these requirements and pain points, software quality can be enhanced, as
the focus is on resolving existing issues and meeting user expectations.

2.Analysing of Existing Process and Workflows - The present workflows and procedures are examined as part of the systems analysis to find
any inefficiencies, bottlenecks, or potential weak points in the software quality. This analysis facilitates the simplification of procedures, the
removal of pointless steps, and the introduction of automation where needed. Software quality can be raised by process optimization, which
lowers error rates, boosts productivity, and improves user experience overall.

3.Identification of Functional and Non-Functional Requirements - Finding the software's functional and non-functional needs is a step in the
systems investigation process. While non-functional requirements concentrate on factors like usability, performance, security, and scalability,
functional requirements outline the intended features and functionalities. The software development team may make sure that the finished
product satisfies the required quality standards and takes into account all relevant factors by thoroughly examining and recording these criteria.

4.Stakeholder Engagement and Collaboration - Engaging stakeholders at every stage of the inquiry guarantees that their suggestions and
understandings are integrated into the system architecture. The sense of ownership that is fostered by this engagement among stakeholders and
users is essential for the successful implementation of the project. The ultimate result is more likely to satisfy stakeholders' needs when they
believe their opinions are appreciated, which raises software quality and user satisfaction.

5.Doumentation and Communication - As part of the systems investigation process, requirements, results, and suggested fixes are recorded.
Ensuring that all parties involved possess a mutual comprehension of the investigation's findings and the intended enhancements is ensured

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


88

through precise and thorough documentation. It also makes it easier for stakeholders and the software development team to communicate
effectively, allowing for a seamless transition from research to implementation. In the end, improved software quality is achieved through good
communication and documentation, which also increase the overall efficacy of the investigative process.

Performing a systems investigation is a useful procedure for raising the caliber of software. Through methodical requirements analysis,
pain point identification, process optimization, stakeholder engagement, and documentation of findings, businesses can acquire useful insights
and make well-informed decisions to improve software quality. The investigation procedure aids in resolving current problems, coordinating
software development activities with stakeholder expectations, and guaranteeing that the finished product satisfies the required quality
standards.

Analyzing the Software behavioral Tools and Techniques that can be used for the Proposed System.

When evaluating a software system’s behavior, behavioral modeling tools and techniques play a crucial role in understanding how the system
interacts with users and external entities. These tools aid in the design, management, and visualization of the system's dynamic elements for
developers and system analysts. Several software behavioral tools and approaches can be used to simulate the interactions, workflows, and
processes of Dialog Axiata PLC's material management system. The most used tools include Use case diagrams, Sequence Diagrams, State
machine diagrams and activity diagrams

 Use Case Diagrams

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


89

One of the main behavioral tools for representing the functional needs of a system is the use case diagram. With an emphasis on user
objectives and system responses, they depict the interactions between actors—users or other systems—and the system itself.
Use case diagrams are crucial for identifying and outlining the relationships between various system users, including suppliers,
warehouse managers, procurement officers, and the system itself, in the context of Dialog Axiata's material management system.

The system might be used, for instance, to maintain inventory, create purchase orders, receive items, and assess vendor performance. To
aid developers in understanding requirements from the user's point of view, each use case will detail the sequential interactions between
the user and the system.

 Sequence Diagram

Sequence diagrams are used to simulate the information or message flow that occurs over time between objects or system components.
These flowcharts show the sequence and mode of operation of system processes. Sequence diagrams can be used to show the steps that
take place in Dialog Axiata's system when a warehouse manager asks a supplier for materials, for example. The process of submitting a
request, handling an order, and getting confirmation will all be depicted in the sequence diagram as interactions among the manager, the
material management system, and the supplier.

By mapping out the communication between distinct objects (e.g., users, inventory databases, procurement modules), sequence diagrams
offer a precise perspective of the time and order of interactions, which is useful for spotting potential bottlenecks or inefficiencies in
system behavior.
 State Machine Diagrams

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


90

The several states that an item or system can be in, as well as how the object changes states in response to events, are modeled by state
machine diagrams, also called state transition diagrams. These diagrams are particularly useful for systems that have complex life cycles
or various states of operation.

State machine diagrams for the material management system can show the many stages of inventory items, such as ordered, received,
stocked, and finally used or disposed. An item may, for instance, go through the following states: "depleted," "pending order," "in stock,"
"reserved," and "in use." This type of diagram makes sure that no materials are misplaced or treated improperly by monitoring the state
of the materials throughout their existence.

 Activity Diagrams

Activity diagrams offer a graphical depiction of the sequential actions involved in a system function and show the workflow of various
system processes.
These diagrams, which highlight the control flow between tasks, are very helpful for simulating business processes and system workflow.
An activity diagram, which illustrates the order of steps from requesting a purchase to receiving the items and updating the inventory
system, could be used by Dialog Axiata to describe the workflow involved in placing an order for materials from a supplier.

Activity diagrams, which decompose processes into discrete actions, aid in locating inefficiencies or potential areas for automation. This
is especially helpful for material management, as human interaction frequently results in mistakes or delays.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


91

Discuss using Examples: The Most Suitable Behavioral Techniques that could be Used for MMS

In selecting the most effective behavioral techniques for Dialog Axiata’s material management system, it’s vital to evaluate the specific nature of
the system and the interactions it enables. Inventory tracking, procurement, vendor management, and other operations must be supported by the
system, which must also manage a variety of user roles, including warehouse employees, procurement officers, and vendors. Use case,
sequence, and activity diagrams would be the most suitable behavioral modeling tools based on these needs. These methods are useful
resources for system design because they offer distinct perspectives on system behavior.

 Use Case Diagrams: Clarifying User Specific Requirements

The functional interactions between users and the system are best mapped out using use case diagrams. Use case diagrams make the exact
interactions that each user will have with Dialog Axiata's material management system—which will be utilized by numerous departments as well
as external stakeholders like suppliers—more visually apparent.

A use case diagram might show, for example, how the purchase order generation system and the procurement officer communicate. Among the
interactions the officer would have with suppliers would include checking current inventory levels, making orders, and monitoring order
statuses. When new supplies are received, the warehouse employees would update stock levels in a similar manner. Use case diagrams
guarantee that all functional needs are comprehended and integrated into the system architecture by elucidating these user-specific behaviors.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


92

 Sequence Diagrams: Simulating Interactions Among Subsystems

Sequence diagrams are helpful for modeling the relationships between the various system components that the material management system
will involve, such as the vendor database, inventory tracking, and procurement module. A sequence diagram, for instance, can show how a
warehouse manager interacts with the system to send a restocking request, how the procurement module interacts with the system to generate
an order, and how the order is conveyed to the supplier when a restocking is necessary.

The real-time communication between users, system modules, and external systems (such vendor systems) can be seen in this example
sequence diagram. It focuses attention to the timing of these exchanges, which is important for spotting possible bottlenecks or places where
automation could expedite the process. Sequence diagrams can also aid in ensuring that the testing and implementation of communication
flows between various system components are done appropriately.

 Activity Diagrams

Activity diagrams are a very useful tool for a process-heavy system like material management, where different operations are completed
sequentially (from requesting materials to receiving items and updating inventory records).
These diagrams offer a high-level overview of the various system processes' workflows and aid in locating possible bottlenecks or areas in need
of optimization.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


93

For example, The process of handling a procurement order, from the point at which a stock deficiency is discovered to the creation of a buy
request, management approval, vendor selection, and ultimate order placement, could be represented by an activity diagram. To guarantee that
the system facilitates seamless, error-free transitions from one activity to the next, each of these activities would be graphically represented, as
well as the flow between them.

Combining these behavioral techniques will be the most practical method for Dialog Axiata's material
management system. Use case diagrams give a high-level view of how users interact with the system, sequence diagrams show how
messages move between components in detail, and activity diagrams show the system's overall operations. This combination makes sure
that every facet of the behavior of the system is comprehended and applied correctly. The design of the material management system will
not only satisfy the functional requirements by utilizing a combination of these behavioral tools, but it will also guarantee a smooth and
effective material handling process, which will enhance Dialog Axiata's overall operating efficiency.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


94

Differentiating Between Finite State Machine (FSM) and Extended Finite State Machine, Including Applications of
Use for Both

Finite State Machine (FSM)

The behavior of systems with a finite number of states can be represented and controlled using a computational model called a finite state
machine (FSM). The system in an FSM can only be in one state at once, and it switches between states in response to a predetermined set of
inputs. Because FSMs are deterministic, the next state is predetermined for any given input and current state.

Characteristics of FSM

 Its possible states are limited.

 Transitions between states happen only because of inputs.

 Transitions are not influenced by recollection or outside data sources.

 Transitions between states or the entry into a new state can be linked to actions.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


95

Application Example of FSM: Traffic Light Control System

A traffic light control system is one common context where FSM is used. The system operates in a restricted number of states (such as "Green,"
"Yellow," and "Red"), switching between them in response to external signals from pedestrian button presses or timers. The transitions are
straightforward and occur in a cyclic way.

State 01 – Green light is On


State 02 – Yellow light is On
State 03 – Red light is On

Without the requirement for additional data conditions or external memory, the system turns from "Green" to "Yellow" to "Red" based on the
time intervals.

2.Exetened Finite State Machine (EFSM)

A traditional FSM is improved upon by an Extended Finite State Machine (EFSM), which incorporates variables and external data into its
decision-making process. An EFSM makes decisions about state transitions by taking into account both inputs and the current value of data
variables, in contrast to an FSM, which makes decisions just based on inputs. Because it can handle complicated behaviors where state
transitions depend on both input and the internal characteristics of the system, EFSM is more powerful and adaptable.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


96

Characteristics of EFSM

o Its possible states are limited.

o Both external data (variables) and inputs have an impact on transitions.

o State transitions can be impacted by its ability to hold context or memory.

o more versatile and suited for intricate systems with several requirements.

Application Example of ESM: Automated Tellor Machine (ATM)

An ATM system is a great example of EFSM. It can be in states like "Idle," "Authenticating," "Transaction Processing," and "Transaction
Complete," but how it moves between these states depends on both data and inputs, such the user inserting their card or entering their PIN.

State 01 - Idle (Waiting for card insertion)

State 02 - Authenticating (asking for the PIN and making sure it's correct).

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


97

State 03 – Transaction Processing (Checking balance, Withdrawing money)

When a user enters their PIN, the screen displays "Transaction Processing" instead of "Authenticating" based on whether or not the entered PIN
matches the saved PIN. In addition, before permitting a withdrawal when the system is in the "Transaction Processing" state, it verifies the
user's account balance, which is a variable. Here, the EFSM can manage this more complicated behavior by taking inputs and data values into
account.

Differences between FSM & EFSM

Feature FSM EFSM


State Transitions exclusively based on inputs. based on data variables as well as
inputs.

Memory/Context There is no data storage or memory;External data and variables influence


transitions are direct transitions

Complexity less complex; best suited for systems More complex; applied to systems
with few interactions. that need dynamic conditions.

Flexibility restricted to predetermined input-state Adaptable and capable of managing

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


98

connections. intricate decision-making procedures.

Application Traffic light control system Automated teller machine (ATM) with
multiple transaction systems.

In summary, EFSM is better suited for complex systems that need to employ data and variables to control state transitions, whereas
FSM is better for simpler systems whose transitions are solely driven by input.

Justifying How Data-Driven Software Can Improve the Reliability and Effectiveness of the Proposed Material
Management System

Data-driven software has the potential to greatly increase the suggested material management system for Dialog Axiata PLC's reliability
as well as effectiveness. This kind of software guarantees correct decision-making, simplifies procedures, and reduces errors by
utilizing real-time data, analytics, and automation. As a result, it improves the system's overall performance and reliability. These are
some justifications for why data-driven software can increase software's efficacy and reliability.

1.Accurate Decision Making - Utilizing current or past data, data-driven software facilitates well-informed decision-making. Software
systems lower the possibility of errors or biases that could arise with human decision-making by evaluating and interpreting data to
enable them to make precise conclusions supported by facts. This increases the software's reliability in producing precise and consistent
results.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


99

2. Using Predictive Analytics to Manage Proactively - Using predictive analytics is one of the main benefits of data-driven software.
The program predicts future material requirements, possible stock shortages, and supplier delays by examining past data and trends. For
example, the system can anticipate and plan for demand surges by maintaining sufficient stock levels if the data indicates that a specific
material's demand increases during specific times. By reducing unforeseen problems, this proactive strategy minimizes supply chain
interruptions and improves system reliability.

3.Continuous Improvement - Software that is driven by data may monitor and evaluate usage trends, user reviews, and performance
indicators to pinpoint areas in need of development. Software teams can detect bottlenecks, bugs or usability concerns and take
proactive actions to address them by keeping an eye on data. Over time, this iterative improvement process improves the software's
dependability and efficacy.

4. Automating Repeated Operations - Routine and repetitive processes, like order processing, stock level monitoring, and inventory
management, can be automated using data-driven systems. When supplies run low, a material management system's software can
automatically generate purchase orders and track stock levels in real-time, saving manual involvement. The system becomes more
effective and less vulnerable to human mistake when manual processes are reduced, which increases operational dependability and
effectiveness. Additionally, automation speeds up decision-making and guarantees that goods are available whenever they're needed.

5.Increased System Resilience - It is simpler to adjust data-driven systems to changes in the supply chain, such as shifts in demand or
interruptions brought on by outside variables (such problems with suppliers or delays in logistics). The program can swiftly revise stock

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


100

levels or reroute material orders in response to changing circumstances by continuously evaluating real-time data. Because of its agility,
the system is able to withstand unanticipated obstacles and maintain its dependability and effectiveness, which facilitates the seamless
movement of materials across the supply chain.

6.Flexibility and Adaptability - Data-driven software's flexibility in responding to shifting circumstances in the supply chain is one of
its main advantages. External variables that can affect the flow of materials include delays from suppliers, abrupt shifts in demand, and
logistical problems. Data-driven systems may swiftly and effectively adjust to these changes by continuously monitoring real-time data.
For instance, to keep things running smoothly, the system can automatically modify inventory projections and recommend different
suppliers if a delivery delay is noticed. Because of its flexibility, the system is more dependable and efficient, allowing for the least
impact of disruptions.

In conclusion, data-driven software can greatly raise the suggested material management system for Dialog Axiata PLC's dependability
and efficacy. The system gains increased precision, resilience, and the ability to optimize resource management through the utilization
of real-time data, predictive analytics, automation, and sophisticated reporting. This leads to a more reliable and effective software
system by guaranteeing that resources are continuously available, procurement procedures are efficient, and operational goals are
fulfilled with a minimum of mistakes or delays.

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


101

The Permission letter that was submitted to Obtain Permission for Research Visit

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


102

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


103

References

Guide to Software Development (no date) Google Books. Available at: https://books.google.ae/books?
id=I9kyDQAAQBAJ&printsec=frontcover&dq=software%2Bdevelopment%2Blife
%2Bcycle&hl=en&newbks=1&newbks_redir=0&source=gb_mobile_search&ovdme=1&sa=X&ved=2ahUKEwj52rezz-
WIAxXCcvEDHYlMN_AQ6AF6BAgHEAM#v=onepage&q=software%20development%20life%20cycle&f=false (Accessed: 28
September 2024).
Kelley, K. (2024) Understand the importance of cyber security: Guardian against threats!, Simplilearn.com. Available at:
https://www.simplilearn.com/tutorials/cyber-security-tutorial/what-is-cyber-security (Accessed: 28 September 2024).
Scenarios, stories, use cases (no date) Google Books. Available at: https://books.google.ae/books?
id=c3_M2WrfHeIC&printsec=frontcover&dq=software%2Bdevelopment%2Blife
%2Bcycle&hl=en&newbks=1&newbks_redir=0&source=gb_mobile_search&ovdme=1&sa=X&redir_esc=y#v=onepage&q=software
%20development%20life%20cycle&f=false (Accessed: 28 September 2024).
Software development life cycle (SDLC). (no date) Google Books. Available at:
https://www.google.ae/books/edition/Software_Development_Life_Cycle_SDLC/Y8NIzQEACAAJ?hl=en (Accessed: 28 September
2024).
Systems development life cycle (SDLC): High-impact strategies - what you need to know (no date) Google Books. Available at:
https://www.google.ae/books/edition/Systems_Development_Life_Cycle_SDLC_High/Cb2BZwEACAAJ?hl=en (Accessed: 28
September 2024).

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles


104

Umanda Gunawardhana Assignment No 01 Software Development Lifecycles

You might also like