ITECH 7602 PROJECT

52
ITECH 7602 PROJECT FINAL PRESENTATION SYDNEY TOUR

description

ITECH 7602 PROJECT. FINAL PRESENTATION SYDNEY TOUR. Team Members. Divya Nalla 30107395 Raja Kandasamy 30102984 RajaShekar Donti 30106226 Ren Zhu 30115339 Sadah Omar Sulaiman 30086830. Role of Team Members. Raja Kandasamy – Team Leader, coding Ren Zhu – coding, documentation - PowerPoint PPT Presentation

Transcript of ITECH 7602 PROJECT

Page 1: ITECH 7602 PROJECT

ITECH 7602 PROJECT

FINAL PRESENTATIONSYDNEY TOUR

Page 2: ITECH 7602 PROJECT

Divya Nalla 30107395Raja Kandasamy 30102984RajaShekar Donti 30106226

Ren Zhu 30115339Sadah Omar Sulaiman 30086830

Team Members

Page 3: ITECH 7602 PROJECT

Raja Kandasamy – Team Leader, coding Ren Zhu – coding, documentation

Divya Nalla – DocumentationRajashekar Donti – poster, documentation

Sadah Omar Sulaiman – team website, documentation

Role of Team Members

Page 4: ITECH 7602 PROJECT

Develop a simple online digital tour guide on Sydney city for the iOS mobile device

Aim of the project

Page 5: ITECH 7602 PROJECT

iOS application on exploring the city Sydney, Australia

Users to explore the classical and traditional places of the city

Users to deliver a tour plan accordingly on their current locations

Navigates the user to their destination comfortably

Overview of the project

Page 6: ITECH 7602 PROJECT

Basic project planSoftware project management planSoftware requirement specificationSoftware architecture design documentSoftware testing planUser documentation

Project deliverables

Page 7: ITECH 7602 PROJECT

Analysis

Page 8: ITECH 7602 PROJECT

Content for the applicationData required for the applicationTeam member designation

Analysis

Page 9: ITECH 7602 PROJECT

Design

Page 10: ITECH 7602 PROJECT

Sketched the story boardsCompared the other applicationsDiscussed in locating the buttons and

contents

Design

Page 11: ITECH 7602 PROJECT

Design Initial story board – Home page

Page 12: ITECH 7602 PROJECT

Design Story board – search page

Page 13: ITECH 7602 PROJECT

Design Story board – map view

Page 14: ITECH 7602 PROJECT

Intel-Based Macintosh Computer with IOS SDK (Software Developer Kit) Installed

Applicable to All IOS DevicesDevices includes mobile devices like iPad,

Iphone, iTouch & iPod

System

Page 15: ITECH 7602 PROJECT

PatternDesign/Code Structure Implementation

Design Choices

Page 16: ITECH 7602 PROJECT

Handling EventsDisplaying Content on the Screen Interacting with the rest of the SystemRun the application on background

App Design Basics

Page 17: ITECH 7602 PROJECT

Must be Different in Background and Foreground

Runs Simultaneously apps in the background

Only one foreground App but multiple apps can run in the background

Core App Objects

Page 18: ITECH 7602 PROJECT

For iOS apps, performance means more than just writing fast code

App does not degrade battery life significantly

The types of changes that are likely to provide the most benefit

Performance

Page 19: ITECH 7602 PROJECT

Tools required Operating system – MacintoshSoftware – xcode 4.6.3 with simulatorDatabase – Google APIProgramming language – Objective C

Development

Page 20: ITECH 7602 PROJECT

Practical aspects involved with implementing your app

 installed the iOS SDK and configured your development environment

Prerequisites

Page 21: ITECH 7602 PROJECT

App Store provides information for Developing Environment on how to configure the Development Process and an overview

Prerequisites contd.,

Page 22: ITECH 7602 PROJECT

Class diagram

Page 23: ITECH 7602 PROJECT

