1. Trang chủ
  2. » Luận Văn - Báo Cáo

Báo Cáo Đồ Án Công Nghệ Phần Mềm.docx

51 8 0

Đ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

Thông tin cơ bản

Tiêu đề Designing and Implementing the IChat Mobile Application
Tác giả Nguyen Thi Na, Que Dai Thang, Nguyen Kham Doan
Người hướng dẫn Cao Thanh Son, PhD
Trường học Vinh University School of Engineering and Technology
Chuyên ngành Software Engineering
Thể loại dự án tốt nghiệp
Năm xuất bản 2022
Thành phố Nghe An
Định dạng
Số trang 51
Dung lượng 6,18 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

VINH UNIVERSITY SCHOOL OF ENGINEERING AND TECHNOLOGY PROJECT REPORT ON SOFTWARE ENGINEERING DESIGNING AND IMPLEMENTING THE ICHAT MOBILE APPLICATION Instructor Cao Thanh Son, PhD Students Nguyen Thi Na[.]

Trang 1

PROJECT REPORT ON SOFTWARE ENGINEERING

DESIGNING AND IMPLEMENTING THE ICHAT MOBILE APPLICATION

Instructor: Cao Thanh Son, PhD.

Students: Nguyen Thi Na, 19574802010085

Que Dai Thang, 19574802010134 Nguyen Kham Doan, 19574802010093

Nghe An – 12/2022

Trang 2

TABLE OF CONTENTS

PREAMBLE 4

LIST OF ACRONYMS 5

LIST OF TABLES 6

LIST OF FIGURES 7

CHAPTER 1 PROBLEM DESCRIPTION 9

1.1 Problem 9

1.2 Professional survey 9

1.2.1 User 9

1.2.2 Function 9

1.3 System Requirements 10

1.4 Scope of implementation 10

1.5 Some related apps 10

1.5.1 Messenger App 10

1.5.2 Zalo App 11

1.6 Deployment plan and project management tool 13

1.6.1 Deployment plan 13

1.6.2 Project management tool 13

CHAPTER 2 SYSTEM ANALYSIS AND DESIGN 17

2.1 The functional hierarchy diagram 17

2.2 Functional analysis and design 17

2.2.1 Use case diagram 17

2.2.1.1 Function overview 17

2.2.1.2 Account verification 19

2.2.1.3 Chat 20

2.2.1.4 Group management 21

2.2.1.5 Manage friends list 22

Trang 3

2.2.1.6 Account management 23

2.2.2 Activity chart 24

2.2.2.1 Functional Analysis: Login 24

2.2.2.2 Functional Analysis: Chat 25

2.2.2.3 Functional Analysis: Manage friends list 26

2.2.2.4 Functional Analysis: Group management 27

2.2.2.5 Functional Analysis: Account management 28

2.2.3 Sequence diagram 29

2.2.3.1 Login chart 29

2.2.3.2 Video call chart 29

2.2.3.3 Add friend chart 30

2.2.3.4 Chat chart 31

2.3 Database 32

2.3.1 Database tables 32

2.3.2 Database diagram 35

CHAPTER 3 SYSTEM DEPLOYMENT 36

3.1 Tools used 36

3.2 User interface 36

3.2.1 Login Interface 36

3.2.2 Registration Interface 37

3.2.3 Home page interface 37

3.2.4 Friend search interface 38

3.2.5 Interface to add friends 38

3.2.6 Interface to delete friends 39

3.2.7 Chat interface 39

3.2.8 Call interface 40

3.2.9 Group creation interface 40

Trang 4

3.2.10 Group information interface 41

3.2.11 Interface to remove members from the group 41

3.2.12 Interface for adding members to the group 42

3.2.13 The personal information management interface 42

3.2.14 Settings interface 43

CONCLUSIONS 44

1 Achievement 44

2 Future direction 44

REFERENCES 45

Trang 5

