Điểm của bài asm còn tùy thuộc vào người chấm. Chỉ cần paraphase bài này là có thể pass. 1 trong nhưng tool paraphase mình recommend là quillbot.The submission is in the form of 1 document.● You must use the Times font with 12pt size, turn on page numbering; set line spacing to 1.3 andmargins to be as follows: left = 1.25cm, right = 1cm, top = 1cm, bottom = 1cm. Citation andreferences must follow the Harvard referencing style. ASSIGNMENT FRONT SHEET Qualification BTEC Level HND Diploma in Computing Unit number and title Unit 2: Networking Infrastructure Submission date Date Received 1st submission Resubmission Date Date Received 2nd submission Student Name Student ID Class Assessor name Student declaration I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism I understand that making a false declaration is a form of malpractice Student’s signature Grading grid P1 P2 P3 P4 M1 M2 D1 ❒ Summative Feedback: Grade: Lecturer Signature: ❒ Resubmission Feedback: Assessor Signature: Date: Table of Contents I Network Network definiton Ξ First of all, network also known as computer networking, which can be understand as a group of computers utilizing a principles of general communication protocols over digital connections for the intention of sharing resources located upon or accommodated by network nodes The operation of network transporting and exchanging data between nodes over a shared medium in an information system, depend on material wireless, optical and wired radio frequency methods which may be regulated in a variety of network frames (Anon., n.d.) Figure : Illustrated image of network Ξ Advantages of networking: File sharing – youll easily share data between different users, or access it remotely if you keep it on other connected devices Resource sharing – using networkconnected peripheral
Trang 1ASSIGNMENT 01 FRONT SHEET Qualification BTEC Level 5 HND Diploma in Computing
Unit number and title Unit 09: Software Development Life Cycle
Student declaration
I certify that the assignment submission is entirely my work and I fully understand the consequences of plagiarism I understand that making a false declaration is a form of malpractice
Student’s signature Grading grid
Trang 2❒ Summative Feedback: ❒ Resubmission Feedback:
Internal Verifier’s Comments:
Signature & Date:
Trang 3Table of Contents
TABLE OF CONTENTS 1
TABLE OF FIGURES 2
LIST OF TABLES 2
A INTRODUCTION 4
B SDLC MODEL 5
I DESCRIBE TWO ITERATIVE AND TWO SEQUENTIAL SOFTWARE LIFECYCLE MODELS (P1) 5
1 SDLC Models 5
a) Prototyping model 5
b) Waterfall model 7
c) Spiral Model 10
d) Scrum Model 12
e) V-Model 14
2 SDLC Model is Suitable for TuneSource Project and Explain 16
3 Discuss The Suitability Of Each Of The SDLC Models For The Project 17
I EXPLAIN HOW RISK IS MANAGED IN THE SPIRAL LIFECYCLE MODEL (P2) 19
1 Risk Management Process 19
a) Definition: The process of identifying, monitoring, analysing and managing possible risks to reduce the negative impact they may have on a company is known as the risk management process Security breaches, data loss, cyberattacks, system failures, and natural disasters are all examples of potential dangers A good risk management process will aid in determining which hazards pose the greatest threat to a company and provide instructions for dealing with them (Reciprocity, 2020 ) 19
b) 4 essential steps of the Risk Management Process 19
c) The Importance of Risk Management Process: 20
d) Risk Management In The Spiral Lifecycle Model 20
e) Risk Management Matrix 21
C FEASIBILITY STUDY 22
I DISCUSS THE PURPOSE OF CONDUCTING AFEASIBILITY STUDY FOR THE PROJECT 22
1 What is Feasibility Study 22
2 The Importance of Feasibility Study 22
3 The Purpose of Conducting a Feasibility Study for Tune Source Project 22
Trang 44 The Benefits of Conducting a Feasibility Study: 23
II EXPLAIN THE PURPOSE OF AFEASIBILITY REPORT (P3) 23
1) Three Feasibility Criteria 23
a Technical Feasibility 23
b Economic Feasibility 23
c Organizational Feasibility 24
2) How The Three Feasibilities Are Applied To The Tune Source Project 24
3) Discuss alternative technical solutions using the alternative matrix 32
4) Explain the components of a feasibility report 33
5) Describe How Technical Solutions Can Be Compared (P4) 36
REFERENCES 38
Table of Figures Figure 1: SDLC 4
Figure 2: Prototyping model 5
Figure 3: Waterfall model 7
Figure 4: Spiral model 10
Figure 5: Scrum methodology 12
Figure 6: V-model 14
Figure 7: Risk management process 19
Figure 8: Feasibility Study 22
Figure 9: Payback analysis candidate 1 27
Figure 10:Payback analysis 31
List of Tables Table 1: The Suitability Of SDLC models 17
Table 2: Risk Management Matrix 21
Table 3: Cost for TuneSource project Candidate 1 25
Table 4: Cost for project (candidate 2) 28
Table 5: Comparison matrix of two candidates 33
Trang 5Table 6: Diagram of alternative matrix 37
Trang 6A INTRODUCTION
The Software Development Life Cycle (SDLC) can be viewed as a well-defined procedure for producing high-quality, low-cost software in the shortest amount of time possible The SDLC's purpose is to create exceptional software that exceeds all customer expectations and demands The SDLC is a step-by-step process that specifies and explains a detailed plan with stages, or phases, that each has its methodology and deliverables
This report will deeply present and show two crucial components in the SDLC process that is SDLC models and Feasibility Study based on studying and working in the TuneSource Project
Figure 1: SDLC
Trang 7B SDLC MODEL
I Describe Two Iterative And Two Sequential Software Lifecycle Models (P1)
1 SDLC Models
a) Prototyping model
Definition: One of the most commonly utilised Software Development Life Cycle Models is the Prototyping
Model This paradigm is applied when customers do not know the exact project requirements ahead of time In this model, an end-product prototype is first created, then tested and refined based on user feedback until a final acceptable prototype is established, which serves as the foundation for building the final product (Pedamkar, 2020)
Phases of the Prototyping Model
Communication: This is the phase in which the developer and client schedule a meeting to discuss the
software's goals and objectives
Design: The design phase was completed fast because all needs were met on both the providing and
receiving sides It's what's used to make the prototype It covers the essential features of the software, such
as input and output, but is primarily concerned with visible elements rather than planned actions
Modelling: It gives you a better notion of what the software needs and gives you a better grasp of the
software
Figure 2: Prototyping
model
Trang 8 Deployment: The client examines the program before deployment, and if the client is not pleased, the
product is refined to meet the client's needs This process continues until the client's needs are not met The product is finally deployed to the production environment after the client is satisfied with it It is thoroughly analyzed and tested, and regular maintenance is performed (Pedamkar, 2020)
When to use Prototype-Model: It should be utilized when the end-user must interact with a lot of final systems,
such as online systems, web applications, or interfaces These receive the most traffic from visitors who check and utilize them regularly The system's development does necessitate the use of trained personnel It also necessitates constant client availability for input, evaluation, and sign-off on the various prototypes created
Advantages and Disadvantages of Prototype Model
☺ Customers get to see a portion of the finished
product early in the life cycle Customers will be
more satisfied and comfortable as a result of this
☺ Because there is room for improvement, new
requirements can be easily met
☺ Functionalities that aren't present can simply be
discovered
☺ Errors may be spotted considerably sooner,
saving time and money while also improving the
quality of the product
☺ The produced prototype can be reused by the
developer in the future for more complex
When there are a lot of changes, the client may become confused and lose interest It also reduces the development team's productivity
Why Prototype model is selected for a development environment
Trang 9It provides a clear picture of the software in development to the client before and during the implementation stage
It aids in the prevention of complications that may arise in the future It facilitates client-developer communication
so that the product meets the client's needs and is easier to grasp for developers from the customer's perspective The prototype model also includes a variety of models
b) Waterfall model
Definition: The waterfall model is one of the first models of software development in which activities are completed
in sequential order, beginning with feasibility and progressing through various tasks until live implementation Requirements feed into the design, which feeds into the construction or implementation, and eventually into the testing It's been difficult to get feeds passed back up the waterfall because the testing process occurs at the end of the model (Pedamkar, 2020)
Phases of the Waterfall Model
Requirement: Specify what functionality is needed to develop and design and what processes to develop It
supplies raw materials for the product being manufactured, allowing the impending product to be researched, finalized, and labelled It also allows us to decide on the product's hardware or software needs, which will be
planned, developed, and captured along the process
Figure 3: Waterfall model
Trang 10 Analysis: It results in designing models, schema, and business rules:
o Information and requirement for the product development are gathered from the customer and then it is processed for analysis to eradicate incompleteness and inconsistencies related to software product development
o An SRS (software requirement specification) document is used to document the above-mentioned requirements It acts as a link between the customer and the development team at SRS
Design: The next most significant phase to study is system design In this phase, the requirement specification
is largely researched and verified It also aids in the transformation of the SRS document into the software product's functional design and development Converting the requirements acquired in the SRS into a format that can be coded in a programming language As a result, it can be said that one creates the overall architecture for the software development project during the designing phase
Implementation: Inputs from the system design are taken in this phase, and they are first turned into little
programs known as units Each unit in the implementation phase is developed and tested to ensure full functionality, a process known as unit testing This step translates the system design into source code with fully functional program modules It entails the software's development, testing, and integration
Integration and Testing: Testing each unit from the implementation phase which is then integrated into a
module or system for various tests such as load tests, load tests, and so on The testing environment is subjected
to a continuous software check to see whether any flows or errors in the design or code exist
Deployment: The software product is deployed to the user or customer system or launched to the market after
non-functional, functional, alpha, and beta testing is completed
Maintenance: Maintenance can be divided into three types, as shown below:
Trang 11o Corrective Maintenance: Some faults are not detected during the design and development process; they are only noticed when the client utilizes the product It implies that flaws or errors that were not detected during the development process are corrected
o Perfective Maintenance: This type of maintenance is performed in response to client requests to improve and expand the system or software's functionality
o Adaptive maintenance: Maintenance that is required for switching the system environment is known as adaptive maintenance Usually needed when moving an existing system to a new environment, a new machine, or a new operating system
Advantages and Disadvantages
☺ This model is straightforward to comprehend
☺ In this model, phases are handled one by one
☺ The model's stages are all clearly defined
☺ The milestones in this approach are highly obvious
It's tough to predict how long and how much each stage
of the development process will take
For sophisticated and object-oriented projects, this is not a good model
Until the end of the life cycle, no working software is developed
Changes in requirements cannot be accommodated
Within stages, it's tough to assess development
There is a lot of danger and uncertainty
For long-term projects, this paradigm is inadequate
There is no way to get feedback
There are no phases that overlap
Change requests are difficult to accommodate risk and unpredictability
When to use this Model: The waterfall model is best suited for small software development projects since design,
development, and implementation are easier in small projects under this model, all previous phases must be
Trang 12completed before moving on to the next However, if this model is applied to a big project that has a vast model, faults and errors will occur frequently
c) Spiral Model
Definition: The spiral model is one of the most crucial Software Development Life Cycle models,
which supports Risk Handling The spiral model combines both iterative and waterfall models, in which a product starts with a small set of requirements and then goes through the development of that small product to meet those requirements, and is used when more frequent releases are required Additional functionality will be added to the product based on additional requirements in an ever-increasing spiral until the product is ready for production (PAL,
2022)
Phases of the Waterfall Model
Figure 4: Spiral model
Trang 13 Determine Object: Each cycle in the spiral begins with determining the cycle's purpose and the many options
for attaining the goals and the constraints that exist
Identify and resolve the risk: The next step in the cycle is to compute the possible options depending on the
objectives and constraints In this stage, the focus of the evaluation is on the project's risk perception
Development and validation: The next step is to create and validate methods for resolving uncertainty and
hazards Benchmarking, simulation, and prototyping may all be part of this process
Planning the next iteration: the project is evaluated, and the decision is made on whether to continue with the
spiral for another term If it is decided to keep it, plans for the next stage of the project are written up
Advantages and Disadvantages
☺ It's a model that repeats itself It functions in a spiral shape, similar to a linear waterfall concept
☺ It's a risk-based strategy
☺ They make use of prototyping
☺ When compared to the waterfall model, this model is far more adaptable
☺ Maintaining it necessitates documentation
☺ Large projects are approached deliberately
☺ All phasers are within our control
☺ We can alter the implementation based on customer needs
☺ It's possible that software development will take less time than anticipated
☺ Risk factor is reduced to a minimum
☺ The end-user is given an early look at the system
Time management is challenging since the number of stages is unknown at the outset of the project This makes time estimation problematic
Trang 14 When to use this Model
The spiral model is more suitable when working on a large project because It allows us to receive direct feedback from customers When a long-term project is in progress and commitment is no longer possible owing to shifting economic considerations
Why this model is selected for a development environment
The spiral model is chosen widely because it may be the most cost-effective option When compared to the waterfall model, development is much faster In addition, new features are being introduced systematically And risk control is the key advantage of this Spiral strategy This risk analysis step protects the system from potential issues
d) Scrum Model
Definition: Scrum is an agile development methodology based on iterative and incremental procedures that are used
in the creation of software Scrum is an agile framework that is designed to offer value to the client throughout the project's development It is adaptable, rapid, flexible, and effective Scrum's main goal is to meet the needs of the customer by fostering a culture of open communication, shared ownership, and continuous improvement The
Figure 5: Scrum methodology
Trang 15development process begins with a rough understanding of what needs to be produced, followed by the creation of a list of characteristics ordered by priority (product backlog) that the product owner desires (Thakur, 2020)
Advantages and Disadvantages
☺ Scrum-based methodologies have shown to be extremely productive
☺ High-quality results
☺ Customer satisfaction has increased
☺ Improved team dynamics and communication
☺ Release times are shorter, and costs are lower
The level of experience of resources and other scrum team members is important and can influence the outcome
Other learning may have an impact on the product
if the team is not committed and supportive
Frequent meetings may hurt morale, thus more engaging meetings are essential
When to use the Scrum model
When working on out-sourced projects or for more adaptable clients where we must not adjust to clients’ processes
When working on a project where the scope is rapidly shifting (for whatever reason), we come to terms with
Why Scrum model is selected for a development environment
Scrum offers freedom of implementation, The freedom Scrum offers is that in any case, it limits the tools to use neither the implementation of the framework
Scrum is easy to learn and use
Scrum embrace the change It’s more flexible in requirements gathering and it lets start the development phase earlier
Scrum reduces the risk of building the product in increments
Trang 16 Scrum optimizes the team’s efficiency and efficacy
In some kinds of projects, scrum lets the customer use the product earlier
e) V-Model
Definition: The model is one of the popular SDLC models in which processes are sequentially executed in a
V-shape The Verification and Validation model is another name for it It is based on the correlation of a testing phase with each development step Each stage must be developed in conjunction with the testing phase The next phase begins only once the previous one has been completed, i.e there is a testing activity for each development activity
Phases of V-Model
Design Phase:
Requirement Analysis: This phase entails extensive communication with the customer to fully comprehend
their needs and expectations Requirement Gathering is the name of this step
System Design: The system design, as well as the whole hardware and communication infrastructure for
building a product, are included in this phase
Figure 6: V-model
Trang 17 Architectural Design: System design is further subdivided into modules that handle various functions Data
transport and communication between internal modules and the outside world (other systems) are both well understood
Module Design: The system is broken down into small modules during this phase Low-Level Design is the
specification of the detailed design of modules (LLD)
Testing Phases:
Unit Testing: During the module design process, unit test plans are created These Unit Test Plans are used
to find and fix flaws in code or units
Integration testing: The modules are integrated and the system is tested during integration testing During the
architecture design phase, integration testing is carried out This test confirms that modules can communicate with one another
System Testing: Examining the functionality, interdependencies, and communication of the entire application
It evaluates the produced application's functional and non-functional needs
User Acceptance Testing (UAT): In a user environment that is similar to that of the production environment
UAT ensures that the delivered system satisfies the user's requirements and is ready to use
Advantages and Disadvantages
Uncertainty and high risk
It is not suitable for object-oriented or complicated projects
It is not appropriate for projects with ambiguous requirements or a high chance of change
This model does not allow for phase iteration
Trang 18☺ This model emphasizes verification and validation activities early in the life cycle, increasing the likelihood of producing a high-quality product with no errors
☺ It allows project managers to keep proper track of
progress
It has a hard time dealing with multiple occurrences at the same time
Why V-model is selected for a development environment
Because of the model's rigidity, it's simple to manage The V-Model contains specific deliverables and a review mechanism for each phase Defect tracking is proactive, that is, defects are discovered early on
When to use V-Model
Where the requirements are well-defined and fixed When a large number of technical resources and knowledge are available, the V-Model is used
2 SDLC Model is Suitable for TuneSource Project and Explain
Since the emphasis of this project is on the business aspects: increasing sales and support to maintain a competitive position in their company’s market That requires the software output of this project to be developed in many other aspects, not just in terms of technology, plus the initial investment is not small and it needs cost-effective Thereby, this project can be viewed as a big project and it also has many potential risks In this case, to meet the requirements
of the project which have a bit unclear and complex, the Spiral model would be the most suitable choice for the project This is because resources of this project are available and some features of the Spiral model correspond to almost requirements:
☺ It handles a Large project in a strategic way(economic priorities);
☺ The technology requirements of the system in this project are not too complex and the Spiral model supports software production may take less time than estimated;
☺ Because of having Risk Handling ability, the risk when applying the Spiral model is analysed at the starting
of each cycle which helps in planning the helpsures to minimize risk factors;
☺ This model produces a prototype that helps in evaluating the cost and time to develop the software
Trang 193 Discuss The Suitability Of Each Of The SDLC Models For The Project
Table 1: The Suitability Of SDLC models
Alternative models Suitable environment Suitable Scope of the Project Least suitable Project
Waterfall Office environment Small project or Short-term
project
Big-project or long-term project;
Project frequently has changed in ambiguous requirements
V - Model Office environment Small project or short-term
project
It seems to be not suitable for projects that have unclear and ambiguous requirements; The technology in the project is frequently changed and it is difficult for the project team can well proficient
Spiral Office environment Big or complex project It is not suitable for small software and
systems built-in one or long phase or in the segment
Scrum Office environment It could deal with both Small or
Large project
No customer engagement and interactivity Customers require functionality to be available for a long period
Many businesses and software engineers find deciding and selecting a Software Development Life Cycle (SDLC) methodology for the project to be a difficult process The fact that few businesses are aware of the criteria to utilize in selecting a technique to bring value to the organization makes it difficult It is one of the most essential variables in deciding whether a piece of software will succeed or fail
Which approach is preferable for each project in different circumstances relies entirely on the project's size and complexity The Waterfall Model is better suited to small, basic tasks, whereas the Spiral Model is better suited to bigger, more complex ones As a result, selecting the appropriate model for each project is critical
a Waterfall
The waterfall ismodeally not suitable for the Tune Source project because waterfall would freeze the project's requirements and it will be impossible to return to any stage once it has ended Furthermore, it is exceedingly costly and time-consuming, and it necessitates much preparation Tune source is a large undertaking, and the original requirements will alter as the end-user adapts to the changing environment If a product is completed but not required
by the end-user, or if the end-user wishes to tweak or add a function, the end-user may do so To modify the end user's requirements, the end-user uses a significant amount of money As a result, Waterfall is unsuitable as a Tune Source It is least suitable for the TuneSource project
Trang 20b V-Model
The V-model is quite similar to the waterfall model above, in which software requirements are explicitly stated and software development methods are well-understood When the request is taken from the tune source by business analysis The end-user makes current requirements and shows an obvious lack of understanding of software development technology The end customer simply has to be aware of products that are similar to what they desire It's an insufficient examination The prototype and the entire system are often confused by users Users' intentions are misunderstood by developers The prototypes are expensive to implement In conclusion, it is also appropriate for use as a tuning source The finished product is expensive and takes a long time to produce To assess the risks and assumptions, particular abilities are required The price is exorbitant Finally, it is unsuitable for tuning courses
c Spiral
Section 3 above has shown that the Spiral Model is the most suitable for TuneSource Project By having frequent assessments to assess the product with the expected outcomes desired, modifications may be made faster and throughout the development process It maintains transparency in each project by conducting frequent, consistent meetings with clients and implementing tools that allow everyone involved to view project data and progress It cuts down on the time it takes to use certain of the system's functionalities Finally, it is most suitable for the project
d Scrum
The scrum model is a quite good fit for Tune Source since it can be utilized on any project, but it requires greater client involvement and interaction We may also utilize it when a customer requires a functional need completed in less than three weeks but the criteria are unclear This will allow for the creation of more useful and usable software pieces earlier in the development process, increasing customer satisfaction Providing a competitive edge to teams
by discovering faults and making adjustments earlier in the development process rather than later Because each review only covers a tiny portion of the entire project, it reduces the amount of time spent on evaluations