User Guide
- Introduction
- Quick start
- Features
- FAQ
- Command summary
- Glossary
Introduction
Overview
Productiv is a one-stop desktop app for product managers like yourself to organise your deliverables, meetings and contacts so that you can track your product’s development easily.
Productiv is optimized for use via Command Line Interface (CLI). Thus, if you like to type and/or type fast, Productiv has just become better for you. Nevertheless, Productiv still has the benefits of a Graphical User Interface (GUI).
Preview
To get you familiarised, the following is Productiv’s GUI.
GUI components:
-
Navigation bar: where you navigate to other modes.
-
Command box: where you enter your commands.
-
Feedback box: where you can see the feedback of your command.
If your command is successful, you can see a success message.
Otherwise, you can see an error message.
-
Left panel: where you can view
- your product’s overall completion percentage (in dashboard mode), or
- your list of deliverables, meetings, or contacts (in deliverable, meeting, or contact mode)
- your product’s overall completion percentage (in dashboard mode), or
-
Right panel: where you can view
- your product management schedule (in dashboard mode), or
- an expanded view of your selected deliverable, meeting, or contact (in deliverable, meeting, or contact mode)
- your product management schedule (in dashboard mode), or
Note: For modes other than the dashboard, you can see your file path at the bottom of your GUI.
Quick start
-
Ensure you have Java
11
installed in your computer (it should be your default Java version). -
Download the latest
productiv.jar
from here. -
Copy the .jar file to an empty folder.
-
From your terminal, navigate to the folder containing the .jar file and enter
java -jar productiv.jar
to start Productiv. Your dashboard should appear in a few seconds. Note that the app contains some sample data.Dashboard -
Type a command in the command box and press Enter to execute it. Here is a sequence of example commands you can try:
-
switch dv
: Switches to deliverable mode. -
add t/Find profile page template by/11-12-2020 12:00 m/2.1.1
: Adds a deliverable with the titleFind profile page template
, deadline11-12-2020 12:00
and milestone2.1.1
. -
delete 1
: Deletes the 1st deliverable shown. -
exit
: Exits the app.
-
-
Refer to Features below for details of each available command.
Features
Notes about the command format:
-
Words in upper case are the parameters to be supplied by you for their respective fields.
e.g. inadd n/NAME
,NAME
is a parameter for the name fieldn
, which can be used asadd n/Jason
.
Tip: If you are not sure what specific parameter to supply for any of the required fields, supply an estimate or random value as place holder. -
Field-parameter pairs in square brackets are optional.
e.gn/NAME [p/PHONE]
can be used asn/Jason p/98890112
or asn/Jason
. -
Field-parameter pairs can be in any order.
e.g. if the command specifiesn/NAME e/EMAIL
,e/EMAIL n/NAME
is also acceptable. -
If multiple and/or repeat parameters are provided for the same field, only the last parameter will be accepted.
e.g. if you input the commandadd r/dev n/NAME r/stk e/EMAIL r/stk
, it will be accepted asadd n/NAME r/stk e/EMAIL
. -
For single-word commands without fields, any word(s) following it will be ignored.
e.g. if you input the commandlist everything please
, it will be accepted aslist
.
General
Switching modes: switch
Switches to dashboard, deliverable, meeting or contact mode.
Format: switch MODE
-
MODE
can bedb
(dashboard),dv
(deliverable),m
(meeting) orc
(contact). -
switch
dv
,m
orc
will display information related to your deliverables, meetings and contacts respectively, e.g.switch c
will display your contacts. -
switch db
will display your project’s completion status and your own schedule. - How the commands will be executed depend on which mode you are currently in, e.g.
delete 1
in meeting mode deletes the 1st meeting shown.
Examples:
-
switch db
switches to dashboard mode. -
switch m
switches to meeting mode.
Viewing help: help
Shows a message directing you to this User Guide.
Format: help
Exiting Productiv: exit
Exits the program.
Format: exit
Saving the data
Productiv automatically saves any changes that you made, to your computer’s hard disk. Hence, you can focus on managing your product without fearing any unsaved changes.
Dashboard
The dashboard gives you an overview of information related to your product. The dashboard is the default landing page of Productiv. Whenever you start up Productiv, you will be brought to dashboard mode.
The Overall Completion Percentage (OCP) will be displayed in the left panel. The OCP gives you a quick overview of the progress of your product’s development.
Your schedule will be displayed in the right panel. The schedule contains all your deliverables and meetings, chronologically sorted.
Note: There are no commands specific to the Dashboard. You can only use commands found under General.
Deliverable
Note: You must be in the deliverable mode to execute the following commands. Refer to switch for more information.
Adding a deliverable: add
Adds a deliverable to your deliverable list.
Format: add t/TITLE by/DEADLINE m/MILESTONE [c/CONTACTS] [d/DESCRIPTION]
-
TITLE
is the main heading of the deliverable. -
DEADLINE
is the due date time of the deliverable in dd-MM-yyyy HH:mm format. -
DEADLINE
can be in the past but must not be earlier than the year 2019. -
MILESTONE
is the milestone tagged to the deliverable. -
MILESTONE
is a non-negative integer, or a period-separated string of non-negative integers, e.g.2
,14.2.1
. -
CONTACTS
represents the contact(s) involved in seeing through the deliverable. -
CONTACTS
is a name, or a comma-separated string of names, e.g.conan
,nancy, drew, paul
. -
DESCRIPTION
contains additional information about the deliverable, e.g. sub-requirements.
Notes:
-
As
CONTACTS
is not related to your contact list, you can include those not present in it. -
You cannot add a deliverable with the same
TITLE
andDEADLINE
as an existing deliverable. -
All newly-added deliverables will be assigned the
on-going
tag regardless of their deadline. You will need to manually mark past deliverables ascompleted
. Refer to Marking a deliverable as completed below for more details on thedone
command.
Examples:
-
add t/Login screen by/10-10-2020 18:00 m/1.1 c/Jordan Woods, Betsy Crowe d/Include email and password fields
adds a deliverable with the titleLogin screen
, deadline10-10-2020 18:00
, milestone1.1
, contactsJordan Woods, Betsy Crowe
and descriptionInclude email and password fields
. -
add t/Find profile page template by/08-12-2020 12:00 m/2.1.1
adds a deliverable with the titleFind profile page template
, deadline08-12-2020 12:00
and milestone2.1.1
.
Editing a deliverable: edit
Edits an existing deliverable in your displayed deliverable list.
Format: edit INDEX [t/TITLE] [by/DEADLINE] [m/MILESTONE] [c/CONTACTS] [d/DESCRIPTION]
-
INDEX
is the index number of the deliverable in your displayed deliverable list. -
INDEX
must be a positive integer. - At least one of the fields of the deliverable must be changed.
- The existing values of the specified deliverable will be updated to the input values.
- You can clear an optional field by inputting an empty parameter, e.g.
edit 1 d/
will empty the description of the 1st deliverable.
Note: You cannot edit a deliverable to have the same TITLE
and DEADLINE
as an existing deliverable.
Examples:
-
edit 1 d/Must include username, email and password fields by/15-12-2020 12:00
edits the description of the 1st deliverable to beMust include username, email and password fields
and its deadline to be15-12-2020 12:00
. -
edit 2 c/
clears the optional contacts field of the 2nd deliverable.
Marking a deliverable as completed: done
Marks the specified deliverable from your displayed deliverable list as completed.
Format: done INDEX
-
INDEX
is the index number of the deliverable in your displayed deliverable list. -
INDEX
must be a positive integer.
Example:
-
done 1
marks the 1st deliverable in your displayed deliverable list as completed.
Marking a deliverable as on-going: undone
Marks the specified deliverable from your displayed deliverable list as on-going.
Format: undone INDEX
-
INDEX
is the index number of the deliverable in your displayed deliverable list. -
INDEX
must be a positive integer.
Example:
-
undone 1
marks the 1st deliverable in your displayed deliverable list as on-going.
Viewing a deliverable: view
Displays more details of the specified deliverable from your displayed deliverable list.
Format: view INDEX
-
INDEX
is the index number of the deliverable in your displayed deliverable list. -
INDEX
must be a positive integer.
Example:
-
view 2
views the 2nd deliverable in your displayed deliverable list.Viewing a deliverable
Finding deliverables: find
Finds the deliverables whose titles or descriptions contain any of the given keywords.
Format: find KEYWORDS
-
KEYWORDS
contains one or more keywords used to match deliverables. - Searches only consider title and description.
- Searches are case-insensitive, e.g.
homepage
will matchHomepage
. - Order of keywords does not matter, e.g.
Homepage Navigation
will matchNavigation Homepage
. - Searches only account for full words, e.g.
Deploy
will not matchDeployment
butStand-up
will matchUp button
andLaptop stand
. - Searches return deliverables matching at least one keyword, e.g.
Homepage Navigation
will returnComplete Homepage
andIncrease size of Navigation Bar
.
Examples:
-
find mock-up urgent
returns a deliverable with titleFinish mock-ups
and another with descriptionThis is urgent and important!
. -
find plan
returns a deliverable with titleFinalise design and plan
and another with descriptionReminder to plan time wisely.
.
Listing all deliverables: list
Lists out all deliverables in your deliverable list, if any.
Format: list
find
command.
Refer to Finding deliverables above for details of the find
command.
Deleting a deliverable: delete
Deletes the specified deliverable from your deliverable list.
Format: delete INDEX
-
INDEX
is the index number of the deliverable in your displayed deliverable list. -
INDEX
must be a positive integer.
Example:
-
delete 2
deletes the 2nd deliverable in your deliverable list.
Clearing all deliverables: clear
Clears all deliverables from your deliverable list, if any.
Format: clear
Meeting
Note: You must be in the meeting mode to execute the following commands. Refer to switch for more information.
Adding a meeting: add
Adds a meeting to your meeting list.
Format: add t/TITLE from/FROM to/TO [c/CONTACTS] [l/LOCATION] [d/DESCRIPTION]
-
TITLE
is the main heading of the meeting. -
FROM
is the start date and time of the meeting in dd-MM-yyyy HH:mm format. -
FROM
can accept dates in the past but must not be earlier than the year 2019. -
TO
is the end time of the meeting in HH:mm format. -
CONTACTS
represents the contact(s) involved in the meeting. -
CONTACTS
is a name, or a comma-separated string of names, e.g.conan
,nancy, drew, paul
. -
LOCATION
is the location of the meeting. -
DESCRIPTION
contains additional details about the meeting, e.g. agenda.
Notes:
-
Different meetings may have overlapping timings as you may wish to send a representative for your clashing meetings.
-
As
CONTACTS
is not related to your contact list, you can include those not present in it. -
You cannot add a meeting with the same
TITLE
,FROM
andTO
as an existing meeting.
Example:
-
add t/Discuss app requirements from/11-12-2020 09:00 to/10:00 c/Jordan Woods, Betsy Crowe d/Refine with business associates
adds a meeting with the titleDiscuss app requirements
, start date and time11-12-2020 09:00
, end time10:00
, contactsJordan Woods, Betsy Crowe
and descriptionRefine with business associates
. -
add t/User research review from/15-12-2020 13:00 to/15:00 l/Meeting room A
adds a meeting with the titleUser research review
, start date and time15-12-2020 13:00
, end time15:00
and locationMeeting room A
.
Editing a meeting: edit
Edits an existing meeting in your displayed meeting list.
Format: edit INDEX [t/TITLE] [from/FROM] [to/TO] [c/CONTACTS] [l/LOCATION] [d/DESCRIPTION]
-
INDEX
is the index number of the meeting in your displayed meeting list. -
INDEX
must be a positive integer. - At least one of the fields of the meeting must be changed.
- The existing values of the specified meeting will be updated to the input values.
- You can clear an optional field by inputting an empty parameter, e.g.
edit 1 d/
will empty the description of the 1st meeting.
Note: You cannot edit a meeting to have the same TITLE
, FROM
and TO
as an existing meeting.
Examples:
-
edit 2 t/Discuss final release features d/Finalise dashboard functions
edits the title of the 2nd meeting to beDiscuss final release features
and its description to beFinalise dashboard functions
. -
edit 4 c/
clears the optional contact field of the 4th meeting.
Viewing a meeting: view
Displays more details of the specified meeting from your displayed meeting list.
Format: view INDEX
-
INDEX
is the index number of the meeting in your displayed meeting list. -
INDEX
must be a positive integer.
Example:
-
view 2
views the 2nd meeting in your meeting list.Viewing a meeting
Finding meetings: find
Finds the meetings whose titles or descriptions contain any of the given keywords.
Format: find KEYWORDS
-
KEYWORDS
contains one or more keywords used to match meetings. - Searches only consider title and description.
- Searches are case-insensitive, e.g.
version
will matchVersion
. - Order of keywords does not matter, e.g.
v1.2 mid
will matchmid v1.2
. - Searches only account for full words, e.g.
Meeting
will not matchMeetings
. - Searches return meetings matching at least one keyword, e.g.
Complete game
will returnComplete features
andFinal game
.
Examples:
-
find Survey
returns a meeting with titleSurvey potential customers
and another with descriptionDon't forget to present survey results.
. -
find consult goals
returns a meeting with titleConsult about marketing goals
and another with descriptionGoals must be achieved!
.
Listing all meetings: list
Lists out all meetings in your meeting list, if any.
Format: list
find
command.
Refer to Finding meetings above for details of the find
command.
Deleting a meeting: delete
Deletes the specified meeting from your displayed meeting list.
Format: delete INDEX
-
INDEX
is the index number of the meeting in your displayed meeting list. -
INDEX
must be a positive integer.
Example:
-
delete 3
deletes the 3rd meeting in your displayed meeting list.
Clearing all meetings: clear
Clears all meetings from your meeting list, if any.
Format: clear
Contact
Note: You must be in the contact mode to execute the following commands. Refer to switch for more information.
Adding a contact: add
Adds a developer or stakeholder to your contact list.
Format: add n/NAME r/ROLE e/EMAIL [p/PHONE] [d/DESCRIPTION]
-
NAME
is the name of the contact. -
NAME
should only take alphabetic characters and (optionally) spaces. -
ROLE
is the type of contact, eitherdev
(developer) orstk
(stakeholder). -
EMAIL
is the email address of the contact. -
PHONE
is the phone number of the contact. -
PHONE
should only contain numbers, and must be at least 3-digits long. -
DESCRIPTION
contains additional information about the contact, such as their job position.
Note: You cannot add a contact with the same NAME
and EMAIL
as an existing contact.
PHONE
s with country codes.
Examples:
-
add n/Jordan Woods r/dev e/jordanwoods@glutter.com p/81234567
adds a developer with the nameJordan Woods
, emailjordanwoods@glutter.com
and phone number81234567
. -
add n/Betsy Crowe r/stk e/betsybet872@pmail.com
adds a stakeholder with the nameBetsy Crowe
and emailbetsybet872@pmail.com
.
Editing a contact: edit
Edits an existing contact in your displayed contact list.
Format: edit INDEX [n/NAME] [r/ROLE] [e/EMAIL] [p/PHONE] [d/DESCRIPTION]
-
INDEX
is the index number of the contact in your displayed contact list. -
INDEX
must be a positive integer. - At least one of the fields of the contact must be changed.
- The existing values of the specified contact will be updated to the input values.
- You can clear an optional field by inputting an empty parameter, e.g.
edit 1 d/
will empty the description of the 1st contact.
Note: You cannot edit a contact to have the same NAME
and EMAIL
as an existing contact.
Examples:
-
edit 1 e/jeremysand@glutter.com p/81234567
edits the email and phone number of the 1st contact to bejeremysand@glutter.com
and81234567
respectively. -
edit 2 p/
clears the optional phone field of the 2nd contact.
Viewing a contact: view
Displays more details of the specified contact from your displayed contact list.
Format: view INDEX
-
INDEX
is the index number of the contact in your displayed contact list. -
INDEX
must be a positive integer.
Example:
-
view 2
views the 2nd contact in your contact list.Viewing a contact
Finding contacts: find
Finds the contacts whose names or descriptions contain any of the given keywords.
Format: find KEYWORDS
-
KEYWORDS
contains one or more keywords used to match contacts. - Searches only consider name and description.
- Searches are case-insensitive, e.g.
hans
will matchHans
. - Order of keywords does not matter, e.g.
Hans Bo
will matchBo Hans
. - Searches only account for full words, e.g.
Han
will not matchHans
. - Searches return contacts matching at least one keyword, e.g.
Hans Bo
will returnHans Seed
andBo Yarns
.
Examples:
-
find alex yeoh
returns a contact with nameAlex Yeoh
and another with descriptionBusiness analyst. Alex works with him.
. -
find Johnson
returns a contact with nameAmber Johnson
and another with descriptionWorks at Johnson & Johnson
.
Listing all contacts: list
Lists out all contacts from your contact list, if any.
Format: list
find
command.
Refer to Finding contacts above for details of the find
command.
Deleting a contact: delete
Deletes the specified contact from your displayed contact list.
Format: delete INDEX
-
INDEX
is the index number of the contact in your displayed contact list. -
INDEX
must be a positive integer.
Example:
-
delete 3
deletes the 3rd contact in the displayed contact list.
Clearing all contacts: clear
Clears all contacts from your contact list, if any.
Format: clear
FAQ
Q: How do I start using Productiv?
A: You can refer to our Quick Start Guide.
Q: Which operating systems can I run Productiv on?
A: Currently, Productiv is supported on both Windows and Mac. Just ensure
that you have Java 11
installed on your computer and it is your default Java version.
Command summary
General
Action | Format, Examples |
---|---|
Switch |
switch MODE e.g. switch dv
|
Help | help |
Exit | exit |
Deliverable
Action | Format, Examples |
---|---|
Add |
add t/TITLE by/DEADLINE m/MILESTONE [c/CONTACTS] [d/DESCRIPTION] e.g. add t/Login screen by/10-10-2020 18:00 m/1.1 c/Jordan Woods, Betsy Crowe d/Include email and password fields
|
Edit |
edit INDEX [t/TITLE] [by/DEADLINE] [m/MILESTONE] [c/CONTACTS] [d/DESCRIPTION] e.g. edit 1 by/14-12-2020 12:00 d/Must include username, email and password fields
|
Mark as completed |
done INDEX e.g. done 3
|
Mark as on-going |
undone INDEX e.g. undone 1
|
View |
view INDEX e.g. view 2
|
Find |
find KEYWORDS e.g. find Homepage urgent
|
List | list |
Delete |
delete INDEX e.g. delete 3
|
Clear | clear |
Meeting
Action | Format, Examples |
---|---|
Add |
add t/TITLE from/FROM to/TO [c/CONTACTS] [l/LOCATION] [d/DESCRIPTION] e.g. add t/Discuss app requirements from/11-12-2020 09:00 to/10:00 c/Jordan Woods, Betsy Crowe l/Meeting Room A d/Refine with business associates
|
Edit |
edit INDEX [t/TITLE] [from/FROM] [to/TO] [c/CONTACTS] [l/LOCATION] [d/DESCRIPTION] e.g. edit 2 t/Discuss final release features d/Finalise dashboard functions
|
View |
view INDEX e.g. view 2
|
Find |
find KEYWORDS e.g. find discuss user guide John
|
List | list |
Delete |
delete INDEX e.g. delete 3
|
Clear | clear |
Contact
Action | Format, Examples |
---|---|
Add |
add n/NAME r/ROLE e/EMAIL [p/PHONE] [d/DESCRIPTION] e.g. add n/Johnny r/stk e/johnny@example.com p/12345678 d/Business Analyst
|
Edit |
edit INDEX [n/NAME] [r/ROLE] [e/EMAIL] [p/PHONE] [d/DESCRIPTION] e.g. edit 1 n/John r/dev e/john@email.com
|
View |
view INDEX e.g. view 2
|
Find |
find KEYWORDS e.g. find John Kite
|
List | list |
Delete |
delete INDEX e.g. delete 3
|
Clear | clear |
Glossary
# | Term | Description |
---|---|---|
1 | Command Line Interface (CLI) | A text-based user interface (UI) used to view and manage computer files. |
2 | Graphical User Interface (GUI) | A system of interactive visual components for computer software. |
3 | Deliverable | An item to be completed as part of the product development process. |
4 | Milestone | A stage in the software development process associated with a particular group of deliverables. |
5 | Mode | The state of the application that affects how each command will be executed. The app can be in dashboard, deliverable, meeting or contact mode. |
6 | Stakeholder | An external party involved with the product. |