In today's era, when information technology is constantly developing strongly,all jobs are done through technological devices such as laptops and phones, whichhave helped us save a lot of time Management software and applications are widelyavailable, which has helped people a great deal in the digital transformation era,applying science and technology to most areas of life Besides, solving work throughtechnological devices also allows us to connect to more people, expand the customerbase, and can easily exchange work proactively, quickly and indirectly

Because of that, a number of messaging applications were born, helping toconnect people with each other And our team has also based on the criteria and thegoal is to help users have an interesting chat application, a friendly and easy-to-useinterface, full of necessary features as well as guaranteed reliability and high security

Our team would like to thank lecturer PhD Cao Thanh Son - who directlyguided and contributed valuable comments during the process of our team working onthe project to be able to complete the project in the best way

Due to limited time and knowledge, errors will inevitably occur during projectimplementation Hopefully, through this project, we would like to receive yourcontributions and positive feedback so that our team can draw lessons for themselves,

as well as to better improve other projects that we have We will do it in the future

We sincerely thank you!

Trang 6

LIST OF ACRONYMS

1 MQTT Message Queuing Telemetry Transport

2 OTT Over The Top

3 VNG Vietnamese technology company

Trang 8

LIST OF FIGURES

Fig 1.1 Messenger App

Fig 1.2 Zalo App

Fig 1.3 All phases of project management

Fig 1.4 Initial planning and implementation

Fig 1.5 Modify details and add requirements

Fig 1.6 Compatibility Review and Modification

Fig 1.7 Check and complete the remaining tasks

Fig 1.8 Job details in any table

Fig 2.1 The functional hierarchy diagram

Fig 2.2 System use case diagram

Fig 2.3 Use case chart: Account verification

Fig 2.4 Use case diagram: Chat

Fig 2.5 Use case diagram: Group management

Fig 2.6 Use case chart: Manage friends list

Fig 2.7 Use case chart: Account management

Fig 2.8 Function activity chart: Login

Fig 2.9 Function activity chart: Chat

Fig 2.10 Function activity chart: Manage friends list

Fig 2.11 Function activity chart: Group management

Fig 2.12 Function activity chart: Account management

Fig 2.13 Function sequence diagram: Login

Fig 2.14 Function sequence diagram: Video call

Fig 2.15 Function sequence diagram: Add friend

Fig 2.16 Function sequence diagram: Chat

Fig 2.17 Database Diagram

Fig 3.1 Login Interface

Fig 3.2 Registration Interface

Fig 3.3 Home page interface

Trang 9

Fig 3.5 Interface to add friends

Fig 3.6 Interface to delete friends

Fig 3.7 Chat interface

Fig 3.8 Call interface

Fig 3.9 Group creation interface

Fig 3.10 Group information interface

Fig 3.11 Interface to remove members from the group

Fig 3.12 Interface for adding members to the group

Fig 3.13 The personal information management interface

Fig 3.14 Settings interface

Trang 10

CHAPTER 1 PROBLEM DESCRIPTION

This chapter will focus on presenting the problem of deploying the design of achat application project as well as resources related to the topic, as well as dividing thework of each team member and the model associated with the tool to monitor andmanage the progress of the project

Our group chat application mainly focuses on messaging and calling functions.And based on those two functions upgrade and add other necessary functions such aspeer to peer chat and group chat With an easy-to-use interface, it ensures all thenecessary functions for a chat application And the goal is to bring new and excitingexperiences to users As well as how to deploy, build the interface accordingly andensure safety and reliability for users

1.2 Professional survey

1.2.1 User

Users are those who wish to exchange contact information with one or moreother users who already have an account in the application Each user storedinformation including: Username, password, email, profile picture, connectionrequest, creation date, creation time, token, phone number and about

Trang 11

user interface, ensuring confidentiality, personal information safety, and qualitystability for users when using the application.

1.3 System Requirements

- The built application must meet the user's requirements, and ensure the fullfunctions of a chat application such as messaging, personal information management,search, adding, deleting friends, and creating groups;

- Chat application must be able to run on different mobile devices with the twomost popular operating systems Android and IOS

1.4 Scope of implementation

- Survey method: research the popular features of a chat application requiredthrough existing chat applications such as Messenger, Zalo;

- Learn about the processes and how a chat application works;

- Survey users about their needs and desires for a chat application, get opinions

on the experiences they would like to have with the chat application;

- See some references to get ideas, as well as learn from experience to knowwhat to do and what to avoid

1.5 Some related apps

1.5.1 Messenger App

Messenger is a messaging application created by the publisher Facebook,connected to the social network Facebook used to let people text, call video, or evensend videos, or recordings easily Today Messenger is one of the most usedapplications, especially among young people around the world, thanks to its extremelyspecial features, which Messenger receives an enthusiastic response

Trang 12

Fig 1.1 Messenger App

Trang 13

Messenger was originally just a Facebook Chat feature, but later it was splitinto a separate application, allowing users to transmit messages using characters,images, voice, and works on many platforms such as websites, phones and computers.

Features of Messenger:

- Messenger allows you to text and also allows you to make phone calls orvideo calls for free;

- Messenger automatically hides messages from strangers;

- Messenger's features can't help but mention group video calls;

- Messenger has a feature to send recordings to friends;

- Messenger can change the text color, change the name of the chat person orgroup name, and even the icon

1.5.2 Zalo App

Zalo is an OTT application, that allows users to text and call other users onmobile and computer platforms As an application of VNG (Vietnamese technologycompany), appeared on the market in 2012, until now, Zalo has become an extremelypopular application

Fig 1.2 Zalo App

The convenience of registering a new account and easier to use, so mostsmartphone users install Zalo With 80 million users and more in the future, Zalo is agreat environment for business exploitation Zalo's connection method is simpler thanFacebook's, so business people can find better customers

In another aspect, Zalo is also considered a content-sharing social network

Trang 14

With the feature that allows users to update information and images on their personalpage and track updates from friends, Zalo creates a more diverse connection thanother messaging applications.

High security is also one of the reasons why Zalo is always at the top of choicefor companies and agencies to exchange jobs online Zalo user scale is very large andtends to increase higher and more active

Zalo uses phone numbers to identify accounts This is one of the advantages ofZalo when we want to search for a user if we only have phone number information, so

we can easily connect with customers when we have their phone number in theprocess of previous sales

Features of Zalo:

- Free video and audio calls to other Zalo users;

- Record and send voice messages;

- Send photos, videos, stickers, GIFs, location messages and more;

- Share statuses and moments with the Log function;

- Follow the mainstream news;

- Free group meetings with a large number of participants

1.6 Deployment plan and project management tool

3 From 19/11/2022 to01/12/2022 The team conducts analysis and addsfeatures to the project. All members

4 From 02/12/2022 Review all interfaces and write thereport. All members

Trang 15

to 09/12/2022

5 From 20/12/2022 Finalize the app and report All members

T1.1 Table Deployment plan

1.6.2 Project management tool

- Project management tool: Trello;

- Apply management model: Agile-scrum;

- The project implementation plan is divided into several different phases Help manage and divide work effectively and project on schedule

a All phases of project management

This is the main interface of a team project, managed by the app Trello Thisproject will include tables that are divided into different stages when choosing a modeldevelop the software the way the team wants to manage the project

Fig 1.3 All phases of project management

b Project management - Initial planning and implementation

This is phase one of the project: Initial planning and implementation This tablecontains lists Each list stores various cards to represent the different execution steps

Trang 16

of the stage Lists in stage one include: Need to do, Doing, Done and Unfinished Thecards in the Need to do list include Plan, Requirements Analysis, Design andimplementation, Test and Review The cards in the Doing list include Analysis andDesign of various types of charts, Design of User Interface and Database, Coding Thecards in the Done list include: Building different types of charts, meet the customer.The cards in the Unfinished list include Coding.

Fig 1.4 Initial planning and implementation

c Project Management - Modify details and add requirements

