0% found this document useful (0 votes)
39 views

Unit 07 - SDLC

esoft assignment

Uploaded by

dudesorry666
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)
39 views

Unit 07 - SDLC

esoft assignment

Uploaded by

dudesorry666
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/ 71

Higher Nationals

Internal verification of assessment decisions – BTEC (RQF)


INTERNAL VERIFICATION – ASSESSMENT DECISIONS
Programme title BITEC Higher National Diploma in Computing

Assessor Internal Verifier


Unit 7 – Software Development Lifecycles
Unit(s)
Software Development Lifecycles Assignment
Assignment title

Student’s name
List which assessment criteria Pass Merit Distinction
the Assessor has awarded.

INTERNAL VERIFIER CHECKLIST

Do the assessment criteria awarded match


those shown in the assignment brief? Y/N

Is the Pass/Merit/Distinction grade awarded


justified by the assessor’s comments on the Y/N
student work?
Has the work been assessed Y/N
accurately?
Is the feedback to the student:
Give details:
• Constructive? Y/N
• Linked to relevant assessment criteria? Y/N
Y/N
• Identifying opportunities for
improved performance?
Y/N
• Agreeing actions?
Does the assessment decision need Y/N
amending?

Assessor signature Date

Internal Verifier signature Date


Programme Leader signature (if required)
Date
Confirm action completed
Remedial action taken
Give details:

Assessor signature Date


Internal Verifier
signature Date

1 Ishan malitha Software Development Lifecycles Unit 7


Programme Leader
signature (if required) Date

2 Ishan malitha Software Development Lifecycles Unit 7


Assignment Feedback Form
Student Name/ID

Unit Title Unit 7 – Software Development Lifecycles

Assignment Number Assessor


Date Received
Submission Date 1st submission
Date Received 2nd
Re-submission Date submission
Assessor Feedback:
LO1 Describe different software development lifecycles
Pass, Merit & Distinction P1 P2 M1 D1
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 & Distinction P5 P6 M3 M4 D3


Descripts
LO4 Discuss the suitability of software behavioural design techniques.

Pass, Merit & Distinction P7 M5 M6 D4


Descripts

Grade: Assessor Signature: Date:

Resubmission Feedback:

Grade: Assessor Signature: Date:

Internal Verifier’s Comments:

Signature & Date:

* Please note that grade decisions are provisional. They are only confirmed once internal and external moderation has taken place and
grades decisions have been agreed at the assessment board.

Assignment Feedback

3|Page Unit 7 Software Development Lifecycles Ishan Malitha


Formative Feedback: Assessor to Student

Action Plan

Summative feedback

Feedback: Student to Assessor

Assessor Date
signature

Student Date
signature

4|Page Unit 7 Software Development Lifecycles Ishan Malitha


Pearson Higher Nationals in
Computing
Unit 7: Software Development Lifecycles
Assignment

General Guidelines

5|Page Unit 7 Software Development Lifecycles Ishan Malitha


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

Word Processing Rules

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

Important Points:

1. It is strictly prohibited to use textboxes to add texts in the assignments, except for the
compulsory information. eg: Figures, tables of comparison etc. Adding text boxes in the body
except for the before mentioned compulsory information will result in rejection of your
work.
2. 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

6|Page Unit 7 Software Development Lifecycles Ishan Malitha


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: 29/02/2024
(Provide E-mail ID) (Provide Submission Date)

7|Page Unit 7 Software Development Lifecycles Ishan Malitha


Higher National Diploma in Business
Assignment Brief
Student Name /ID Number

Unit Number and Title Unit 7: Software Development Lifecycles

Academic Year 2022/23


Unit Tutor

Assignment Title Software Development Lifecycles Assignment

Issue Date

Submission Date

IV Name & Date

8|Page Unit 7 Software Development Lifecycles Ishan Malitha


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

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.

9|Page Unit 7 Software Development Lifecycles Ishan Malitha


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.

10 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


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
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.

11 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


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.

12 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


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.

D2 Assess the impact of different feasibility criteria on a

13 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


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.

LO4 Discuss the suitability of software behavioural design techniques

14 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


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

15 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Acknowledgment

My thanks to the teachers and parents who gave me this opportunity,


to the teacher who taught us the subject in a short time, and to all the
people at my workplace. Complete this assignment as much as
possible, even if there is no time to study the subject properly.

Thank you.

16 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Table of Contents
Acknowledgment..............................................................................................................15
Table contents...................................................................................................................18
Figure contents................................................................................................................. 18
Description....................................................................................................................... 19

Activity 01........................................................................................................................21
Section A...................................................................................................................... 21
1.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................................................21
1.2 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......................31
1.3 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...............................................................................................................33
Section B.......................................................................................................................... 35
1.4 Assume yourself as a system analyst assign to analysis and design a software
system for an organization of your choice. Investigate the business and system
requirements using appropriate tools/ techniques and develop the system design with
the findings...................................................................................................................35

Activity 2..........................................................................................................................40
2.1 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...........................................................................................................................40
2.2 Suggest, describe and compare two technical solutions for the proposed system and
pick the most suitable one with the justification for the selection.................................44
Describe and compare.................................................................................................. 45

17 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Activity 03........................................................................................................................48
3.1 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..............................................................................48
3.2 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.....................................................................52
The Wildlife Safari System.......................................................................................54
''ChangeU'' Salon Booking System...........................................................................54
3.3 Discuss two approaches that can be used to improve the quality of the system in the
future............................................................................................................................ 56

Activity 04........................................................................................................................57
4.1 Analyze the software behavioral tools and techniques that could be used for the
proposed system and discuss suing examples, the most suitable behavioral techniques
that could be used for your system...............................................................................57
4.2 Differentiate the finite state machine (FSM) and extended FSM providing an
application for each...................................................................................................... 59
What is the finite state machine (FSM)?...................................................................59
Example Traffic signal management system...........................................................59
What is Extended Finite State Machine (EFSM)?....................................................60
4.3 Justify how the data driven software can improve the reliability and the
effectiveness of the software system proposed by you.................................................63
1. Knowledge-based decision-making...................................................................65
2. Continuous improvement process......................................................................66

