IT Fundamentals: Handshake, RAD, Agile, Scope Creep Analysis
VerifiedAdded on 2022/10/02
|8
|1728
|360
Homework Assignment
AI Summary
This assignment solution addresses key concepts in information technology, including the necessity of a 3-way handshake in TCP, contrasting it with a 2-way approach, and explaining the Rapid Application Development (RAD) methodology. It outlines the advantages and disadvantages of RAD, and discusses the benefits and drawbacks of agile methods. The solution also defines scope creep in software development and presents strategies for managing it. Furthermore, it explores fact-finding techniques, such as analyzing existing databases, conducting observations, and prototyping, for gathering requirements for a Real-Time Glucose Monitoring (RTGM) system, considering potential users and their needs. The provided solution offers detailed explanations, examples, and references to support the analysis of each concept.

Running Head: FUNDAMENTALS OF INFORMATION TECHNOLOGY 1
FUNDAMENTALS OF INFORMATION TECHNOLOGY
Student Name
Institution
Course
Date
FUNDAMENTALS OF INFORMATION TECHNOLOGY
Student Name
Institution
Course
Date
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.

FUNDAMENTALS OF INFORMATION TECHNOLOGY 2
Explain why we need a 3-way handshake in TCP? Why not just 2-way? [4 marks]
In TCP network, the two parties communicating are supposed to keep track of all the data
they exchange by the use of an ISN. This becomes a running byte count of all the data exchanged
(Li & Ma, 2011). For that matter, two-way handshake can’t be used for TCP/IP network because
it only allows only one party among the two communicating parties to create an ISN while the
second party can only acknowledge it. This implies that only one party is capable of sending
data. Contrary to that, TCP/IP network should support a bi-directional communication where
each of the two parties should be able to send and receive data.
What is RAD? List an advantage and a disadvantage of using RAD. [6 marks]
RAD or rapid application development is a methodology of software development that
emphasizes on rapid prototyping and iterative delivery. It is an alternative of waterfall
development methodology which focuses on sequential design and planning. RAD adopts a
cyclical process with four main steps (Ali, 2017). Planning requirements is the first step,
developers, designers and software users to come into an agreement on the application
requirements and project scope to allow future prototyping to start. User design is the second
step, where user responses are collected in order to determine the system architecture. Rapid
construction is the third step, where actual coding, integration and testing of the application take
place. The last step is the cutover stage, where application components are moved into a live
production by the development team (Ali, 2017).
The main advantage of RAD methodology is its inherent synergy with the software
requirements. Whereas other development forms such as towering skyscraper require thorough
Explain why we need a 3-way handshake in TCP? Why not just 2-way? [4 marks]
In TCP network, the two parties communicating are supposed to keep track of all the data
they exchange by the use of an ISN. This becomes a running byte count of all the data exchanged
(Li & Ma, 2011). For that matter, two-way handshake can’t be used for TCP/IP network because
it only allows only one party among the two communicating parties to create an ISN while the
second party can only acknowledge it. This implies that only one party is capable of sending
data. Contrary to that, TCP/IP network should support a bi-directional communication where
each of the two parties should be able to send and receive data.
What is RAD? List an advantage and a disadvantage of using RAD. [6 marks]
RAD or rapid application development is a methodology of software development that
emphasizes on rapid prototyping and iterative delivery. It is an alternative of waterfall
development methodology which focuses on sequential design and planning. RAD adopts a
cyclical process with four main steps (Ali, 2017). Planning requirements is the first step,
developers, designers and software users to come into an agreement on the application
requirements and project scope to allow future prototyping to start. User design is the second
step, where user responses are collected in order to determine the system architecture. Rapid
construction is the third step, where actual coding, integration and testing of the application take
place. The last step is the cutover stage, where application components are moved into a live
production by the development team (Ali, 2017).
The main advantage of RAD methodology is its inherent synergy with the software
requirements. Whereas other development forms such as towering skyscraper require thorough

