UniChat-軟件工程小組-第一次做業-選題

軟件工程小組項目文檔

小組成員:趙有爲、張天善、宋春雨、郭凱璐、孫楠、馮韻瑤git

Uni-Chat項目文檔

需求分析Need

​ 平常生活中咱們在使用Ubuntu等系統時都會由於QQ等聊天工具對基於Linux的操做系統的兼容系不夠而自閉,咱們或是選擇不使用這些聊天工具或是花不少時間配置這些應用的依賴而且在配置過程當中會出現各類各樣的問題.
​ 有時, 咱們和他人聊天, 我可能比較喜歡使用QQ而別人卻使用微信, 這時咱們又不得不下載另一個軟件.
​ 有時, 咱們可能並不想裝那麼多應用. 有的人可能一個都不想裝.github

​ 因此咱們打算作一款跨平臺的聊天工具。npm

​ 這個聊天工具具體能夠支持兩人之間的聊天、羣聊、傳輸文件的功能,支持的平臺包括Windows、Linux、Mac、移動端(IOS、IPadOS、安卓)、小程序(微信小程序、QQ小程序等等)、命令行版。小程序

作法Approach

  • 用戶優點:
    • 一款新應用, 面臨的第一個問題就是用戶習慣問題, 咱們能夠經過, 各類小程序的方式(PC端可以使用命令行版), 不讓用戶安裝任何額外的應用. 用戶產生必定習慣後, 這時安裝咱們APP就是一個更好的選擇了.
    • 通常狀況下, 咱們在咱們的各個設備間發送文件, 要麼使用U盤, QQ微信等, 沒有一個統一的解決方案, 而咱們適配各個平臺, 就是爲用戶提供了一個統一的解決方案, 方便又快捷.
    • 內網模式, 有時咱們可能沒有網絡, 但也沒有U盤, 這時也沒法使用QQ, 微信等; 這時用戶能夠經過這個模式, 使用局域網, 發文件, 聊天等;
    • Linux的用戶使用QQ等聊天工具很是困難。QQ等聊天工具對Linux的支持比較差,在安裝的過程當中可能在安裝依賴的過程當中會出現各類問題,很是浪費時間.

因此咱們的用戶潛力比較大微信小程序

  • 基礎的招式:CSS+HTML能夠作很是美觀的界面。
  • 獨特的招式:
    • 基於Npm和Node的Javascript+Electron能夠製做跨Windows、Linux、Mac的聊天工具,基於一套代碼經過使用不一樣的配置製做出跨平臺的軟件。基於Node的服務器能夠處理高併發的業務。
    • 基於Uni-App, 可以使用JS製做: 跨各類小程序, 安卓, IOS, H5各類平臺的聊天工具
    • 可使用微信, QQ, 微博, 支付寶的開放能力, 快速接入用戶, 簡化繁瑣的用戶註冊流程, 減小可能的用戶流失.
  • 預計的困難
    • 併發問題的處理
    • 團隊分工的銜接問題
    • A用戶向已經離線的B用戶發送消息,B用戶上線後接收消息的處理
    • 兩個用戶直接消息傳遞的流程
    • 各類通訊協議之間的權衡
    • 各大互聯網公司應用開放能力接入
    • 各大平臺的適配

好處Benefit

  • 使用統一的方案解決問題, 用戶無需考慮使用哪一種軟件, 也無需考慮安裝多款軟件, 不一樣平臺如何共享的問題, 減小用戶的煩惱, 只須要咱們這一個就夠了;
  • 使用各類小程序以及Uni-Chat-Cli命令行版, 能夠知足不肯安裝過多應用的用戶的需求
  • 內網模式, 沒有網絡, 也阻止不了我共享文件, 聊天的熱情;
  • 針對Linux用戶使用聊天工具難的問題,方便Linux用戶與其餘用戶進行信息交互
  • 微信小程序能夠直接與其餘平臺的好友進行聊天
  • 命令行界面使用npm或yarn等安裝uni-chat以後進行聊天

競爭Competitors

  • QQ等國內的聊天軟件在Windows、Mac等電腦在國內佔據大部分市場,而在Linux的平臺內支持較少
  • Discord, Telegram等國外跨端軟件, 國內使用有網絡障礙
  • 飛Q, 快傳等內網共享文件, 聊天軟件

交付Delivery

咱們能夠經過Npm、Yarn的開源倉庫向用戶交付產品,搭建本身產品的宣傳和下載頁面,並在Github倉庫有開源開罵服務器

電梯演說

當你使用Linux在與同窗在線交流傷腦筋的時候,當你爲在Linux裏忙於安裝QQ等聊天工具的依賴的時候,極可能會懷疑人生,會遇到各類莫名其妙的報錯和Bug。咱們的產品旨在爲Linux用戶提供一個好用的、可靠的、功能完善的工具來與其餘用戶進行在線交流。微信

相關文章
相關標籤/搜索