Class of 16 CS Seniors looking for something to help with

I have a total of 16 students in my Software Development Capstone class this semester. They are all senior CS majors, who have had 3 semesters of programming in Java, a software design course, a software process management course, and a software testing course before coming to this course. They are working in 3 teams of 5-6 students. Our semester runs until 4 May 2016.

My hope is to have each team take on an OpenMRS ticket, break it in to tasks that can be taken on by one team member, and complete those tasks in sprints. Once a team completes a ticket, they can start another. They don’t have to write a lot of code, because we are doing other process-related stuff - but I’m sure they would be happiest if they wrote a lot of code. I am willing to adjust this plan, if needed, based on the type of work.

We have all gotten the core cloned, have built it, and have set up our development environments - some in Eclipse, some in IntelliJ. We are looking at tickets right now to find something we think we can work on. We are not committed to any particular tickets at this point.

If you have some project that you could use some help with for the next 2 1/2 months, and are willing to do some mentoring of students (and a faculty member), we would be excited to help.

3 Likes

Hi @kwurst, this is great! Question to you, do the students want to be involved in the tasks right from the design stage itself, or do they want fully fleshed out tasks? Not sure if you’re familiar with the OHDSI initiative, but we’ve built out an initial module to provide OpenMRS support for OHDSI. This might be a good fit because there’s a wide range of task types available (from UI to database / sql to performance), and also, it touches two different, and very vibrant communities.

You might want to look at: https://wiki.openmrs.org/display/projects/OpenMRS+Support+for+the+OHDSI+Project

Hi @kwurst, we are thrilled that you and your students picked OpenMRS, I’m not 100% sure we do have several tickets that can be broken down into several tasks to be worked on by 5 developers per task and can be covered in 10 weeks but we will see. Can’t they start with smaller intro tickets and once they have a little feel of the project and more familiar with things then they can take on bigger tasks that can be broken down.

Looking forward to your contributions

Hello Karl

