Category Archives: Sprint-3

Sprint 3 Retrospective

At the beginning of this Sprint, we all watched the videos that AMPATH shared with us for ideas for projects they would like to incorporate into their app. It was really encouraging to make contact with them. I was wondering how much they would ask of us, but I was glad that they seem to value what we’re going to do. I like that it looks like we will be able to do some interesting projects. I hope we are able to get through as many stories as possible because I want to do a good job on this.

After watching the videos they provided, and we all decided that we wanted to start by trying to implement the story which was to creating tabs in the app so more than one form for multiple patents could be open at once.

After a quick google search, I found some good resources from the official Angular site. It provided with some examples of different ways to implement it. It also showed the code behind it in an interactive app that showed how all the components work together. Within the app, I was able to modify the code and see in real time the changes I made to the example.

I shared what I found with the team. It is very exciting because this was exactly what we wanted, and it was laid out in a way that was really intuitive and makes it straightforward to  see what we need to do next.

I think what may be our next biggest hurdle is getting something concrete started. After we have done that, I think it will be pretty straightforward assigning roles and dividing up tasks. When we have finished the first story, I think I will have enough of a feel of how things are done to branch out and form a sub-group so we are able to cover more ground.

Andrew was a huge help to our group. He pointed us in the direction of a lot of resources, especially how to interpret the code we have been provided.

I think a good goal for this upcoming sprint is to finish this one story that we have chosen. I think it is something that we can realistically do, and I don’t foresee that it will be all that challenging. It’s still early to say for the sprint after, but I would like to at that point do what I mentioned earlier and split up into smaller groups and between the four of us, tackle two more stories with two of us working on each.

Of course, I have coded enough to know that there will be unforeseen obstacles that we will have to overcome. There is a chance that one or several might cause quite a bit of delays, so I should not get too ambitious right out of the gate. After all, we have not done any real work of substance yet.

However, I believe it is important to set our goalposts high. If we don’t achieve all of our goals, we can just append it to the next sprint. I think we will achieve more of our goals if we are more ambitious setting them.

From the blog Sam Bryan by and used with permission of the author. All other rights reserved by the author.

Sprint 3 Retrospective Blog

