course-project-group-23 created by GitHub Classroom
- Eshia Rustagi (eshiafr2)
- Mohit Munjal (mmunjal2)
- Muaath Alaraj (malara2)
- Nilesh Dadi (vdadi2)
- Piyush Atre (pkatre2)
- Ryan Fraser (rfraser3)
- Project: https://github.com/cardillo/joinery
- Compilable and Executable: Yes
- Existing Test Suite: Yes, More than 50 JUnit Tests
- Popularity: 582 stars
- Actively Maintained: Yes, Last Commit was 6 days ago
- Open GitHub Issues:28
- Contributing guidelines: N/A
- Project: https://github.com/iluwatar/java-design-patterns
- Compilable and Executable: Yes
- Existing Test Suite: Yes, More than 50 JUnit Tests
- Popularity: 70700 stars
- Actively Maintained: Yes, Last Commit was 2 days ago
- Open GitHub Issues: 223
- Contributing guidelines: https://github.com/iluwatar/java-design-patterns/wiki/01.-How-to-contribute
- Project: https://github.com/elastic/elasticsearch
- Compilable and Executable: Yes
- Existing Test Suite: Yes, More than 50 JUnit Tests
- Popularity: 56900 stars
- Actively Maintained: Yes, Last Commit was 1 day ago
- Open GitHub Issues: 3100
- Contributing guidelines: https://github.com/elastic/elasticsearch/blob/528bcb99c8364ef0a9c74d330c8a08bd2c8acc72/CONTRIBUTING.md
- Project: https://github.com/rampatra/jbot
- Compilable and Executable: Yes
- Existing Test Suite: Yes, More than 50 JUnit Tests
- Popularity: 1200 stars
- Actively Maintained: Yes, Last Commit was 9 months ago
- Open GitHub Issues:63
- Contributing guidelines: https://github.com/rampatra/jbot/blob/9db3676d9e71cf27eba458203e06fcd56746243f/CONTRIBUTING.md
- Project: https://github.com/alexa/alexa-skills-kit-sdk-for-java
- Compilable and Executable: Yes
- Existing Test Suite: Yes, More than 50 JUnit Tests (Mockito)
- Popularity: 765 stars
- Actively Maintained: Yes, Last Commit was 1 month ago
- Open GitHub Issues: 9
- Contributing guidelines: https://github.com/alexa/alexa-skills-kit-sdk-for-java/blob/4eddaa19d3e3c81e82bb1eba751bd48112c5ac3d/CONTRIBUTING.md
- Project: https://github.com/bumptech/glide
- Compilable and Executable: Yes
- Existing Test Suite: Yes, More than 50 JUnit Tests
- Popularity: 31900 stars
- Actively Maintained: Yes, Last Commit was 11 days ago
- Open GitHub Issues: 286
- Contributing guidelines: https://github.com/bumptech/glide/blob/b43ea9833e9f5f0cb0f6b3a35664c3e2aaed956a/CONTRIBUTING.md
- Project: https://github.com/keepcosmos/beanmother
- Compilable and Executable: No
- Existing Test Suite: Yes, More than 50 JUnit Tests
- Popularity: 107 stars
- Actively Maintained: No, Last Commit was more than 12 months ago
- Open GitHub Issues: 6
- Contributing guidelines: N/A
- Project: https://github.com/six2six/fixture-factory
- Compilable and Executable: No
- Existing Test Suite: Yes, More than 50 JUnit Tests
- Popularity: 400 stars
- Actively Maintained: No, Last Commit was more than 2 years ago
- Open GitHub Issues: 20
- Contributing guidelines: N/A
Issue links | Type of issues (Bug or Feature) | Estimated time to fix issue | Number people fixing | Estimated difficulty |
---|---|---|---|---|
cardillo/joinery#51 | feature | 5 weeks | 2 | 5 |
cardillo/joinery#75 | feature | 5 weeks | 2 | 4 |
cardillo/joinery#83 | feature | 6 weeks | 2 | 5 |
cardillo/joinery#63 | feature | 5 weeks | 2 | 5 |
cardillo/joinery#38 | feature | 4 weeks | 2 | 4 |
alexa/alexa-skills-kit-sdk-for-java#297 | Bug | 3 weeks | 2 | 2 |
alexa/alexa-skills-kit-sdk-for-java#225 | feature | 6 weeks | 2 | 4 |
alexa/alexa-skills-kit-sdk-for-java#203 | feature | 5 weeks | 2 | 3 |
rampatra/jbot#28 | feature | 4 weeks | 2 | 4 |
rampatra/jbot#13 | feature | 5 weeks | 2 | 4 |
rampatra/jbot#172 | feature | 4 weeks | 2 | 4 |
rampatra/jbot#171 | Bug | 3 weeks | 2 | 3 |
rampatra/jbot#166 | feature | 5 weeks | 2 | 4 |
rampatra/jbot#131 | Bug | 3 weeks | 2 | 4 |
rampatra/jbot#114 | Bug | 1 day | 1 | 1 |
List all the issues that your group should fix for each project and highlight the issues you have implemented/fixed so far. Explain the reason for choosing these issues. (Total: 10 point)
Project | Issue Number Links | Reason for Issue (Importance / Dependency) | Our Status | People assigned | Forked repository |
---|---|---|---|---|---|
Joinery | 38 | This issue is important since it will allow the developer to control the execution of the program without running the program from starting the program again. This will improve the resiliency of the systems. | In Progress | Piyush, Mohit | |
Joinery | 51 | This issue is useful since it will improve the interability of the data. Data without identifiers would cause a major cause of functionality. This is especially useful for big data since searching wouldn't be possible without tagging. No Dependency as its a feature | COMPLETED | Ryan, Piyush | Forked Repo |
Joinery | 63 | Make the date time format in an standardized manner will allow interoperability of Joinery with other applications. It will reduce time spent in standardizing Date & Time formatting for developers. | In Progress | Ryan, Piyush | |
Joinery | 75 | Index in general plays an important role in search and read operations and makes it efficient . Sorted Indexes are better and more efficient for such operations specially when you are dealing with Big Data. No Dependency as its a feature | COMPLETED | Piyush, Mohit | Forked Repo |
Joinery | 83 | This issue is important since it allows data manipulation through integration of multiple dataframes. This extensibility improves the capabilities of the joinery project and allows it to perform more advanced operations such as analytics. | COMPLETED | Piyush, Mohit | Forked Repo |
Joinery | 93 | Writing to csv should be supported for multiple separators . Today Joinery only supports comma as a separator. Comma can be present in data as well which can cause the data quality issues for down stream apps . | In Progress | Eshia, Ryan | |
Alexa | 297 | Dependency version issue | To be started | TBA | |
Alexa | 225 | This is important because currently there is no way for SDK to indicate if object can or cannot be null, which results in a lot of excess defensive code written by user to check nullability of objects. | To be started | TBA | |
Alexa | 203 | Alexa has an issue where it errors out when special characters associated with emojis when using ssml the alexa interface errors out and quits. It would be useful to have some sort of sanitizing function that would avoid erroring out. This feature can be useful for alexa skills that read tweets or online posts/comments. | No longer in development | Muaath, Eshia | |
Jbot | 28 | This issue is useful since it allows users to directly share files using bots to slack. This reduces work for users in highly critical and repeatable scenarios such as sharing standard healthcare protocols. | COMPLETED | Nilesh, Muaath | Forked Repo |
Jbot | 13 | To be started | TBA | ||
Jbot | 172 | Supporting this feature in JBOT will allow users to read excel data by transmiting in XLS. This will allow the user to directly work on data, save time and improve the productivity of users. This feature will provide ease of use for users to interact with bot. By using excel as default way of sending data (since it is the most commonly used data application), the bot is able to broaden its user base. | COMPLETED | Nilesh | Forked repo |
Jbot | 171 | Jbot is not able to close a coversation correctly through slack. The aim is to replicate the issue and attempt finding out where the bug may exist. | In Progress | Muaath, Eshia | |
Jbot | 166 | To be started | TBA | ||
Jbot | 131 | To be started | TBA | ||
Jbot | 197 | There is an issue with the scheduler it will confirm that a meeting is set even if the time is not valid. A validator for the bot should be created to avoid this problem. | COMPLETED | Muaath | Forked Repo |
Jbot | 114 | With Jbots current list of dependencies it cannot be built and tests fail. Changing the springboot dependency to 1.5.3.RELEASE resolved the issue. The dependency must be updated for future work on this open source project. | COMPLETED | Muaath | Forked Repo |
Write at least one JUnit test scenario for each issue. (2 points per test) Write meaningful Javadoc comments for each public method. (2 points for each Javadoc) Write at least one JUnit test for each modified/newly added public method for your implementation for GitHub issues. (2 points per test)
Issue: Joinery 51 | COMPLETED | Forked Repo Link
- JUnit Test Scenario:
- Read input csv in a dataframe
- Add row labels to the dataframe
- Generate output csv from Dataframe
- csv should contain row labels along with data.
Issue: Joinery 75 | COMPLETED | Forked Repo Link
-
JUnit Test Scenario:
- Sorting without Index (on Columns) -
a) create data frame with multiple columns
b) sort with any column c) data should be sorted on given column. - Sorting with Index -
a) create data frame with multiple columns
b) perform sorting on index of DataFrame c) dataframe should be sorted on index.
- Sorting without Index (on Columns) -
a) create data frame with multiple columns
-
JAVADOC COMMENTS AND JUNIT TESTS: Forked repo and in this .txt file here
Issue: Joinery 83 | COMPLETED | Forked Repo Link
- JUnit test scenario:
- Concate operation on 2 Dataframes - a) create data frame A with multiple Columns b) create data frame B with multiple columns c) concate will be cross product of data frame A and B.
- Concate operation with OUTER Join - a) create data frame A with multiple Columns b) create data frame B with multiple columns c) concate will be cross product of data frame A and B.
- Concate operation with INNER Join - a) create data frame A with multiple Columns b) create data frame B with multiple columns c) concate will be inner join product of data frame A and B on joined columns.
- JAVADOC COMMENTS AND JUNIT TESTS: Forked repo and in this .txt file here
Issue: Joinery 63
- JUnit test scenario:
- Enable the option to disable date time format through Shell.
- create data frame with multiple time formats.
- Export data into a csv.
- csv should have all time formats.
Issue: Joinery 38 | Forked Repo Link
- JUnit test scenario:
- Run the Shell
- Load the csv file into DataFrame , enter control+C
- Operation Should not exit the shell
- Should only interrupt the current operation.
Issue: Jbot 28 | COMPLETED | Forked Repo
- JUnit Test scenario:
- User shares the location of the file
- Bot transmits the file to the user
- User can read the file using slack or download it locally for consumption
Issue: Jbot 172 | COMPLETED | Forked Repo
- JUnit test scenario:
- Share the file location
- Bot transmits the excel to the user
- User asks bot to read a particular cell from excel
- Bot reads the cell and information is validated by the user
Issue: Joinery 93 | IN PROGRESS
- JUnit test scenario:
- create Dataframe with mutiple columns.
- write to csv as tab / pipe etc as delimiter
- open csv and validate the same .
-
JUnit test scenario:
- Validate that the time recieved from the user is in the correct 24 hour time format
- Write JUnit Tests and confirm that the validator is working with chars and invalid times
-
JAVADOC COMMENTS AND JUNIT TESTS: Forked repo and in this .txt file here
In addition to tests that you will write, you should also use static analysis tools to validate your code. To that end, get yourself familiarized with FindBugs and PMD. Then run these tools for all the developed code.
We have attached our reports in our repository as .txt files:
-
Joinery Project
-
JBot Project
Include a schedule for each week after November 19 to plan for your remaining issues. (5 points)
Week | Meeting time | Plan | Goal |
---|---|---|---|
Week 7 (Nov 21) | Saturday 11am CST | Finish up issues for Joinery, Jbot, Glide. | Have 8-15 issues worked on |
Week 8 (Nov 28) | Wednesday 9pm CST and Saturday 9am CST | Start planning for presentation. Write up documentation for next milestone. Work on issues for bumptech glide and finish up issues for previous projects | Have 10-16 issues fixed |
Week 9 (Dec 5) | Wednesday 9pm CST | Wrap up issues. Work on final presentation. | Finish up all issues and work on submitting final presentation. |
Please scroll right to see the rest of the columns of the table, thank you!