References........................................................................................................................ 68

18 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Table contents

Table 1 compare web and mobile application..................................................................47


Table 2 FSM VS EFSM...................................................................................................... 62

Figure contents

Figure 1 https://theproductmanager.com/topics/software-development-life-cycle.......19
Figure 2 aglie model sdlc.................................................................................................. 24
Figure 3 big bang model...................................................................................................25
Figure 4 Spiral model https://www.geeksforgeeks.org/software-engineering-spiral-
model/.............................................................................................................................. 26
Figure 5 The Waterfall Model's various stages are..........................................................28
Figure 6 https://radixweb.com/blog/agile-software-development-life-cycle..................31
Figure 7 https://www.miniorange.com/products/user-management.............................36
Figure 8 CATALOG SYSYTEM EXAMPLE https://visme.co/blog/product-catalog/#:~:text=A
%20product%20catalog%20is%20a,shops%20use%20product%20catalogs%20too.......37
Figure 9 PAY SYSTEM EXAMPLE https://www.kentico.com/platforms/kentico-xperience-
13/commerce/checkout-process.....................................................................................37
Figure 10 ONLINE ORDERS https://www.quantanite.com/blog/order-entry-guide-
management-and-revenue-explained/............................................................................38
Figure 11 REVIEWS https://www.tidio.com/blog/ratings-and-reviews/).........................39
Figure 12 feasibility study https://www.tatvasoft.com/...................................................41
Figure 13 mobile or web https://www.eventya.net/wp-content/uploads/2021/03/Why-
Choose-a-Mobile-App-Over-a-Website.jpg......................................................................45
Figure
14https://3.bp.blogspot.com/_4o8Qf-mXb-Y/SMrAMgs0enI/AAAAAAAAAAU/SopduKC3_
-M/s320/sdlc1.gif............................................................................................................. 51
Figure 15 Systems Analysis Process Map https://www.oreilly.com..................................52
Figure 16 Feedback forms................................................................................................ 57
Figure 17 Fsm diagram example......................................................................................59
Figure 18 Efsm diagram example......................................................................................60
Figure 19 Dynamic Resource Allocation...........................................................................63
Figure 20 Personalized User Experience...........................................................................64
Figure 21 Knowledge-based decision-making example....................................................65
Figure 22 Continuous improvement process....................................................................66

19 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Description

 The Software Development Life Cycle – Software systems are designed,


developed, and deployed using a methodical process called the Software
Development Life Cycle (SDLC). It includes a number of stages, tasks, and
procedures that direct the software development process from inception to
conclusion.

Figure 1 https://theproductmanager.com/topics/software-development-life-cycle

In this context, we will talk about which SDLC models are appropriate for two
separate initiatives in the

 Sri Lankan wildlife ministry


 "ChangeU" salon.
 A variety of software development life cycle (SDLC) models, including the
 Waterfall, Agile and
 Iterative models

20 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Provide unique strategies for software development, each with
 pros
 cons

 The choice of an SDLC model is influenced by a number of variables, including


the

 Complexity of the project

 Team experience

 Time restrictions

 Financial considerations.

 To choose the best model, we will examine and contrast a number of SDLC
models in the sections that follow.

 The benefits of using the chosen SDLC model will be evaluated in relation to the
particular needs and features of every project.

21 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Activity 01

Section A

1.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.

1. Iterative Models

2. Agile Model

 This method of developing software is iterative and reactive. It places a strong


emphasis on adaptability to change, cooperation, and flexibility. The Agile
methodology divides the development process into sprints, which are brief
iterations that run one to four weeks. A whole cycle of planning, requirements
analysis, design, development, testing, and deployment is included in each sprint.
During the development process, the agile model encourages ongoing customer
interaction and input, allowing modifications and revisions in response to shifting
priorities and requirements.

 Iterative Development

The Agile methodology divides the development process into sprints, which are
usually one to four weeks long. A particular set of tasks, including as
requirements gathering, design, development, testing, and review, are included in
every iteration. At the end of each iteration, the development team aims to provide
a working product section by section.

22 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Client Collaboration

Agile highlights the importance of keeping the end user or client involved at every
stage of the development process. The client is actively involved, offering
ongoing comments, outlining specifications, and taking part in frequent review
meetings. Together, we can make sure that the software lives up to the
expectations of clients and that the team can make the necessary changes at any
point during the development process.

 Being adaptable to Change

Agile recognizes that needs change as time goes on. It encourages modifications
and gives you the freedom to add new features, improve existing ones, or make
changes to suit the changing demands of the market or clients. The Agile
paradigm empowers teams to react swiftly to new information and make the
required adjustments to produce a better final product by accepting change rather
than fighting it.

 A cross-functional Crew Collaboration

Agile promotes tight coordination between team members with various skill sets,
such as stakeholders, testers, developers, and designers. Together, the group plans,
sets priorities, and completes tasks, promoting efficient exchange of information,
problem-solving, and communication. This cooperation guarantees that all parties
are aware of the project's objectives and are able to provide their specialties in
order to produce an end result.

23 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Ongoing development

At the conclusion of each iteration, retrospectives held under the agile paradigm
facilitate ongoing development. The group evaluates its work, pinpoints areas that
need attention, and adjusts improve workflow, output, and quality. By using an
iterative feedback loop, the team can make sure that they continuously improve
their development techniques and learn from their experiences.

 Work-to-Market and the time-boxing

Agile uses time boxing methods, allotting set amounts of time for each iteration.
This deadline supports in scope management, job prioritization, and the consistent
delivery of functional software. The Agile model's emphasis on incremental
delivery speeds up time-to-market, allowing customers to begin experiencing
value sooner and offering chances for early validation and review.

 Risk mitigation

As an essential component of the development process, agile includes risk


management. At different phases, risks are recognized, evaluated, and dealt with
in order to make sure that possible problems are recognized early on and
successfully minimized. The agile iterative design minimizes risks' impact on
project success by enabling regular risk assessments and course modifications.

