Software Development Assignment: Agile Process Model
Added on - 28 May 2020
Showing pages 1 to 4 of 13 pages
14-15 paperQuestion 1a.The best recommended process model to be used by the software development department isagile approach. Agile process model is an iterative model to software development and deliverywhere by the software is developed and delivered incrementally instead of delivering thesoftware all at once. Agile approach is designed to respond to customer needs and changingmarket while responding to the changes quickly. This is done by encouraging teamwork andaccountability among the development team members. The team members are tasked withdelivering the project in iterations. Each iteration is reviewed by the customer who gives hisreview to the development team. The team is then supposed to consider the feedback given bythe customer in the next iteration. Agile subscribes to the following set of roles;Project owner- This is a representative of the customer and clarifies all therequirements.Project manager- Supports the project teamProject team- This is group of members that executes the project.Stakeholders- Anyone with an interest in the project usually classified as either; internalexecutive stakeholders, external executive stakeholders, internal operation stakeholdersand external operation stakeholders.The following are the characteristics of agile approach;Scrum- Scrum is a simple and flexible way of introducing agility to the development ofthe project, Scrum emphasizes on feedback in an empirical manner, self-management ofthe project team and building of fully tested increments of the product within shortiterations.Quality- Testing is done throughout the lifecycle of the project thus the end product isassured of quality.Visibility- Agile approach encourages active involvement between the project team andclient throughout the development process. This involvement ensures the client is ableto assess the product and the progress thus in the end ensuring all the client’sexpectations are met.Early identification and resolution of issues- This is possible because the product isdelivered in iterations thus any issues are identified in the early stages of the projectand are acted on immediately. This makes agile approach easy to respond to anychanges in the requirements because of the clear visibility by the client.More productive project team- By use of scrum for developing the product, agileensures on maximum productivity and satisfaction of the project team by ensuring eachteam member plays a role in the development of the product. This leads to a happyproject team which is more productive.Predictable costs and schedule- Agile approach uses sprints where each sprint is a fixedduration of usually 1-4 weeks where new features are added to the product. This makesit easy to predict the cost and the schedule thus improving overall decision making inthe project.
Agile approach is breaks up the project into smaller chunks called sprints. A sprint is a periodthrough which specific work is supposed to be completed and reviewed. Each sprint is done infive phases;Project initiation- This phase involves defining the requirementsSprint planning- This phase involves planning on the sprint will be executedDaily Scrum- Stand up meetings done twice a day to review the work done on theprevious day and to introduce work to be done for the next 24 hours.Sprint retrospective- This phase involves holding a meeting at the end of each sprintwhere everybody reflects on the just completed sprint.Demo- This phase involves releasing a demo completed at the end of that sprint.b.The following are the reasons for selecting agile approach for the development of the project.Agile model improves on quality- The quality of the end product is achieved because theproject is broken down into smaller manageable units thus enabling the project team tofocus on developing high quality increments, testing and collaborate on every sprint.Each sprint gives the client an opportunity to review the product and this feedback isused in the next sprint thus at the end the product is of good quality. For the motor carmanufacturing company quality of the product has to be guaranteed so that thecompany can gain competitive advantages over other companies in the market.Agile model focuses on the end users- To define the features of the product agile relieson user stories with business focused acceptance criteria. This is done by focusing onthe needs of the real users to make sure each feature delivers value. Thus it is assumedduring the development process, the product will be released in increments where byreal users can review the product to make sure any changes are done before the endproduct is released.Early and predictable delivery- Agile model uses time-boxed, fixed schedule sprintswhere new features are delivered quickly frequently thus a beta version of the softwarecan be released even earlier than planned. This is important because the companyneeds to release the product fast in order to gain competitive advantage over othercompanies in the market.
c.A similar approach that could be used to develop the project is the spiral model approach. Thisapproach has four phases; planning, risk analysis, engineering and evaluation. To develop aproduct the project has to go through these phases iteratively in a sort of spiral where eachspiral has the four phases;Planning- This phase involves gathering of requirements to come up with therequirements document.Risk analysis- In this phase, all possible risks are identified and prototype is produced atthe end of this phase. Alternative solutions are proposed and implemented for all therisks identified at this phase.Engineering phase- This is where the development of the software takes place. Testing isdone at the end of this phase.Evaluation phase- In this phase, the client evaluates the product developed for thatspiral before the project team can proceed to the next spiral.The reasons spiral model cannot be used for the motor car company project are;The spiral model is very costly because of the intermediate phases. This in turn affectsthe initial budget predicted for the project as there is a high possibility of not meetingthe budget requirementsThe spiral model has a high risk of not meeting the schedule as projects usually take alot of time. This disqualifies this approach as the ideal approach to use because themotor car company needs the product to be developed fast so that they can gaincompetitive advantages over other companies in the market.It requires a lot of documentation in all the intermediate stages thus makes the projecta very complex project.The spiral model is a very complicated approach for projects with clear requirements.The motor company has clear requirements as another version has already been used inthe market thus the project team can get all the requirements by studying the existingproduct. Spiral model is mostly preferred for projects with very unclear requirementsthus it’s not ideal for this project.Question 2