Tải bản đầy đủ (.docx) (44 trang)

Assignment2 1631 full

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.35 MB, 44 trang )


Higher Nationals in Computing

Unit 9: Software Development Life Cycle
ASSIGNMENT 2

Assessor name: PHAN MINH TAM
Learner’s name: Nguyễn Đình Vũ
ID: Vundgcs190779
Class: GCS1004A
Subject code: 1631

Assignment due:

Assignment submitted:


ASSIGNMENT 2 FRONT SHEET
Qualification

BTEC Level 5 HND Diploma in Computing

Unit number and title

Unit 9: Software Development Life Cycle

Submission date

Date Received 1st submission

Re-submission Date



Date Received 2nd submission

Student Name

Nguyễn Đình Vũ

Student ID

Gcs190779

Class

GCS1004A

Assessor name

Phan Minh Tam

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
P5

P6

P7


M3

M4

M5

M6

D3

D4


❒ Summative Feedback:

Grade:

❒ Resubmission Feedback:

Assessor Signature:

Internal Verifier’s Comments:

Signature & Date:

Date:


Assignment Brief 02 (RQF)
Higher National Certificate/Diploma in Business

Student Name/ID
Number:
Unit Number and Title:

Unit 09: Software Development Life Cycle

Academic Year:

2021 – 2022

Unit Assessor:

TamPM

Assignment Title:

Undertake a software development life cycle

Issue Date:

10/Jan/2022

Submission Date:
Internal Verifier Name:
Date:

Submission Format:
Format:
● The submission is in the form of 1 document.
● You must use the Times font with 12pt size, turn on page numbering; set line spacing

to 1.3 and margins to be as follows: left = 1.25cm, right = 1cm, top = 1cm, bottom =
1cm. Citation and references must follow the Harvard referencing style.
Submission:
● Students are compulsory to submit the assignment in due date and in a way requested
by the Tutor.
● The form of submission will be a soft copy posted on />● Remember to convert the word file into PDF file before the submission on CMS.


Note:
● The individual Assignment must be your own work, and not copied by or from another
student.
● If you use ideas, quotes or data (such as diagrams) from books, journals or other
sources, you must reference your sources, using the Harvard style.
● Make sure that you understand and follow the guidelines to avoid plagiarism. Failure to
comply this requirement will result in a failed assignment.
Unit Learning Outcomes:
LO3 Undertake a software development lifecycle.
LO4 Discuss the suitability of software behavioural design techniques.
Assignment Brief and Guidance:
Tasks
At this stage, you have convinced Tune Source to select your project for development.
Complete the following tasks to analyse and design the software.
Task 1 – Analysis (1)
1. Identify the stakeholders, their roles and interests in the case study.
Review the requirement definition of the project. Clearly indicate which stakeholder(s)
provide what requirements.
Word limit: 150 – 200.
Identify FRs and NFRs of Tune Source Project.
Discuss the relationships between the FRs and NFRs.
Word limit: 300 – 400 words.

2. Discuss the technique(s) you would use to obtain the requirements.
If needed, you may state suitable additional assumptions about the project in order to
justify the technique(s) that you choose.
Techniques: JAD, Interview, Observation, etc.


Demonstrate how to collect requirements based on chosen technique.
Word limit: 700 – 1000.
3. Discuss how you would trace these requirements throughout the project by using
Requirement Traceability matrix. You will have to provide real usage of it.
Word limit: 400 – 500 words.
Task 2 – Analysis (2)
Analyze the requirements that you identified in Task 1 using a combination of structural and
behavioral modelling techniques that you have learnt.
Scope: You only need to construct following items for the system. You will have to include:






Use Case Diagram for the whole system.
Use Case specification for 2 Use cases.
Context Diagram for the whole system.
Data Flow Diagram – Level 0 for the whole system.
ERD for the whole system.

For each diagram, you will have to explain properly.
Word limit: 1000 – 1200 words.
Task 3 – Design

Based on the analysis result, discuss how you would conduct the design phase:
1. Discuss how the user and software requirements are addressed in the design phase.





You will explain how Mock-up, and Wireframe are used in the project. You should
include some of the mockup or wireframe (at least 5) design of the Tune Source project
to justify that it matches users’ requirements.
You will explain which architecture (client – server, n-tier, microservices, etc.) is
suitable for the project with clear illustrations and why.
Then you will address which technical solution stack could be suitable to implement
the project with clear explanations.