iOS ArchitectureLayers

Cocoa Touch Media Core Services Core Operating System

Page 24: ITECH 7602 PROJECT

FrameworkDynamic Shared LibraryHeader Files ImagesHelper Apps

Page 25: ITECH 7602 PROJECT

Development EnvironmentX-Code

CreateTestDebugTuneThis is to be done in an iOS Simulator

Page 26: ITECH 7602 PROJECT

Developer LibraryDocumentationPlatformObjective cGoogle API

Page 27: ITECH 7602 PROJECT

Design PatternsThe great thing about these patterns is they

work well regardless of the tools you are using—whether it’s Objective-C and iOS, Java and Android, or C# and Windows Phone

Page 28: ITECH 7602 PROJECT

Evolution and Changes in Apps

Not just once or twice, but many times over—and that’s even before you release it to the App store for the first time

After it’s released, your App will change even more as others use it, provide feedback and suggest enhancements

Page 29: ITECH 7602 PROJECT

Where to Implement? User Interface(UI) Core logic Data It is a Monolithic architecture that is difficult to

change Creates a situation where you can’t change one

part of the App without changing the other

Page 30: ITECH 7602 PROJECT

Model-View-ControllerA more formal way to look at the three main

parts of an App is by means of the Model-View-Controller design pattern

Model →  DataView → User InterfaceController → Core Logic

Page 31: ITECH 7602 PROJECT

ModelThe Model is your application’s data and, in

iOS, usually takes the form of entities. An entity represents an object in the real world

Customer entity, Order entity, and Product entity

Page 32: ITECH 7602 PROJECT

VisionVision is the interaction between the user and the systems directly. The user interacts with objects likeButtons Slide barDropdown boxesSearch bar

Page 33: ITECH 7602 PROJECT

ControllerThe Controller acts as an intermediary

between the Model and the View. The Controller is where your core logic goes

Page 34: ITECH 7602 PROJECT

Flow diagram

Page 35: ITECH 7602 PROJECT

InteractionUser interacts with viewTouchTap Pinch

Page 36: ITECH 7602 PROJECT

Interaction contd.,In response, the View passes a call to the

Controller, and the Controller does something related to the response based on that interaction

Page 37: ITECH 7602 PROJECT

Alternative Process Interaction

Sometimes when saved, a Model entity, it gets new or default values

For example, if you save a new location entity, it may be assigned an location number. So, the model can fire an event that tells the controller

Page 38: ITECH 7602 PROJECT

Defects  A view is typically bound to a single view

controller Ultimately, the view controller is a user-interface

object. It’s not the tight coupling between the view and the view controller that’s the problem—that’s perfectly fine

The problem is the core logic code that’s in the view controller

Page 39: ITECH 7602 PROJECT

Defects contd.,Unfortunately, because the core logic is

buried inside the view controller, there isn’t a clean way to reuse this logic in another App. It’s “stuck in the weeds” of the user interface

Page 40: ITECH 7602 PROJECT

Better Implementation Techniques

Put in the core logic in some other place where you can access it from multiple Apps, or from multiple view controllers in a single App

Page 41: ITECH 7602 PROJECT

Screen shots of the application

Page 42: ITECH 7602 PROJECT

Screen shots of the application

Page 43: ITECH 7602 PROJECT

Screen shots of the application

Page 44: ITECH 7602 PROJECT

Screen shots of the application

Page 45: ITECH 7602 PROJECT

Screen shots of the application

Page 46: ITECH 7602 PROJECT

Screen shots of the application

Page 47: ITECH 7602 PROJECT

Screen shots of the application

Page 48: ITECH 7602 PROJECT

Screen shots of the application

Page 49: ITECH 7602 PROJECT

Screen shots of the application

Page 51: ITECH 7602 PROJECT

http://9slides.com/http://writing.engr.psu.edu/models.html

References

Page 52: ITECH 7602 PROJECT

Thank you