Unit 07 - SDLC
Unit 07 - SDLC
Student’s name
List which assessment criteria Pass Merit Distinction
the Assessor has awarded.
Resubmission Feedback:
* 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
Action Plan
Summative feedback
Assessor Date
signature
Student Date
signature
General Guidelines
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
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.
[email protected]
Student’s Signature: Date: 29/02/2024
(Provide E-mail ID) (Provide Submission Date)
Issue Date
Submission Date
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.
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.
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.
Thank you.
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
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
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
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
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.
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
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.
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.
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.
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.
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.
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
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.
BIG BANG
MODEL
SOFTWARE
RELEASE
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.
Waterfall Model
Requirement
analysis
System
Design
Implementation
Integration
and Testing
Deployment
of system
Maintenance
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.
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.
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
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.
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)
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
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.
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.
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
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…
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.
A product catalog is a list of the most important details about a product, including its
dimensions, cost, material composition, and other details.
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.
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.
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.
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.
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.
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
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
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.
1. Mobile App
2. Mobile Application Overview
3. Application program for mobile devices.
4. Similar to PC services.
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.
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.
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.
The most suitable technical solution that I suggest for the wildlife safari system is custom
web application (2). The reason is,
1. The resolution
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.
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.
Assist in making decisions by providing tools for data visualization and trend
analysis.
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.
Wildlife tracking
Recording wildlife sightings, including species, locations and times, for the benefit of
research and conservation.
Reports
Safari observations
Track safari drivers, their designated routes, vehicle information and safari schedules.
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
Questionnaire
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.
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.
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
Conversations
System Analyses
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.
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.
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.
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.
Implementing robust error handling and monitoring procedures can reduce system
downtime, swiftly identify and resolve problems, and ensure long-term system quality
and reliability.
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.
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.
o For example, can show whether users pay attention to crucial information like
safety instructions or messages about wildlife conservation.
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.
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.
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
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.
In my summary
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
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.