24 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Figure 2 aglie model sdlc

 Big Bang model

The Big Bang model is an informal, unauthorized method of developing software


that lacks defined processes and documentation. Development in this model,

Starts without much strategy or analysis, just with the coding and implementation.
Due to the lack of thorough requirements gathering and design, the Big Bang
concept poses significant risks even if it enables rapid development and time-to-
market. The paradigm is better suited for smaller projects or prototypes than for
more intricate, large-scale undertakings because to its restricted control and
scalability.

25 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Although it may be difficult to
get input from and engage with stakeholders, it is possible to
adjust to changing requirements with appropriate management. In general, the Big
Bang model is seen as a high-risk strategy that works well for projects with strict
deadlines and a low tolerance for uncertainty, where a focus on timely delivery
takes precedence over careful planning and control.

TIME EFFORT RESOURCES

BIG BANG
MODEL

SOFTWARE

RELEASE

Figure 3 big bang model

26 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Spiral Model

Both sequential and iterative methods are used together in the spiral model. It
involves iterative cycles that each reflect a stage of the risk management process.

Lifetime of development. The main four parts of the Spiral model are engineering,
risk analysis, planning, and assessment. Every cycle begins with risk assessment
and identification, then moves on to development, testing, and prototyping. The
Spiral conduct is especially appropriate for complicated and high-risk projects
since it places a focus on ongoing risk management and enables the early
detection and mitigation of possible problems.

Figure 4 Spiral model https://www.geeksforgeeks.org/software-engineering-spiral-model/

27 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Sequential Models

Waterfall Model

The Waterfall model is a sequential, linear process in which every stage is


finished before going on to the next. 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. To
reduce hazards that become apparent later on, a great deal of upfront analysis is
stressed.

28 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 The Waterfall Model's various stages are

Figure 5 The Waterfall Model's various stages are

Requirement
analysis

System
Design

Implementation

Integration
and Testing

Deployment
of system

Maintenance

29 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 V-Shaped Model

An expansion of the Waterfall model which places a higher value on testing at every
stage is the V-Shaped model. Though it has a sequential approach like to Waterfall, it
emphasizes validation and verification strongly. In the V-Shaped model, testing
procedures are linked to risk management. Verification and testing procedures aim to
reduce the risks that are recognized during the respective development phases.
Effective risk management during testing is helped by early defect detection and
settlement.

These 4 programming lifecycle models offer various ways to deal with programming
improvement, each
With its own assets and shortcomings. The decision of model relies upon elements
like undertaking Prerequisites, level of adaptability required, client inclusion, risk the
board Contemplations, and the idea of the product being created.

 The Agile model and the Scrum model are two iterative models that can be
applied.

 Agile Model

The Agile model encourages adaptability and flexibility through an incremental and
iterative process. By breaking the project up into brief iterations, or sprints, it makes it
possible to collaborate, get ongoing input, and adapt to changing requirements.
According to the agile model, risk management is a continuous activity. Risks are
regularly recognized and evaluated during the course of the development cycles. The
Agile team ensures that risks are addressed swiftly by working together to assess
risks, design mitigation techniques, and react quickly to changes.

30 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Scrum Model

Scrum is a particular Agile methodology used in the development and management of


intricate projects. It employs an iterative methodology using brief, time-boxed
iterations known as sprints. The Scrum model prioritizes cooperation, teamwork, and
openness. It is made up of activities (sprint planning, daily stand-ups, sprint review,
and sprint retrospective), artifacts (product backlog, sprint backlog, and increment),
and particular roles (Product Owner, Scrum Master, and Development Team). Scrum
encourages constant team communication, frequent inspection and adaption, and
ongoing value delivery to the client.

 How to matching

The Agile and Scrum models are comparable in that they emphasize continuous
improvement, customer collaboration, iterative development, and adaptation to
change. They offer a structure for handling intricate projects, encouraging efficient

Flexibility and open communication when producing software of the highest caliber.
These iterative methods are especially appropriate for projects where stakeholders'
involvement is essential, quick response to change is desirable, and needs may alter
over time.

31 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


1.2 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.

 Why I choose the agile model for "ChangeU" salon'?


Reasons...

Around the time a product reaches its final iteration, the agile SDLC can have more
than one iteration and yet provide satisfaction. It makes it easier to code simply,
testing, and develop a working unit faster than with standard methods which take a
long time to finalize a project. That's why I used this model.

Figure 6 https://radixweb.com/blog/agile-software-development-life-cycle

 Early Value Delivery


o Because agile is iterative, working features may be delivered with each
iteration, giving the salon early access to the possibilities of the system. This
may result in a speedier return on investment and the achievement of the
intended improvements in customer service.

 Collaboration and Communication


o Agile 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.

32 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Continuous Improvement
o Agile's iterative methodology makes it possible to deploy functional software
often, allowing the salon to make ongoing system improvements based on
input from clients. This is in line with the client's requirement that a superior
product be delivered without stringent deadlines.

 Flexibility
o During the development process, an Agile method allows for adjustments and
modifications to requirements due to its flexibility and adaptability. This is
helpful for a salon that would have to improve and develop its customer
service skills in response to constant criticism and changing customers.

33 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


1.3 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.

 Among the two cases given here, case 2 "chengeU" salon is more suitable for the
waterfall model. Let's discuss the scenarios I suggest for that in the next step.(
Booking System)

"ChangeU" Salon Booking System

 Benefits of Using the "ChangeU" Salon Booking System with the Waterfall
Model
Sequential and Structured Method

Waterfall takes a methodical and structured method, which is useful if the project isn't
too complicated. For a salon reservation system, the Waterfall model's linear
progression can be effective if the development team has previous experience and the
requirements are simple.

 Data Focus

At every stage of the process, documentation is highly valued in waterfall. The


Waterfall model is appropriate in situations where the client and development team
place a high priority on an accurate and thorough documentation process, such as
making sure the booking system properly meets the client's requirements.

 For well-defined needs

When requirements are well-defined and likely to change regularly, the waterfall
paradigm works well. The waterfall approach works well in a salon reservation
system if the client's primary need is a high-quality product that doesn't require a lot
of modifications.

34 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Less complexity and predictability

As such, the opinions of clients may differ. The waterfall approach offers a timetable
with set benchmarks. When a project is simpler and the client doesn't need regular
modifications, this might be helpful. The development process can be made more
predictable by carefully adhering to timelines and milestones.

 Limited experience in IT

Selecting a simpler and less flexible architecture like Waterfall could be difficult since
the IT department of the wildlife ministry in Case 1 has limited knowledge creating
the wildlife safari system. However, the "ChangeU" Salon development team is more
suited for a more structured technique like Waterfall because they have some prior
experiences.

Since the Waterfall model has its advantages, it's crucial to remember that its
uniformity may present problems in settings where needs are expected to change or
where regular customer feedback is required. However, the Waterfall approach could
be a good option for a project with clear boundaries, like the salon reservation system.

35 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Section B

1.4 Assume yourself as a system analyst assign to analysis and design a software
system for an organization of your choice. Investigate the business and system
requirements using appropriate tools/ techniques and develop the system design with
the findings.

Become a systems analyst feels me proud. When taking over the organization, I
started as a systems analyst. In *Top Tec* e-commerce company.

 Requirements,
 Aims
 Processes

Gather data regarding this entails speaking with important stakeholders through
interviews, looking at the current systems in a cordial manner, and assessing the
organization's workflow.

After gaining a full understanding of the requirements of the selected firm, I move
forward with the software system design. This include developing the system
specifications, specifying the architecture, and figuring out which parts and
capabilities are necessary.

To guarantee that the software system satisfies the organization's long-term needs
during the design phase

 Utility
 Security
 ScalE

In addition, I take into factors like after the design is finished, I collaborate closely
with the development team to put the system into use, test it extensively, and fix any
problems that come up. I keep lines of communication active with the organization

36 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


through this process to make sure their needs are addressed and the software solution
is in line with their goals.

 How can I Development “Top Tec” e-commerce company system.

Right now, I'm creating a software system for "Topec," an online retailer. TopTec
Electronics needs to automate its business procedures because it sells electronic
devices online. The following are the system's primary requirements are…

1 User management system


Figure 7 https://www.miniorange.com/products/user-management

Manage users with ease and restrict their access to networks, devices, apps, and other
resources, all the while giving customers and businesses alike a personalized
experience. It should also support different user roles, such as administrators,
customers, and suppliers.

2 Introduce a product catalog system

37 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Figure 8 CATALOG SYSYTEM EXAMPLE https://visme.co/blog/product-catalog/#:~:text=A%20product%20catalog%20is
%20a,shops%20use%20product%20catalogs%20too.

 A product catalog is a list of the most important details about a product, including its
dimensions, cost, material composition, and other details.

3 Checkout & Shopping Cart

Figure 9 PAY SYSTEM EXAMPLE https://www.kentico.com/platforms/kentico-xperience-13/commerce/checkout-process

 Work to boost sales by customizing the checkout process, reducing cart abandonment,
and assembling the entire purchase process to increase customer satisfaction and
create a seamless shopping experience.

 Create a user-friendly shopping cart that allows customers to easily add, update, or
remove products and services, offering customizable features and discounts to boost
sales and orders.

4 Order Entry system

38 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Figure 10 ONLINE ORDERS https://www.quantanite.com/blog/order-entry-guide-management-and-revenue-explained/

 Order input is a crucial step in the fulfillment process, involving client data gathering,
payment confirmation, and sending out confirmations. Order entry includes
monitoring, management, invoice creation, shipment tracking, alerts, and status
changes.

5 Reviews & Ratings

39 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Figure 11 REVIEWS https://www.tidio.com/blog/ratings-and-reviews/)

 Customer reviews and ratings, often found on third-party websites, are crucial for