2. Discuss how activity diagram and pseudocode are used to specify the software behaviour.
3. Discuss how UML state machine can be used to specify the software behaviour.
Differentiate between FSM and extended FSM using the case study.
4. Discuss how the data-driven approach improves the reliability and effectiveness of


software.
Word limit: 800 – 1500.
Task 4 – Software quality management
1. Discuss two software quality attributes that are applicable to the project.
2. Discuss two quality assurance techniques that can help improve the software quality in the
project.
3. Discuss how the design techniques and approaches that you have used can help improve
the software quality.
Word limit: 400 – 1500.



Learning Outcomes and Assessment Criteria (Assignment 02):
Learning
Outcome

Pass

LO3 Undertake
a software
development
lifecycle

P5 Undertake a software
M3 Analyse how
investigation to meet a
software requirements
business need.
can be traced
P6 Use appropriate
throughout the software
software analysis
lifecycle.
tools/techniques to carry
M4 Discuss two
out a software
approaches to
investigation and create
improving software
supporting

quality.
documentation.

LO4 Discuss
the suitability of
software
behavioural
design
techniques

P7 Explain how user
and software
requirements have been
addressed.

Merit

M5 Suggest two
software behavioural
specification methods
and illustrate their use
with an example.
M6 Differentiate
between a finite state
machine (FSM) and an
extended-FSM,
providing an application
for both.

Distinction


D3 Critically evaluate
how the use of the
function design
paradigm in the
software
development
lifecycle can improve
software quality.

D4 Present
justifications of how
data driven software
can improve the
reliability and
effectiveness of
software.

Contents

Unit 9: Software Development Life Cycle ASSIGNMENT 2.......................................................................1
Assignment Brief 02 (RQF)...........................................................................................................................3
Higher National Certificate/Diploma in Business.....................................................................................3
P5. Undertake a software investigation to meet a business need.................................................................10
1. Business need analysis.............................................................................................................................10


2. Stackeholders and their roles in Tune Source Project.............................................................................11
3. FRs and NFRs of Tune Source Project....................................................................................................12
3.1 Functional requirements.....................................................................................................................12

3.2 Non-functional requirements.............................................................................................................14
P6. Use appropriate software analysis tools/techniques to carry out a software investigation and create
supporting documentation............................................................................................................................14
1. Software requirements modeling.............................................................................................................14
2. Use Case specification.............................................................................................................................15
2.1 Use Case 1 Search Music function....................................................................................................15
2.2 Use Case 2 Login function.................................................................................................................16
2.3 Use Case 3 Purchase music function.................................................................................................16
2.4 Use Case 4 Manage Customer Account.............................................................................................17
2.5 Use Case 5 Song Lyric.......................................................................................................................18
3. Process modeling (Data Flow Diagram-DFD)........................................................................................18
3.1 Context Diagram................................................................................................................................18
3.2 DFD-Level 0......................................................................................................................................19
4. Data Modeling (Entity Relationship Diagram – ERD)............................................................................19
P7 Explain how user and software requirements have been addressed.......................................................19
1. Wireframe Design:...................................................................................................................................19
1.1. Some Mock-up, and Wireframe for the Tune Source project...........................................................20
1.2 Login / Sign in Page...........................................................................................................................20
1.3 Profile page........................................................................................................................................21
1.4 Album detail.......................................................................................................................................21
2.Site Map....................................................................................................................................................22
3. System Architecture Design:...................................................................................................................22
3.1 Choosing the technical model............................................................................................................23
3.2 Technical Solution Stack...................................................................................................................26
3.2.1 Front-end technologies................................................................................................................26
3.3.2 Back-end technologies................................................................................................................27
4.Demo code................................................................................................................................................27
M3 Analyse how software requirements can be traced throughout the software lifecycle.........................34
M4 Discuss two approaches to improving software quality........................................................................35
1.Test-Driven Development (TDD).............................................................................................................35

2.Continuous Integration (CI)......................................................................................................................35
M5 Suggest two software behavioural specification methods and illustrate their use with an example.....36


1.Use Case Diagrams...................................................................................................................................36
2.State Transition Diagrams.........................................................................................................................36
M6 Differentiate between a finite state machine (FSM) and an extended-FSM, providing an application
for both.........................................................................................................................................................36
D3 Critically evaluate how the use of the function design paradigm in the software development lifecycle
can improve software quality.......................................................................................................................37
D4 Present justifications of how data driven software can improve the reliability and effectiveness of
software........................................................................................................................................................38


Hints:

P5. Undertake a software investigation to meet a business need
1. Business need analysis





