Skip to content
Snippets Groups Projects
Commit 25859adb authored by Goik Martin's avatar Goik Martin
Browse files

Marking Criteria and project description

parent e3e0cf96
No related branches found
No related tags found
No related merge requests found
......@@ -300,14 +300,55 @@
</itemizedlist>
<tip>
<para>Test the deployability of your project by installing it on
an untouched target platform (possibly of a different
hard/software architecture) and execute <command>mvn</command>
<para>Test your application's deployability by installing it to an
untouched target platform (possibly of a different hard/software
architecture) and execute <command>mvn</command>
<option>test</option> (provided you do have written meaningful
unit tests).</para>
</tip>
</listitem>
</orderedlist>
<para>Marking criteria may vary. As of current winter term 2016 the
following rules of thumb apply:</para>
<informaltable border="1">
<colgroup width="30%"/>
<colgroup width="10%"/>
<tr>
<td>Code quality</td>
<td>25%</td>
</tr>
<tr>
<td>Code documentation</td>
<td>25%</td>
</tr>
<tr>
<td>(Unit) Tests</td>
<td>25%</td>
</tr>
<tr>
<td>Deployment</td>
<td>15%</td>
</tr>
<tr>
<td>Using <link
xlink:href="https://gitlab.mi.hdm-stuttgart.de">Source code
management (Git)</link></td>
<td>10%</td>
</tr>
</informaltable>
</section>
<section xml:id="sd1SectProjectAddressDatabase">
......@@ -325,12 +366,96 @@
--------------------------------------
Main options:
0: Browse person entries
1: Toggle filtering person entries
2: Create new person entry
3: Delete person entry
0: Browse person entries <co linkends="sd1CalloutAddressDbProject-1"
xml:id="sd1CalloutAddressDbProject-1-co"/>
1: Toggle filtering person entries <co linkends="sd1CalloutAddressDbProject-2"
xml:id="sd1CalloutAddressDbProject-2-co"/>
2: Create new person entry <co linkends="sd1CalloutAddressDbProject-3"
xml:id="sd1CalloutAddressDbProject-3-co"/>
3: Delete person entry <co linkends="sd1CalloutAddressDbProject-4"
xml:id="sd1CalloutAddressDbProject-4-co"/>
4: Exit
Your choice: 2</programlisting>
<calloutlist>
<callout arearefs="sd1CalloutAddressDbProject-1-co"
xml:id="sd1CalloutAddressDbProject-1">
<para>List all person records within your database. In presence of a
filter (See <coref linkend="sd1CalloutAddressDbProject-2-co"/>) only
a subset of entries will be displayed.</para>
</callout>
<callout arearefs="sd1CalloutAddressDbProject-2-co"
xml:id="sd1CalloutAddressDbProject-2">
<para>For large person databases listing all entries becomes
cumbersome. You may want to define filters limiting your visible
result output by examining the last name attribute.</para>
<para><xref linkend="glo_Java"/> allows for matching strings by
<link
xlink:href="https://docs.oracle.com/javase/8/docs/api/java/util/regex/Pattern.html">regular
expressions</link> to be used with e.g. <link
xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#matches-java.lang.String-">String.matches(...)</link>.
Examples:</para>
<glosslist>
<glossentry>
<glossterm>^A.*</glossterm>
<glossdef>
<para>Strings starting (^) with capital A followed by an
arbitrary number of arbitrary characters.</para>
</glossdef>
</glossentry>
<glossentry>
<glossterm>^[G-J].*</glossterm>
<glossdef>
<para>Strings starting with a capital letters G,H,I or J
followed by an arbitrary number of arbitrary
characters.</para>
</glossdef>
</glossentry>
<glossentry>
<glossterm>.*s$</glossterm>
<glossdef>
<para>Strings ending with character s.</para>
</glossdef>
</glossentry>
</glosslist>
</callout>
<callout arearefs="sd1CalloutAddressDbProject-3-co"
xml:id="sd1CalloutAddressDbProject-3">
<para>Creating a new person record </para>
</callout>
<callout arearefs="sd1CalloutAddressDbProject-4-co"
xml:id="sd1CalloutAddressDbProject-4">
<para>Deleting a person record from your database</para>
</callout>
</calloutlist>
<para>In order for entries to survive program termination we need a
persistence mechanism. The example application will create a new file
<filename>address.txt</filename> on first invocation when adding at
least one person:</para>
<programlisting language="none">Frank,Bone, ,885-11-87
Julius,Caesar, ,
Ee,Ff,hh,45
A,B, ,24
Eve,Gardener, ,32-44-2234</programlisting>
<para>Each person record is being represented by four values being
separated by three commas. Empty attribute values require a single
space. The method <link
xlink:href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html#split-java.lang.String-">String.split(...)</link>
is your friend when reading this file on program startup using
<quote>,</quote> as separator split token.</para>
</section>
<section xml:id="sd1SectProjectGrep">
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment