Assignment 1 1631(SDLC) Greenwich of University

19 250 2
Assignment 1 1631(SDLC) Greenwich of University

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Assignment 1 môn 1631 (SDLC) đại học GW năm 2022, đạt các tiêu chuẩn Pass, có trích dẫn Harvard. Liên hệ zalo 0962986805 nếu muốn support giá sv. II. Software development life cycle (SDLC) model Some popular SDLC models .Waterfall model . Agile model. Vmodel. Prototyping model. Spiral model . SDLC model suitable for Tune Source. III. Identify some risks and discuss an approach to manage them. IV – Feasibility study . Discuss the purpose of conducting a feasibility study for the project. Discuss how the three feasibility criteria (technical, economic, organizational) are applied to the project. Discuss whether the project is feasible. a) Technical feasibility b) Economic Feasibility c) Organizational feasibility Discuss alternative technical solutions using the alternative matrix

ASSIGNMENT 01 FRONT SHEET Qualification BTEC Level HND Diploma in Computing Unit number and title Unit 09: Software Development Life Cycle Submission date Date Received 1st submission Re-submission 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 D2 ❒ Summative Feedback: Grade: Internal Verifier’s Comments: Signature & Date: ❒ Resubmission Feedback: Assessor Signature: Date: Contents I Introduction II Software development life cycle (SDLC) model 1 Some popular SDLC models 1.1 Waterfall model 1.2 Agile model 1.3 V-model 1.4 Prototyping model 1.5 Spiral model SDLC model suitable for Tune Source III Identify some risks and discuss an approach to manage them IV – Feasibility study 10 Discuss the purpose of conducting a feasibility study for the project 10 Discuss how the three feasibility criteria (technical, economic, organizational) are applied to the project Discuss whether the project is feasible 11 a) Technical feasibility 11 b) Economic Feasibility 12 c) Organizational feasibility 13 Discuss alternative technical solutions using the alternative matrix 14 V Conclusion 15 Reference 15 Table of figures Figure 1: Waterfall model Figure 2: Agile model Figure 3: V-model Figure 4: Spiral model Table of tables Table 1: Risk management Table 2: Technical feasibility 11 Table 3: Investment cost 12 Table 4: Benefit cost 13 Table 5: Alternative matrix 14 I Introduction For firms and businesses, product quality and customer happiness with the system are always top priorities To be able to create a system that fits all of the criteria for entering the market, it must go through a series of specified and rigorous stages The software development life cycle is a notion that encompasses all of these stages Models reflecting stages in the software development life cycle will be explored in this paper, and the one that best suits the Tune Source company's perspective will be chosen Furthermore, the paper will examine hazards and how to approach and manage them The relevance of a feasibility study in any system and its function in the Tune Source project will be discussed in the last section II Software development life cycle (SDLC) model The Software Development Life Cycle (SDLC) is a process that follows a software project, in a software organization It includes a blueprint that describes how to develop, maintain, change, or upgrade specific software (Balaji and Murugaiyan, 2012) The process is one of the most important factors that bring success to software manufacturers, it makes it possible for every project member from the old to the new, inside or outside the company to handle the work synchronously corresponding to their position through the general way of the company or at least at the project level Some popular SDLC models 1.1 Waterfall model The waterfall model was the first process model to be used, it as a linear sequential life cycle model It usually has phases namely requirements analysis, system design, implementation, testing (verification), and maintenance It's pretty simple, easy to understand The characteristic of the waterfall is that it must be completed before each stage, not to overlap or repeat the stages To put it simply, the software developer has to complete each stage one by one, it's like a package Figure 1: Waterfall model User requirements analysis phase is a market research phase in which user requirements will be recorded along with functional and non-functional The system design phase will be based on the requirements analyzed from phase to give a detailed plan of the structure for the system After that, the program will be programmed by programmers in the implementation phase according to the structure and function of the design In the testing phase, a process of finding and fixing errors will be performed to ensure the system is working properly After testing, deployment and maintenance are the final steps to concluding an SDLC Some of the advantages of the waterfall model are that a clear, detailed structure of the system will be built to ensure the system meets all user requirements Easy to manage by newbies because the plan is very clear, detailed, simple Helping developers set goals from the beginning, the system will be stable, product packaging in a certain time, certainty (Balaji and Murugaiyan, 2012) However, it has several drawbacks, such as the fact that problems with one phase are never entirely resolved within that phase, and that many problems with a specific phase surface after the phase is signed off, resulting in a poorly organized system If the customer requests a change to the requirement, it will not be implemented during the current development phase (Balaji and Murugaiyan, 2012) 1.2 Agile model Agile model is the synthesis of many loops, increasing the size of the system over time The purpose of Agile is to flexibly respond to customer requirements after each iteration Agile divides system building into smaller builds (Balaji and Murugaiyan, 2012) Each build usually lasts 2-4 weeks, in each of these iterations there will be enough phases that are planning, requirements analysis, design, implementation, testing Basically, they are not too different from the waterfall model, but after each iteration, they are tested by users and evaluated for changes, adding features at the next iteration to ensure requirements of the user After repeating about to times, the system will be perfected, the system will be suitable for users, with few errors Figure 2: Agile model Agile is a model that has many advantages such as a pragmatic approach to software development, it always meets all user requirements in the most perfect way because it can get their feedback Promoting teamwork and training many areas for a developer, the deadline is very short, so the work will be faster In addition, Agile can demonstrate the effectiveness of the software because it will quickly be used by users from the demo The resource is not so great because it develops in stages There is suitability for changing environments along with user customization requirements Agile is easy to manage and has developer flexibility However, it also has some disadvantages such as high pressure because the software and system will have to be quickly brought to market, must ensure the complete development of the planned components (Balaji and Murugaiyan, 2012) It is useless without user interaction, a system with too few users can cause the model to fail or go in the wrong direction 1.3 V-model A modified version of the Waterfall approach is the V-model (Validation & Verification model) Unlike the Waterfall approach, this one does not follow a linear axis; instead, when the coding phase is completed, the phases reverse direction This developmental process is well-balanced, relying on previous phases' verification before moving on Before moving further, each phase's product must be reviewed and authorized (Balaji and Murugaiyan, 2012) In the V-model, the developer and tester work in tandem System test cases are created based on the requirements, Integration Test cases are created based on the HLD (High level document), and Integration Test cases are created based on the LLD (Low-level document) The code is then completed After the code is finished, unit, integration, and system testing are performed in order The V-model establishes a link between each development step and the testing stage Figure 3: V-model In addition to the advantages of waterfall model, Tester in V-model will participate in the requirements phase itself and requirements can change in any phase, this is a big difference from Waterfall model The most significant drawback of the V-model is that it is extremely stiff and inflexible If there are any modifications in the middle of the project, not only the requirements but also the test documentation must be updated It is not recommended for short-term projects since it necessitates stage-by-stage evaluations (Balaji and Murugaiyan, 2012) If the customer needs to amend any need in our case study, it is possible to so, but documents created during the requirement phase, such as functional specifications, high level design, low level design, unit testing, system testing, and integration testing, must be changed The V-Model is commonly utilized in larger organizations since it necessitates a greater amount of resources 1.4 Prototyping model Prototyping is a working model with limited functionality The prototype may or may not contain the precise logic used in the final software program, and therefore is an additional work that should be factored into the effort calculation Users may review developer suggestions and try them out before they are implemented through prototyping It also aids in comprehending user-specific requirements that may not have been considered by the developer during product development Process of this model: • Identification of Basic Requirements This process entails comprehending the most fundamental product needs, particularly in terms of user interface At this point, the more technical features of the interior design, as well as exterior factors like as performance and security, can be overlooked • Developing the initial Prototype This is where the first Prototype is created, where the most basic needs are displayed and user interfaces are supplied Internally, these functionalities may not work in the same way as the actual software built Workarounds are utilized to provide the consumer the same appearance and feel as the prototype generated • Review of the Prototype The client and other project stakeholders are then shown the prototype that has been created The input is gathered in a systematic manner and utilized to improve the product currently in development • Revise and Enhance the Prototype During this stage, the client's feedback and review comments are considered, and some discussions take place with the customer depending on criteria such as time and financial limits, as well as the technical feasibility of the actual implementation The agreed improvements are then included into the newly created Prototype, and the cycle continues until the customer's expectations are realized The following are some of the advantages of the prototyping model: • • • • • • Even before the product was implemented, there was a higher level of user interaction Users have a better grasp of the system being created since a functioning model of the system is shown Defects may be spotted considerably sooner, which saves time and money User feedback is provided more quickly, resulting in better solutions It's simple to see missing functionality Functions that are perplexing or difficult to understand can be identified The following are the disadvantages of the prototyping model: • • Due to too much reliance on the prototype, there is a risk of insufficient requirement analysis Users may be perplexed by prototypes and real-world systems • In practice, because the scope of the system may go beyond the original intentions, this process may enhance the system's complexity Even if it is not technically viable, developers may attempt to design the actual system using existing prototypes If prototype development is not carefully managed, the effort used may be excessive • • 1.5 Spiral model The spiral model is a risk management strategy that combines incremental modeling with waterfall design models in the system development life cycle (SDLC) Spiral models are only used by software developers and are favored for large, expensive, and sophisticated projects When shown as a chart, the spiral model seems to be a cylinder with cycles within It's a risk-driven paradigm, which means that the final performance of a project is highly dependent on the risk assessment process Each cycle of risk analysis necessitates in-depth knowledge As a result, specialist skills are necessary to review and appraise the project on a regular basis At first glance, a model appears to be tough and cumbersome, and there's no time to defend this solution as one of your options This SDLC design, like every other SDLC pattern, has both positive and negative aspects Figure 4: Spiral model Spiral model has four phases which are below Planning Stage: Requirements are created during the planning stage The baseline spiral is used to collect attribute requirements in this phase During this phase in the continuous spirals as the item grows, system requirements, element details, and unit-level inputs are created This phase also includes attempting to learn the project's components through ongoing client and consultant communication The code is then deployed in the unique market at the end of the process Risk Analysis: During the risk identification process, a procedure is carried out to analyze hazards and various causes A prototype is created at the end of the risk analysis step Engineering Phase: After the risk analysis, the real software development occurs, which is always characterized by the relative residual risks Before moving on to the following spiral, the system has to evaluate the project output signal in relation to the deadline The customer reviews the output and provides feedback to the team at the end of each step Advantages: Spiral Model SDLC is a good choice for extended projects where all potential risks must be considered, and when there is early awareness between the team and the client that not every step must be finished by a certain date Corporate governance is also aided by the iterative design process Apart from thoroughly controlling risk, Spiral also helps to tackle another key issue for big, controlled atmosphere initiatives: it promotes modest characteristics to be incorporated early in the process Disadvantages: Because the spiral model is expensive, it is not appropriate for large organizations Dependence on risk analysis-Because the project's success is contingent on good risk management, employees with risk management skills are required The project's phase is frequently unpredictable, making time management nearly difficult As a result, there will always be a risk of loss due to schedule or expense overruns SDLC model suitable for Tune Source Tune Source is a California-based music company founded by John Margolis, Megan Taylor, and Phil Cooper They wanted to build a website for customers to search, listen to samples, register and buy CDs for a certain price To complete this website, Tune Source's development team needs to build SDLC models: Waterfall, Agile, V-model, In SDLC models, Agile model is preferred for the following reasons Their need is to build functions such as listening, storing, registering an account, searching for music A major limitation is the supply of rare, hard-to-find music The recommended model for this company is Agile because this music site is unique The system needs to develop quickly and reach the market because it has to compete with other companies, the Agile model can bring the product to market after about month is the right time Unlike Agile, to months for a Waterfall system is a long time for the company, it makes it impossible for the company to compete with the current company; With Waterfall about a website project with many user requests like Tune Source, completing user requests within to months is not possible because the number of Tune Source users is very large and not fixed In addition, if after to months the new website is published, maybe another music site has appeared and occupies an important position in the market, so to weeks is necessary With growth of 3-5% a year, the website must be put into use as quickly as possible to demonstrate the effectiveness of the project With the experience of ISP and IT department, Agile is not a difficult model to implement Investors like Carly Edwards, Assistant Vice President want to quickly see the effect of the model to continue investing, Agile will help that quickly Agile takes user feedback to improve system functionality, this is necessary because Tune Source has a large customer base with many different requirements, the company needs to meet those requirements to attract customers If the number of elderly people accessing the website is high and the website is suitable for young people, feedback is necessary for the company to understand and change the interface and interaction with users For users who regularly visit the site, they will have detailed feedback, yes, so the company needs to rely on their feedback to develop the website as well as the product, only Agile can this With revenue from sources like downloads, buying CDs, subscribers don't need to use a risk management model like the Spiral model because it's expensive, complicated, and doesn't bring much benefit to the project low-risk projects like Tune Source Rare, hard-to-find music archives also need to be developed according to customer requirements and are subject to change Up to $950k in revenue came from customer signups, so the product had to launch quickly, responding to new member requests to attract users as quickly as possible In addition, it also needs to increase the user experience to attract new customers and sell more products, so the website must be improved more and more to match the user's requirements, easy to use It will need a lot of testing and user reviews as the music website is unique and must rely on users to grow Waterfall not doing that will cause the website to fail, so the Agile model is necessary to develop the system for the company Tune Source III Identify some risks and discuss an approach to manage them Risk management is identifying, assessing, and prioritizing risks (defined as the impact of uncertainty on objectives) before deploying resources in a coordinated and cost-effective manner to mitigate risk to reduce the likelihood or effect of unfavorable occurrences, or to optimize the realization of possibilities by minimizing, monitoring, and controlling their occurrence Risks can emerge from a variety of places, including worldwide market instability and the danger of project failure (at any stage in design, development, production or maintenance) liabilities, credit risk, accidents, natural causes and disasters, planned enemy assault, or occurrences having an unclear or implausible underlying cause predictability Risk management structures are intended to more than merely detect present issues In addition to calculating and estimating the impact of uncertainty on the company, a sound risk management framework must also compute and estimate the impact of uncertainty on the business As a result, you must decide whether to take chances or not Risk acceptance or rejection is decided by the company's own set of acceptance levels If additional risk reduction methods are built as a disciplined and continuing process for recognizing and addressing problems, the risk management framework can be utilized to assist them Among them include planning, organization, cost control, and budgeting The corporation is unlikely to encounter many shocks in this environment due to its focus on proactive risk management Risk management process: Step 1: Identify the Risk Identifying the hazards that the business is exposed to in its operational environment is the first stage in the risk management process There are several sorts of risk: Legal dangers, hazards to the environment, market dangers, regulatory hazards It's critical to recognize as many of these risk factors as possible These hazards are manually recorded in a manual environment If the company uses a risk management solution, all of this data is entered immediately into the system Step 2: Analyze the risk It is necessary to examine a risk after it has been recognized The risk's scope must be identified It's also crucial to comprehend the relationship between risk and other internal components It is crucial to establish the degree and importance of the risk by looking at how many business operations it affects There are dangers that, if realized, might bring the entire firm to a halt, while others will merely cause small hassles in the analysis Step 3: Assess the Risk or Evaluate the Risk Assessment Risks must be prioritized and rated Depending on the degree of the risk, most risk management solutions include several risk categories Risks that might result in catastrophic loss are ranked the highest, while risks that may cause minor annoyance are rated the lowest Ranking risks is significant because it helps the business to have a comprehensive perspective of the risk exposure across the board Step 4: Treat the Risk Every risk must be minimized or eliminated to the greatest extent practicable This is accomplished by contacting specialists in the subject to which the risk pertains In a manual situation, this means calling each and every stakeholder and then scheduling up meetings for everyone to talk about and debate the concerns Within the system, there might be a conversation about the danger and potential solutions Step 5: Monitor and Review the Risk Not all dangers can be completely removed; certain risks will always exist Market and environmental hazards are two examples of risks that must be constantly managed Manual systems rely on dedicated personnel to keep track of things These specialists must ensure that all risk variables are closely monitored The risk management system in a digital environment monitors the organization's whole risk framework Any change in a factor or risk is immediately obvious to everyone Computers are also far superior than humans at continually monitoring dangers Your company's continuation can also be ensured by monitoring hazards Table 1: Risk management Number Rick Description Type Probability Impact Risk mitigation Fire, storm (California) Environment Medium damage to facilities such as servers Very high Build a safe area (underground, fireproof) and place servers and important documents there Website publishes slowly, Time a similar site has been published before, Tune Source can't compete Low High Make a clear plan and follow it on time More than person from Resource development team resigned for any reason Medium Medium Build a reserve to recruit members During the construction of Technology the website, a vulnerability related to the request of the download function appeared, causing Tune Source to be attacked by DDOS, the server was down, and all data related to the music was lost Medium High Create and backup files safe location store in a Tune Source's server was Budget built larger than expected due to the large amount of data, the cost increased by $50,000 High Low Build a reserve of about $100,000 Tune Source website is Quality difficult to use for customers (buttons, interface system), not suitable for customer age > 40 years old Low Medium Regularly check web development progress, get reviews from customers IV – Feasibility study Discuss the purpose of conducting a feasibility study for the project A feasibility study examines all of a project's major features, including economic, technical, legal, and scheduling difficulties, to estimate the project's prospects of success Feasibility studies have the following objectives: To be well-versed in all facets of a project, concept, or strategy To be aware of any potential issues that may develop throughout the project's implementation To decide if the idea is viable—that is, worth pursuing—after considering all relevant aspects Before investing a lot of time and money into a project, project managers conduct feasibility studies to determine the benefits and drawbacks of doing so During feasibility studies, the following factors are taken into account: 10 Technical feasibility: This analyzes if the company has the technical expertise and resources to complete the project It also comprises an evaluation of the project's hardware, software, and other technological requirements Economic feasibility: This examines the project's viability, cost, and benefits before financial resources are committed It helps the business owner determine the project's return on investment Organizational feasibility: The investor, the stakeholders, and the user, whether or not they are interested in the system The feasibility report's goal is to describe the project's specifications and propose viable solutions to the problem, need, or opportunity The project team builds on each of these prospective solutions, giving enough detail, including extremely high-level costing information, to allow the project leader to suggest to the authorizing authority all of the plausible potential solutions that should be further studied in the following phase (Business Case) The feasibility of a project will be determined by a variety of criteria, including project restrictions and budget limits Discuss how the three feasibility criteria (technical, economic, organizational) are applied to the project Discuss whether the project is feasible a) Technical feasibility The technical feasibility of the project is considered in the technical feasibility It is often related to the technical fit of the project with other technologies, the size of the project, etc Table 2: Technical feasibility Benefits Familiarity with application Risk Low (Tune Source The company Tune Source has a website where users a website that can search, listen to samples and buy CDs containing rare has has been working and hard-to-find music before) Familiarity with technology The IT department of Tune Source has experienced Low (They have a working with new and modern technologies in the process lot of experience) of managing websites when a period of time is working with the Internet consulting firm (ISP) The project size The plan is to upgrade and expand their website with a series of new technologies and techniques such as providing online music, membership registration and soft downloads The main goal is to expand the influence of the website to users, not just buying CDs It lasted around three months It necessitates the use of some committed human resources: Tune Source has an 11 Medium IT department, as well as a marketing and sales department Compatibility with other system Low (They have a Website developers and ISP consulting firms have extensive experience with different projects and systems lot of experience) The ability to link and integrate with other systems is quite easy b) Economic Feasibility Economic feasibility is necessary to clearly plan the benefits, investments over several years time to clearly identify the benefits when investing in the Tune Source project, mainly for the company and investors Table 3: Investment cost Detail Invest - Website programming 2022 1-6/2023 6-12/2023 1-6/2024 6-12/2024 $1,029,040 $0 $0 $0 $0 $50,000 $100,000 $50,000 $50,000 $50,000 $1,079,040 $100,000 $50,000 $50,000 $50,000 - Rent domain name - Build Server Maintain - Rent domain name - Maintain function, server Total $1,329,000 12 Table 4: Benefit cost Benefit Sales 2022 from individual music $757,500 1-6/2023 6-12/2023 $1,357,000 $925,000 1-6/2024 6-12/2024 $950,000 $1,450,000 downloads Sales from customer $950,000 $2,000,000 $1,780,000 $1,880,000 $1,400,000 subscriptions CD sales $205,000 $250,000 $230,000 $231,000 $233,000 Sales from music download gift $153,000 $250,000 $200,000 $205,000 $201,000 cards Total $2,065,500 $3,857,000 $3,135,000 $3,266,000 $3,284,000 $15,607,500 This is a super profitable project for years with a total investment of more than million dollars but earning 15 million dollars from sources such as music downloads, subscriptions, etc Tune Source investors and CEO need to invest quickly to grab the opportunity to become a million dollar company c) Organizational feasibility In order to bring a product or concept to market, organizational feasibility examines management skills and resource availability The company should assess its management team's competency in areas of interest and implementation Common managerial prowess criteria include the founders' passion for the business concept, as well as their industry expertise, educational background, and professional experience Founders should be open and honest about their views on these issues Based on last year's revenue of $40 million and a growth rate of 3% to 5%, it will be a good premise to say about Tune Source's organizational ability, not only factors such as employees having experience and the company working with a reputable organization ISP will be a springboard for Tune Source to grow stronger The company's managerial capacity and acceptable level of resources, ready to bring items to market, have been demonstrated by the aforementioned elements As a result, the completed project exceeded Tune Source's expectations, and investors and participants are pleased with the company's new online system 13 Discuss alternative technical solutions using the alternative matrix Table 5: Alternative matrix Alternative 1: Alternative 2: Alternative 3: Customer Customer Customer application using Java application using application using Ruby PHP Evaluation Criteria Importance Score Weighted Score Weighted Score Weighted score (1-5) score (1-5) score (1-5) Technical Issue Supported to 10 50 30 70 multiple platforms Security 10 50 50 60 Clear and friendly 10 50 70 60 interface Integrated with 20 60 160 140 other system Economic Issue Cost for 10 60 30 40 development Profit gained 10 40 50 60 Organizational issue User satisfaction 20 100 160 140 Interface 10 80 90 80 customization Total 100 490 640 650 The three programming languages Ruby, PHP, Java have different strengths and weaknesses PHP and Java have very good adaptability to the operating system, and the processing speed is not too slow PHP is an old language used mainly for web programming, so its compatibility with website functions as well as performance is very good Java cannot run and adapt to many systems Regarding security, each system will have its own way to protect the system, usually each company will have some other application or technology to protect their system, so the score of the evaluation criteria security is the same but I still appreciate the security capabilities of PHP and Java The interface is not too dependent on back-end programming languages because there are already supporting font-end frameworks All these programming languages have the ability to reuse (functional) code In 14 terms of development costs and profits, PHP is a low-cost language, Ruby is a good language but quite expensive because it is not really popular, Java does not cost too much In terms of user satisfaction and interface customization, all languages can this well V Conclusion The assignment included the concept of the system development life cycle, as well as several popular models that are frequently used in projects and which model is ideal for Tune Source Company Furthermore, the notion of risk management has been highlighted, as well as the risks that have been identified and how to limit harm to Tune Source's operational model The feasibility study section of the report explained the underlying philosophy and aim of the feasibility research, as well as the engineering, economics, and organizational feasibility Finally, the Alternative Matrix gives the parameters for evaluating the possible alternatives and determining which one is the best through comparison and explanation Reference Balaji, S and Murugaiyean M.S., 2012 Waterfall vs V-model vs Agile: A comparative study on SDLC International Journal of Information Technology and Business Management, 2(1), pp.2630 15 ... Detail Invest - Website programming 2022 1- 6/2023 6 -12 /2023 1- 6/2024 6 -12 /2024 $1, 029,040 $0 $0 $0 $0 $50,000 $10 0,000 $50,000 $50,000 $50,000 $1, 079,040 $10 0,000 $50,000 $50,000 $50,000 - Rent... function, server Total $1, 329,000 12 Table 4: Benefit cost Benefit Sales 2022 from individual music $757,500 1- 6/2023 6 -12 /2023 $1, 357,000 $925,000 1- 6/2024 6 -12 /2024 $950,000 $1, 450,000 downloads... score (1- 5) score (1- 5) score (1- 5) Technical Issue Supported to 10 50 30 70 multiple platforms Security 10 50 50 60 Clear and friendly 10 50 70 60 interface Integrated with 20 60 16 0 14 0 other

Ngày đăng: 02/06/2022, 11:18

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan