Skip to content

Latest commit

 

History

History
93 lines (60 loc) · 2.85 KB

DeveloperGuide.md

File metadata and controls

93 lines (60 loc) · 2.85 KB

Developer Guide

Setting up

Prerequisites

  1. JDK 8 or later
  2. Eclipse IDE
  3. e(fx)clipse plugin for Eclipse (Do the steps 2 onwards given in this page)

Importing the project into Eclipse

  1. Fork this repo, and clone the fork to your computer
  2. Open Eclipse (Note: Ensure you have installed the e(fx)clipse plugin as given in the prerequisites above)
  3. Click File > Import
  4. Click General > Existing Projects into Workspace > Next
  5. Click Browse, then locate the project's directory
  6. Click Finish

Design

Testing

  • In Eclipse, right-click on the test/java folder and choose Run as > JUnit Test

Appendix A : User Stories

Priorities: High (must have) - * * *, Medium (nice to have) - * *, Low (unlikely to have) - *

Priority As a ... I want to ... So that I can...
* * * new user see usage instructions refer to instructions when I forget how to use the App
* * * user add a new person
* * * user delete a person can remove entries that I no longer need
* * * user find a person by name locate details of persons without having to go through the entire list
* * user hide private contact details by default to minimize chance of someone else seeing them by accident
* user with many persons in the address book sort persons by name locate a person easily

Appendix B : Use Cases

(For all use cases below, the System is the AddressBook and the Actor is the user, unless specified otherwise)

Use case: Delete person

MSS

  1. User requests to list persons
  2. AddressBook shows a list of persons
  3. User requests to delete a specific person in the list
  4. AddressBook deletes the person
    Use case ends.

Extensions

2a. The list is empty

Use case ends

3a. The given index is invalid

3a1. AddressBook shows an error message
Use case resumes at step 2

Appendix C : Non Functional Requirements

  1. Should work on any mainstream OS as long as it has Java 8 or higher installed.
  2. Should be able to hold up to 1000 persons.
  3. Should come with automated unit tests and open source code.
  4. Should favor DOS style commands over Unix-style commands.

Appendix D : Glossary

Mainstream OS

Windows, Linux, Unix, OS-X

Private contact detail

A contact detail that is not meant to be shared with others