Share
Explore

How to build IT Products from a Business Perspective

Approval Date: Thursday, May 27, 2021
Approved for Academic Year: 2021-2022
Credit Weight: 4.00

Course Description

This course is the culmination of the all material learned in the program. In this project-based course, students design, develop, and publish an app that showcases the knowledge and skills gained throughout the program.

Key Elements of this Course:

Developing an Understanding of the roles of Project Management and Software Engineering in bringing and IT Product to market.
Project Management and Git ISSUES
Creating Project Planning Instrumention.
Maintaining your Project Plan in Latex.
Contents of your Planning Document:
The UVP
Monetization and Pricing
Software Engineering using Unified Process

All students must produce a ready-to-publish mobile application in a platform of their choice such as iOS, Android or cross platform.

Course Learning Outcomes/Course Objectives

Ideation: Propose your mobile app idea in a presentation format taking into consideration scope, category of the app, monetization, length of the project, resources, and competitive analysis.

1.1 Present an idea for a mobile app
1.2 Plan the development of the mobile application
1.3 Perform competitive analysis for proposed mobile application
1.4 Select and justify the chosen monetization technique

2 Identify the requirements and use cases of the proposed mobile application.

2.1 Identify functional requirements of the proposed mobile application
2.2 Identify any non-functional requirements of the proposed mobile application
2.3 Describe the use cases of and User Stories for the proposed mobile application

3 Analyze and design the proposed mobile application based on identified use cases and requirements.

3.1 Analyze all use cases and DESIGN the required components and flow of data
3.2 Analyze both functional and non-functional requirements of the proposed mobile application
3.3 Design all necessary components of the mobile application using UML
3.4 UI Prototyping: Using wireframing to outline the basic structure of your application

4 Integrate ideas and collaborate with team members to complete assigned tasks.

4.1 Perform and document daily agile team meetings. Use GIT ISSUES and keeping Success Optics on the Tracability Matrix to track the development of your Code.
4.2 Effectively communicate with team members and other stakeholders of the project using GIT ISSUES
4.3 Propose and discuss ideas to help complete tasks using the TRELLO BOARD.

5 Implement the proposed mobile application for the proposed platform using the agile software development methodology.

5.1 Perform daily sprints on scheduled tasks and GIT ISSUE resolution. Maintain a Google Doc Journal of issues and planning.
5.2 Perform daily check, commit, push and pull of the source code on GitHub
5.3 Complete tasks in time according to the project plan

6 Design and implement and execute test cases for the proposed mobile application to make sure it satisfies all requirements.

6.1 Identify all test cases for the proposed mobile application
6.2 Design the test cases with detailed outcomes
6.3 Implement the identified test cases
6.4 Execute the identified test cases

7 Debug, optimize, and finalize the mobile application for publishing.

7.1 Identify and fix any bugs or issues in the mobile application
7.2 Optimize the application for performance and efficiency
7.3 Prepare the application for publishing, including creating necessary assets and documentation
7.4 Publish the mobile application on the chosen platform

8 Present the final mobile application to stakeholders and the course instructor.

8.1 Prepare a comprehensive presentation showcasing the mobile application's features and functionality. This will be done in the format of a VIDEO.
8.2 Demonstrate the mobile application to stakeholders and the course instructor
8.3 Address any questions or concerns regarding the mobile application
8.4 Reflect on the development process, challenges faced, and lessons learned. This will be the final delivery of your GOOGLE DOC Project Journal.

Course Evaluation

Proposal Presentation: 10%
Midterm Progress Report: 20%
Final Mobile Application: 40%
Final Presentation and Demonstration: 20%
Participation and Collaboration: 10%

Required Textbooks and Resources

Android Studio / Xcode / appropriate development environment for the chosen platform
Git and GitHub for version control and collaboration
Online resources, tutorials, and documentation relevant to the chosen platform and development tools

Course Policies
Attendance is mandatory and contributes to the participation and collaboration grade. More than 3 unexcused absenses will result in a Failing Grade.
Late submissions will have a penalty of 10% per day, up to a maximum of 50%
Academic dishonesty, including plagiarism and cheating, will not be tolerated and may result in a failing grade

Course Schedule (subject to change)

