Date post: | 27-Dec-2015 |
Category: |
Documents |
Upload: | damon-greer |
View: | 214 times |
Download: | 0 times |
Social Network for Behavior Change
Team #11:Gavin Monroe
Nicholas SchrammDavendra Jayasingam
Client: Yolanda CoilAdvisor: Simanta Mitra
Project Need & Goal
What: • Social networks help the study of human behavior.
How: • Yolanda Coil, needs information about user activity.• Research in human computer interaction.
Why:• No other social network website allows this • Site is private and fully managed
Conceptual Sketch & Description
• Private social network website• Multiple device access• Log activity -> analytics• Administered by a superadmin
Functional Requirements
• User accounts• Private messaging• Calendar• Surveys• News Feed• Posts• Logging• Analytics
Work Breakdown
Gavin Monroe -> Database Design Nick Schramm -> Logging, Analytics, Front-end Davendra Jayasingam -> Back-end, Front-end
Risk Identification & Mitigation
Risks Identified: • Scheduling Conflicts• Requirements Creep • Group Member Dropping & MIA (Actually Happened)
Lessons Learnt:• Uphill climb• Hard to mitigate risk even upon planning
System Analysis
• The system was broken down into two parts: social network and logging features.
• The depth of the logging features depended on how much the social network allowed.
• The purpose of this project required both strong administrative powers and strict security.
• The limited number of user allowed the project to simplify the main users.
• The limited technical experience of the projected users left requires the product be simple.
Functional Decomposition
• The function decomposition is very similar to the functional requirements with a few exceptions.
• The logging system required that all user activity (posts, messages, events, etc.) be stored in a track-able fashion.
• The privacy requirements required all public data be removable in some way.
Code Igniter Framework
• Strictly follows MVC design pattern
• Light Weight• Handles Low-Level
Work• Many Useful Libraries• Wonderful
Experience
Modules - Controllers
• Admin• Events• Log• Login• Message• News• Site• Survey - Admin• Survey - User• Upload
• Controllers acted as a way to section the website
• A Section could contain multiple pages
• The sections were split due to differences in functionality
Modules - Models
• Admin• Calendar• Conversation• Conversation User• Gallery• Log• Message• Newsfeed
• Post• Site• Site Info• Survey Field• Survey Field Response• Survey• Survey User• User
• The purpose of Models is to act as a interface layer between code and the database
• Allows the controller to access the database with out having to worry about how data is stored
Modules - Views• Views contain the actual html and display
information• This allows the controller to display data with out
worrying on how the data is displayed• Project contains many view files• Among the more exceptional are:• Header/Footer• Sidebar• Site• Log• Calendar• Event
Testing Procedures
• Manual Testingo Write codeo Upload codeo Open websiteo Check output to screeno Check log fileso Check databaseo Fail? Repeat process
Test Results & Evaluations
• Manual Testingo Web Browsers -> ✔o Session -> ✔o Input -> ✔
• Automated Testingo Selenium -> X
Field Testing & Client Feedback
What the client likes: 1.Page Design & Layout– Simplicity Approach– Functionality
Conclusions & Lessons Learned
Conclusions• CodeIgniter is a very powerful framework• Creating a Facebook like page is enjoyable
Lessons Learnt• Risk and mitigation plan is very important• Time management is crucial• Project management is never easy
Future Work
• Automated testing• New requirements by client• Satisfy remaining requirements• Complete remaining features• Multiple iterations of product to obtain more client
feedback• Test website with Beta testers