FUNDAMENTALS OF INFORMATION TECHNOLOGY 3
planning and logical development, the essence of software is its malleability and constant
evolution (Ali, 2017). Since softwares are easily and quickly morphed during development
process, softwares are inherently adaptable with this methodology which makes iteration and
experimentation easily achievable.
Just like all other software development methodologies, RAD has its own flaws. It
depends heavily on technically skilled developers to adapt to its requirements which change
rapidly. Another drawback of this methodology is its affinity towards modularized systems to
allow team members to swap elements or modify it in and out. In other words, RAD favors
development of systems that can be modularized (Ali, 2017).
Discuss two advantages and two disadvantages of agile methods. [6 marks]
Advantages
Agile methodology produces high quality products
With agile method, testing is a crucial component of the development cycle, which
implies that products are regularly checked to ensure that they are working perfectly. Through
this stakeholders can propose all the changes required so that development team is aware
whenever there are issues. Also, software requirements are elaborated in time to make product
features relevant (Tomanek & Klima, 2015). The constant integration of features and testing
during the development process makes it easier for development team to address software issues
early enough.
There is high customer satisfaction
planning and logical development, the essence of software is its malleability and constant
evolution (Ali, 2017). Since softwares are easily and quickly morphed during development
process, softwares are inherently adaptable with this methodology which makes iteration and
experimentation easily achievable.
Just like all other software development methodologies, RAD has its own flaws. It
depends heavily on technically skilled developers to adapt to its requirements which change
rapidly. Another drawback of this methodology is its affinity towards modularized systems to
allow team members to swap elements or modify it in and out. In other words, RAD favors
development of systems that can be modularized (Ali, 2017).
Discuss two advantages and two disadvantages of agile methods. [6 marks]
Advantages
Agile methodology produces high quality products
With agile method, testing is a crucial component of the development cycle, which
implies that products are regularly checked to ensure that they are working perfectly. Through
this stakeholders can propose all the changes required so that development team is aware
whenever there are issues. Also, software requirements are elaborated in time to make product
features relevant (Tomanek & Klima, 2015). The constant integration of features and testing
during the development process makes it easier for development team to address software issues
early enough.
There is high customer satisfaction

FUNDAMENTALS OF INFORMATION TECHNOLOGY 4
Agile methodology allows the product owners to be involved in the entire development
process, making the development process to have high flexibility and visibility to change which
translates to high customer satisfaction and engagement (Tomanek & Klima, 2015). This is
achieved through demonstration of the working features customers after every sprint, conveying
products to the market quickly and more often after every release, giving customers an early
access to products before the life cycle completed and engaging customers throughout the
development process.
Disadvantages
Agile Methodology has a poor resource planning
Agile methodology is based on the idea that development teams do not know the end
results of a project or its appearance after some few cycles of delivery down the line. For that
matter, it becomes a challenge to predict some factors like the cost, time and the resources which
are required to see the project up to its completion. As the project becomes bigger, this challenge
becomes pronounced and more complex (Tomanek & Klima, 2015).
Agile methodology produces a fragmented output
Although the incremental delivery approach with agile helps bring products to the market
faster, it can also be its major drawback. This is because when different teams are handling
different components in different cycles, the output is often fragmented rather than being a
cohesive unit (Tomanek & Klima, 2015).
Agile methodology allows the product owners to be involved in the entire development
process, making the development process to have high flexibility and visibility to change which
translates to high customer satisfaction and engagement (Tomanek & Klima, 2015). This is
achieved through demonstration of the working features customers after every sprint, conveying
products to the market quickly and more often after every release, giving customers an early
access to products before the life cycle completed and engaging customers throughout the
development process.
Disadvantages
Agile Methodology has a poor resource planning
Agile methodology is based on the idea that development teams do not know the end
results of a project or its appearance after some few cycles of delivery down the line. For that
matter, it becomes a challenge to predict some factors like the cost, time and the resources which
are required to see the project up to its completion. As the project becomes bigger, this challenge
becomes pronounced and more complex (Tomanek & Klima, 2015).
Agile methodology produces a fragmented output
Although the incremental delivery approach with agile helps bring products to the market
faster, it can also be its major drawback. This is because when different teams are handling
different components in different cycles, the output is often fragmented rather than being a
cohesive unit (Tomanek & Klima, 2015).
Secure Best Marks with AI Grader
Need help grading? Try our AI Grader for instant feedback on your assignments.

