Exercise 2 - Needs Assessment
Objective - Develop an App that allows a user to search up the name of a novel and list out all of the libraries and Bookstores within a specified vicinity that have the novel in stock
Background - Avid readers that prefer physical copies of novels
Methodology - An App available on either Android or IOS free to download to the public
Expected Results - A user would input a name and author of a novel and their location, and the output will be a list of all known libraries and bookstores with that novel in stock within the radius they specified based on public catalogues.
Costs - The expected costs of this project are very minimal as it can be built on a basic App.
Exercise 3 - Problem Formulation
Problem statements: Even with the rise of Ebooks, many avid novel fans prefer a physical copy of a book. It can be difficult to find out from home where one can find the nearest copy of a novel they are interested in. Library catalogues online generally do not have a user friendly interface and can be hard to navigate, and a user is limited to searching one library at a time. The ability to search for a novel can be vastly simplified by pulling all of these libraries databases into one app straight on their smartphone that will do all of the work for the user in a simplified and easy to read manner.
Statement-Restatement Technique:
The stated problem is that it is difficult to swiftly find out the closest location that a specific novel is available for either purchase or rental. The real problem in contrast to the stated problem is that many users do not want to put in the time or effort to search in a library's online catalogue to see if a novel is in stock. It is too time consuming and generally not friendly to anyone incompetent with technology. There is a need to simplify the way to discover if a library has a novel in stock for rent or if a bookstore has a novel in stock for purchase.
The inferred boundaries to the problem is that not every library will have updated catalogues, and many bookstores will not have a public inventory of books available for purchase. The actual boundaries are being able to successfully identify every bookstore and library within a given radius, identifying a public catalog from a website or database, and successfully pulling the data and being able to search for the novel that the user requested.
The set of given goals is to successfully identify the closest library or bookstore that has the novel in stock that the user would like to read in contrast to the meaningful goal of simplifying the process of searching for a novel and convincing libraries to make their UI's more user friendly.
The inputs will be the name of the novel, the author of the novel, the user's location, and the distance they want to search. The outputs will be confirming the name of the novel, the author of the novel, the ISBN number to confirm it is the correct novel, the name of each location that has the novel in stock with the address and distance from the user. Unknowns will be any typos in the name of the novel or author, or inputting the wrong name. Eventually I would like the app to be able to infer what novel the user is attempting to search for, but as a baseline I would like the app to return that it could not find any novels of that name within the set distance.
Why-Why Diagram
Duncker Diagram
KT Problem Analysis:
WHAT
What is known?
It is difficult to find out where the closest location is that a novel is in stock
What is NOT known?
How do users currently go about finding if a book is in stock nearby
What was observed?
Users often go to their local library without a second thought and often find they don't have the novel they were looking for
What was NOT observed?
Users using the libraries online catalog to check in advance if the novel is in stock
What are the constraints?
Successfully identifying what locations have the novel in stock in a set radius
What are NOT constraints?
Replicating an entire catalog of novels for each location searched
What is important?
Simplifying the process for finding if a novel is in stock and where.
What is NOT important?
Information about other novels in stock
What are the goals/objectives?
Create an easy to use app that will tell the user the closest location that has the novel they are looking for
What are NOT the goals/objectives?
Creating a complex app that provides an overwhelming amount of information to the user
What can be expected?
An easy to use application that will output information on where to find a specific novel
What is NOT expected?
Information about the novel or the locations given
WHEN
When did the problem occur?
This problem became an issue with the rise of applications.
When did the problem NOT occur?
Before the rise of IoT
When must a solution be implemented?
A solution should be implemented within the next year as we return to a normalcy from the pandemic
When is a solution NOT needed?
A solution is not needed for those who prefer to read on tablets and phones
When did changes occur?
Changes associated with this problem occurred as libraries moved their catalogs online but did not make an easy to read UI
When did changes NOT occur?
Before the rist of IoT
When were instruments calibrated?
GPS instruments are calibrated by the user's phone when the app is in use
When were instruments NOT calibrated?
Instruments are not calibrated when the app is not in use.
WHO
Who can provide more information?
Data scientists and librarians can provide information about how much traffic their catalog website receives, and avid novel readers can talk about how often the book they want is out of stock
Who CANT provide more information?
Individuals that are not avid novel readers
Who is the customer?
Users that are avid readers and fans of physical books
Who is NOT the customer?
Users that do not read or read on ebooks
Who performed each task?
The team members designed the application and completed each task
Who did NOT perform each task?
Anyone not associated with the team that completed the project
Who is the source of information?
Users that struggle to navigate online catalogs
Who is NOT the source of information?
Anyone that does not read physical novels
Who is affected by the problem?
Users that are avid readers and prefer physical copies of novels
Who is NOT affected by the problem?
Users that are not avid readers
WHERE
Where did the problem occur?
The problem occurs across all countries that have an established library system
Where did the problem NOT occur?
The problem does not occur in societies without a library system
What are input sources located?
Input data will be gathered by the user inputting the Novel's name, author, location, and radius.
Where are input sources NOT located?
Input sources are not located from anywhere that is not the user
Where is the customer located?
The customer is located internationally
Where is the customer not located?
The customer is not located in areas without smartphones or libraries
WHY
Why is the problem important?
The problem is important because it develops a neglected area of user interface development. It allows users to easily search for the location of novels rather than struggling through an interface of a libraries online catalog.
Why is the problem NOT important?
The problem is not vital to the function of society nor does it invent anything, it simply improves the user experience.
Why does the solution work?
The solution works because it offers users a simplified way of finding the stock of a novel, rather than searching through complex databases
Why does the solution NOT work?
The solution doesn't work because it does not make anything new, only improves the current process.
Why is there a problem?
Library catalog UI's are ugly and very hard to navigate.
Why is there NOT a problem?
If users understand how to navigate a library website properly, they will be able to find out if the novel is in stock.
HOW
How is the problem related to other problems?
The problem is related to the overall simplifying of data and making aspects of an individuals life easier and more accessible
How is the problem NOT related to other problems?
The problem is specific to those with a need for physical novels
How can a task be performed?
A task is performed through the developer making updates to the application
How can a task NOT be performed?
A task can't be performed without the developer making updates to the application
How did the problem develop?
The problem developed as technology continued to expand and library catalogs were not updated with friendly UI
How did the problem NOT develop?
The problem did not develop through the fall in popularity of libraries
Exercise 4 - Solution Development
Design Tasks:
Create a functional application that can take user input and create an output based off of that
Successfully be able to identify libraries within a given radius
Find each library's online catalog database and be able to search it and give results based on the user's input
General design goals:
Create a simple, easy to use app that will output easy to read and specific information
Consistently be able to find library catalog databases and pull information successfully
Provide users with information on stock of a novel at each location found
Specific design goals:
Create an application with an appealing UI that successfully can read input and user location
Be able to take the users input and interpret it into finding the exact book within a radius at different libraries
Simple to use for the elderly and those not very good with technology since that involves a large portion of active book readers
Identify the constraints associated with each design goals:
What to do when a user misspells or does not know the name or author of a novel
How to consistently search and pull data from a library's catalog database
How to identify each library in an area
Path Elimination:
I have eliminated Bookstores from the original product idea and am focusing on libraries as nearly every library has a catalog database that is easy to find whereas many bookstores do not
Exercise 5 - Intellectual Properties
Trademarks, Copyrights, and Patents:
I was not able to find any similar products to what I am proposing, and therefore could not find any active Trademarks, Copyrights, or Patents
I am not sure if it is legal for me to pull a public libraries database into an app, and would need to do further research when developing the app
Exercise 6 - Abstraction and Modeling
System Model
The system model for this project will be deterministic. The model is deterministic because there are expected inputs and expected answers without room for variation, for example if a user searches for Dune by Frank Herbert, they will always receive the same output from the application without variation. An example of potentially changing the app to a Stochastic model would be having the application recommend novels based off previous searches.
Process Model
The process model for this project will be descriptive. There will be set instructions on how to get the output that the user wants. For example, the user needs to input the novel name, author, their location, and location search radius in order to receive an output of where they can find that specific novel. If a user does not follow these input instructions correctly, they will not receive the output they desire.
Exercise 7 - Synthesis
Exercise 8 - Ethics and Liability
Ethical Issues:
Foreseeable misuses - A user may be able to make a bot spamming out inputs, overwhelming the API and the website catalogs the API is pulling from potentially causing library catalog websites to go down due to an overload of traffic.
Application Error - The app may not properly read the websites novel information correctly and say that a novel is in stock at a location when in reality it is not
The product may take away needed traffic from library catalog websites
Product liability:
Library websites may begin to update their UI's to be attractive, intuitive, and easy to use negating the purpose of this app
Library websites may continue to change and evolve, making the API to pull website data have to be constantly rewritten and updated
Social impact:
The product is extremely easy to shut down and dispose as it is only alive in the form of application
In order to form revenue, the product will need to have in application advertisements or charge a fee for download
Exercise 9 - Failure and Hazard Analysis
Solutions to the hazards identified in Exercise 8
Ethical Issues:
Throttle the amount of inputs a user can put in, such as one every one minute. Further analysis is needed for an exact number that would be appropriate.
Provide a link to each listing of the novel on the website that the application found to be in stock to allow the user to confirm it is the correct novel found and it is indeed in stock at said location, which also increases traffic to the library catalog website
Product liability:
Realistically this won't happen, but the app can continue to expand and offer more than just novel searches such as novel recommendations and reviews
Attempt to partner with different libraries across the USA to make sure this does not happen
Social impact:
Form the UI of the application in a way that creates non-invasive advertisements, add in an option to voluntarily support the creator on patreon or something of the sort. Creating a public discord as well and being active with the community has proven to be very profitable for many startups and independent projects such as vdo.ninja
Exercise 10 - Design Analysis
Exercise 11 - Implementation
11.1 Design Diagrams
11.2 Gantt chart
11.3 Senior Design Plan
I do not have a Senior Design Plan at the moment, I will be on Co-op in the Spring and Summer of 2022.
My goal is to find a group that needs an extra member over the summer, or find colleagues that are also going into D7 in the Fall of 2022 over the year.
I do not think the project i made for D6 is a great idea for Senior Design, so I will be going back to the drawing board with new group mates and hopefully can brainstorm a great senior design project.