Business Need: This project has been initiated to increase sales by creating the capability
of selling digital music downloads to customers through kinks in our stores, and over the
Internet using our website
Business Value: We expect that Tune Source will increase sales by enabling existing
customers to purchase specific digital music tracks and by reaching new customers who
are interested in our unique archive of rare and hard-to-find music. We expect to gain a
new revenue stream from customer subscriptions to our download services. We expect

some increase in cross-selling, as customers who have downloaded a track or two of a
CD decide to purchase the entire CD in a store or through our website. We also expect a
new revenue stream from the sale of music download gift cards
Analysis:


For simple understanding, a requirement is a property that must be shown to solve a problem.
Software requirements express the needs and constraints placed on a software product that
contribute to the solution of some real-world problem such as automating some tasks to support
the business processes of an organization, to correct a fault of an existing software, or to control
a device digitally, … The requirements of a software are usually a complex combination from
many people of a group/organization who in one way or another related to the software project.
( Pierre Bourque, Richard E. Fairley, 2014)

Figure 1: Types of software requirements
2. Stackeholders and their roles in Tune Source Project
Stakeholder

Role

Interest

John Margolis, Megan

Founders of Tune Source

As they are the founder of the

Taylor, and Phil Cooper


company, they can provide
some suggestion on how the
new system will be. They will
also decide how much to
spend on each expense of the
project.

Carly Edwards, Assistant

Project sponsor

Vice President, Marketing

They will decide which
company, project manager to
conduct the project and
optimize for a successful
project.

IT department at Tune Source Operating, maintaining the

They have become


system

experienced with Internet
technology as they previously
worked with the ISP to
maintain the site.


Customer

User of the system

Customer of Tune Source
will be able to listen,
download music from the
new system.

3. FRs and NFRs of Tune Source Project
3.1 Functional requirements
Functional
Description

Examples

Requirement
Search and

Allow customer to filter/search for

• Customer can filter music by

browse

music

category.
• Customer can search for music by

title, artists, album, …

Listen

Allow customer to listen to sample • When customer select a song and
track

choose to listen to sample, system
should play a short sample of the
song.

Purchase

Allow customer to purchase songs

• When customer click buy now
button, system should navigate to
payment page for purchase single
song.
• When customer want to check out
their cart, system should navigate to
payment page to perform checkout.
• When customer has performed
purchased and transaction is
completed, an e-invoice should be


sent to customer’s email.
Download


Allow customer to download

• System should show a

songs

downloadable link on the songs that
customer has purchased.

Promotion

Show personalized content

• System should keep track on
customer’s activity and generate
their preference.
• Personalized items like
music/album that customers might
like should be shown on their main
page.

Recommendation

Show personalized content

• System should keep track on
customer’s activity and generate
their preference.
• Personalized items like
music/album that customers might

like should be shown on their main
page.

Login

Allow customer/manager to login

• Managers and customers should

the website

be able to log in to the system,
using email and password.
• There should be an option for
password resetting.

Register

Allow customer to create an

• Customer must be able to fill in

account to use the system

their information and perform
register. • Customer’s email must
be verified before accessing to the
system.

3.2 Non-functional requirements



Non-functional

Description

Requirement
Compatibility

• The website must be able to run on most popular browsers,
such as Google Chrome, Safari, Firefox, Opera, …
• Downloaded music should be playable on any device

Security

• Transaction information should be secured
• Customer information should be secured

Reliability

• System must be reliable and responsive all the time

Performance

• System must be able to handle large amount of customer
accessing at once
• Download speed should be monitored and kept at acceptable
level

P6. Use appropriate software analysis tools/techniques to carry out a software

investigation and create supporting documentation
1. Software requirements modeling
(You must draw Use Case diagram-UCD for this session)


2. Use Case specification
2.1 Use Case 1 Search Music function
Use Case Name:Search Music
Actor:Customer

ID: UC-01

Priority:High

Description: The search music function allows the user to search and select favorite songs
from the system's music library. Users can search for a specific song by entering keywords or
song name and get corresponding search results.
Trigger: The customer needs to search for a specific song or a list of songs.
Type:  External
 Temporal
Preconditions: The system has been installed and configured. The user has been granted access
to the system and can search within the music library.
Normal courses:
The user enters keywords or the song name they want to search into the search box.
The system searches the music library database and returns a list of songs corresponding to the
keywords or song name.
The user can choose one of the songs in the list to play or add to their playlist.
Postconditions: The user has searched for the song they want to play and can play that song or
add it to their playlist.
Exceptions: If the user enters the wrong keywords or song name, they will receive an error