We have a radiology module we are working on that would be a good fit for the students. We already have flushed out the details of what needs to be done with @teleivo . I will be deploying this project in Malawi in June 2016 (http://www.gichoya.me/2016/01/25/global-health-radiology-malawi-june-2016.html)

We want to build a reporting module on top of OpenMRS that allows radiologists to use openmrs to generate radiology reports. Essentially they would select a study from a reading worklist , interpret the study and use an editor to type in the report.

There would be availability of templates that they can use to start typing their reports

Please review these links for current work done on radiology module (We already have Devops set up )

We want to integrate this editor into OpenMRS : The Most Advanced WYSIWYG Editor | Trusted Rich Text Editor | TinyMCE

Here are some videos i have created

3 Likes

Karl,

We’d also love to work with a group of your students. We have a team of 6 devs at AMPATH based in Eldoret, Kenya. We’ve been in the process of building an angular based front end to OpenMRS and are piloting this system in a few of our clinics now. We generally use a variant of scrum and would welcome inclusion of your students in any of our sprints (usually 3 weeks long).

Some of the ongoing features we are or would like to be working on:

Angular Form Entry : a data collection tool using angular-formly Angular based Order Entry System : development of a front end consuming OpenMRS order entry rest api Offline Data Collection : Angular + Ionic + pouchdb (using the angular form entry tool we’ve developed) Bar Code Integration : We’d like to move to a bar code (rather than typed) system mimicking the Baobab approach in which patient flow through the clinic is tracked through bar coding. We need to develop the modules to produce the bar codes as well as the ui front ends and integrations with our work flows. This would all be done using javascript. Cohort Based Data Collection : Putting finishing touches on the the GSOC project by Sharon Varghese and making it production ready.

Our projects can be seen at https://github.com/ampath

Happy to provide any elaboration if you’d like. Always happy to try to integrate others into our team.

2 Likes

Hi @kwurst, I suggest that it is better to do this strategy in a module instead of the core. The reason is that the code there might be larger tickets that can be broken down to smaller tasks. The core tickets I think are more specific (and smaller) and unless you break those down to pair-programming tasks (like one student writing a test and another writing the method), I think it would be difficult. I like @judy’s idea of the radiologydcm4chee project tickets or @jdick’s AMPATH project and think that might be more suited.

2 Likes

Thanks @surangak, @wyclif, @judy, @jdick, and @sunbiz for all the great suggestions! It’s great (and slightly overwhelming) to have so many of you respond so quickly.

@surangak I will definitely take at look at the OHDSI Project and get back to you.

Probably both. Right now, at the beginning of our involvement, it would probably be better to just code something that is already designed. But, later, we would probably enjoy starting something from the design stage.

@wyclif We may even be able to break an intro ticket into tasks at the beginning - those tasks will include things like researching the architecture of OpenMRS, or how to work with a particular framework or API, rather than just the coding tasks. While the coding is something they want to do, I also want them to get a feel for the team aspects also. We can handle learning about the project in a divide-and-conquer fashion. Plus it will give them a support system within the class itself, and a chance for different students to become the resident “expert” on some aspect of the project.

@judy I will definitely take a look at your project and videos and get back to you. I notice that one of the students has already liked your post, so I think they are also looking at the suggested projects.

@jdick This also looks great. I’ll take a look and get back to you. I’ll also want to talk with you about how you envision the students fitting into your sprints.

[quote=“sunbiz, post:6, topic:4731”] I suggest that it is better to do this strategy in a module instead of the core. The reason is that the code there might be larger tickets that can be broken down to smaller tasks. [/quote]

@sunbiz I think that the module idea is probably a good one, and I’ll definitely be looking at those.

See my reply to @wyclif’s comment above on how I think this may be doable early on.

2 Likes

@judy,

We’ve taken a look at your videos and the repository and we are very interested.

Some questions: Who is managing this project? Who would we be going to for help with selecting tasks to work on? I see two “must” issues that are unassigned: https://issues.openmrs.org/browse/RAD-116 and https://issues.openmrs.org/browse/RAD-115. Are these what you would want us to work on? Or would we be working on some of the 12 “TBD” issues?

2 Likes

@jdick,

We’ve taken a look at the GitHub repository for AMPATH. There’s a lot there! Which specific tasks would you be interested in having us work on?

I also have questions about how you envision us fitting in with your scrum and sprints? Would we run our own scrum teams and follow your sprint schedule? Would we integrate into some of your teams?

It looks interesting, but it also looks somewhat overwhelming. More information would be helpful for making a decision. Thanks.

2 Likes

Hello Karl

Judy (me ) , ivo and Saptarshi manage the project

We can create tickets for students to work on

TO avoid too many contact points, I will let @teleivo decide what tickets he wants done first. i will be a resource for questions or blockers

Dear Karl,

RAD-115/116 are already worked on.

Would be great if the students could work on tickets RAD-58, 107, 109, 121

I’ll groom the backlog in the coming days and add more tickets for your students. You and your students are welcome to contact me if you need any help getting started!

@teleivo and @judy,

The class decided today that we would like to work on your project for the semester. We will look at the tickets that Ivo mentioned to get a feel for what needs to be done.

I’ve already made a class fork of your repository for us to work in, and we’ll all try to build the module and install it into our local OpenMRS installs.

What would be that best communication channel for us to use to ask questions when we get stuck?

1 Like

Dear @kwurst,

these are great news :slightly_smiling:

Well we can use talk and skype (my username is teleivo).

But If the students would like to use any other tool like https://slack.com/ or https://www.hipchat.com/, we could also create a team there so all communication is in such a channel. Might be a good idea, so everyone can read up on conversations later on.

Let me know what you prefer!

Thanks Karl

Skype ID is judywawira

A slack channel or telegram group would be better

Judy

I created a slack team for OpenMRS radiology development at https://openmrs-radiology.slack.com with a channel for the students.

If you send me your emails (@judy, @kwurst + students) I will invite you to it!

Great minds think alike :wink:. I created a Slack team for the class last night and was going to add you to it.

I’ll send you all of our addresses after class.

Judywawiraâ– â– â– â– â– â– â– â– â– â– 

It’d be far more open, transparent, and useful for others if you all used either OpenMRS Talk, or the main OpenMRS IRC or Telegram chat. :slight_smile:

1 Like

We generally try to promote discussion in public and logged channels (for a number of good reasons), so I’m with @michael on this. Would it be possible to use the existing IRC or Telegram channels @kwurst?

1 Like