Tools

 

We will be using a variety of tools to facilitate communications among teams and course personnel, modelling, and documentation. It is good to set these up in the first week of classes.

 

Piazza   https://piazza.com/uwaterloo.ca/winter2023

 

Lucidchart

Your deliverables will include several UML diagrams. We don't really care what tools you use for this, as long as the end result looks reasonably professional (clear and readable). However, we can recommend that you use a modelling tool rather than a drawing tool (to ease the creation of models), and we strongly recommend using a tool that enables real-time collaborative modelling so that your team can all contribute to the creation of models during team meetings.

We currently recommend Lucidchart, which supports the creation of a wide variety of models, including the more sophisticated models that you will build towards the end of the course, and supports real-time collaborative modelling. There is a free version, but the normal free version is not likely to be sufficient for creating the size of models needed for this course. Instead, you want the free Educational Plan, which is sufficient for the models you will create for this course. To obtain an upgrade, perform the following actions:

  1. Obtain a free Lucidchart account.
  2. Some students who do the above will automatically be upgraded to the Education Plan. You can check this by looking at your Lucidchart profile and see if "Education" is at the top of the page.
  3. If you suspect that you have a basic Free Plan and not the Education Plan, you can request an upgrade to an Education Account. In your request, indicate that you are enrolled in a university-level software modelling course that will ask you to create models with more than 100 model elements in them.
  4. Within a day or two, you should receive an email indicating whether your request has been accepted.

Then you're in! You can create diagrams, share them with your teammates, and synchronously edit your diagrams in real time. The Education Plan allows you to create three diagrams, with an unlimited number of objects per diagram. So between you and your teammates, you can create 12-15 diagrams.

 

Overleaf or Word Online

I'm sure most of you have used MS-Word or something similar (e.g., Open Office), so you know how that works. It's WYSIWYG, easy to learn, easy to paste diagrams into, etc. However, for structured documents, it has many shortcomings. Like most professors I know, I use Word only when I have to and for short documents; for anything substantial, I use LaTeX (pronounced: Lay-teck). LaTeX is a markup language not unlike HTML (although LaTeX is a LOT more powerful). It's free, it's been around for many years, and there's lots of documentation on the web. You can write macros for it, and have very fine control over layout. If you want to try it out, here's a sample LaTeX file. You are free to use whatever word processing software you like, but you will want to use a version that supports real-time collaborative editing, like MS 365 Word Online or Overleaf for LaTeX.