Day 1: Course introduction, brainstorming mobile app ideas. Creating the Project Management instrumentation and start putting together Team Structure.
Accountability: By the end of Day 1: Each team will submit a TEXT File named as TeamName.txt containing:
URL of Overleaf Latex Document
URL of TRELLO Board
Names and Student IDs of Team Members.

Day 2: Writing the Proposal presentation and project planning document in Latex and TRELLO
Day 3-4: Requirements analysis. Building user stories and use cases. UI Prototyping. Create the Tracability Matrix.
Day 5-7: App implementation, agile development, and collaboration.
Day 8: Midterm progress report. Milestone Evaluation.
Day 9-11: Continued app implementation, testing, and debugging
Day 12-13: Finalizing the mobile application, preparing for publishing. Publishing can be done on EXPO.
Project Presentations will be done on an individual, not team, basis in the last 3 days of the Course.


How to Build Apps From a Business Perspective


There is way more to building successful apps than just coding.
Here we see of the gears that mesh together to get a technology product to market.

Unit 1.1 What is the value proposition of your app?

Do you need a web app or just a better website?
Categories of Apps – which app category is easiest to compete in?

Unit 1.2 Identify the problem you are trying to solve with your app.

Candy, vitamins or addictive painkiller?
Fulfillment, recognition, security
The Five Whys

Unit 1.3 How to discover a niche in the marketplace

Follow popular trend
Add a twist
Your own expertise
Problems in existing competition
Unit 1.4 Listening to users
Users that exist in the market
Get user feedback
Idea 2.0
Homework 1.1 Airbnb and Lyft
Homework 1.2 App Annie and Sensor Tower
Homework 1.3 Write an application plan

Unit 2 UI, UX, MVP design

How to create user stories
Planning for an MVP

Unit 2.2 Designing an effective UI user interface

On boarding new users
The Google UI Case Study
The Photoshop Adobe UI negative Case Study
Effective UI elements
Don’t Make Me Thing Steve Krug
UI design templates
Design for your target audience
Unit 2.3 How to design an effective UX User Experience
UX is where Design strategy and Technology intersect
Application Flow
Measuring Conversion Rates
UX outside of the app
The User Empathy Map
Six principles for a positive UX

Unit 2.4 The MVP

The Lean Startup MVP concept by Eric Ries
Planning for future versions of your app
What is NOT an MVP
Zappos MVP Case Study
The MVP design pyramid
The purpose of an MVP
Keeping the cost of an MVP low
Homework 2.1 App Design Case Studies
Homework 2.2 Develop User Stories
Homework 2.3 Interactive UI prototype

Unit 3.1 Marketing and Monetization for an App

The BMC Case Study
Unit 3.2 Monetization Strategies of Apps
Apple App Store vs Google Play Store revenue
iOS vs Android user value per customer
iOS vs Android market share in various countries

Unit 3.3 Marketing Your App

How users discover your app

Unit 3.4 Dealing with Investors

Homework 3.1 Build a BMC for your app

Unit 4.1 Building Customer Loyalty

Why Customers Abandon Apps?
First-to-Mind solution
Compulsion
Morality of Addictive Apps
The HOOK app addictive model
Homework 4.1 Understanding Hook
Homework 4.2 Applying Hook

Unit 5.1 Choosing the Right Tools


Unit 5.2 Nine Companies Who Nailed their App

Unit 5.3 Development Languages and Cross Platform Tools

Homework 5.1 Compare Dev Tools
Homework 5.2 Recommend a Development Solution

Unit 6.1 Full Stack Considerations

Choosing a Database Backend
SQL
noSQL
SQL vs noSQL
Graph Database
Full Text Database
Vertical Scaling
Horizontal Scaling
Data Duplication in Distributed Databases
SQL Shards

Homework 6.1 Recommend Database Solutions

Homework 6.2 Explore API services

Unit 7.1 Hiring the Development Team

Four Roles of a Software Development Team
Product Manager
Product Designer
Front End Developer
Back End Developer

Unit 7.2 Mobile vs Web Development

Skills Used in Mobile vs Web Development
Web vs Mobile Development Salaries

Unit 7.3 Agile Team Management

SDLC Agile vs Waterfall
What is Waterfall Development?
What is Agile Scrum Methodology?
The Product Backlog
Spring Planning
Sprint Backlog
What is a Sprint?
Product Increment
Daily Scrum
Sprint Review
Sprint Retrospective
Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.