Bibliotheca - Neslihan Kalayci: Difference between revisions

From CS486wiki
Jump to navigationJump to search
Content deleted Content added
No edit summary   (change visibility)
Line 11: Line 11:
Xamarin Studio
Xamarin Studio



== Use Case Diagram ==

== Approach ==

=== Use Case Diagram ===


[[File:bibliothecaV1.jpg]]
[[File:bibliothecaV1.jpg]]
Line 18: Line 22:
* Use case diagram may be exposed to updates.
* Use case diagram may be exposed to updates.


== Gantt Chart ==
=== Gantt Chart ===

== Approach ==


=== Project Strategy ===
=== Project Strategy ===

Revision as of 07:41, 11 November 2015

Introduction

Creating native Android app in C#.

About Bibliotheca

Bibliotheca is a mobile application that enable users to keep their own collection of books. It can be also evaluated as a book journal. By using this application, users can have a mobile library that keep tracks of their reading habits.

Objectives of Bibliotheca

The objectives of Bibliotheca to give users a platform that creates their own virtual library. Bibliotheca will work on Android mobile operating system. User can create their own profile and add/delete/update books on the system. The application consists of four different pages to meet the different demands; 'Books to Read'(like a wish list), 'Reading Now', 'Have Read' and 'Favorites'. In this virtual library system, each book has their own book cover, brief description etc. Each page will have different attributes to keep book's data with regarding user's preferences.

Requirements

Xamarin Studio


Approach

Use Case Diagram


  • Use case diagram may be exposed to updates.

Gantt Chart

Project Strategy

The Project Schedule

Based on weekly stages

Stages

Week 1-5

- Determining Project Scope and Requirements

- Xamarin Studio configuration

- Xamarin user account validating

- Investigate Xamarin Android Guides [1]

- Understanding of Application Fundamentals

- Becoming familiar with User Interface & Elements

- Working with user interface elements; Textbox Usage, Button Click, Layout, Frame Layout, Relative Layout, Toolbar, Side view , Recycler View etc.

Week 6

- User Interface design

- Outlining pages and subpages in the mobile application

- Determining the user interface elements to fulfill the demand

- Starting with 'Have Read' page design & Determining Page Features;

This page will get information about book from user by asking the book title, author name, book cover, and brief description of book. After saving the new book, books can be listed on the grid view or list view format. Books also can be rated by user in the adding new book page.

- While choosing book cover page, user will have two options which are 'Select from gallery' or 'Take a new picture' .

- Adding new book also have two possible outcome; failed and succeed. If a problem occurred, the system wants to readjustment for book's info. Otherwise, pop-up message will appear which says that 'Saved Successfully!' .

Week 7

- Android SDK with Android 5.0 is used.

- Newest version of Library & Packages are being used for this project.

- MainActivity is changed from Activity to AppCompatActivity.

- Google Material Design is applied. [2]

- Custom Xamarin Android Material Theme Introduction [3]

  • Customize Material Design

- Material Design - Adding Toolbar [4]

  • Toolbar is used instead of ActionBar.(Replacing the ActionBar with the new Support v7 App Compat Toolbar.)
  • Support Toolbar (New version)
  • Support Toolbar came with Support v7 AppCompat & Xamarin Support Library Design
  • Creating Toolbar & Theming for each sub-page and main page
  • Create Toolbar style in the values folder.
  • Current/default android theme was changed to customize my own theme.

- Floating Action Button for the Main Page

  • Click Event
  • Customize Color & Design
  • Customize click effect

- Navigation View is created in the Drawer Layout. [5]

  • Customize Navigation View items
  • Icons are added for each item. Icons are selected from Google Material Icons. [6]
  • Click event is created. Navigate a new page for responsible item.

- Create separate pages for the Have Read, To Read, Reading Now, Favorites & Add Book

  • Add toolbar in each layout

Week 8

-Determine Requirements for the CardView Usage

  • Xamarin.Android – Xamarin.Android 4.20 or later must be installed and configured with Xamarin Studio. In Xamarin Studio, version 5.5.4 or later is required.
  • Android SDK – Android 5.0 (API 21) or later must be installed via the Android SDK Manager.
  • Xamarin.Android.Support.v7.CardView package.(added from Xamarin Studio)

- Basic CardView

  • Usage

- CardView Usage in the Have Read Page[7]

  • Customize and Create Card View to show up list of books


- Research about RecyclerView & CardView usage

Week 9

- RecyclerView vs. ListView [8]

  • RecyclerView can be described as a new form of ListView.
  • RecyclerView is an Android widget that displays a collection of items in a list or a grid, enabling the user to scroll through the collection.

  • The LayoutManager can be thought of as the intermediary between the Adapter and the RecyclerView.
  • The Adapter inflates the layout for that item and creates a ViewHolder instance (not shown) to cache references to the views at that position.
  • Data Set is the Book Data list.

- Basic RecyclerView

  • Usage

- RecyclerView adapter is added into the Have Read Page.

- Recycler View & CardView

  • In the Have Read Page, RecyclerView will be applied.
  • RecyclerView contains a list of book as in a CardView Design.

- Find out possible database solutions for Xamarin Android

  • Decide which platform is going to be used

-Databases are primarily used for the storage and recall of information. There are three key ways to use the built in capabilities of the Android database system.;

  • Create a Database using ADO.NET
  • Create a Database using SQLite
  • Create a Database using the SQLite Component

- Working on the keep Book Data in offline

  • Xamarin SQLite is going to be used for this process. [9]
Week 10

Week 11

Week 12
Blank for now
Week 13
Blank for now
Week 14
Blank for now
Week 15
Blank for now

Project Costs/Budget

Project Management Plan