Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

Q1: Six steps are needed for software requirements development. Define each step

ID: 3802214 • Letter: Q

Question

Q1: Six steps are needed for software requirements development. Define each step with your own sentence.

Q2:

1) Explain the benefits of applying peer review at the various stages of software design/development life cycle.

2) Provide an example of peer review method related to AGILE software development technique.

Q3: Describe the role of team members involved in AGILE management model.

NOTE: PLEASE SOLVE ALL THE QUESTION AT ONE TIME BECAUSE I HAVE ONLY 20 QUESTION PER-MONTH and answer them by computer because it is hard to understand the hand writting

Explanation / Answer

Q1

six phases of software requirements development

a) First phase is “Requirement Gathering” à In this step Business requirements are gathered. Meetings with managers, stake holders and users are held in order to determine the requirements.

Requirement phase includes asking questions about the system below are such example

Who is going to use the system?

How will they use the system?

What sort of data should be input into the system?

What would be the output by the system?

When all the requirements are gathered Requirement Specification document is created which serves the purpose of guideline for the next phase of the model. The Quality experts will follow the Software Testing Life Cycle and starts the Test Planning phase after the requirements analysis is completed.

b) Next phase is “Design” à In this phase the system and software design is prepared from the requirement specifications which were gathered in the first phase. System Design will help in finding any hardware or software requirement of the system and also helps in defining overall system architecture. And then system design specification document is created..

c) next phase is “Implementation or Coding” à once the system design document is created then the work is divided in modules/units and actual coding is started. Since, in this phase the code is produced so it is the main focus for the developer. This is the longest phase of the software development life cycle.

d)   next phase is “Testing” à after the whole code is written then it is tested against the requirements to make sure that the product is actually solving the needs addressed and gathered during the requirements phase. During this phase all types of functional testing like unit testing, integration testing, system testing, acceptance testing are done as well as non-functional testing are also done.

e) next phase is “Deployment” à After the completion of testing the system is then deployed at the customer site for their use. When the system is delivered to the customer, they starts beta testing . If any changes are required or if any bugs are caught, then they will report it to the development team. Once those changes are made or the bugs are fixed then the final deployment will happen.

f) next phase is “Maintenance” à Once the customers starts using the developed and deployed system then the actual problems comes up and needs to be solved from time to time. This process is maintaining the system and provide any new functionality from time to time

Q2 (1) Benefits of peer review at different stages of the SDLC

a)Requirement Gathering: when the software requirement specification id created, by initiating the peer review the concerned person will analyze all the points mentioned in the document and will decide whether the requirement mentioned in the document is possible or not and will provide his/her feedback.

b) Design phase: in the design phase the peer review helps in the design of the software architecture and database design and provide his or points

c) Coding : review of the code by the subject matter experts helps in analyzing the regression due to the addition of the code

d) Testing: when a developer has developed a module then he can deliver that module to their testing experts so that the testing experts can test the module developer and update the test case and thus both the development and testing can go parallely.

Q2 (2) example of peer review method related to AGILE software development technique.

a) During the coding phase. Whenever new code is written or modified and going to be delivered to customer site a process called as “Code Review” is initiated.

in the code review process mostly the managers of the developer and subject matter experts (SME’s) are included which will review the code and analyze that there should not be any regression due to the modification or addition of new code

b) And during the testing phase. Whenever a new module is coded that module will be delivered to the testing exerts to test and check it is bug free and is as per the software requirement specification and also update the test cases they have tested so that the test cases can be reviewed and checked whether any flow has left untouched or more testing is required.

Q3

there are actually 3 members in agile mehtodology

1) Product owner is the person who shares the objective of the project to be developed to the scrum team. he/she prioritizes the functionalities to be included in the system and makes key decisions on behalf of the team or the project. While during project execution, product owner is the one who is responsible for maintaining the product backlog, bridging the gap between the developers and other stakeholders, managing the end-user expectations and managing the budget. He is also the one who takes a call on the quality of the product and if it requires any improvement.

2)Scrum master is someone who is responsible for solving any sort of problem that the team is facing while building the product. It is not necessary for him to completely understand the requirements; he must be capable enough to find solutions to situations. He has to create and maintain the best possible working condition for the team members so that they can meet the goals of each sprint effectively.

3)
A scrum team is cross-functional team that is responsible for developing the product. It is a small team consisting of developers, business analysts, testers, etc. The team works together and in tandem while building the application. The activities of each of the team members are aligned in a way such that the targets associated with a specific sprint are achieved. Team members are also responsible for identifying the complexity of the tasks (assigned to them) and allocating efforts to those. They are responsible for communicating the status of project daily to scrum masters, issues that they are facing to again the scrum masters and giving a demo of tasks completed by them to product owners during sprint reviews. Basically they are the ones around which tasks associated with Product Owners and Scrum Masters are assigned.