2020 ソフトウェア設計及び演習用の班Wiki

19::gr09::haur

IDE1.png

プロトタイプDEMOはこちら

General Executive Project Manager

Library and Software used

  • Library
    • leaflet js
    • jQuery
    • moment js
    • passport js
    • three js
  • Software
    • Phonegap (Compile Framework)
    • Django (Server-side Python Framework)
    • Wordpress (Work as sub-server: PHP content manager)
    • Nodejs (サーバーサイドのJavaScript環境)
    • Express (Framework)
  • Language used
    • Javascript
    • Json
    • CSS
    • html
    • PHP CMS, content management system
    • Python for back end scripting / web scrapping

進行方針

We will be using Phonegap's cross platform compile capability to create a android application/web application(Iphone's application need developer certificate that cost money, which is why we didn't go for the IOS platform. But it is possible) at the same time to speed up our development.
One advantages of our application is that it doesn't need access to GPS at all.
All path finding algorithm is made manually towards each destination. Which unless the university is destroyed or is rebuilt. The obstacle within the compound remain constant.
By approaching GPS-free application. Our application is able to conserve battery usage and easier access.
It works offline. That fact alone is more than enough to beat our competitors.
Even our phone application is based on a web application structure, data transfer between server and client is different.
This is especially important when it comes to data access from client to database.
In our normal browser based interface, data access can be easily done by using PHP to access database and retrieve its data.
But in our phone application interface, to access external database is not as simple as web client. Which we cannot just use PHP or MYSQLI to connect to our database ::directly in this scenario.
Which is why, in order for our phone client to access to database. We will be converting data from client or from server into JSON and from JSON to the respective ::language to allow cross language communication.
Also, for security reasons we decided to avoid database access through PHP to prevent SQL injection and data left in the corresponding session.

Luxury content

  • AI path finding
  • Personalized settings/content
  • Interaction with IAssistant
  • Bulletin board

Sponsor

七回目

検索バーが出るようになりました。 もともと、fuse.js というLibraryを使って、検索機能を実装するつもりなんですけれど、サーバーの構造とデータベースの構造に合うために0から作りました。

中間発表

ログインシステムを完了しました。データーベースはMYSQLでやるつもりだったけれど、この機会に通してNoSQLのMONGODBを試しました。典型的のデーターベースと違ってテーブルがないため、最初は色々苦労しました。しかし、やってみる柔軟性もあり、データーの編集もしやすいため、NoSQL最高と思いました。一つのタイプのデーターベースに執着しては行けないだけど、これからもNoSQLをどんどん使うつもりだ。

10回目

インベント表示のシステムを導入しました。二週間以内に発生する予定のイベントを全部メニューに表示させ、マップにピンを付けるのだ

11回目

BLENDERで作った3DモデルをThree.jsを通してウェッブ上に表示させる作業を行いました。もともとは他の班員の仕事何ですが、使っているライブラリの関数が最新版のThres.jsから削除したことで、まだ調査が必要です。そしてブラウザーがローカルのファイルを弄るようなステップなので、アクセスできないためにエラーが出ることによって、ロカルサーバーと立ち上げてやる必要があります。

12回目

時間が限られていますので、新機能2を中止して、全力BUG潰しの作業を集中することになりました。3Dモデルも無事にBLENDERを使って、gltfファイルとして出力してからウェブに挿入できるようになりました。

13回目

これから説明・計画書を書くことと機能の合体作業を中心として、班長・副班長が作業していきます。アプリケーションの説明を少し書きました:(README.mdの中にも書いてあります。)

このウェッブアプリはNODEjsで作って、一応s0617042のサーバーにあげました。もともとの発想はマルチプラットフォームアプリケーションです。
WINDOWS:ブラウザ / Electron
MAC:ブラウザ / Electron
IPHONE:ブラウザ(いIOSアプリ金かかるから)
ANDROID: アプリケーション (PHONEGAPを使って、ボーダーない。アプリケーションのように見えるようなカスタマムブラウザ。)
そう思っていましたが、開発上の都合で、ブラウザのバージョンしか最適化しました。

14回目

新機能の学内イベント検索にユーザー設定した期間内だけのイベントを表示するようになりました。 バックエンドのアルゴリズムよりも表示の工夫をしました。(イベント名は長いため画面に入りずらい。)

最終回

一応DEBUG・皆との最終統合完了しました。サーバーにもアップロードしました。

発表

まだたくさん機能を追加したかったですが、時間がありませんでした。


最終更新日:2019/08/02 15:12:18