
















Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Assignment 1 Software Development Life Cycle
Typology: Papers
Uploaded on 04/21/2023
1 document
1 / 24
This page cannot be seen from the preview
Don't miss anything!

















Qualification BTEC Level 5 HND Diploma in Computing Unit number and title Unit 0 9: Software Development Life Cycle Submission date 15/02/2023 Date Received 1st submission 15/02/ Re-submission Date Date Received 2nd submission Student Name Ngo Thanh Tung Student ID GCH Class GCH1103 Assessor name Do Quoc Binh 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 Tung Grading grid P1 P2 P3 P4 M1 M2 D1 D
Grade: Assessor Signature: Date: Internal Verifier’s Comments: Signature & Date:
Introduction Tune Source is a business based in the southern part of California that was created by three entrepreneurs who have a background in the music industry. The company has open a number of brick-and-mortar stores in southern California specializing in hard-to-find and classic jazz, rock, country, and folk recordings. In order to increase sales, they wanted to initiate a project that can enable them to selling digital music products to customers through in-store kiosks and on their website on the internet. Therefore, they have contacted to ABC company to help out the develop of a software for the specified requirements in the system request. Task 1 – SDLC model
1.1 Describe each of the SDLC models A software development life cycle model is a conceptual framework describing all of the tasks and activities involved in a software development project from planning to maintenance. There are many models, each with its own variety of tasks and activities. Software development requires proper identification of requirements, their implementation, and software deployment. However, the activities do not end there. After the distribution of the software, proper maintenance has to be provided in a timely manner. Some of well-known software development models are: waterfall, v-model, prototyping and Extreme programming 1.1. 1 Waterfall Models What is Waterfall model? Waterfall model is a sequential, linear approach to software development. It is commonly used in software engineering and product development. The waterfall model, like a waterfall, follows a logical sequence of SDLC steps, similar to the direction water flows over the edge of a cliff. It sets distinct endpoints or goals and aiming to reach goals at each phase of development. The phases of development cannot be revisited after their completion. It is frequently used to define the first software development method. The model is also utilized more broadly as a high-level project management technique for complicated, multifaceted projects.
Figure 1: Waterfall Development (p. 51 ) When to use the Waterfall Methodology
item can be developed. When all of the project requirements detail is not known in advance, this process is most effective. In order to develop a simplified version of the system propose, it perform the analysis, design and implementation phases concurrently provide minimal features. Then, based on the reaction and feedbacks from the users, the developers reanalyze and redesign, and reimplement a next more improve prototype until the analysts, users and sponsor all agree on. Figure 3: System Prototyping (p.55) When to use Prototype model?
Figure 4: Extreme Programming (p.57) When to use Extreme programming?
In this assignment scenario, whether the project model is suitable or not depend on the project scenario, which is present by the table below:
The system need to be error free and able to access most of the time. Any bug should be predictable beforehand and come up with countermeasure. As for a music application like Tune Source System, managing a website and an application is fairly simple and any major bug and error can be easily notice and report by the user. However, the system must be active most of the time to encourage users to utilize it whenever needed which require the app have to reliable most of the time. Criterion 5 : With short time schedule The customer requires the system to be developed in a short amount of time. For Tune Source scenario, the company request that the system need to be brought to the market as soon as possible since there are numerous of competitors. In order to remain competitive in the market niche of rare music, the system must be release as customer requested with main features. Criterion 6 : With schedule visibility The system with schedule visibility means the system is open to receive input from customer to tailor the project to matching the requirement of the customer. Since Tune Source company have not working with ABC company in the past, therefore, communication between both side is essential to ensure the productivity of the project. It is preferred to have a model with high schedule visibility which allow developers to receive feedback from the customer and make changes accordingly.
First of all, the company Tune Source want to release the project as soon as possible in order to remain competitive in the market makes model such as Waterfall and V-model is out of the option. Since these type model need to fully develop all functions and document the system which make the project take longer time to be released. On the other hand, Prototype and Extreme Program model is flexible and able to work with short time schedule. However, Prototype model is not very reliable when it comes to maintain a consistent system. Bug/Error can occur without an effective way to deal with them. Tune Source is not an extremely complicated project and does not require the use of new or unfamiliar technology in which XP model preforming poorly at. What XP method excel at is being a reliable model, have no problem when dealing with bug/error, able to solve every requirement of the customer effectively and can deliver a functional system to the market in a short amount of time. In addition, it also has schedule visibility which allow to receive input from the customer and make changes accordingly. These benefits are what make XP model is the most suited method for Tune Source because this project require for a sustainability system that with fully functional main features and can be delivered as soon as possible.
1. 3 Discuss the merits of applying the waterfall model to a large software development project. The waterfall methodology is a design process built in a sequential order. It has also been referred to as the “linear-sequential life cycle model” for the way in which it is formatted. Much like the way a waterfall trickles and flows down, this type of project management involves a set of steps that feed into each other. Much like an actual waterfall, there’s no turning back once one phase of development is completed– the project immediately moves on to the next phase.
When it comes to extensive software development project, Waterfall model produces much more comprehensive documentation, higher quality coding and thorough examination of outliers before the product is released to production. It puts the burden of creating supportable code on the analyst, designer, coder and tester before it gets rolled into production. The support staff then have a well- established code base to maintain with interventions as the exception rather than the rule. This code will be far easier to tune in later point releases and more scalable because the code base is inherently stable. Agile software lifecycle models are only an advantage if you have continuous feedback from the customer. Ben Aston from The Digital Project Manager explains, “Waterfall is generally regarded with some disdain as an inefficient and passé traditional project management approach. But Waterfall can be a useful and predictable approach if requirements are fixed, well documented, and clear, if the technology is understood and mature, if the project is short, and if there’s no additional value gained from ‘going agile’. A Waterfall approach can actually provide more predictable end result for budget, timeline, and scope.” The advantages can be mentioned of Waterfall model such as: 1.3. 1 Uses clear structure The Waterfall methodology, in comparison with other methodology, focuses on a clear, well- defined set of steps. When there are roadblocks to completing a step in a project, teams are notified immediately. Because half-finished projects are less likely to be pushed aside, resulting in teams produce a more complete, finished project in the end. In addition to being clear, the progression of Waterfall is intuitive. Unlike Six Sigma or Scrum, Waterfall does not require certifications or specific training for project managers or employees. If you visually outline the process at the beginning and explain the methodology, team members will be able to jump into the Waterfall system without a steep learning curve slowing their progress. 1.3.2 Determines the end goal early A major element of Waterfall methodology that is committing to a final product, objective, or outcome right away at the beginning, and teams should not drift away from that commitment. For small projects that the objectives are well-defined, this step makes everyone aware of the overall goal from the beginning, thereby reducing the potential for sidetracking as the project progresses. As opposed to Scrum which organizes projects into multiple sprints, Waterfall keeps the focus on the end goal at all times. If your group has a concrete aim with a definitive end date, Waterfall model will reduce the danger of getting overwhelmed as you strive to accomplish that objective. 1.3.3 Transfers information well The Waterfall method is highly organized and structured, so it's not surprising that it focuses on ensuring that information is transferred accurately at every stage. When it's used in software development, every new step usually involves a new set of people. Even if this is not applicable to your company, you should still document information throughout the project's lifespan. If you're passing jobs between employees or if there are unexpected changes in personnel, Waterfall puts a priority on making sure information is easy to access so that new team members can quickly get up to speed if needed. 1.3.4 Allow early design change It is commonly understood that making changes to a design becomes increasingly difficult over time. However, with Waterfall methodology, it is possible to make alterations to the application in
Task 2 – Feasibility study
1.1 What is a Feasibility Study A feasibility study evaluates the potential profitability of a project or system. As part of a feasibility study, the objective and rational analysis of a potential business or venture is conducted to determine its strengths and weaknesses, potential opportunities and threats, resources required to carry out, and ultimate success prospects. The two critical aspects to consider when examining feasibility are the required cost and the expected value. A feasibility study is a comprehensive evaluation of a proposed project that all factors critical to a project's success in order to determine whether or how successful it will be. Success in business may be defined primarily by return on investment, meaning that the project will generate enough profit to justify the investment. However, many other important factors may be identified on the plus or minus side, such as community reaction and environmental impact. (2023. Simplilearn)
1. 2 Types of Feasibility Study Operational Feasibility This assessment involves undertaking a study to analyze and determine whether and how well the organization’s needs can be met by completing the project. Operational feasibility studies also examine how a project plan satisfies the requirements identified in the requirements analysis phase of system development. Technical Feasibility The assessment focuses on the organization's technical resources. Using it, organizations can determine whether the technical resources meet capacity and the technical team is capable of converting the ideas into working systems. Technical feasibility also involves the evaluation of the hardware, software, and other technical requirements of the proposed system. Economic Feasibility This assessment typically involves a cost – benefits analysis of the project, helping organizations determine the viability, cost, and benefits associated with a project before financial resources are allocated. Additionally, it serves as an independent project assessment and enhances project credibility, providing decision makers with information to determine the positive economic benefits to the organization that the proposed project will provide. Scheduling Feasibility This assessment is the most important for project success; after all, a project will fail if not completed on time. In scheduling feasibility, an organization estimates how much time the project will take to complete. 1.3 Purpose of conducting a feasibility study for the project
reduce development cost and only priority to meet the specified requirement. This is a much safer way since having a small and simple system is much easier to develop and manage. However, this will put the company in a competitive position in the market since many other companies can also offer similar product. On the other hand, by creating a product with more feature that greatly benefit user can be much more expensive and difficult to manage. But it will also have more potential to attract customers thus generate more revenue to compensate the risk. 2.2.3 Organizational Feasibility Organizational Feasibility is analyzing the level of acceptance the system will receive from its users and how it will be incorporated into the regular functioning of the organization. The main objective of the project is to increase profit of by expand the company business and selling digital music downloads using the company website or in-store kiosks. Therefore, create a system that promote customer experience is highly recommend. There are two candidates represent the feasibility that can apply to the project: a. Candidate 1 This Candidate will focus on develop a software that able to meet the requirements specified in the system request and eliminate any extra procedure and reduce cost. First of all, this candidate will focus developing a system that have function which was specified in the Business Requirements:
GUI Designer (570 hours/ea $35.00/hr) 16 $ 319, Telecommunications Specialist ( hours/ea $45.00/hr)
System Architect (320 hours/ea $45.00/h) 24 $ 345, Database Specialist (580 hours/ea $42/hr) 18 $ 438, System Librarian (500 hours/ea $24.00/hr) 21 $ 252, Expenses
Smalltalk training registration ($3 5 00.00/student) 30 $ 105, New Hardware & Software Server for development ($1 50 ,000/Classic) 16 $ 2,400, Server Software (operation system, misc.) 1 $ 42, Printer 30 $ 1 2 0, DBMS server software 1 $ 20, DBMS client software ($ 8 00 per client) 40 $ 32, Total Development Cost: $ 5,357, Project Annual Operation Costs Personnel Programmer/Analysts (350 hours/ea $31.00/hr)
System Librarian (300 hours/ea $24.00/hr) 10 $ 72, Expenses Maintenance Agreement for Classic Server
Maintenance Agreement for server DBMS software
Preprinted Form (15,000/year) $ 15, Maintenance Hardware $ 100, Total Project Annual Cost: $ 363, Labor costs are assumed to increase at a 4% rate each year. Therefore, there are changes in cost of Annual Operation. Year 1 Year 2 Year 3 Year 4 Year 5 Year 6 $363,700 $371,788 $380,200 $388,948 $398,045 $407, Year 1 = personnelCost + expensesCost Year 2 = personnelCost(1) * (100% + 4%) + expensesCost Year 3 = personnelCost(2) * (100% + 4%) + expensesCost (…) In the Assignment scenario, it was mentioned that the Tune Source company have the Annual Growth about 3% - 5% per year which allow us to calculate an estimate of new revenue stream each year. newRevenue = $757,500 + $950,000 + $205,000 + $153,000 = $2,065, Revenue(1) = $2,065, Revenue(2) = Revenue(1) * 103% = $2,127, Revenue(3) = Revenue(2) * 103% = $2,191, Calculate Present Value In the future, the value of money is less than the value of money today since you have the potential to invest it and receive more money along the line. Assuming the company could have invested the money at a 12% rate of return which also make the discount rate is 12%.
b. Candidate 2 This Candidate will focus on increase the user experience with the application with some cost for expending features of the app. Specifically, one of the recommendations features that most modern apps included nowadays such as: able to give feedback, rating and share comments. With these improvements, the app will undoubtably becomes more popular with the user. This candidate utilizes the best server to ensure the system always run smoothly without issue, strengthen the app reliability. In addition, employee also assigned for a training program to be able to work with Python, one of the most popular programing language for developing AI, in order to develop a recommendation system to become more appear to the users. However, these improvements also come with a hefty price along with higher labor cost to keep the system working and will take longer to develop. Development for Tune Source Project Cost Personnel System Analysts (6 8 0 hours/ea $40.00/hr) 18 $ 489, Programmer/Analysts ( 75 0 hours/ea $31.00/hr)
GUI Designer ( 720 hours/ea $35.00/hr) 20 $ 504, Telecommunications Specialist ( hours/ea $45.00/hr)
System Architect (320 hours/ea $45.00/h) 26 $ 374, Database Specialist ( 620 hours/ea $42/hr) 18 $ 468, System Librarian ( 600 hours/ea $24.00/hr) 22 $ 316, Expenses Python training program (2000.00/employee) 25 $ 50, Smalltalk training registration ($3500.00/student) 30 $ 105, New Hardware & Software Server for development ($180,000/Premium Pro) 16 $ 2,880, Server Software (operation system, misc.) 1 $ 42, Printer 30 $ 120, DBMS server software 1 $ 20, DBMS client software ($ 8 00 per client) 40 $ 32, Total Development Cost: $ 6,429, Project Annual Operation Costs Personnel Programmer/Analysts (350 hours/ea $31.00/hr)
System Librarian (300 hours/ea $24.00/hr) 12 $ 86, Expenses Maintenance Agreement for Premium Pro Server
Maintenance Agreement for server DBMS software
Preprinted Form (15,000/year) $ 15, Maintenance Hardware $ 100, Total Project Annual Cost: $ 384,
Labor costs are assumed to increase at a 4% rate each year. Therefore, there are changes in cost of Annual Operation. Year 1 Year 2 Year 3 Year 4 Year 5 Year 6 $384,100 $392,764 $401,775 $411,146 $420,891 $431, Year 1 = personnelCost + expensesCost Year 2 = personnelCost(1) * (100% + 4%) + expensesCost Year 3 = personnelCost(2) * (100% + 4%) + expensesCost (…) With the new AI technology, the project Tune Source will be able to become more appear to wider range of audience hence increase the revenue. The estimates of tangible value to the company include the following: