Tải bản đầy đủ (.pdf) (47 trang)

1670 assignment 1 (pass)

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 (2.16 MB, 47 trang )

lOMoAR cPSD| 22148649

BTEC Level 5 HND Diploma in Computing

Unit 30: Application Development

Learner’s name: LAM NGUYEN TRUNG NAM
ID: GCS200222
Class: GCS0905B
Subject ID: 1670
Assessor team name: Đào Vĩnh Khang
Lê Thanh Tùng
Trần Thái Hoà
Assignment due:

Assignment submitted:


ASSIGNMENT 1 FRONT SHEET
Qualification

BTEC Level 5 HND Diploma in Business

Unit number and title

Unit 30: Application Development

Submission date

Date Received 1st submission


Re-submission Date

Date Received 2nd submission

Student Name

Đào Vĩnh Khang

Student ID

GCS200222

Class

GCS0905B

Assessor name

TRUNG NAM

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


M1

M2

D1


 Summative Feedback:

Grade:

 Resubmission Feedback:

Assessor Signature:

Internal Verifier’s Comments:

Signature & Date:

Date:


Assignment Brief 1 (RQF)
Higher National Certificate/Diploma in
Computing
Student Name/ID Number:
Unit Number and Title:

Unit 30: Application Development


Academic Year:

2023

Unit Assessor:

LAM NGUYEN TRUNG NAM

Assignment Title:

Analysis and Design solution for a given problem

Issue Date:

10 Jan 2023

Submission Date:
Internal Verifier Name:
Date:


Submission Format:

Format: The submission is in the form of two documents/files
● An individual SRS document in PDF format. Writing must be professional.
● An individual evaluation document in PDF format. Writing must be professional.
Submission
● Students are compulsory to submit the assignment on the 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 a PDF file before the submission on CMS.
Note:
● The individual Assignment must be your 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
with this requirement will result in a failed assignment.
Unit Learning Outcomes:

LO1 Produce a Software Design Document by analyzing a business-related problem and deduce an
appropriate solution including a set of initial requirements
LO2 Use design and development methodologies with tools and techniques associated with the creation
of a business application
Assignment Brief and Guidance:

Scenario: FPTBook will be a web-based software system to aid book store customers and owners to
manage their book purchases and sales about simplifying and speeding up the process of selection,
ordering, and purchasing books for customers as well as managing a database of users and a database of
products for book store owners. The attached document can view the detailed description of those roles
(Requirements.docx).
Tasks
You and your teammates (3 members/team maximum) need to prepare a software design document with
the following sections:
o A requirement specification that explores the problem by a set of user and system requirements,
as well as determines any risks related to the successful completion of your application. You are
advised to use an SRS template or modify one to complete this task.
o An evaluation section in which you research the use of software development tools and techniques

and identify any that have been selected for the development of this application. You should
compare them and justify your choices.


o A design section in which you use chosen tools from the previous step to produce design diagrams
for your solution based on the requirement specification.


Learning Outcomes and Assessment Criteria (Assignment 1):
Learning Outcome
LO1

LO2

Pass
P1 Explore a
business-related
problem and produce
a well-defined
Problem Definition
Statement supported
by a set of user and
system requirements.
P2 Determine any
areas of risk related to
the successful
completion of your
application.
P3 Research the use
of software

development tools and
techniques and
identify any that have
been selected for the
development of this
application.

Merit
M1 Analyse a
business-related
problem using
appropriate methods
and produce a wellstructured Software
Design Document that
defines a proposed
solution and includes
relevant details on
requirements, system
analysis, system
design, coding, testing
and implementation.
M2 Compare the
differences between
the various software
development tools and
techniques researched
and justify your
preferred selection as
well as your preferred
software development

methodology.

Distinction
D1 Justify the tools
and techniques chosen
to realise a custom
built website. Justify
your preferred
selection of tools and
techniques in
deducing an
appropriate solution to
a business related
problem.



9


Table of Contents
P1 Explore a business-related problem and produce a well-defined Problem Definition Statement
supported by a set of user and system
requirements........................................................................................................................................5
1.

2.

3.


Introduction...............................................................................................................................................5
1.1.

Document Purpose..............................................................................................................................5

1.2.

Product Scope.....................................................................................................................................6

1.3.

Intended Audience and Document
Overview..........................................................................................6

1.4.

Definitions, Acronyms and
Abbreviations...............................................................................................6

Overall Description......................................................................................................................................7
2.1.

Product Overview................................................................................................................................7

2.2.

Product Functionality...........................................................................................................................7

2.3.


Risks related to the project...................................................................................................................8

2.4.

Assumptions and
Dependencies............................................................................................................8

Specific Requirements.................................................................................................................................9
3.1.

External Interface Requirements...........................................................................................................9

3.2.

Functional Requirements....................................................................................................................10

3.3.

Use Case Model.................................................................................................................................11

3.3.1.

Use Case #1 (Course Management Function - UC
1)...........................................................................12

3.3.2.

Use Case #2 (Trainer Management Function - UC
2)...........................................................................14


3.4.

Other Non-functional Requirements....................................................................................................16

P2 Determine any areas of risk related to the successful completion of your
application..............................................17
P3 Research the use of software development tools and techniques and identify any that have been
selected for the
development of this
application....................................................................................................................................19
1.

2.

Design tools.............................................................................................................................................19
1.1.

UML definition:.................................................................................................................................19

1.2.

Some popular UML diagrams:.............................................................................................................19

1.3.

Use the UML tool to give
examples......................................................................................................20

Development tools and techniques.............................................................................................................21
2.1.


Cloud provider...................................................................................................................................21

2.2.

Development languages /
Framework..................................................................................................24

1


2.2.1.

Programming languages..................................................................................................................24

2.2.2.

Framework:...................................................................................................................................25

2.3.

Database servers...............................................................................................................................28

2.4.

Software Development Models...........................................................................................................30

Conclusion...............................................................................................................................................................
......35
REFERENCES..........................................................................................................................................................

........39

ASSIGNMENT 1 ANSWERS
P1 Explore a business-related problem and produce a well-defined
Problem Definition Statement supported by a set of user and system
requirements.
1. Introduction
Along with the rapid development of technology. Web applications are increasingly popular because of
the benefits that it brings such as: High interactivity, storing and retrieving data quickly. Integrate
multiple tasks to support features, management, and tracking. Increase user experience, increase
brand effect and save maintenance cost. FPT Company is also not out of that trend. They want to
develop a web-based system to manage the "Training" activities for the company's internal training
program to ensure a continuous learning environment throughout FPT Corporation. The system is used
by the human resources department. We have three roles in this system, administrator, training staff
and a trainer. The system's functions include: student account management, lecturer management,
course catalog management, course management, topic management, subject assignment for the
course, assignment of lecturers for the course. topics, assign instructors to the course.
1.1. Document Purpose
This document is intended to explain the role requirements of each human resources department.
An administrator’s role:


Can login to the system through the first page of the application



Can create/edit/delete new user account for trainer/training staff and assign/change(if existing
user) username and a password

A training staff’s role:



A registered training staff, who is assigned a user name and a password by the administrator
logs in can create trainee accounts by entering details like trainee name, trainee accounts, age,

2


date of birth, education, main programming language, TOEIC score, experience details,
department, location, etc.


After entering successfully all details for trainees, his/her details are then stored in the database.
The training staff is given a list of trainees for him to view and search. From the list of trainees,
he can also search by trainee account, programming language, TOEIC score…



Can update, delete trainee accounts



Can manage course categories such as searching, adding, updating and deleting course
categories.
Course category includes the information such as course category name and descriptions.



Can manage courses such as searching, adding, updating and deleting courses. Course
includes course name and description.




Can add topics such as topic name and topic descriptions into a course, add courses into a
category.



Can manage trainer profile such as adding, updating and deleting the information: Trainer name,
External or Internal Type, working place, telephone, and email address.



Can assign trainer to a topic.



Can assign trainee to a course.

A trainer’s role:


In the same system, the trainer who have been registered by the administrator can login and
can update his profile such as Trainer name, External or Internal Type, education, working
place, telephone, and email address.



Can view courses which have a topic he is assigned to.


The above roles are divided to make the work process easy, clear, and understandable for users.
1.2. Product Scope
This software is being developed primarily for education for each role in the field. Helps to easily
manage student accounts, manage instructors, manage course catalogs, manage courses, manage
topics, assign topics to courses, assign instructors to topics, assign instructors for the course. Easily
integrate all of the above as a means of communication so that everyone can easily interact through at
work.
1.3. Intended Audience and Document Overview
The intended audience of this project includes people who act as system users such as administrators,
training staff and trainers. In addition, the people who need to read this document are those
responsible for software design such as: software engineers, technical architects, project managers...
The document refers to the design and use of a web-based system to manage the "Training" activity for
FPT's internal training program.

3


Internal trainer is defined as an employee who was delegated by manager or volunteer with personal
willingness to conduct education as additional task to cover business needs.
1.4.Definitions, Acronyms and Abbreviations
Internal training is the practice of teaching learners within an organisation by learning and development
officers. It refers to commercial operations and corporate learning rather than pure-learning institutions.
Training is teaching, or developing in oneself or others, any skills and knowledge or fitness that relate
to specific useful competencies. Training has specific goals of improving one's capability, capacity,
productivity and performance. It forms the core of apprenticeships and provides the backbone of
content at institutes of technology (also known as technical colleges or polytechnics). In addition to
the basic training required for a trade, occupation or profession, training may continue beyond initial
competence to maintain, upgrade and update skills throughout working life. People within some
professions and occupations may refer to this sort of training as professional development. Training
also refers to the development of physical fitness related to a specific competence, such as sport,

martial arts, military applications and some other occupations.
Course (education)
In higher education in various countries, such as Canada, Nigeria and the United States, a course is a
unit of teaching that typically lasts one academic term, is led by one or more instructors (teachers or
professors), and has a fixed roster of students. A course usually covers an individual subject. Courses
generally have a fixed program of sessions every week during the term, called lessons or classes.
Students may receive a grade and academic credit after completion of the course.

2. Overall Description
2.1. Product Overview
Currently, with the rapidly developing technology, FPT company is planning to develop a system for
internal training activities in the company in order to increase the training quality of FPT company. This
will be a completely new system to replace the traditional training management process. It is used by
the human resources department including: administrators, training staff, trainers and trainees. Web
application of FPT Company will be used to manage trainee accounts, manage trainers, manage
course categories, manage courses, manage topics, assign topic to course, assign trainer to topic,
assign trainee to course.
2.2. Product Functionality
There are main levels of access:


Administrators



Training staff



Trainers


According to the project, the main functions will be performed as follows: You can log in to the system
through the first page of the application. When the user enters the system, he will be required to log in.
If he does not have an account, create an account. The data when the user logs in will be saved to the
database.
Furthermore, as a user, it is possible to change, create, edit, and delete an account when that person
is no longer in use. To avoid full data that will lead to delay when loading resources, after logging in the
manager will provide a role for the user, the user will use those roles correctly. After logging in, if the
system updates wrong information, users can edit and update the system again. Users entering the

4


system can find the correct route they are learning the date and time of the content. Through this
section, the functions of updating and correcting information are very important to implement for the
project.
2.3. Risks related to the project
Broken Access Control
This means that restrictions on authenticated users are not properly enforced, leading to one user able
to see other users' files or modify other users data.
XML External Entities
This occurs when older or badly configured XML processors evaluate external entity references within
XML docs. That can expose internal files and allow for internal port scanning, remote code execution,
and denial of service attacks.
Sensitive Data Exposure
This is where sensitive data is not encrypted in transit or at rest, leaving it exposed for attackers to
steal or modify.
Broken Authentication
If authentication and session management is implemented wrong, attackers can compromise
passwords, keys or session tokens and assume other users' identities.

Injection
Whether it's SQL, NoSQL, OS, or LDAP, an untrusted dataset gets sent to an interpreter tacked on to
a command or query, tricking the interpreter into executing unintended commands or accessing data
without authorization.
2.4. Assumptions and Dependencies
Software developers will need to take into consideration the operating environment in which their
products will be deployed when designing, developing, and testing the software. To deploy a product
in a specific operating environment, the software must be designed to operate in that specific
environment. Software development also depends on third-party tools and/or services for design,
marketing, analytics, etc.

3. Specific Requirements
3.1. External Interface Requirements

5


User Interfaces

This is the home page, the user can enter the correct web address, this first page will appear, here the
web will display information about the user's roles. And there are information tabs of the system such
as login to register to have a system account, with contact information that needs support, there is a
separate information page.

The next page is the account registration page, users can enter email information to user registration.
Password to register, confirm the password is correct or not. Finally, choose the right role you need to
use.

6



Finally, on the system login page, the user logs in correctly and requires an email and password that is
registered. If the system fails, the user can go back registration page to re-subscribe through the relogin page.
3.2. Functional Requirements
F1: Our system will create user request pages, through which users can choose the right role they are
using. Usually, uploaders must register before they can edit their information. This is so that there are
no multiple copies of the same property.
<Functional Requirement or Feature #2>
Each user role has a different function
Trainers and Trainees: can view personal information editing courses
Training staff: edit the course to change the status of the information and remove more students.
Administrators: can access the system more easily, delete, add, edit and edit teachers and students.
3.3. Use Case Model
Use Case diagram for course management functionality.

7


Use Case diagram for trainer management functionality.

3.3.1. Use Case #1 (Course Management Function - UC 1)

Use Case ID: UC 1
Use Case Name: Course Management

8


Description: As a manager, I want to use the system's course management functionality to create and
assign courses to trainers and trainees.

Actor(s): User (Administrator, Training staff)
Priority: Must Have
Trigger: User wants to create a new training course for FPT's system.
Pre-Condition(s):