FUNDAMENTALS OF INFORMATION TECHNOLOGY 5
What is scope creep in software development? Explain three ways to deal with scope creep.
[6 marks]
Scope creep is the tendency of project requirements to increase over the project lifecycle.
For instance, a project which started with an expectation of single deliverable may turn out to
have five or a product that began with three essential features turning out to have ten (Madhuri,
Rao & Murthy, 2016). Consequently, the needs of customers may change in the middle of a
project to call for a reassessment of the entire project requirements.
Dealing with Scope Creep
Dealing with scope creep entails different approaches. The first approach involves
producing a functional specification at the onset, which must be written in a way that customers
understand. Also, the functional specification must be agreed and signed by customers in a scope
statement. A scope statement states the functionalities which are explicitly described in the
specification and included in the project scope and excludes anything else not described in the
scope (Madhuri, Rao & Murthy, 2016).
Another approach to deal with scope creep is through sending “zero invoices”. Under this
strategy, when clients make small requests, they should be fulfilled and an invoice created for
what it would have cost in order to zero out the cost. The invoice is then sent to the client to sign
it as an acknowledgement that they have received it. This should be repeated in every time
clients ask for adjustments out of the ideal project scope (Madhuri, Rao & Murthy, 2016). It will
act as a visual reminder which makes clients more aware of what they ask and the value of what
What is scope creep in software development? Explain three ways to deal with scope creep.
[6 marks]
Scope creep is the tendency of project requirements to increase over the project lifecycle.
For instance, a project which started with an expectation of single deliverable may turn out to
have five or a product that began with three essential features turning out to have ten (Madhuri,
Rao & Murthy, 2016). Consequently, the needs of customers may change in the middle of a
project to call for a reassessment of the entire project requirements.
Dealing with Scope Creep
Dealing with scope creep entails different approaches. The first approach involves
producing a functional specification at the onset, which must be written in a way that customers
understand. Also, the functional specification must be agreed and signed by customers in a scope
statement. A scope statement states the functionalities which are explicitly described in the
specification and included in the project scope and excludes anything else not described in the
scope (Madhuri, Rao & Murthy, 2016).
Another approach to deal with scope creep is through sending “zero invoices”. Under this
strategy, when clients make small requests, they should be fulfilled and an invoice created for
what it would have cost in order to zero out the cost. The invoice is then sent to the client to sign
it as an acknowledgement that they have received it. This should be repeated in every time
clients ask for adjustments out of the ideal project scope (Madhuri, Rao & Murthy, 2016). It will
act as a visual reminder which makes clients more aware of what they ask and the value of what

FUNDAMENTALS OF INFORMATION TECHNOLOGY 6
they receive. It also helps the owner of the agency to track the time resources are spend on non-
billable projects in order to minimize profitability leaks.
Collaborating with clients on expectations is another approach to manage scope creep.
Requirements of a project must be laid out clearly with collaboration between the clients and the
internal team. This ensures that everyone understands the requirements list and there is a
document where the client can refer to in future. When scope creep starts, the clients can be
referred back to the scope statement that helped in creating and setting the project expectations
(Madhuri, Rao & Murthy, 2016).
Think about the potential users of the system and discuss three fact-finding techniques that
you would use to collect the requirements of the new system
Sampling of the existing databases, forms and documentations
This approach will entail analyzing the existing systems which are similar or closely
similar to this system in order to understand what they required. Different kinds of documents
such as customer complaints, reports documenting a problem area, suggestion box notes,
problem performance reviews and computerized reports will be highly useful in this technique
because they will make it easier to understand the problems and upgrades which must be done on
the current system to make it perfect (Jalil et al., 2018).
Observations in the working environment
In this technique, the system analysts will participate in the system requirement analysis
by studying the flow of documents, applying the existing systems and interacting with the system
they receive. It also helps the owner of the agency to track the time resources are spend on non-
billable projects in order to minimize profitability leaks.
Collaborating with clients on expectations is another approach to manage scope creep.
Requirements of a project must be laid out clearly with collaboration between the clients and the
internal team. This ensures that everyone understands the requirements list and there is a
document where the client can refer to in future. When scope creep starts, the clients can be
referred back to the scope statement that helped in creating and setting the project expectations
(Madhuri, Rao & Murthy, 2016).
Think about the potential users of the system and discuss three fact-finding techniques that
you would use to collect the requirements of the new system
Sampling of the existing databases, forms and documentations
This approach will entail analyzing the existing systems which are similar or closely
similar to this system in order to understand what they required. Different kinds of documents
such as customer complaints, reports documenting a problem area, suggestion box notes,
problem performance reviews and computerized reports will be highly useful in this technique
because they will make it easier to understand the problems and upgrades which must be done on
the current system to make it perfect (Jalil et al., 2018).
Observations in the working environment
In this technique, the system analysts will participate in the system requirement analysis
by studying the flow of documents, applying the existing systems and interacting with the system