This is phase two of the project: Modify details and add requirements Lists instage one include: Need to do, Doing, Done and Unfinished The cards in the Need to

do list include Requirements Analysis, Design and implementation, Testing The cards

in the Doing list and Done list include Analysis the requirement, Design interface anddatabase The cards in the Unfinished list include Coding

Trang 17

Fig 1.5 Modify details and add requirements

d Project Management - Compatibility Review and Modification

This is phase two of the project: Modify details and add requirements Lists instage three include: Need to do, Doing, Done and Unfinished The cards in the Need

to do list include Design and implementation, Testing, Make project report The cards

in the Unfinished list include Coding

Fig 1.6 Compatibility Review and Modification

e Project Management - Check and complete the remaining tasks

Trang 18

This is the phase where software testing begins Complete the report contentand other necessary functions of the application.

Fig 1.7 Check and complete the remaining tasks

f Job details in any table

This is the content of a card In this card, detail the work to be done, divide thework for each member of the group and set the time to complete the work In addition,

it is possible to change the cover photo, attach files, add members to each project,show the status of completed or not, and much more

Trang 19

Fig 1.8 Job details in any table

Trang 20

CHAPTER 2 SYSTEM ANALYSIS AND DESIGN

The content of this chapter will focus on analyzing and designing functionalityfor chat applications through different types of diagrams Describe in detail thenecessary functions for the application, thereby designing the database accordingly

2.1 The functional hierarchy diagram

The Manage iChat includes the following functions: Manage Profile, MakeFriends, Chat, Create Groups and Manage Settings The Profile Management includesthe following functions: Add information and Edit information The Make friendsincludes the following functions: Search, Add and Delete friends The Chat includesthe following functions: Send File, Image, Text and Video The Make Group includesthe following functions: Add, Delete and Search Member

Fig 2.1 The functional hierarchy diagram

2.2 Use case diagram

2.2.1 Function overview

This is a use case diagram that summarizes the functions available in the system

Chart name System use case diagram

Step 1: Users login into the system according to the

Trang 21

Describe registered account

Step 2: After logging in to the system, users can use thefollowing functions: chat, create groups, view friends list,add, delete friends or members in the group if that person

is the creator group, manage profiles and settings

Fig 2.2 System use case diagram

2.2.2 Account verification

Fig 2.3 Use case chart: Account verification

Trang 22

Function name Account verification

Step 3: Login: - Success: Fulfill other requests;

- Failure: Switch to forked stream

Step 4: Sign out

Event branching stream:

Step 1: User login failed

- The system sends a failed login message;

- Ask the user to re-login;

- The user agrees then go back to the first step of the login;

- The user does not agree to end the use case

Step 2: User chooses forgot password

- At this time, the system automatically sends an email tothe user's pre-registered email for the user to authenticate theaccount to change the new password;

- The user agrees to authenticate to change the password

of the system to update the database;

- User does not agree to end the use case

The following

condition

The user is successfully logged in and can use the functionsavailable to them in the chat application

Trang 23

2.2.3 Chat

Fig 2.4 Use case diagram: Chat

Function name Chat

Step 3: The user selects any chat and performs thefunctions available in the chat

End of use case

The following

condition

Users can use the functions included in the chat to maketheir requests

Trang 24

2.2.4 Group management

Fig 2.5 Use case diagram: Group management

Function name Group management

Step 3: The user selects the friends to add to the groupand selects "next"

Step 4: The system will add a list of friends to the groupselected by the user

Step 5: Users name the group, change the avatar and canadd members to the group if desired and select "next"Step 6: The system will update the group information andthe list of members of the group

End of use case

The following

condition New group created successfully

Trang 25

2.2.5 Manage friends list

Fig 2.6 Use case chart: Manage friends list

Function name Manage friends list

Step 4: The system will perform the function selected bythe user and update the friend list

End of use case

The following

condition Users have a list of friends at their disposal

Ngày đăng: 18/04/2023, 13:45

TỪ KHÓA LIÊN QUAN

w