UCOSPLogNoahMurad

Noah Murad edited this page Feb 26, 2017 · 15 revisions
Clone this wiki locally

Each UCOSP participant is asked to log all the steps they take as they make progress through the semester. This includes difficulties they faced (getting set up, understanding how to model in Umple, using UmpleOnline, code that is difficult to figure out, and development tools that are hard to figure out, or don't seem to work properly). The more log entries added the more we can better get a grip on the usability issues with Umple, and the more we can help future new contributors come up to speed.

Please record entries in reverse chronological order

Log Entries

February 17th-26th

I made a very basic plugin which adds a button to the Orion UI which says "Umple Generation" but does not have functionality. I hosted this plugin on my GitHub pages so that Orion can install the plugin. Aside from this, I have been putting in many hours, across 4 sessions, reading through the Orion documentation and forums, making a post of my own attempting to learn how to send requests from the client to the server and how to make the server generate code with umple.jar upon receiving these requests, however, I cannot seem to find any guidance as to what my next steps should be.

February 9th

Today was a day of research. I continued learning about Orion, but this time I went more in depth, gathering knowledge that I will implement Umple code generation (among other features) into Orion.

Earlier this week I fixed my Docker problem, and today I came across another issue with restarting the Docker application. I ended up learning the basics of using Docker to understand and fix the issue.

Today I read through all the commits in the umple.orion repository (there are only 7 small commits) to see what has been done so far. I then read a little bit of the Orion server admin guide, all of the Orion architecture, and made my first Orion plugin, which lead me to learn JavaScript.

As for the future, I now know how to make a plugin for Orion, but the code generation needs to happen on the Orion server. So I will dive deeper into server-side development in my next work session, hopefully coming out with some implementation of Umple code generation in Orion.

February 2nd

Fixed up a small issue with my pull request concerning the format a comment in the generated code of the test templates. Started learning about Eclipse Orion on the wiki and set up and started to get acquainted with Orion by following some of the getting started guide. I also attempted to set up the Orion repository but I am getting an error related to a dependency when I try to start docker with sudo systemctl start docker on Manjaro. I will try solving this error during my next Umple session, perhaps by installing docker from another source.

January 27th

Fixing tests which failed after fixing issue 964. While fixing some of these tests, I've noticed that some of the generated code has method parameters of type Integer, int, and integer (which is now a typeless parameter after fixing issue 964). Only integer is a primitive PHP type. I have commented further in comments of issue 964. Issued my pull request for 964.

Another oddity that I ran into is that all ClassCodeInjections_* tests which were failing continued to fail after generating and placing appropriate code. All reasons for failure were due to the test expecting a comment line but receiving a line of executable code. I fixed this by removing all lines of the form // line * from the generated files for ClassCodeInjections_* tests.

January 20th-22nd

Code sprint at the University of Calgary. I spent the first two days attempting to solve issue 656, running into a few roadblocks which made solving this issue very much more difficult than it seems at the surface. More information about these problems can be found in the issue's comments. Luckily, attempting to solve this issue allowed me to explore (in depth) and understand the architecture of Umple. I spent the final day (morning) of the sprint learning some PHP and working on issue 964. It was a quick fix, but it allowed me to find another issue, which I mentioned in the comments of the issue.

January 17th

I got the environment set up in eclipse by performing a command line build and following Ahmed's steps. I started looking into solving my first issue. To do so, I have been getting a stronger understanding of Umple's architecture by referring to the architecture page and analysing the directory structure and reading through files.

January 9th

I attempted to set up my development environment in Eclipse. I managed to get everything working except for an error in the cruise.umple.nebula project. In cruise.umple.core.Generator an import of cruise.umple.cpp.gen.Header cannot be resolved. I tried adding cruise.umple to cruise.umple.nebula's build path, but that caused a circular reference error.

I also went through some practice examples of using Umple. I used Umple Online to generate the Java code.

January 6th

I finished reading the documentation and the key wiki pages. I successfully set up the development environment and plan on setting up the eclipse environment in my next work session.

January 5th

Read through the core of the Umple user manual including User Manual Basics, Classes and Interfaces, Attributes, Associations, Methods and Directives. Did some experimenting in UmpleOnline and skimmed and compiled some generated code.