FUNDAMENTALS OF INFORMATION TECHNOLOGY 7
users to understand some of their expectations. In order to perfect this technique, system analysts
must have a user centered approach (Jalil et al., 2018).
Prototyping
This is a fact finding technique which samples a sample working model. It is more like a
pre-design of an information system. This technique is developed in the initial stages of a system
development life cycle after the facts have been analyzed. It entails breaking down the system
facts with an aim of specifying user requirements.
References
Ali, K. (2017). A Study of Software Development Life Cycle Process Models. International
Journal of Advanced Research in Computer Science, 8(1).
Jalil, R., Khalid, J., Maryam, M., Khalid, M., Cheema, S. N., & Iqbal, I. (2018, October).
Requirement Elicitation for Bespoke Software Development: A Review Paper.
In International Conference on Intelligent Technologies and Applications (pp. 805-821).
Springer, Singapore.
Li, G., & Ma, M. (2011, October). A KRC encryption solution protecting IEEE 802.11 I 4-way
handshake from DoS attacks. In 2011 4th IEEE International Conference on Broadband
Network and Multimedia Technology (pp. 586-591). IEEE.
Madhuri, K. L., Rao, J. J., & Murthy, S. V. (2016). Scope creep: implications on customer
satisfaction index in software industry. International Journal of Productivity and Quality
Management, 19(1), 21-37.
users to understand some of their expectations. In order to perfect this technique, system analysts
must have a user centered approach (Jalil et al., 2018).
Prototyping
This is a fact finding technique which samples a sample working model. It is more like a
pre-design of an information system. This technique is developed in the initial stages of a system
development life cycle after the facts have been analyzed. It entails breaking down the system
facts with an aim of specifying user requirements.
References
Ali, K. (2017). A Study of Software Development Life Cycle Process Models. International
Journal of Advanced Research in Computer Science, 8(1).
Jalil, R., Khalid, J., Maryam, M., Khalid, M., Cheema, S. N., & Iqbal, I. (2018, October).
Requirement Elicitation for Bespoke Software Development: A Review Paper.
In International Conference on Intelligent Technologies and Applications (pp. 805-821).
Springer, Singapore.
Li, G., & Ma, M. (2011, October). A KRC encryption solution protecting IEEE 802.11 I 4-way
handshake from DoS attacks. In 2011 4th IEEE International Conference on Broadband
Network and Multimedia Technology (pp. 586-591). IEEE.
Madhuri, K. L., Rao, J. J., & Murthy, S. V. (2016). Scope creep: implications on customer
satisfaction index in software industry. International Journal of Productivity and Quality
Management, 19(1), 21-37.
Paraphrase This Document
Need a fresh take? Get an instant paraphrase of this document with our AI Paraphraser

FUNDAMENTALS OF INFORMATION TECHNOLOGY 8
Tomanek, M., & Klima, T. (2015). Penetration testing in agile software development
projects. arXiv preprint arXiv:1504.00942.
Tomanek, M., & Klima, T. (2015). Penetration testing in agile software development
projects. arXiv preprint arXiv:1504.00942.
1 out of 8
Related Documents

Your All-in-One AI-Powered Toolkit for Academic Success.
+13062052269
info@desklib.com
Available 24*7 on WhatsApp / Email
Unlock your academic potential
© 2024 | Zucol Services PVT LTD | All rights reserved.