boosting sales, boosting consumer confidence, and providing valuable feedback. (

 Finally

Making a high-level graphic, such a use case diagram, to show how the system actors
and the identified use cases interact might be the first step in system design. A
thorough procedure that describes the phases needed in creating and developing a
system which might be an integrated system that comprises both software and
hardware is called the System Design Life Cycle (SDLC). A system's attractiveness
may be increased by creating one that serves both corporate objectives and user
demands. Making ensuring the finished product is dependable, scalable, and
maintained is my aim. This will provide an overview of the system's functionality.
Subsequently, we may go on and develop intricate models such as database schemas,
sequence diagrams, and class diagrams.

Activity 2

2.1 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.

 Important of feasibility study

 The first step in figuring out whether a new project is the right one for the company is
to have a well-structured plan before proceeding with it. A feasibility study can help
focus on various aspects of the proposal before choosing a plan of action.

40 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 A feasibility study helps in determining many factors, such as cost-effectiveness and
whether the proposed plan will benefit the company in the future.

Feasibility statement for analysis and design of the chosen system

I am writing this feasibility report to assess the feasibility and practicality of


implementing a proposed system in my chosen organization and to further the system
analysis and design process, now, I will explain the purpose and components of the
feasibility report for the chosen system.

 What I hope for in the feasibility report

 The feasibility report I am writing aims to assess the feasibility of a proposed system
in the selected software development process from multiple perspectives. My primary
objective here is to inform the stakeholders so they can make the necessary decisions
regarding investing time, resources, and labor in the development of the system. By
evaluating various feasibility aspects, the report helps stakeholders understand the
potential risks, challenges, and benefits associated with the chosen system. Therefore,
I prepared this report.

 These feasibility studies help for

i. To ascertain the market opportunities for the selected project.

ii. To narrow down business options.

iii. Be aware of the benefits and drawbacks.

41 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Factors included in my the report

Figure 12 feasibility study https://www.tatvasoft.com/

 Operational Feasibility

Assesses and tests how well the system aligns with the organization's operations,
processes, and customer needs, looking at factors such as customer acceptance and
ease of integration.

 Schedule Feasibility

Determines whether the organization can complete the project within the expected
time frame, considering resource availability and potential risks.

 Technical Feasibility

This assesses whether the necessary technology is available for the system and the
expertise and support required to develop and maintain the system.

 Economic feasibility

42 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


The organization analyzes the cost-benefit ratio of the system, including development,
operation, and maintenance costs, against the expected benefits.

 The Effect of Feasibility Standards

 Operational feasibility

I propose to analyze how well the system being improved deals with customer needs
and organizational processes. If the operating system is not user-friendly or does not
fit well with existing workflows, it may face resistance from users and become a
challenge in operations.

 Scheduling Feasibility

Can the project be completed within the specified time frame that we expect? Delays
in development or adoption can impact the organization's ability to achieve its goals
and result in increased costs or lost opportunities.

 Technical feasibility

I propose to ensure that the system can be implemented using existing technology and
expertise. If the system requires more advanced technologies and expertise that the
organization does not have, there are significant challenges in developing and
maintaining it.

 Economic viability

The financial performance and return on investment of this system should be


evaluated. It is necessary to understand the costs associated with development,
implementation, and maintenance. This helps stakeholders determine whether the
organization is capable of achieving the expected returns on investment.

43 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Brief description of Feasibility Report

By thoroughly evaluating the feasibility criteria I have studied and formulated,


stakeholders can make well-informed decisions regarding the development and
implementation of the proposed system, thereby minimizing potential opportunity
problems and gaining valuable insight into the challenges. And they can better
understand the future plans of the system.

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

Technological Solutions Ideas For the wildlife safari system

1. Mobile App
2. Mobile Application Overview
3. Application program for mobile devices.
4. Similar to PC services.

44 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


5. Typically discrete, tiny software packages.

Designing a mobile app with cross-platform development tools such as React Native
or Flutter for iOS and Android operating systems and with the help of this solution,
Safari drivers will be able to input real-time data while on Safari using their mobile
devices, increasing convenience and mobility. Does Native mobile app development
is focused on iOS or Android operating systems. The unique features of the target OS
were taken into account while developing these programs. For this, there are ideas to
include things like maps.

 Web application for wildlife safari

Using contemporary web technologies like HTML, CSS, JavaScript, and a backend
framework like Django or Node.js, this solution entails creating a web-based
application. For tracking safari activities, visitor information, and wildlife data, it
would offer a centralized platform that is accessible through web browsers.

Apart from that, the main purpose of WILDLIFE is to provide customers with an easy
way to book travel packages. The aim of this project is to create a system that
streamlines the procedures and tasks involved in a travel agency and its clients' search
and reservation of tours.

Describe and compare

45 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Figure 13 mobile or web https://www.eventya.net/wp-content/uploads/2021/03/Why-Choose-a-Mobile-App-Over-a-
Website.jpg

 Custom web application

a. The program must function on a variety of internet-connected devices.

b. A lot of offline functionality is not necessary.

c. The emphasis is on deployment simplicity and cost-effectiveness.

 Mobile APP

The target audience expects a native mobile experience and uses smartphones
predominantly.

The application must make heavy use of device-specific capabilities and have offline
capability.

46 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 The budget covers the extra expenses for development and upkeep that come with
having many platform versions.

 Description  Custom web  Mobile Application


application

 Cost  Developing and  Development costs may


maintaining custom be higher
web apps is typically
cheaper, especially if
they are intended to run
on several platforms.

 Upgrades and Service  Updates are usually  App stores must be


quicker to do. used to provide
updates, which may
involve user-initiated
downloads and
permission procedures.
 Progress  The performance of a  Because of its native
system can be operation, access to
influenced by factors device resources, and
like network latency streamlined code
and browser execution, the device
performance. usually performs better.
 Unique Features  While some features  Some functionalities
could provide some and data can be
offline functioning accessed by users
utilizing local storage, without the need for an
most functions require internet connection if
an internet connection the product is made to
to operate. enable offline

47 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


operation.
Table 1 compare web and mobile application

The most suitable technical solution that I suggest for the wildlife safari system is custom
web application (2). The reason is,

1. The resolution

The requirements of the Ministry of Wildlife may be precisely met by creating a


bespoke web application with the features and functions needed to track safari
activities.

2. Availability

Safari drivers and government officials may access the app more easily because it is
web-based and can be viewed from any device with an internet connection.

3. Time of development

Although creating a custom solution could take more time and money up front, it
gives you more control and flexibility to suit the specific requirements of the project.

A web application's long-term survival and adaptability may be ensured by its easy
scaling and expansion to suit changing demands.

As I think For the Sri Lankan Wildlife Ministry's wildlife safari system, a
custom web application would likely be more appropriate given the need for
accessibility across multiple devices and the potential limitations of internet
availability in remote areas. It would perfectly suit the requirements and
constraints of the project, be easier to implement, and be more widely accessible.

48 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Activity 03

3.1 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

 Sri Lanka's Ministry of Wildlife plans to develop a wildlife safari system to monitor
and regulate activities in wetlands, national parks and sanctuaries.

1. Safari tracking
2. Visitor tracking
3. Wildlife observation

 System requirements

Manage users

All users, including administrators, government officials, and Safari drivers, must
create user accounts. It must then be managed after that.

Depending on user roles, role-based access control can limit system functionality.
Additionally included is guest registration.

Collecting visitor information, such as name, age, nationality, and license details.
Giving distinct visitor IDs to facilitate tracking.

 Management of Safari

Keeping track of safari routes' start and finish locations, length, and allowed activities
in a database.
Determine the availability and qualifications of drivers and plan safari trips
accordingly.

49 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Gathering of Wildlife Data

Allowing safari drivers to record sightings of wildlife, including GPS coordinates,


species, and size.
Integration of external databases for the identification of species and the state of
conservation,

 Analysis and reporting file.

Producing customized reports on safari activities, wildlife sightings, and visitor


demographics.

Assist in making decisions by providing tools for data visualization and trend
analysis.

 Combining and expanding.

Integration for data sharing and interoperability with current government databases
and systems.
This includes building the system in a scalable manner to allow for upcoming
additions and modifications.

 Business requirements processing

 Wildlife tracking

Recording wildlife sightings, including species, locations and times, for the benefit of
research and conservation.

 Reports

Compiling demographic reports on visitors, safari activities, wildlife sightings and


revenue generated.

50 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Guest administration

Documenting data of domestic and international visitors entering wildlife areas,


including entry and exit times and tracking of permit specifications.

 Safari observations

Track safari drivers, their designated routes, vehicle information and safari schedules.

 Instruments and methods of investigation.

Noting.

Monitor how safaris are currently operating and manage visitors to identify areas for
improvement.

 Prototype development

Prototyping to demonstrate system features and obtain early input from key
stakeholders.

 Conversations

Gather needs and feedback by conducting interviews with stakeholders such as


visitors, safari drivers, and wildlife officers.

 Questionnaire

Surveys to learn about users' preferences, problems, and system expectations.

51 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Figure 14https://3.bp.blogspot.com/_4o8Qf-mXb-Y/SMrAMgs0enI/AAAAAAAAAAU/SopduKC3_-M/s320/sdlc1.gif

 Software System Specification


 Final Thoughts

The business and system requirements for the suggested software solution are
described in the Wildlife Safari System Specification. The system intends to support
Sri Lankan wildlife conservation efforts while enhancing visitor experience and
operational efficiency by catering to visitor management, safari tracking, and wildlife
monitoring needs.

52 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


3.2 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.

 Assessment of the System Investigation Process

By using a combination of investigative tools and methodologies, the selected system


investigation procedure has successfully addressed the needs of the users.

Figure 15 Systems Analysis Process Map https://www.oreilly.com

Often, having a solid understanding of something makes it easier to improve. For example, if
we don't know how much gas a boat uses, what gas it uses, or what characteristics affect the
boat's fuel efficiency, we can't improve the boat's fuel efficiency. The same goes for
efficiency and effectiveness.

53 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 System Investigation Process

Prototype development

Using a prototype instead of fully designing systems before coding and testing allows
us to specify functional systems based on the functioning of the prototype.

We can improve the project before it is developed by utilizing user feedback from the
prototype. Our ability to reduce production costs comes from beginning a software
project with a prototype. It is possible to guarantee that the suggested system complies
with the requirements and anticipations of the involved parties.

 Observations

 It is possible to identify potential system needs and gain valuable insight into current
processes by keeping an eye on visitor management and safari operations.

 Inquiries

 Surveys were distributed to obtain quantitative information about expectations, pain


points and user preferences. Reaching a large group of users and identifying common
trends and patterns should allow this approach to offer a broader perspective.

 Conversations

 In-depth knowledge about the diverse opinions, worries, and requirements of


important stakeholders can be obtained through interviews. They can also assist in
highlighting conflicts between various groups and the variety of viewpoints that exist
on a subject. When conducting a situational assessment at the start of a decision-
making process, interviews can be highly instructive. To gather information,
interviews were done with tourists, safari drivers, and representatives of wildlife
agencies.

54 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


All things considered, the system investigation process worked well in obtaining
user requirements through a combination of qualitative and quantitative
techniques to make sure the suggested system satisfies the demands and
expectations of stakeholders.

The Wildlife Safari System

System Analyses

The investigation process, which includes surveys, observation, prototype


development, and stakeholder interviews, effectively meets user requirements.
However, further study and consultation with IT systems and wildlife management
specialists could enhance the process due to the project's uniqueness and complexity.

SDLC's effectiveness

The waterfall model is used in this project, but its sequential nature is not suitable for
a project with limited experience. The IT department's inexperience can lead to
difficulty anticipating and reporting all system requirements, which can lead to
requirements gaps or changes later in the development process. I suggest that an
iterative strategy like Agile would be more appropriate.

''ChangeU'' Salon Booking System

System Analyses

The development team's early experience with similar projects makes the
investigation process relatively easy. Understanding user needs and pain points can be
achieved through staff and customer interviews, discussions, and monitoring current
booking procedures. Stakeholder input from salon managers and administrators is also
beneficial for a comprehensive understanding.

55 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


The SDLC's effectiveness

1. SDLC Selection in Development

2. Team and client needs influence SDLC choice.

3. Agile offers faster incremental improvements and flexibility.

4. A sequential approach like the waterfall model is suitable for clear, well-understood
requirements.

5. Effective communication and collaboration are crucial for accurate traceability and
high-quality product translation.

56 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


3.3 Discuss two approaches that can be used to improve the quality of the system in the
future.

 Perform continuous integration and deployment


Modern DevOps necessitates a robust continuous integration and delivery pipeline to
adapt to the rapidly changing technology landscape, enhancing the software
development lifecycle and delivering high-quality systems.

Automated deployment processes


Eliminate manual errors and ensure consistent deployments across environments,
allowing developers to more reliably release new features and updates. Therefore, the
system can be developed better.

 Feedback Loop in Deployment


 Track system performance and user feedback post-deployment.
 Identify improvement areas and gather feedback through continuous monitoring.
 Increase development efficiency, speed time-to-market, and system quality.

 Pair programming and code reviews

Coding reviews are regular reviews of code to ensure compliance with coding
standards, best practices, and potential issues. They promote consistency, enhance
readability, and help identify bugs, while also providing opportunities for mentorship
and knowledge sharing within the team.

Pair programming (two-person) involves two developers working together on a task,


with one writing real-time feedback. This method promotes teamwork, problem-
solving, and continuous learning, enhancing code quality. It also reduces errors and
encourages collective ownership among team members.

Implementing robust error handling and monitoring procedures can reduce system
downtime, swiftly identify and resolve problems, and ensure long-term system quality
and reliability.

57 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


Activity 04

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

Behavioral tools and approaches in software are essential for testing and
understanding user behavior with a proposed system, identifying trends, and
improving and making the user experience better. Several behavioral tools and
techniques can be applied to the wildlife safari system I propose.

 Feedback forms are vital for businesses to gather performance data, set goals,
prioritize objectives, and plan improvements. Experience in creating and distributing
efficient forms can aid in progressing in a data-driven role.

o For example, a satisfaction survey for safari visitors can gather feedback on
booking, ‘wildlife’ sightings, and overall experience.

Figure 16 Feedback forms

 User journey mapping

o User journey mapping is visualizing the steps users take to perform specific
tasks in the system. This technology helps identify pain points, bottlenecks,
and opportunities to improve the user experience. For example, mapping the
visitor journey from entering a sanctuary to completing a safari can highlight
areas where the process can be streamlined or improved.

o For example, visitors can map their journey from the observation of entering a
sanctuary to the completion of a safari and highlight quality areas where the
entire process can be streamlined or improved.

58 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 Eye tracking

o Eye tracking technology enables developers to monitor and analyze user


attention on system interfaces by tracking eye movements, gaze duration, and
fixation points. This allows them to identify which elements draw the most
attention and how users navigate the interface, enabling them to determine if
users pay attention to important information.

o For example, can show whether users pay attention to crucial information like
safety instructions or messages about wildlife conservation.

 Testing by remote user

o We can get feedback from remote users through remote user testing, which
removes geographical restrictions. Tasks within the system are assigned to
participants, and their interactions are monitored and analyzed. It can reach a
wider audience and obtain user feedback in different settings and locations
using remote user testing.

o For example to replicate real-world use cases, remote user testing might
involve participants accessing the system from their homes or workplaces.

Our team can better understand user behavior, preferences, and pain points by
utilizing these extra behavioral tools and techniques. With that knowledge, we can
design a wildlife safari system that meets the needs of stakeholders and visitors while
providing an outstanding user experience.

The wildlife safari system could benefit from behavioral techniques like Eye tracking
Testing by remote user, and user journey mapping. These methods provide
firsthand insights into user behavior, issues, and interesting features. By integrating
qualitative and quantitative data, the team can make informed decisions to maximize
user satisfaction and enhance the user experience.

59 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


4.2 Differentiate the finite state machine (FSM) and extended FSM providing an
application for each.

What is the finite state machine (FSM)?

Figure 17 Fsm diagram example

A mathematical model known as a finite state machine (FSM) is used to regulate the behavior
of systems that can have a finite number of states open at any one time. Systems with discrete
and sequential behavior can be designed, analyzed, and implemented using it extensively in
computer science, engineering, and related fields. FSMs are made up of states, transitions
between states, input events, and output actions. They function as a manual or set of
guidelines that direct a robot's judgment and reaction to various circumstances. A systematic
method for creating and evaluating complex systems is offered by FSMs, which are
extensively employed in software protocols, digital circuits, robotic systems, and user
interfaces.

Example Traffic signal management system.

A traffic light in a traffic light control system can be in one of three states: green, yellow, or
red. Transitions take place according to predetermined guidelines; they turn from green to
yellow when the light is about to turn red and from yellow to red after a predetermined
amount of time

60 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


What is Extended Finite State Machine (EFSM)?

Figure 18 Efsm diagram example

Deriving rigorous models of software systems and protocols' functional tests is


possible with extended finite state machines (EFSMs). Test selection criteria based on
data flow, control flow, graph based, and state based can all be applied with them.
Traditional state machine-based notions of faults, such as transfer and output
parameter faults and assignment faults, can be used to describe EFSM fault domains.
Test suites covering single transfer, double transfer, single output parameter, various
single assignment fault types, edge-pair, prime path, prime path with side trip, and all-
use criteria are included in an evaluation of known EFSM test selection criteria.

Example System for Controlling Elevators

The elevator in an elevator control system can be in one of several states: idle,
traveling up or down, or stopped at a specific floor. With EFSM, you can adjust
parameters like the desired floor or direction of travel, update the elevator's position
and status using data manipulation, and represent different modes of operation

 Normal operation
 Emergency, stop using hierarchical states.

61 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


 FSM VS EFSM
 DESCRIPTION  FSM  EFSM
 Capabilities  FSM is a mathematical  EFSM is a more
model that does not expressive and versatile
include any extra model for complex
features or complexity; systems with dynamic
instead, it describes the behavior, building on
behavior of a system the strengths of FSM by
based on its inputs and introducing parameters,
current state. data manipulation, and
hierarchical states.
 Parameters and Data  Without the ability to  More complex behavior
Manipulation pass parameters or and dynamic system
change data between responses to shifting
states, FSM transitions conditions are made
between states are possible by EFSM,
dependent only on the which permits
inputs and current state. parameter transfer
between states and data
manipulation during
state transitions.
 Expressiveness  FSM is a simplified  For complex systems
model that can be used with dynamic behavior,
for systems that have data manipulation
fixed states and needs, and hierarchical
transitions, but it cannot states, EFSM provides
accurately represent an expressive and
dynamic conditions or flexible model that
complex behavior. ensures flexibility and
adaptability.
Table 2 FSM VS EFSM

In my summary

62 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


FSM is a basic model for simple systems, but EFSM enhances its capabilities by
allowing parameters, data manipulation, and hierarchical states, making it suitable for
complex systems.

4.3 Justify how the data driven software can improve the reliability and the
effectiveness of the software system proposed by you.

A data-driven strategy requires good data governance, utilizing data from various
sources like websites, social networks, and internal information. To make better

63 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


decisions about customer relations, product offerings, and cost reduction, companies
need to cultivate a data-driven environment by maximizing the collection, processing,
and analysis of data. I have used several methods for the proposed wildlife safari. I
will explain this to you in four points.

Dynamic resource allocation and optimization.

No project is possible without resources. However, many businesses plan their human
resources too loosely and often statically, resulting in "wasteful" allocations to
projects. I think they don't have the right equipment. However, the wildlife ministry
can dynamically allocate resources like park rangers, safari guides, and vehicles for
this project based on current environmental conditions and demand thanks to data-
driven insights. The system can optimize resource deployment to ensure visitor safety,
minimize environmental impact, and maximize conservation efforts by tracking
wildlife movement, visitor arrivals, and weather patterns.

Figure 19 Dynamic Resource Allocation

 Providing a customized and personalized user experience

64 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


o A personalized customer experience is about creating products, services, and
interactions that are tailored to each customer's needs. It starts with calling
your clients by name and creating offers tailored to their needs and
preferences.

o The Safari experience can be customized to each visitor's preferences using


data-driven software, increasing user engagement and satisfaction. The system
is able to provide customized safari routes, activities, and lodgings by
examining visitor demographics, historical behavior, and feedback. Providing
visitors with experiences that are tailored to their preferences fosters a closer
bond with wildlife, encourages positive feedback and repeat business, and
ultimately boosts system efficacy.

Figure 20 Personalized User Experience

65 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


1. Knowledge-based decision-making

Figure 21 Knowledge-based decision-making example

o When someone makes a decision after learning everything there is to know


about a subject, that person is acting with knowledge. In order to determine
which option is best for us, we must weigh the advantages, disadvantages, and
possible outcomes of each. Appropriate after taking into account every aspect
related to each choice.

o Decisions made by the Wildlife Ministry are supported by historical and


current data thanks to data-driven software. Authorities can make strategic
choices about staffing, resource allocation, and wildlife conservation
initiatives by examining trends in visitor numbers, wildlife sightings, and
safari routes. As a result, decisions are made with more confidence because
they are supported by actual data rather than conjecture.

66 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


2. Continuous improvement process
Figure 22 Continuous improvement process

o A continuous improvement process (CIP) or continuous improvement


management (CIM) is a systematic, continuous effort to enhance processes,
services, or products over time by implementing small, positive changes.

o It involves employee involvement at all levels, data-driven decision-making,


and a proactive approach to problem-solving. Frontline workers can provide
valuable insights, while data-driven decision-making ensures measurable
outcomes.

o Data-driven software allows for continuous monitoring and evaluation of


system performance, enabling iterative improvements over time. By collecting
visitor feedback, tracking performance indicators, and analyzing user
interactions, it evolves to meet evolving user needs, technological
advancements, and environmental challenges.

67 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


With the project I created with software based on the data of wildlife safaris,

1. Empower informed decisions.

2. Predicts and prevents failures.

3. Personalizes the user experience.

4. Optimizes resource allocation.

5. Continuously improves performance.

6. Offers unforgettable, sustainable wildlife safari experiences.

68 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


References

bmc (2022). Continuous Integration Delivery (CI/CD) [online] https://www.bmc.com.


Available at Accessed : 06 02 2024 https://www.bmc.com/blogs/ci-cd-pipeline-setup/

indeed (2023). feedback-forms [online] www.indeed.com. Available at Accessed : 06 02


2024 https://www.indeed.com/career-advice/career-development/feedback-forms

sampletemplates.(2023).customer rate [online]https://images.sampletemplates.com.


Available at Accessed: 06 02 2024
https://images.sampletemplates.com/wp-content/uploads/2015/07/customer-services-survey-
example.jpg

researchgate (2022). fsm pic [online] https://www.researchgate.net. Available at Accessed :


06 02 2024 https://www.researchgate.net

spiceworks (2023). whats the fsm [online] https://www.spiceworks.com/. Available at


Accessed : 06 02 2024 https://www.spiceworks.com/
sciencedirect (2022). What is Extended Finite State Machine [online]
https://www.sciencedirect.com. Available at Accessed : 07 02 2024
https://www.sciencedirect.com/science/article/abs/pii/S0164121216301923

datascientest (2022). What is data driven software [online] https:// https://datascientest.com/.


Available at Accessed : 07 02 2024 https://datascientest.com/en/data-driven-definition-
benefits-and-methods

69 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


image3 (2020). dynamic-resource-allocation3 [online] https://image3.slideserve.com.
Available at Accessed : 08 02 2024 https://image3.slideserve.com/5474441/dynamic-
resource-allocation3-l.jpg

blastanalytics. (2017). User experience [online] https:// https://www.blastanalytics.com.


Available at Accessed : 16 02 2024
https://www.blastanalytics.com/wp-content/uploads/user-experience-infographic.png

barnesconti.(2019).Decision Process [online] www.barnesconti.com. Available at


Accessed : 17 02 2024 https://www.barnesconti.com/programs/virttours/decisionProcess.png

planview.(2023). Continuous Improvement [online] https://media.planview.com. Available


at Accessed : 20 02 2024
https://media.planview.com/wp-content/uploads/2018/09/Continuous-Improvement-
Planview.jpg

oreilly.(2021). Systems Analysis Process Map [online] https://www.oreilly.com. Available


at Accessed : 27 02 2024 https://www.oreilly.com

.blogspot.(2018). dlc [online] https://3.bp.blogspot.com. Available at Accessed : 22 02 2024


https://3.bp.blogspot.com/_4o8Qf-mXb-Y/SMrAMgs0enI/AAAAAAAAAAU/SopduKC3_-
M/s320/sdlc1.gif

eventya.(2021). mobile or web [online] https://www.eventya.net. Available at Accessed : 22


02 2024 https://www.eventya.net/wp-content/uploads/2021/03/Why-Choose-a-Mobile-App-
Over-a-Website.jpg

tatvasoft.(2021). mobile or web [online] https://www.tatvasoft.com/. Available at Accessed :


20 02 2024 https://www.tatvasoft.com/

tidio.(2021). mobile or web [online] https://www.tidio.com Available at Accessed : 20 02


2024 https://www.tidio.com/blog/ratings-and-reviews/

70 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha


quantanite.(2023). management [online] https://www.quantanite.com. Available at
Accessed : 20 02 2024 https://www.tidio.com/blog/ratings-and-reviews/

kentico.(2022). checkou [online] https://www.kentico.com. Available at Accessed : 25 02


2024 https://www.kentico.com/platforms/kentico-xperience-13/commerce/checkout-process

visme.(2018). checkout [online] https:// https://visme.co/blog/. Available at Accessed : 25 02


2024https://visme.co/blog/productcatalog/#:~:text=A%20product%20catalog%20is
%20a,shops%20use%20product%20catalogs%20too.

71 | P a g e Unit 7 Software Development Lifecycles Ishan Malitha

You might also like