Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 33 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
33
Dung lượng
1,95 MB
Nội dung
PROGRAM TITLE: BTEC in Computing (Software Engineering) UNIT TITLE: Software Development Life Cycles ASSIGNMENT NUMBER: ASSIGNMENT NAME: Software Development Life Cycles SUBMISSION DATE: 07/07/2022 DATE RECEIVED: 07/07/2022 TUTORIAL LECTURER: WORD COUNT: 4497 STUDENT NAME: STUDENT ID: MOBILE NUMBER: Summative Feedback: Internal verification: A Introduction B Content I Undertake a software investigation to meet a business need Questionnaire Technique The reason for using questionnaire technique Steps to approach data finding with questionnaire Interview question 5 Functional and non-functional requirements of the software 5.1 Define 5.2 Differences between functional and Non functional requirements 5.3 Functional and non-functional Requirements in project 5.3.1 Functional requirements 5.3.2 Non-functional requirements Hardware/server requirements 10 Project cost 10 II Use appropriate software analysis tools/techniques to carry out a software investigation and create supporting documentation 11 Stakeholder 11 1.1 Stakeholder #1: The client 11 1.2 Stakeholder #2: Employees 12 Input, Output, processes and the process descriptors 12 Data Flow Diagram 18 ERD 20 III Discuss using examples the suitability of software behavioral design techniques 21 What are user requirements? 21 Explanation of functions 21 2.1 Customer 21 2.2 Admin 25 Tool to create website 31 3.1 HTML 31 3.2 Css 31 3.3 PHP 31 3.4 Javascript 32 3.5 MySQL 32 3.6 Figma 32 References 32 A Introduction - There are many different lifecycle models available for the methodical development of computer projects and software in the modern era of software development Theoretical direction for software development is offered by SDLC models Software development life cycle (SDLC) models are crucial for methodically creating software that will be delivered on schedule and with the required level of quality These models are ideal for the circumstances of software development and particular types of software since they have unique qualities Depending on the development context, one software lifecycle model may prove more effective than the other The purpose of this research is to assess several software lifecycle models from this angle Project managers can modify the overall software development strategy by selecting the appropriate SDLC Each SDLC has benefits and drawbacks, and we must choose which model to use according on the situation We will offer a thorough analysis of numerous life cycle models in this paper, including waterfall, sequential, repeat, prototype, spiral, incremental, etc models B Content I Undertake a software investigation to meet a business need Questionnaire Technique - A questionnaire is a research technique consisting of a series of questions for the purpose of gathering information from respondents - Questionnaire can be thought of as a kind of written interview They can be carried out face to face, by telephone, computer or post The reason for using questionnaire technique: - The responses are gathered in a standardised way - Information can be collected in short period of time from a large number of people, often geographically dispersed - Inexpensive way to reach a large number of people - Standard questionnaire providers quantifiable answers to a research - Questionnaires allow respondents to take time to consider their responses carefully without interferences from others or interview Steps to approach data finding with questionnaire - Steps 1: Determine what information we would like to obtain - Steps 2: Decide what is the audience for your questionnaire - Steps 3: Decide on data collection method - Steps 4: Decide on types of question - Steps 5: Pilot the questionnaire on a sample of potential respondents and revise questions if necessary - Steps 6: Distribute the questionnaire - Steps 7: Chase non-responses - Steps 8: Analyse the responses - Steps 9: Present and use the findings Interview question Types of question Questions Closed-ended question Are Tune Source customers comfortable to use the new system ? Would you please answer some questions ? Does Tune Source have old customer data ? What additional information you want the new system to provide ? How many records are sold per day ? What you think about the current system ? How customers make an order ? Open-ended question What is the company’s desire for this new system ? What are the system requirements to attract potential customers ? What are the strengths and weaknesses of Tune Source ? What is the direction of Tune Source for the new system in the next years ? Who are the target customers of the system ? How you decide what types of marketing campaign to run ? What are some problems ? Probing questions Can you explain that in a bit more detail ? Why and can you give me some example ? Functional and non-functional requirements of the software 5.1 Define - Functional Requirements: These are the requirements that the end user specifically demands as basic facilities that the system should offer All these functionalities need to be necessarily incorporated into the system as a part of the contract These are represented or stated in the form of input to be given to the system, the operation performed and the output expected They are basically the requirements stated by the user which one can see directly in the final product, unlike the non-functional requirements - Non-functional requirements: These are basically the quality constraints that the system must satisfy according to the project contract The priority or extent to which these factors are implemented varies from one project to other They are also called nonbehavioral requirements 5.2 Differences between functional and Non functional requirements Functional Requirements Non-Functional Requirements A functional requirement defines a system or A non-functional requirement defines the its component quality attribute of a software system It specifies “What should the software system It places constraints on “How should the do?” software system fulfil the functional requirements?” Functional requirement is specified by User Non-functional requirement is specified by technical peoples e.g Architect, Technical leaders and software developers It is mandatory It is not mandatory It is captured in use case It is captured as a quality attribute Defined at a component level Applied to a system as a whole Helps you verify the functionality of the Helps you to verify the performance of the software software Functional Testing like System, Integration, Non-Functional Testing like Performance, End to End, API testing, etc are done Stress, Usability, Security testing, etc are done Usually easy to define Usually more difficult to define Examples The software automatically validates Users must change the initially assigned login customers against the ABC Contact password Management System successful login Moreover, the initial should immediately after the first never be reused The Sales system should allow users to record Employees never allowed to update their customers sales salary information Such attempt should be reported to the security administrator The background colour for all windows in the Every unsuccessful attempt by a user to application will be blue and have a access an item of data shall be recorded on an hexadecimal RGB colour value of 0x0000FF audit trail Only Managerial level employees have the A website should be capable enough to right to view revenue data handle 20 million users with affecting its performance The software system should be integrated Privacy of information, the export of with banking API restricted technologies, intellectual property rights, etc should be audited The software system should pass Section 508 The software should be portable So moving accessibility requirement from one OS to other OS does not create any problem 5.3 Functional and non-functional Requirements in project 5.3.1 Functional requirements - Client interface + Search product: the software filters and displays the products the consumers are seeking for once the buyers enter keywords + View Product: Show all items in each category Display categories in the menu using the category module + Comment: Customers who want to comment will so and the product section will be displayed + Cart: generate payment invoices - Admin interface + Login: successful system login when the entered username and password are accurate + Product management module: add, edit, delete products + Category management module: add, edit, delete categories + Comment management module: delete comments that violate banned keywords + Order management module: add, update, delete and confirm orders 5.3.2 Non-functional requirements - Performance: The system will respond swiftly to comments and queries, and it will so around-the-clock However, the higher the system's performance, the longer the user will have to wait for their request the request processed takes less time The system processes the order and sales transaction after the customer submits an order - Extensibility: The software's two interfaces will be able to all of its functions, including editing, removing, adding, and importing - Portability and compatibility: My program will undergo further transformations so that it can be used anytime, anyplace without the need to launch XAMPP or any other supplementary software Regardless, by securing a domain name Shops can still be accessed while walking about or drinking coffee by clicking the link, which will instantly open the store's interface in Google or Safari - Reliability: My website measures reliability, and the present chances of success are still good When you click on a link or remark, the desired product, category, or search results appear You can also submit an order and pay, and the payment will display the total amount and product details Every time a client page is added to, edited, or deleted; the item management interface is updated The website runs without any issues and with great smoothness - Accessibility: Accessibility is a prerequisite for existence People will stop visiting a website if it is challenging to use The website has an easy homepage for users to see and realize that my website is in the business of selling clothes to users, in my opinion, over and above the interfaces that I have made Customers may effortlessly perform tasks like login, post, view items, browse categories, search, or place orders When navigating to the homepage of the Admin area, it will be easy for the administrator to distinguish the things and each item will have a separate action section to make managing both websites' content simple admin and client interfaces are two Users' capacity to access information many times will be stored For instance, if a consumer submits an order in the morning but does not click "purchase" before leaving the website, the order would still remain available when the customer returns in the afternoon will show up so that customers may review and buy, preventing them from feeling lost while trying to find the things they previously ordered - Maintainability: It will need to be maintained once more after about months because it is very likely that a virus attack will be simple to lag and the software will be faulty, so there will need to be one repair in or check for defects after about months in order to promptly prevent or correct errors that have not been detected in earlier stages of a software's life cycle, improve the usability and operational safety of the software The work required to maintain software can range from 65 to 75 percent of the total effort required to develop a software Consequently, a software's maintenance is likewise of utmost importance - Security: is correlated with the system's overall data security level Businesses are very worried about security issues and preventing information loss Delegating user permissions and having access to the system are also factors in security I have solutions for system threats like spam, malware, a lack of security protocols, or hacker attacks to steal user information, such as updating website application software frequently, preventing sql injection, handling DDOS attacks, approving / validating server-side website security, using HTTPs, etc With the use of these security measures, it can be said that the website will be reliable and not leak customer or store information When working with customers, I will employ software that necessitates the usage of strong passwords, such as those with long characters, punctuation, etc When that happens, it will be challenging for outsiders to access the customer's account by themselves password Hardware/server requirements - Server configuration used to maintain the website: + CPU x E5-2600 V4 (E5-2680V4, E5-2683 V4, E5-2686 V4, E5-2690 V4) + Ram: 128GB DDR4 + Hardware: x 960GB and x 900GB SAS 12G 10k + Raid: H730 / H330 + Network speed: 200Mbps + Bandwidth: Unlimited + Ip route: 02 + Server Administration: Free + Configuring iDrac: Yes Project cost No Categories Cost Payment frequency Domain $18,19 month Hosting $107 year - Level (Admin) - Level (Customer) ERD ... many different lifecycle models available for the methodical development of computer projects and software in the modern era of software development Theoretical direction for software development. .. ideal for the circumstances of software development and particular types of software since they have unique qualities Depending on the development context, one software lifecycle model may prove more... direction for software development is offered by SDLC models Software development life cycle (SDLC) models are crucial for methodically creating software that will be delivered on schedule and with the