Download as pptx, pdf, or txt
Download as pptx, pdf, or txt
You are on page 1of 24

Higher Nationals in Computing

Unit 9: Software Development Life Cycle


ASSIGNMENT 2

Assessor name: PHAN MINH TAM

Learner’s name:
ID:200454

Class: Software Development Life Cycle


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 6/3/20022 Date Received 1st submission

Re-submission Date Date Received 2nd submission

Student Name Vo Hoang Hien Student ID 200454

Software Development Life


Class Assessor name Phan Minh Tam
Cycle

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:  Resubmission Feedback:

Grade: Assessor Signature: Date:

Internal Verifier’s Comments:

Signature & 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 http://cms.greenwich.edu.vn/.
● 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

5. Discuss two software quality attributes that are applicable to the project.
6. Discuss two quality assurance techniques that can help improve the software quality in the project.
7. 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 Merit Distinction

P5 Undertake a software
M3 Analyse how software D3 Critically evaluate
investigation to meet a
requirements can be how the use of the
LO3 Undertake a business need.
traced throughout the function design paradigm
software P6 Use appropriate software software lifecycle. in the software
development analysis tools/techniques to
M4 Discuss two approaches development lifecycle
lifecycle carry out a software
to improving software can improve software
investigation and create quality.
quality.
supporting documentation.

M5 Suggest two software


behavioural specification
LO4 Discuss the methods and illustrate their D4 Present justifications
suitability of use with an example. of how data driven
P7 Explain how user and
software software requirements have M6 Differentiate between a software can improve the
behavioural design been addressed. finite state machine (FSM) reliability and
techniques and an extended-FSM, effectiveness of software.
providing an application for
both.
Table of Contents
Contents
TASK 1
....................................................................................................................................................................
5
P5 Undertake a software investigation to meet a business need.
....................................................................................................................................................................

5
Project analysis
................................................................................................................................................................
5
Methods of collecting information
................................................................................................................................................................
5
Observational Method
............................................................................................................................................................
5
Interview Method
............................................................................................................................................................
6
Questionnaires/Surveys
............................................................................................................................................................
7
Which method should we use for the current project?
................................................................................................................................................................
9
Step-to-step approach for Questionnaire method
............................................................................................................................................................
9
List of questions
................................................................................................................................................................
9
TASK 2
...................................................................................................................................................................
.
9
P6 Use appropriate software analysis tools/techniques
P a g e | 1 to carry out a software investigation and create
supporting documentation
..................................................................................................................................................................
9
Stackholders:
................................................................................................................................................................
9
Costs
................................................................................................................................................................
9
Security Considering
................................................................................................................................................................
10
Update Software
................................
............................................................................................................................ 10
SQL Injection
................................
............................................................................................................................ 10
Error Messages
................................
............................................................................................................................ 10
Validation of Data
................................
............................................................................................................................ 10
Passwords
............................................................................................................................................................
10
SSL
................................
............................................................................................................................ 10
Use case diagram
................................................................................................................................................................
11
Entity relationships diagram
................................................................................................................................................................
13
DFD

Page| 2
................................
................................................................................................................................ 14
TASK 3
...................................................................................................................................................................
.
22
P7 Explain how user and software requirements have been addressed.
....................................................................................................................................................................
22
Upload function
................................
................................................................................................................................ 23
Browse the song function
................................................................................................................................................................
24
Reference
...................................................................................................................................................................
.
25
TASK 1
P5 Undertake a software investigation to meet a business need.
1 The requirement definition of the project
-Project requirements are conditions or tasks that must be completed to ensure the success or
completion of the project. They provide a clear picture of the work that needs to be done. They're
meant to align the project's resources with the objectives of the organization. The benefits of
effectively gathering project requirements include cost reduction, higher project success rates,
more
effective change management, and improved communication among
stakeholders. 2 stackehotder and thir roles in Tune Source Project
-John Margolis, Megan Taylor, Phil Cooper: Co-Founders of Tune Source
-Carly Edwards: Project Sponsor, Assistant Vice President, Marketing

Costs:
Web Server Free to Pay-as-use
Domain Name $500

Page| 3
SSL certificate $100
Website development team $8000
Website maintenance $400
Contents manager system $900
E-commerce functionality $2000

3 FRs and NFRs of Tune Source Project


1. Functional requirements

Function Description

Search for music Help people find their favorite song quickly

Upload Song Allow Admin and User can upload song

Delete Song Allow admin can delete song

listen to music samples Help people to see samples of music

purchase individual Download purchased music files to store them locally or to import them to
downloads another media player, like iTunes or Windows Media Player.

Establish a customeer Allow customers to create accounts


subscription account

Register allow customers to register for an account

Change pass Allow customers and admin to change password Acount

2. Non-functional reqirements
1. Operational requirements
- Investigating the factors that drive requirements change is an important prerequisite
for understanding the nature of requirements volatility. This increased understanding will improve the
Page| 4
process of requirements change management. We mainly focus on change analysis to identify and
characterize the causes of requirements volatility. We apply a causal analysis method on change
request data to develop a taxonomy of change. This taxonomy allows us to identify and trace the
problems, reasons and sources of changes. Adopting an industrial case study approach, our findings
reveal that the main causes of requirements volatility were changes in customer needs (or market
demands), developers' increased understanding of the products, and changes in the organization
policy. During the development process, we also examined the extent of requirements volatility and
discovered that the rate of volatility was high at the time of requirements specification completion
and while functional specification reviews were conducted.
2. Performance requirements
-In the process of implementing the software, I always interact regularly with
customers, get reviews as well as feedback from customers to adjust to suit their needs, add closed
comments from customers to build get the best quality

1. Test early and Test often with Automation


-To improve software quality, it is absolutely paramount to Test early and Test
often.
Early testing will ensure that any defects do not snowball into larger, more complicated
issues.Testing often requires a focus on early adoption of the right automated testing discipline.
Start by automating non UI tests initially then slowly increasing coverage to UI based tests when
the product stabilises. Increasing testing coverage, accuracy and improving quality of the overall
product.
2. Plan for a changeable environment
Software contains so many variables and is in continuous evolution. It relies on
several different external factors such as web browsers, hardware, libraries, and operating
systems.These constant external factors mean that software development must be consistently
monitored using checks and balances to certify that it remains in stride with its immediate
environment. It is important to acknowledge that software is interdependent on these external
factors.
3. Security requirements
Security Considering
-Over the years, system safety is one of the worst issues. Today's technology is
increasing, and the risks to safety are also more advanced and harmful. We also evaluated and
provided some safety alternatives for the digital music devices in response to safety hazards
for TuneSource's internet initiative, andPwe
a g will
e | 5subsequently provide a few alternatives.
TuneSource scheme has been used for security.
Update Software
-An Up-to-date software will help a lot with security since almost all the visible bugs
has been handled by a third-party company
SQL Injection

-By using special character on the input, hacker can simply hack into the
Database system and cause damage to the data.
Error Messages
-Too specific error message will give out a ton of information to the outsider – which in
the beginning, does not need to know too much about the system
¶ Validation of Data
- The passwords must be long enough to keep the chance of being hacked low, the
recommendation is at least 8 characters with both number, normal, upper key and special
character
SSL
-Passing personal information between client and server should be done
through SSL
protocol
3.2.4 Cultural and political requirements
-Always check uploaded music that has nothing to do with religion or
politics
4 The relationships between the Ers and NFRs

P6 Use approprilate software analysts tools/techniques to carry out a software investigations and
create supporting documenttation
1. Software requirements modeting(use case diagram-ucd)
2. Use case specification

Page| 6
3.process modeting (data Flow Diagrram-DFD)

Use case name Search for music ID: BM-1


Description Search for certain song
Actor User, Admin
Trigger User or Admin use website to search for the song
Pre-condition 1. Customer already have their account to use the function
2. Admin already logged in their account
3. Song is available
Normal Course 1. Write the song name down.
2. Click search button.
3. The result page shows up with results
Post-condition Get the song from website results

Use case name Purchase individual downloads ID: PS-1

Page| 7
Description Buy the song customer want
Actor User
Pre-condition 1. User account have enough currency to purchase the song
2. Song is available to download
Normal Course 1. Search the song using song ID or song Name
2. Purchase the song
Post-condition User successfully purchase the song

Use case name listen to music sample ID: LS-1


Description User and Admin can listen to the song they want
Actor User and Admin
Pre-condition 1. Account of user is available to listen the song
2. Admin’s account can always listen to the song
3. Song is available
Normal Course 1. Search for the song they want to listen
2. Listen to the song
Post-condition Valid account can listen to the music

Use case name Music manager (Upload Song) ID: US-1


Description Admin can upload the new song
Actor Admin
Pre-condition 1. Location of the song from the Admin computer
2. Internet is available
Normal Course 1. Locate the song from computer of Admin
2. Choose the song want to upload
3. Upload the song
Post-condition The song being uploaded successfully

