My OpenMRS Fellowship Journey: Suruchi

Inizializer Support for OCL

The Initializer module is an API-only module that processes the content of the configuration folder when it is found inside OpenMRS’ application data directory. So making Inizializer understand OCL will be a great feature for OCL users as when the .json file of concepts inside the .zip file is placed inside the application data directory all the concepts will be processed when OpenMRS is loaded. I am working on this feature but due to some validation issue in the OpenMRS module OpenConceptLab, I am not able to fully test the code. I think after resolving this issue I will raise PR. Also, I worked on updating the user guide of OCL for OpenMRS by adding a new features guide in wiki User Guide: Open Concept Lab (OCL) for OpenMRS - Projects - OpenMRS Wiki .

After the OCL for OpenMRS release, we found some bugs in the new release so the Dev team quickly responded to the issue and we were able to fix all the bugs. From this release, I learned a few of the things which we can consider from the next release to overcome after-release issues. I think doing QA from multiple people will make our system strong and bugs-free. Further, I felt the need to update the QA list and we can also make tasks more informative to make the feature error-free.

Additionally, I will be working to finalize Iniz and work on the customization of curated concepts during April.

3 Likes

OpenMRS Spring Community Meeting and a new sprint planning in OCL for OpenMRS

We started our April this year with OpenMRS Spring Community Meeting. It was refreshing, and a platform to connect everyone at OpenMRS from December. The most exciting part was the squad showcase and lightning talk. Further, I worked in OCL for OpenMRS’s sprint board setup and sprint planning https://issues.openmrs.org/secure/RapidBoard.jspa?projectKey=OCLOMRS&rapidView=215. We scheduled a sprint planning meeting last Monday and decided on the priority of different tickets. During the planning meeting, we closed the March sprint board and started a new April Sprint. Through the meeting, I could revisit our roadmap, plan the tasks, create tickets, and assigned them to our developers at OCL for OpenMRS.I along with developers will be working on the April sprint board. In addition, I did a final QA for API2 and now it has been released.

Also, I was introduced to a new framework PM Daisy by Grace, which helped me understand my interest area in Product Management. Through this tool, I was able to find out that my interest area is in PM Data Analytics. So, in the future, I will try to enhance my analytics skills too.

I have planned to work on sprint tasks during the last two weeks of April and attend a PM conference https://www.industryconference.com/. I am hoping to learn the latest methods, tools, and frameworks to build, launch and scale software products from the conference.

5 Likes

@suruchi Great work!. It looks yours is a great story . Can you please check https://www.starlink.com/ for internet.

Thanks, @prapakaran for your time to look through my journey, and thanks for the link but, I could not understand the link provided.

Product Management Conference and Developing React skills

The last two weeks of April had been very productive for me. I got an opportunity to attend the Product virtual conference https://www.industryconference.com/. I am grateful to OpenMRS for making it possible. The two-day conference was very informative and interactive. The speaker session was informative and most of the time it resonated with my PM journey and experiences. Though it was a virtual conference it was interactive because of Q/A sessions, round table discussion, live expos, and virtual booth. The major takeaway for me is the steps of electrifying the PM Career, the importance of communication skills in a PM, how a roadmap can be used as a tool of communication, and how we need to design products with the customer rather than for the customer. Overall, the conference was a platform to know more people and products and validate me on the best practices among experienced and successful PMs. I will soon share my experience and learning with the community and try to implement the learning in my TPM role.

Further, I have been updating Jira with ticket status and resolve if there are any issues with developers, and planning the tasks for the next sprint. Also, I have been leading the OCL for OpenMRS calls for the last two weeks and it has augmented my communication and leadership skills. We have planned to prioritize automated testing for the next sprint and will support the OCL team for customization of the curated concept.

In terms of development, I am excited to work with my new mentor @hadijah315 who is an expert in OCL for OpenMRS. We had our first call along with my fellow partner Juliet where we discussed our fellowship plans and expectation from both mentor and mentee. As we are having a regular 1:1, we finalized my fellowship plan for the next three months in the last meeting. Hadijah also gave me a session on reviewing PR and testing PR, which helped me review Naman’s and Hadijah’s PR, and now I am confident in reviewing PRs. In the meantime, she had given me few resources to develop my react skills so I tried learning from videos and build two React app and deployed them in GitHub React App and React App. From this practice, I am learning React from very basic which is developing my conceptual knowledge as I have learned functions and class, components in react, children and props, destructuring, map function, and its usages. I am very much thankful to Hadijah for helping me sharpen my React skills.

I am planning to work in automated testing in the coming days and also plan the tasks in OCL for OpenMRS aligning with our roadmaps and user requirements.

6 Likes

Great work @suruchi , keep it up!.

1 Like

Thank you @hadijah315, for the mentorship and support.

Great work @suruchi

1 Like

May Sprint Planning and more learning in typescript

I started my May with a planning meeting of May sprint for OCL for OpenMRS. We are focusing mainly on automated tests for the month of May, resolving errors in the subscription model and client app UI improvements https://issues.openmrs.org/secure/RapidBoard.jspa?rapidView=215&view=detail&selectedIssue=OCLOMRS-967. Further, Grace and I have been discussing the roadmap and deciding priorities for this sprint. So, we have listed it as a Dev cycle, Design cycle, and Future so that we can prioritize the task accordingly. Also, I discussed my fellowship plan with Grace and Hadijah. I have been working to understand the working of FHIR in Concept customization by the OCL team so I have been attending planning and discussion meetings by the team OCL Concept Modification Planning - May 2021 - Google Docs. To enhance my PM skill, I have been talking with our clients and receiving feedback from them. Last week Grace and I had a meeting with Mwariri and Veronica where we discussed our roadmap and tried to understand their pain-point while using OCL. So it mainly included customization of curated concepts.

Also, I have been learning typescript and elastic search, and fuzzy matching to use in OCL for OpenMRS client application.

Further during May, I will be working on automated tests and fixing errors in the subscription module.

4 Likes

Mid-Sprint Review and Sprint Planning

I spend my last two weeks of May learning typescript. I learned about the interfaces and how typescript helps organize React projects. A sample of simple Todo app using React and Typescript is GitHub - suruchee/react-todo-typescript-app . And, I have also worked on an issue Inconsistent parameter naming between batch and streaming fhir endpoint · Issue #131 · GoogleCloudPlatform/openmrs-fhir-analytics · GitHub in OpenMRS FHIR Analytics to fix the inconsistent parameter naming between batch and streaming fhir endpoint. This work helped me more understand the codebase.

Last week we had a mid-sprint review, where we discussed the issues in May Sprint board of OCL for OpenMRS. We found out where the developers are blocked and we discussed to unblock them. Further, I tried to clean the backlog and updated our priorities for the next sprint and Roadmap can be visualized at OCLOMRS Roadmap - Google Slides. Further, on the last day of May, we had a sprint planning for the June sprint where we discussed the previous sprint and started new sprint for June https://issues.openmrs.org/secure/RapidBoard.jspa?rapidView=215&projectKey=OCLOMRS . The priorities for our June sprint are trusted content flags, stating work for Customize Curated Concepts, and completing the work for automated tests. And, the major feature release of the last sprint is allowing users to pick concepts from any source that’s been created in any source. Last week, I designed UI for our new feature like multiple subscriptions and presented our next priorities and Roadmap to the squad.

As I had attended the PM conference last April, I got an opportunity to share my experience and learning with the community during the Strategy and Operation call and Technical Action Committee Call. I shared the key difference in Product and Project Management and my key takeaways I am trying to implement in my PM role.

Further, I have completed my last two months’ goal and will be working with my mentors to achieve my next two months’ goals. I will be mainly working in automated tests and customization of mappings in curated concepts.

1 Like

PM Levels and defining my goals

I started my June with a sprint planning meeting for OCL for OpenMRS, so in this sprint, we are focusing mainly to work on automated tests and start the work for customization of curated concepts. Further, we have prioritized a few of the tasks to improve the subscription module https://issues.openmrs.org/secure/RapidBoard.jspa?rapidView=215&selectedIssue=OCLOMRS-989.

I planned my next two months’ goal with my both mentors Grace and Hadijah and reviewed the last two months’ progress. Further, I presented my progress and plan with Jennifer in terms of both development and product management. I also received a few of the feedback and it was a great way to validate my work and share the experience so far. In addition, Grace and I defined the different levels of PM too. As we have our new intern- West in our team, I tried to onboard him and gave him an overview of how to start by sharing a few of the resources. I also attended the OHIE meeting and presented the idea of the trusted content flag with the border team. And we discussed the importance and need for a trusted content flag among our users.

I worked on an issue of trusted content flag OCLOMRS-998: Add Trusted content flags MVP by suruchee · Pull Request #708 · openmrs/openmrs-ocl-client · GitHub and I have been working on a few of the issues of customization v1. Also, I am working on a clear review content change UI and will soon make a UAT call for design with our implementers. With the help of Hadijah, I learned unit testing from How to unit test React applications with Jest and Enzyme and will be writing unit tests for the OCL client app.

Further, I am focused to work on the tasks from the sprint board for the rest of the month.

3 Likes

UAT (User Acceptance Testing)

User Acceptance Testing (UAT) is a type of testing performed by the end-user or the client to verify/accept the software system before moving the software application to the production environment.

And, I send my last two weeks of June especially learning about UAT and design. I designed a UI for Clear content review in OpenMRS after a user resubscribes subscription URL from the dictionary manager application. Then I learned how to use, ProtoPie and used it to make a prototype for the feature. The prototype can be viewed at Protopie Cloud. Further, I designed a UAT protocol https://docs.google.com/document/d/1xItsZkNS4bppKuqBRBidMDZ08yvIp2ver45UimzdM_w/edit# and I did a UAT call with Ellen and got some constructive feedback regarding the design. Thank you so much Ellen for your time and valuable feedback. Also, I will be doing another UAT call with Mwariri next week. This practice helped me learn about Wireframe, UAT protocols, user interviews, UI and UX design. Also, last week I have been working to design a roadmap for customization of curated concepts(mini-roadmap) OCLOMRS Roadmap - Google Slides.

In terms of development, I am working in customization of mappings in concepts and I am working in unit and E2E tests. I am working on backlog curation for the dictionary manager project and will be conducting Sprint Planning in early July.

Further, I will work on the issues related to the customization of concepts for the next month.

2 Likes

Last week on Saturday morning, after the end of the two first weeks of July, I opened my laptop to write a blog summarizing my progress. I was excited to share about the mini-community meeting and my other achievement. But as soon as I opened my laptop I received very sad and tragic news about our beloved community member, our hero, Joseph. I was shocked and sad. I could not hold myself, it was hard to believe. He was a friend, mentor, and a great contributor to OpenMRS. The news erased all my memories from the earlier week and could not think of anything. But, I know he wants us to focus on the positive thing and keep the momentum going. So, I am continuing work onwards and will be updating my progress for this month in the next post.

6 Likes

Hello everyone, I am back with a new blog summarizing my last month.

On the very first week of July, I did a UAT with Mwariri for clear content review while resubscribing OCL subscription URL in OpenMRS. It went well, I got a chance to interact with our users and received a lot of constructive feedback. I learned how often the re-subscription is done and we discussed the designs and color in UI. Then Hadijah and I planned our big priorities for the next sprint and worked in backlog, we did a sprint planning meeting and discussed our next priorities with all developers in the Dictionary Manager squad which include unit testing, e2e testing, customization of concepts, and clear content review. Further, I worked in MVP for the trusted content flag to tag the content whether it’s authentic or not OCLOMRS-998: Add Trusted content flags MVP (#708) · openmrs/openmrs-ocl-client@e30f9ce · GitHub Ian helped me a lot to understand about the redux and reducer and it’s working while working on this issue. And also I worked in unit testing for “Creating Organization” OCLOMRS-1012:Create Organisation page/component test (#717) · openmrs/openmrs-ocl-client@7df8d97 · GitHub and Hadijah helped me to understand more about the unit testing.

We had an “OpenMRS mini-meeting” in the second week, it was a refreshing meeting and I felt well connected with all the community members once again from April. The major highlight of the meeting was the 3.0, implementer’s talk, squad-showcase, and lighting talk. The most exciting part was the quiz by grace. We all got energetic and actively participated, and it was really fun. It’s the beauty of OpenMRS meetings that the participant never gets bored with our unique idea of breakout rooms, quiz, and lightning talks. Further, I shared the idea of Product management with the community in lightning talk Product Management Explained - YouTube and, I presented Dictionary Manager’s squad among the team, and I received motivating responses from the community members.

But at the end of the week, we got very tragic and sad news about our beloved friend and mentor Joseph. We were sad and scattered, it was like a bad dream and hard to believe. And later next week, we had a program for remembering and celebrating Kaweesi. We remembered him and it was nice to know about his work in the community and Uganda and to see how much everyone love him. We all miss him and it is a great loss to the community, and the gap cannot be filled. But we are trying hard to gather together ourselves and working to keep the momentum going.

So last week, I worked on an automated test for creating a version. Hadijah helped me a lot to understand its working. As running the test took a lot of time and we were trying different methods, it took more than 2 hrs but I am thankful to Hadijah that she stayed with me and helped me fix the issue.

Further, I will be working in Dictionary manager enhancement and automated test for next month and I will be working on a separate project https://docs.google.com/document/d/1znjfkoze1io4uxZi5TM8Pf0FM_5Ihov9yuTZeol73ek/edit with Hadijah to develop my react and overall front-end skills.

6 Likes

Always there to offer any assistance I can :hugs: , and thanks for your resilience and openness to learning @suruchi, continue the good work.

2 Likes

I started my first week of August with the planning of the next two months’ goals in terms of development and product management. I worked with both of my mentors Grace and Hadijah to analyze what I accomplished in the last two months my challenges and then we decided on the goals for the next two months. My goal for the next two months is to learn advance react then to work on customization and other improvements in Dictionary manager. Then I presented my goals and plan to Jennifer and received feedback and suggestions.

Further, I worked on automated tests including the tickets https://issues.openmrs.org/browse/OCLOMRS-970, https://issues.openmrs.org/browse/OCLOMRS-984 and https://issues.openmrs.org/browse/OCLOMRS-790 to test the workflow of copy subscription URL, copy dictionary and edit organization.

In terms of product management, during the first week, I organized a sprint planning meeting and all the developers joined to plan for this month. We analyzed the remaining ticket from the previous sprint and pulled it to this sprint and reassigned it. Also, we planned this sprint to focus primarily on the implementer’s requirements and bug fixes. After the planning, we released a new version of Dictionary manager and released a release, not including the major release features and fixes Dictionary Manager v 1.4.0 Released: Easier Concept Re-Use, Trusted Content Flag, and more. This practice has helped me strengthen my communication skills.

For the rest of the month, I will be focusing on the sprint task and my project with Hadijah.

3 Likes

During the last two weeks of August, I worked mainly in bug fixes for Dictionary Manager, though there are still some of the bugs to be fixed but all the developers in Dictionary Manager Squad are working hard to resolve all the issue. As many bugs were causing issue to MSF team so we had a session with Michael to understand the issues, listed it down and worked in it. I have particularly worked on https://issues.openmrs.org/browse/OCLOMRS-1032, https://issues.openmrs.org/browse/OCLOMRS-1034.

At the end of August we had a sprint planning as a retro for last month and planning for September. We concluded all the tasks and started a new sprint. Further we had a release in production with automated testing in and many bug fixes including. Further we concluded the unit test for organization. And for September, we are aligned to focus on bug fixes and customization feature. Sprint Board for September can be viewed at Log in - OpenMRS Issues.

As Hadijah and I are working on a project to enhance the project development and react skills, I am learning project planning starting from requirement analysis to project development. I have also learned docker and google login in this project. Further, the project can be viewed at https://github.com/suruchee/authors-heaven and it is under progress.

Now, I am working to fix bugs as a main priority and customization in Dictionary Manager and will work to finish the react project.

3 Likes

User Research and Bug fixes

I started my September doing the user research for Dictionary Manager, I took interviews with a few of our users and will be doing more during the month of September. My goal to interview our user is to understand what our user says about the product, how they use it and what are their pain points while using the application. Further, while talking to users, I found which features are more used by users and what are the features wished by the user. This interview really helped me get connected with the implementers and will help me define the future roadmap. As I am still trying to interview more users, the final outcome is yet to complete so I have planned to present the final findings to the team by the end of this month.

Further, in Dictionary Manager, we worked to fix the existing bugs in the application and after resolving the issues we made a mid-month release as the bugs were causing real issues to the implementer. The fix included - back button fix, selecting language issues, different label fix, displaying source name issue, pagination, and searches. I am also learning advanced react to use API and implement in react and reducer.

For the rest of the month, I will be working on bug fixes, user research and an advance react project.

3 Likes

User Persona

A persona in user-centered design and marketing is a fictional character created to represent a user type that might use a site, brand, or product similarly. Persona helps team members share a specific, consistent understanding of various audience groups.

During the last two months, I was dedicated to creating User Persona for Dictionary Manager, and I was able to draw few personas by the last week of September. During the process, I interviewed five of our users: Ellen, Laure, Wamathaga, Antony, and Bailly. With the help of these five interviews, I concluded with three of our unique User Personas. The interview was helpful to me to know our users, how they use the product for what, and what are their pain points. Also, I was able to identify, what are the most used features and what improvements are needed in the product. So, the interview was helpful to me to enhance my communication skills, know our users, create personas, and most importantly it’s a baseline to create a roadmap for the product and prioritize tasks. I am planning to showcase the created persona in the squad meeting next week and expect to receive feedback from the team.

Further, I am promoted to dev/3, I am thankful to Grace, Hadijah, Jennifer, and Ian for helping me achieve it. I am excited to contribute more to the community and enhance my skills. Also, I have worked on two of the tickets last week in dictionary manager: OCLOMRS-1054:Avoid implying SYNONYM is a name type by suruchee · Pull Request #749 · openmrs/openmrs-ocl-client · GitHub OCLOMRS-1025:Automated test: Add and delete members in an organization by suruchee · Pull Request #737 · openmrs/openmrs-ocl-client · GitHub

Also, I have created a Roadmap for the October for dictionary manager and updated in wiki page too so that it will be easy for the squad to go through the roadmap time and again.

Last week, I was able to complete an advance react project with the help of Hadijah, working on the project, I learned- google login, use of react and redux in typescript project and use authentication.

By the end of September, I discussed my fellowship plan with Grace, Hadijah, and Jennifer in terms of both product management and development. I presented my last two months’ progress and my plan for the next two months.

For the next two months, I have planned to implement my findings from the User Interview into the product enhancement, to include more users, to make the product more stable, and enhance the project I have started with Hadijah.

3 Likes

I started my October with 2021 OpenHIE Virtual Community Meeting. It was a virtual meeting for four days and I attended many sessions related to terminology, FHIR and Product Management. The most exciting was OHIE21 Terminology session, where we discussed about what terminology and what terminology services are being used most by the users and also we discussed the issues faced while using the terminology services. And the most intersting part was the response from user which says the most used terminolgy is ICD-10 and most used service is OCL TermBrowser and Terminology Service and second one is OpenMRS Dictionary Manager.

Further, I worked in a ticket to unify OCL and OpenMRS Dictionary Manager Experience OCLOMRS-1056:Unified OCL and OpenMRS Dictionary Manager Experience by suruchee · Pull Request #750 · openmrs/openmrs-ocl-client · GitHub. Also, I am preparing to present User Persona with the squad team members and OCL community with October and hoping to receive feedback from the team.

And, I will be working on the mid-sprint review, sprint tasks, and Roadmap in the coming days of October.

1 Like