message and be asked to enter the correct keyword or song name.
If the system is attacked by hackers or malware, the search music function may be affected,
and the system needs to be maintained to resolve the issue.
2.2 Use Case 2 Login function
Use Case Name: Login to website
Actor: Customer

ID: UC-02

Priority:High

Description: This use case describes the process of the login process performed by customer.
Trigger: The Customer goes to the site and click login link
Type:  External
 Temporal
Preconditions:
• Customer has an account of the website
• The website is available
. The website displays the homepage
. Customer clicks to login link at the home page
. Customer be directed to the login page, which includes login form.
. Customer fills in the information and click login.
. The websites perform authentication, redirect to the home page with logged in state.
Postconditions: Customer can use all the functions and accesses all the pages that required
login
Exceptions:


Customer does not fill in all the fields
• Website display error message, alert customer to fill in all fields

Customer enters wrong password
• Website display wrong password warning
The email customer entered not found in the database.
• Website display account not found warning.
• Website display the link to the register page.
2.3 Use Case 3 Purchase music function
Use Case Name:Purchase Music
Actor:Customer

ID: UC-03

Priority:Low

Description: The buy music function allows the user to purchase a selected song from the
system's music library. Users can browse through the available songs, select the song they
want to purchase, and complete the transaction.
Trigger: The user wants to purchase a song from the music library.
Type:  External
 Temporal
Preconditions: The system has been installed and configured. The user has been granted access
to the system and can browse through the available music library.
Normal courses:
The user browses through the music library to find the song they want to purchase.
The user selects the song they want to purchase and adds it to their shopping cart.
The user completes the transaction by providing payment information and confirming the
purchase.
The system validates the payment and adds the purchased song to the user's music library.
Postconditions: The user has successfully purchased the selected song and can listen to it in
their music library.
Exceptions:

If the user enters incorrect payment information, the transaction will not be completed, and the
user will be asked to correct the information and try again.
If the system is attacked by hackers or malware, the buy music function may be affected, and
the system needs to be maintained to resolve the issue.

2.4 Use Case 4 Manage Customer Account
Use Case Name: Manage Customer
Account
Actor: administrator

ID: UC-04

Priority:High

Description: The "Manage Customer Account" function allows the admin to manage customer
accounts on the system, including creating, updating, and deleting customer accounts.
Trigger: The admin wants to manage customer accounts.
Type:  External
 Temporal


Preconditions: The admin has logged into the system and has the necessary access rights to
access this function.
Normal courses:
 The admin selects the "Manage Customer Account" function on the system.
 The system displays a list of customer accounts currently registered on the system.
 The admin can select a specific account to view, update, or delete.
 If the admin chooses to create a new account, they can enter the necessary information
for the new customer account.
 If the admin chooses to update an existing account, they can edit the account details

and save the changes.
 If the admin chooses to delete an account, they can confirm the deletion and remove
the account from the system.
Postconditions: The admin has successfully managed customer accounts on the system,
including creating, updating, and deleting customer accounts as necessary.
Exceptions
 Attempting to create a customer account with an already existing username or email
address.
 Unable to update or delete a customer account due to an error in the system or
database.
 Unauthorized attempt to access the function by a user who does not have the necessary
access rights.

2.5 Use Case 5 Song Lyric
Use Case Name: Song Lyric
Actor: Customer

ID: UC-05

Priority: Low

Description: The "Song Lyric" function allows the user to access the lyrics of a particular
song.
Trigger: The user wants to view the lyrics of a song.
Type:  External
 Temporal
Preconditions: The user has logged into the system and has the necessary access rights to
access this function.
Normal courses:
The user searches for the song they want to view the lyrics for.

The system displays the song's details, including the song lyrics.
The user can read the lyrics or copy them to use elsewhere.
Postconditions: The user has successfully accessed and viewed the lyrics of the selected song,
and can use them for personal purposes.
Exceptions
The lyrics are not available for the selected song.
The lyrics provided by the system are incorrect or incomplete.
The user does not have the necessary permissions to view the lyrics of a certain song.


The system encounters an error while trying to display the lyrics, such as a technical issue or
database error.
3. Process modeling (Data Flow Diagram-DFD)
3.1 Context Diagram

3.2 DFD-Level 0

4. Data Modeling (Entity Relationship Diagram – ERD)



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

Tải bản đầy đủ ngay
×