For the third sprint, I was assigned to create a REST API for the USDA’s Food Safety Inspection Service’s FoodKeeper Data (located here:
https://catalog.data.gov/dataset/fsis-foodkeeper-data). Prior to starting this assignment, I felt I had a poor understanding of what a REST API was, let alone how to go about making one. Fortunately, the resources that Professor Wurst sent me were a very helpful step in understanding what one looks like. I also read several other resources and followed many other tutorials while making it. By the end I had over complicated things by storing the data into a MongoDB database and ended up switching to data stored in memory, but despite this I think it was still very useful to work with MongoDB as well integrating it with the REST API. I had also considered trying to use a relational database such as PostgreSQL, as the data seemed to lend itself well to it given that each data type already contained keys relating to the other data, however it was a bit harder to set up when compared to a document database.

This sprint began before spring break, and during that time I felt that the project was at a much earlier point than was initially assumed, so I spent a good chunk of my break working on it. As I said I started with a poor understanding of REST APIs so I felt that there was some catching up that needed to be done. By the end of the break I had something that was mostly working but was a bit complicated to set up since it required installing MongoDB locally at the time. I imagine we may have run into similar issues when trying to host it in Heroku, but fortunately it’s since been simplified. I don’t think that it would necessarily be a bad thing to store the data in a separate database, however, given the relatively small set of data as well as the fact that changes aren’t made very often, it didn’t really make much sense to go that route. Changing the code that I had already written to no longer use MongoDB was pretty trivial, as not many changes needed to be made. At this point, the REST API Order System example (located here: https://gitlab.com/worcester/cs/kwurst/rest-api-order-system) that was sent to me was particularly useful, as the was it was set up was almost one to one, with a few changes here and there.

Currently the project is almost at a point where it’s ready to be used, as far as I’m aware at least. I feel that it was much simpler than I had originally thought it would be, but since I hadn’t had any experience with doing something like this before it took longer than it should have. I think one of the most important things that I’ve learned from this is how to start working on a task in which I’m unfamiliar with. It was definitely useful to learn how to make a simple REST API, but I’d say being able to work on something you’re uncomfortable with is a skill that will help me greatly in the future.

Links:
https://github.com/LibreFoodPantry/FoodKeeper-API
https://github.com/cs-worcester-cs-448-sp-2019/FoodKeeper-API

From the blog CS@Worcester – Andy Pham by apham1 and used with permission of the author. All other rights reserved by the author.

Sprint Review Blog # 3

            Our third sprint enlightened the path the group planned to take with the other groups for the splitting of objectives. The AMPATH administrators were able to give us more information based on the project specs that included wireframes of each component that we needed to create. The team heavily benefited from the clearer explanation by being able to divide the work out to our team members in a productive manner. We were able to understand what the project generally asked for and began working on our first component for the angular project. This sprint also gave us more time to look at the code AMPATH had given us for reference material on variable naming and options when creating the components. We compiled ideas on our first component and finalized that we would work on the form component. We analyzed the videos that were related to that component and realized that it could be made fairly easily but there were more questions that needed to be answered. We found that the question fields for the form were not stated, so we decided to create their names based on their question number. We would like to implement real questions, but we can only do that once we confirm this is needed with AMPATH. I think that we should proceed to understand the AMPATH format for their angular code and look into understanding how we will possibly setup the Mockito style of testing we are aiming for. A better understanding of the project will be needed to further enhance the user experience so as to create a flow within the program that seems seamless to the backend user. We want to continue to understand how we should edit and evolve the code already given to us and turn it into the final product that they want. I think that the hardest part for the future will be to connect each component together and bind them into one final app with the other groups. This is going to take a good amount of proper communication to achieve. It will be necessary for the future so I think it would be a good idea to start talking to the other groups about this now. This will keep them on alert and conscious of the code they write to make sure it can be understood properly by someone on another team. This app will be used by back end users for simplistic tasks such as filling out questionnaires and taking notes on patients based on their medications. It seems that another team has also found some Mockito code within the files given to us by AMPATH that could be useful in creating our own data to be fed into the application. I’m uneasy about the lack of information we have based on variables in play when looking at patients between our version of the application and the AMPATH application. I hope that the transition of data between the two applications would go smoothly but it doesn’t seem reasonable to think that this process would go without hiccups.

From the blog CS@Worcester – Student To Scholar by kumarcomputerscience and used with permission of the author. All other rights reserved by the author.

Sprint 3

This week wraps up sprint 3. During sprint 3 we accomplished a decent amount of things. Most of the stuff that occurred this sprint was done on the backend and setting up of git repositories for both the font end and back end. Over the past two sprints we have been able to complete most all of our sprint backlog tasks. This sprint was no different. We decided to use this sprint as a stepping stone to try and figure out if we could handle some more complex product backlog objectives such as developing a REST API and figuring out how to work on features such as food expiration tracking and timing (this is based off of a federal calculation and standard). For this sprint I took on the task of working on some front-end related stuff. At the beginning of the sprint we had a back end and a very sparce front end. I decided to take into my hands the task of designing the front end using HTML and CSS elements. A large advancement that I feel we made as a group this sprint was getting the google docs intake form for Thea’s Food Pantry translated over onto an HTML format so that we can connect it up with out front end and host it on our repository. From last sprint I had a worker screen mockup done completely in HTML with no CSS elements as well as just locally on my machine and not able to be seen/shared with the group. This was a major issue for me as I wanted to be able to share my progress with the group so that they could comment, contribute, or discuss any potential areas of concern. What I had hoped to do this sprint was add a task onto the sprint backlog to have us figure out how to transfer all my HTML worker screen work over to the repository that hosts all of our front end stuff. Unfortunately I was not able to complete this task this sprint as more front end design tasks came up that I felt were more important than transferring over a mockup file. One very interesting thing I learned about this sprint was online CSS editors. I can make my way around from scratch in an HTML file but CSS is a different story. CSS is a more complex almost add-on type language for basic HTML files. I was told about this online editor called Zeppelin.io that supposedly let you draw up wireframes within the application and then translated it to CSS for you so that all you needed to do was copy and paste into your actual project. Unfortunately, this application is a mac application and thus didn’t want to work with my windows machine (even though it had options for a windows download, I was unable to create any files from scratch without photoshop!). My next solution was this editor called stackblitz. Unfortunately it’s quite the opposite of the idea of zeppelin.io and is instead a real time online CSS HTML editor (things that you code are automatically compiled and displayed on a terminal). So even though it doesn’t give the CSS code, I was easily able to google how to write different CSS methods (buttons, how to call CSS methods in the HTML doc, etc) and it has been good so far. Now we have a wireframe to show the customer without having to commit it and push it to our repository. The best part is that stackblitz also works hand in hand with github so our repository is connected up to stackblitz and we can commit our changes to our repo without having to migrate all our front end files!

From the blog CS@Worcester – The Average CS Student by Nathan Posterro and used with permission of the author. All other rights reserved by the author.

Sprint 3 Retrospective

This past sprint was a good one, even if we didn’t manage to get a tremendous amount of actual development work done. We divvied work up amongst our different groups and had a lot of discussion regarding how to start our project and what approaches to take while doing so.

We got in contact with Gregory Schmidt, a development lead with the official AMPATH team. Mr. Schmidt provided us with a fantastically detailed outline for the rest of our project. It included an interactive wireframe built using zeplin.io as well as a series of videos describing the project plan and the objectives behind the wireframes. Originally we had intended to clone and develop components as branches on our forks from the original ng2-amrs project. However, once we realized we were essentially making our own small to supplement AMPATH’s, we restarted by making our own repository for a GitHub organization for the whole class. The organization is split up into the different development teams we’ve organized ourselves into as well. Inside of this organization is the repository we’re using now, which contains a small blank angular project, and we intend to use it in the upcoming sprint to build off of.

Not only did we figure out how to host the project we’re working on, but there was a lot of initial discussion regarding how to manage the progression of components during development. For example, we had originally intended to use Trello as a scrum-like “task board”. Although it was later decided that, since we can introduce issues into GitHub’s issue tracking board, we would use that. By using Github’s issue tracker, we can set up an issue for each component, and even have several issues per component for teams to adopt and develop. On top of this, we can more easily display to the class which teams are developing what components, and who is within each team. Having all of this data reside in one place streamlines the development process and makes it significantly easier to determine what has been finished and what needs to be worked on in the future.

Our professor has been doing a lot of work in trying to figure out what the development process will actually look like. The class was trying to discuss how we wanted to handle branching — I proposed the idea that we would have one branch per component being developed that would get merged into the final project once that component was completed. Come tomorrow in class, the professor will tell us exactly how we’re going to start the development, however he has already said that instead of one branch per component, we’re likely going to do one branch per user story. Then, of course, we can branch off of those into sub-branches if need be. I believe there was talk of also using GitHub’s Milestones functionality as “Epics”, which if I’m not mistaken are essentially larger, more broad issues to be completed. For example, if we need a page of our application that has both a menu and a search bar, there might be more than one component that goes into that. This page might be considered an “Epic”, because it would involve many stories being implemented at once. Having Epics would be really helpful to guide the overall development process, so implementing them as Milestones could potentially be very useful.

We’ll have more information regarding what we’re doing in the next sprint come tomorrow, and we’ll be starting some legitimate development this next sprint, which will be great. I’m excited to get started!

From the blog CS@Worcester – James Blash by jwblash and used with permission of the author. All other rights reserved by the author.

Sprint-3

In this last sprint my team and I ran into a few complications. We were trying to figure out how to go about creating these components that we are supposed. The class as a whole decided the best route to take was to break the amrs app down even more on GitHub so that each group would have their own component and there would be a ‘master’ branch so in the end we could push and merge everything onto that.

Some difficulties we had to work around included having to know what the layout would utilized because everything was sent over Zeplin but created off another platform (maybe adobe). We definitely are on the right path moving forward for the next sprint.

From the blog CS@Worcester – Life in the Field of Computer Science by iharrynguyen and used with permission of the author. All other rights reserved by the author.

Stuff Is Happening!

Hello, again my dear fellow readers!

In this blog post, I will be reflecting on the events of these past two weeks or the third sprint and I have some good news to share will all of you; things are happening!

Over the past couple of sprints, or four weeks in real time, things were slow and consisted primarily of simple set up tasks, npm errors, and learning about testing frameworks. At last, we have received communications from our AMPATH representative and we have been given both direction and a task.

The new direction we are headed in is admittedly different than where we thought we would go but that is just fine by me. We will be working with the other AMPATH groups to collectively make a mobile app version of the AMPATH software. From our AMPATH representative, we received a group of 6 different videos. Each detailed a part of the app that he wanted to create and gave an overview of the idea for what they would look and operate like. It was decided that, due to a large number of groups working on the AMPATH project this semester, the work would be divided up into individual screen components. This resulted in our group picking the sidebar or the “burger bar” as the AMPATH representative so colorfully put it (I have honestly never heard that term before). The representative had helpfully set up a Zepplin board with mock-ups of each element that he had portrayed in the videos. However, no one was able to view them due to Zepplin policies. This issue was resolved however it did take a couple of days as the AMPATH representative had to invite each of us one by one. Once, we were in, each of us was able to get a good idea of what was wanted.

This has led our group onto the next step, to learn Angular for mobile development! Now Angular for web page design I have done. Although it was only one semester, it was still experience and thankfully it helped create a base I could jump off of when searching for mobile Angular tutorials. One of our group members found two excellent websites to help visualize and learn mobile Angular. The first was a very helpful demo website called Mobile Angular UI. It is a demo site that aims to demo every aspect of what mobile Angular can do such as scrolling, tabs, touch, swipe, and most importantly, sidebars. While this aspect is not immediately available, all it takes is resizing your browser to see it in action. The useful tutorials and information for how to actually implement sidebars came again from Mobile Angular UI.

From there, our group ended the sprint, discussing how the sidebar would work on each individual page and where it would have to pull the necessary info from to operate properly. Since we just started this part, it will regrettably have to go into my next sprint retrospective. For now, this sprint has left me with more knowledge on overall Angular programming as it is going mobile!

That’s all for now readers. See you at the end of the next sprint!

 

 

 

From the blog CS@Worcester – Computer Science Discovery at WSU by mesitecsblog and used with permission of the author. All other rights reserved by the author.

Sprint-3 Retrospective Blog Post

It’s time for Sprint-3 Retrospective Blog Post. As you are probably aware by now during this semester I will be working on a AMPATH project with a team for my Software Development Capstone course . As part of our assignment we are assigned to complete a Sprint Retrospective blog post at the end of each sprint. As of Today, March 26th, 2019, we have completed Sprint-3. During this third sprint we were able to get everything we intended to get done during this third sprint cycle.  For sprint-3 everyone in the team had the same yet individual kind of task. These task were:

  1. As a developer working on ng2-arms I need to watch the provided YouTube tutorials on the #ampathofficial Slack channel, to get a better idea about what kind of web app we’re building.
  2. As a team of developer working on ng2-amrs we need to decide as a team, which part of the ampath mobile project suggested in the tutorial we will be working on.

During this sprint we was able to complete all the task we set, plus a few extra small side task. A few of the side things were to read about  unit testing – mocking for angular testing and read Mobile Angular Docs. The YouTube video talked about few of the simple type of application that can be done to try to make a simple application to deliver healthcare using a more user-friendly application. The video mention a few things each team can work on in order to contribute to this new goal. After discussing with the team about the video and what we are interested in working on. As a team we decided to work on “the left navigation bar”. For the next sprint I believe we will be focusing our time on the what, who’s, and how we going to focus and ensure that are left navigational bar will work.

During sprint-3, I’ve learned a little about mobile angular doc, and a little more about what direction and how I will be contributing to the ampath project. While reading about mobile angular I discovered the different type of possibilities that can be done working with angular. See, with angular we can work on creating androids or OS application. Which I found pretty interested and will be doing further research on it. Another thing is, watching the video provided by one of the official ampath person help me understand and kinda get a mental picture of where this project is heading and what will be expected from my team and I. During this sprint I also, learned that we will be using mocking for our testing instead of going in and using real patients data. In light of everything I learnt there is nothing very special that went on that requires details explanations or strategies that would required for handling things different next time. That being said by the looks of things this project is going to be fun and interesting. I truly hope this project goes without a hitch, without me making things more complicated than it has to be.

Thank you for your time. This has been YessyMer in the World Of Computer Science, until next time.

From the blog cs@Worcester – YessyMer In the world of Computer Science by yesmercedes and used with permission of the author. All other rights reserved by the author.

Software Development Capstone – Sprint 3 Retrospective

As I mentioned in my Sprint 2 Retrospective, this sprint was going to be significantly more exciting than the last sprint. This absolutely proved to be correct, because our team now has a project and a component of the project to work on! This is a very exciting development, because now we can finally start coding! We have been in touch with a representative from the AMPATH team, who has been giving us further information and wireframes/designs. Our final project will eventually start to reproduce these designs, and the remaining sprints will document the progress on that code.

But before that, we have been receiving lots of information about the type of work that we will be doing for the rest of the semester. Our project is the completion of a mobile app that simplifies the AMPATH point-of-care system, which is currently only present in a desktop interface. This app ideally will contain various components, which include: a search bar to find patients with an accompanying results page, a form that would appear when retrieving specific patient information, multiple lists of patients which can be toggled with a side navigation bar, a selection of different form types when choosing a patient to learn more about, a form with multiple tabs that contain different but related information, and a bottom navigation bar for further options. All of these parts of the mobile app were designed by the AMPATH team, and we were able to observe the wireframes of each component on Zeplin, a website which joins the roles of designers and developers. We are also not going to be provided a server, so we also have a team composed of members from different groups starting to work on mocking a back-end server (releasing pre-defined data rather than live data) so that the app can mimic retrieval of real-time information. In order to do this, the team is determining which of the front-end components will require some sort of back-end communication, so that the server can be mocked properly and fully.

Over the course of this sprint, we have mainly been setting up our coding environment with the new knowledge of what our project is going to be, as well as the part of the project that each team will be working on. Every team from Worcester State who is working on the AMPATH project has been connecting to a GitHub repository which only has a blank Angular project and a README/License. From this point, progress on each component of the app will be part of a separate branch in the GitHub project. We have been deciding how to go about diverging so that each part of the work is separate from every other component. Some ideas included individual or team forking, as well as team branches. However, due to possible changes in teams, as well as members of different teams working together, the decision is to work on component or feature branches.

I am very excited to see what kind of development process we will make over the course of the next sprint! Thanks for reading!

From the blog CS@Worcester – Hi, I'm Kat. by Kat Law and used with permission of the author. All other rights reserved by the author.

Sprint 3 Retrospective

Sprint three lasted a week longer than the other sprints due to spring break, resulting in a lot more work getting done compared to other sprints. Starting on March 6 until March 26, in our sprint backlog we planned on covering some posted videos and coming up with things to do as we went along.

The videos were posted in a slack channel by the owner of the AMPATH project, Gregory Schmidt. Greg commentated a walk through of what the app should look like, helping us get familiar with the various stages of the user interface. This also helped us understand what was being done on the backend when searching for patients or clicking on a patient profile. Greg also posted a shell of the project using a site called zeplin, which we all signed up for to view gregs content.

Once our research was done, we decided to clean up the backlog process a bit by moving everything we had on trello to a github project. The layout of both sites is similar and easy to transition to, we just copied and pasted the relevant planning information. Each team in the class picked a certain feature of the app to work on, we chose to tackle the navbar functions.

Since each member watched the youtube videos, we added a few things to our ongoing tasks while we moved them to github. Since our project is a mobile angular program, we found a link (provided below) with a lot of useful information. The site includes examples of how to get started on our navbar, we added that task to our planning board and aim to make a lot of progress towards a built prototype during the next sprint.

http://mobileangularui.com/docs/

In our last meeting, our group brainstormed some ideas of what our navbar would look like, what it will do, and who will be using it. Currently we only have a few sketches, but it seems like we’ve decided for sure that we are going to include a home button and a sign in button. We discussed each group member working on at least one button, therefore we would have 5-10 buttons and the work is evenly distributed. One concern of mine is thinking of that many buttons to develop, the project seems not complicated enough to warrant that much work.

The home button is a simple starting point, it simply takes the user to the upper most page. The sign in button idea is still a work in progress, but hypothetically it should prompt the user for some information and filter a list with data pertaining to that user. In the hands of doctors or clinicians, this would display patients names with an appointment date and the condition of the patient.

Further ideas revolve around the concept of filtering down a patient list based on specified parameters, however this idea is still foggy and might not come to fruition. The same function could be done by searching for a patients name in the search bar, a component taken by another team. We still have time though, and we are fairly ahead of schedule considering the remaining work load of the project. By the end of the semester, the 15th of may, we should have a working navbar with multiple useful buttons on it.

From the blog CS@Worcester – CS Mikes Way by CSmikesway and used with permission of the author. All other rights reserved by the author.