User accounts already created



User accounts have been authorized



User's account has been logged into the system



The user's device is already connected to the internet when performing the function

Post-Condition(s):


User successfully created a new course for the system.



The system records successful create new course in the Activity Log.

Use-case Normal steps:

Step No.
1

2

Actor
System
Notes
The administrator clicks the Displays the Create New CourseSee Create New Course
link to create a new course onscreen for the administrator.

screen layout design

the home screen of the

below

system.
Enter all the information for

Verify information about the

the course such as Course

course

Name, Course Description,

3


Course Date.
Click the create new course Show newly created course in See Course Management
button

course management screen.

screen layout design
below

Alternative 1: The administrator wants to delete unnecessary courses to easily for manage
other courses.

9


Step No.
1

2

3

Actor
Admin clicks on the link to

System
Displays the Course

Notes
See Course Management


the course management

Management screen for the

screen layout design

screen
administrator.
Admins search for the course Show course information

below
See Course Information

they want to delete from the

screen layout design

system.
Click the Delete button

below
Display message: Successfully See Notification screen
deleted course

layout design below

The system records Successful
course deletion in the Activity
Log


Alternative 2: The administrator wants to assign trainers to the courses in the system.

10


| 22148649

Step No.
1

2

3

Actor
Admin clicks on the link to

System
Displays the Course

Notes
See Course Management

the course management

Management screen for the

screen layout design


screen
administrator.
Click the link to add a trainer Select a trainer that the

below
See List Of Trainers

for the course

manager wants to add to the

screen layout design

Click the button to assign a

course from the list of trainers. below
The system records successfullySee Notification screen

trainer to the course

assigned a trainer to the course layout design below
in the Activity Log.

3.3.2. Use Case #2 (Trainer Management Function - UC 2)

Use Case ID: UC 2
Use Case Name: Trainer Management
Description: As a manager, I want to add a user as a trainer to use the system functions.
Actor(s): User (Administrator)
Priority: Must Have

Trigger: User wants to register an account for a new trainer in the FPT Company's system.
Pre-Condition(s):


User accounts already created



User accounts have been authorized



User's account has been logged into the system



The user's device is already connected to the internet when performing the function

Post-Condition(s):


User successfully registers an account for a new trainer to access the system.



The system records successful add new trainer role in Activity Log

Use-case Normal steps:
Step No.
1


Actor
System
Notes
The administrator clicks the Displays the Create New Trainer See Create New Trainer
link to create a new trainer

screen for the administrator.

11

screen layout design


| 22148649

on the home screen of the
2

below

system.
The administrator enters the Check trainer information
full information for the

If true, redirect to new account

trainer's account that needs creation screen
to be added to the system.
3


4

If false, request to re-enter the

trainer's information
Enter the full username and Verify account information

See Create New Account

password for the trainer

screen layout below

account
Clicks on create new account The system records the
button

successful Creation of a new
account for trainer in the
Activity Log.

Alternative 1: The administrator wants to remove unnecessary trainer for easier
management.
Step No.
1

2

Actor

System
The administrator clicks the Displays the Trainer

Notes
See Trainer Management

link to the trainer

Management screen for the

screen layout design

management screen in the

administrator.

below

system.
Search for the name of the

Display the information of the

See Trainer Information

trainer who need to deleted trainer need to find
3
4

screen layout design


from the management list.
below
Click on delete trainer button Send confirmation message to See Notification screen
The administrator confirms

admin
Show message: Delete user

layout design below

deleting the trainer from the successfully
system.

The system records successfully
Deleted trainer in the Activity
Log

Alternative 2: The administrator wants to edit trainer information.
Step No.

Actor

System

12

Notes



| 22148649

1

2

The administrator clicks the Displays the Trainer

See Trainer Management

link to the trainer

Management screen for the

screen layout design

management screen in the

administrator.

below

system.
Search for the name of the

Display the information of the

See Trainer Information

trainer who need to edited


trainer need to find

screen layout design

3

from the management list.
Click the button edit trainer

below
Show details of all previously

4

information
The administrator clicks on

added trainer information.
Send notification: Edit successfulSee Notification screen

the row whose information

The system records successful layout design below

need to edited.

information editing in the

After editing is complete, the Activity Log

administrator clicks on the
finish button.

3.4. Other Non-functional Requirements
Some non-functional requirements in our system:


Users who enter incorrect login information for the 5th time in a row will have their account
locked for 15 minutes.



Time out for login screen under 60 seconds.



The maximum delay in redirecting to another page is 30 seconds

13


lOMoAR cPSD| 22148649

P2 Determine any areas of risk related to the successful completion of your
application.


17



|


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

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