Skip to content

Nayanika: Design Process - Problem Statement

All too many projects fail because they start out without a clear idea of where they’re going.

Bull’s-eye…​

I don’t have a clear idea when developing Nayanika. I know that I want to build an application to read my Comic Book collections. But, I’d failed to define what problem Nayanika need to solve. So, I always think that the feature is not enough. But, I fail to define what is enough for Nayanika.

I understood that I’m doing poorly in managing Nayanika. I’m not creating a better groundwork on design and architecture for Nayanika. It makes me not sure what Nayanika should be.

So, after learning from my mistake I also studied software management. And to design good software, there are steps that need to do:

  1. Learn about the problem domain.

  2. Interview the users and determine their needs and goals.

  3. Develop the "Problem Statement".

  4. Develop the "User Stories".

  5. Implement the user story.

I could skip the first step. Because the problem domain is not that hard. I don’t need to buy a book or take classes for reading a book, right?

I also skip the second step. For now, I’m the end-user who will use the software. I’m currently doing the interview in my own head. And don’t force me to put it in writing since it would be silly banter.

So, for the first instalment of the Nayanika: Design Process series I will write about the third step, defining the problem statement.

This is my attempt to create a Problem Statement about Nayanika. My goal is to succinctly, but accurately, state the problem that Nayanika trying to solve. I keep reminding myself, that I need to focus on what and why. No tiny amount of how in this problem statement. I need to create, I hope, a well-crafted essay.

For cyber friends who don’t know what is problem statement is. Here is my understanding.

A problem statement should define the problem, not a computer-based solution to the problem. It’s about a real-world problem that end-users trying to solve. Words like computer, menu, dialog box, internet, "world-wide-web", and many more have no place here. A problem statement never have sentence like The system must…​ or We need to write a computer program that…​.

Writing a computer program is my problem, but it’s rarely involved in the problem that end-users struggling with. Most problems can be solved perfectly without computers—​though the computer might make the solution easier or faster. So, the problem must be described perfectly well without mentioning computers.

If you can’t say it in clear well-structured English, then you don’t understand the problem well enough to design anything.

So, here’s what I came up with:

The Nayanika

A Comic book is one of my favorite entertainment media. I have consumed this media since high school. Of course, I have a lot of collections on my bookshelf. But, my collection is a little bit unique.

I only have small collection of comic books that I bought from the bookstore. It’s like 30% from my collection. The rest is from an indie comic book and comic strips.

There is not much difference between official comic books and indie comic books. The former is published by a well-known publisher and sold in bookstores. While the later is printed and sold by the author. The only notable difference is in the format and quality of the book itself. But, it’s still acceptable to me. Both official and indie comic books are stored in my bookshelf.

Now, when coming into my comic strip collections, it’s become a little bit messy. I collect it page by page, store it in a folder, and then store it on my bookshelf. The problem is, the page sequences are a mess. I’m not buying the magazine regularly. Of course, the pages are not in proper sequence. This, made me need to sort it before I could read it.

I know how unique is my comic book collections. When I’m young, all the differences and quirks are not bothering me. But, it’s different now. I have less time and all those quirks are lessening my joy to read comic books. I just want to enjoy my comic book.

So, I made Nayanika. To make my experience with my comic book enjoyable again.

Nayanika will help me find comic books from the bookshelf. It will give me a list of titles that I could choose. It doesn’t matter whether it’s an official comic book, an indie comic book, or even my comic strip collections. Nayanika will do the process for me and help me to read it. Especially with my comic strip, since Nayanika will fix the sequence order for me.

After I pick which comic book that I want to read it will show me the cover. I could ask Nayanika to show the back cover as well. If it picks my interest I will continue to read. If not, I will ask Nayanika to find another comic book for me again.

Nayanika will help me as well to read the comic book. It will wait until I finish reading the page. When I’m done, I need to order Nayanika to flip to the next page. The same thing when I want to re-read again the previous page I need to tell Nayanika to flip to the previous page.

One problem I’m facing when reading a comic book is. The text sometimes is so small. With beautiful graphics often time the text is made to be short and simple. But, there are some authors who also prefer to put long words. When I encounter this I will use a magnifying glass. So, Nayanika was also equipped with magnifying glass too.

Giving orders to Nayanika for flipping the page is good. But, sometimes it takes time and my focus when enjoying the comic book. I want Nayanika to flip the page for me automatically. Of course, with some time for me to read the page. With that, I could fully focus on enjoying my comic book.

Goals (ranked by importance)

  1. To read my comic book.

  2. To enjoy my comic book.

Glossary

Comic Book

A combination of narration, dialogue, and stunning panelled comic art to tell an action-packed story via serialized issues.

Official Comic Book

A comic book published by the publishing company and sold in the bookstores.

Indie Comic Book

A comic book that is created, printed and sold directly by the author without help from the publishing company. The format and quality are totally different from comic books published by company.

Comic Strip

A series of adjacent drawn images. The author often releases their comic book page by page to gauge the audience’s interest. When its popularity is big enough he/she will publish as a comic book either independently or with help of a publishing company.

Flip

Turn the comic book page to the next or previous one.

magnifying glass

Make objects appear larger. Very helpful when reading the text on comic books.

I don’t think the problem statement is complete. But, it’s a start. And I’m surprised that I could make the problem statement without any computer jargon. Consider that my goal is actually to build a digital comic book reader application. So, I’m quite happy for now.

I think the problem statement is sufficient for now. Whenever something is up, I will update it.

Let’s meet on the next series of Nayanika: Design Process.

If you have any comments or corrections please feel free to email them to me. Also, if you found any of the content on this website useful consider buy me a coffee ;)