Use case name Music manager (Delete Song) ID: DS-1


Description Admin can delete the song
Actor Amin
Pre-condition 1. The song exists on Tune Source server
2. Admin account must be used for this action

Page| 8
Normal Course 1. Search the song admin want to delete
2. Delete the song
3. Save action
Post-condition The song got deleted successfully

Use case name Music manager (Edit Song) ID: ES-1


Description Admin can edit the song and its information
Actor Admin
Pre-condition 1. Admin account must be used for this function
2. The song is available to edit
Normal Course 1. Admin locate the song they want to edit
2. Edit the song’s information
3. Save the action
Post-condition The information of the song is edited

Use case name User’s information manager ID: UM-1


Description Admin and User can both manage the user information
Actor User, Admin
Pre-condition Admin account is logged in / This user account is logged in
Normal Course 1. User/Admin logged in the account need to edit
2. Find the option to manage this account information
3. Edit the information
4. Save the action
Post-condition Account’s information is edited

Page| 9
Entity relationships diagram

Entity Description
Admin The manager of the whole system
Customer The user of the system
Song Thing being listen/bought by customer
Purchase The detail of what the customer have bought
CD Information of the song being bought by customer

DFD
DFD of the whole system

P a g e | 10
P7. Explian how user and software requirements have been addressed
Tune Source’s project is a big project that provided high quality music for customer with many
other functions, and those functions will be implemented by many other ways (frontend and
backend) to show the behavior and effectiveness of the software For example, the upload function
Upload function
This function can only be used when using admin account. It allows admin to add a new song to
the
database. When upload the new music, the admin will also check with the SQL to see if that song is
existed in the same CD category before.
Front-End for upload function
We can use language like HTML5 and CSS to display the UI so that user will get the better
experience on web browsing
1. Wireframe desgin
1. site map

1.2 home page

P a g e | 11
-Back-end for upload function
-We can use C# and connect to SQL to link to the data of Tune Source system so that
P a g e | 12
we can work with the information in there.
1.3 search page
-This function can be used by both customer (the owner of this account) and
admin. This function allows user and admin to search for the available song
(return nothing if there is no matched search result)
-Front-End for Browse function
-We can create a search box to design the interface in HTML5 and CSS so that user
can use it easier
-Back-end for Browse function
We can use C# to retrieve the data from database and return the result to result
page

1.4 register page


Information should reflect the goals and call visitors to some desirable action. That is
P a g e | 13
why it should be displayed in the most efficient way to provide clear communication.
A website visitor needs just 3 second to understand if he got to the right place and
you have only these 3 second to convince him that he really arrived to the right
resource. This is why you need to prioritize information in order to facilitate
understanding. Use sub-titles, short lists to enumerate advantages of your products or
services, be laconic, don't use sophisticated or rare words, sentences should short and
simple.

P a g e | 14
1.5 login page

1.6 detail page

2. System architecture desgin


P a g e | 15
3. Technial solution stack
Just as there are software tools available to assist in the basic building of software
code, there are tools that monitor how software is behaving as it runs. These software
analysis tools offer visibility into the execution history of an application.
There are four basic types of software analysis tools:
Code Coverage—Measures the amount of the software that has been executed
Instruction Trace—Creates a record of exactly what happens as the code is
executed Memory Analysis—Tracks the code's memory usage and identifies possible
errors Performance Analysis—Identifies performance bottlenecks and other issues
allowing fine-tuning of the application for higher performance

P a g e | 16
Reference
1. Ngoconnect.net. (2019). [online] Available at: htt
ps://www.ngoconnect.net/sites/default/files/resources/Perf
ormance%20M%26E%20TIPS-
%20Using%20Direct%20Observation%20Techniques.pdf
[Accessed 22 Aug. 2019].
2. Guides.lib.vt.edu. (2019). Research Guides: Research
Methods Guide: Interview Research. [online] Available at:
https://guides.lib.vt.edu/researchmethods/interviews
[Accessed 22 Aug. 2019].
3. shareyouressays. (2019). essay-on-questionnaire-method-of-
data-collection. [online] Available at:
http://www.shareyouressays.com/essays/essay-on-
questionnaire-method-of-data-collection/87509 [Accessed 22
Aug. 2019].
4. Measuringu.com. (2019). observation-role. [online] Available
at: https://measuringu.com/observation-role/ [Accessed 22
Aug. 2019].
5. https://testpoint.com.au/11-ways-to-improve-software-
quality/

P a g e | 17

You might also like