Normalizace První objektová normální forma Náš návrh byl už od počátku v první objektové normální formě, v žádném objektu se neopakovaly atributy, a proto zde nebylo potřeba žádných úprav Druhá objektová normální forma Náš návrh z 2. kontrolního bodu neobsahoval objekty sdílející skupiny atributů s jinými objekty, proto ani tady nebyly provedeny žádné úpravy Třetí objektová normální forma Zde jsme se rozhodli, že login+heslo u třídy osoba má samostatný význam, proto jsme jej vyčlenili do samostatné třídy Login Návrhové vzory Stav (State Pattern) Abychom zobrazili proměnlivý stav článků, použili jsme tento návrhový vzor. Každý článek má tak přiřazen jeden z možných potomků Abstraktního stavu, který identifikuje, v jakém stavu rozpracovanosti je. Návrhový vzor se týká tříd Clanek, Abstraktni_stav a potomků. Adaptér (Adaptor, Wrapper) Adaptér jsme použili, abychom přiřadili jednotlivým lidem v redakci, kteří jsou ztvárněni stejnou třídou Osoba, různé protokoly, čili různé pravomoci ohledně měnění článků. Každá osoba tak dostane přidělenu jednu nebo více rolí, čímž dostane specifické pravomoci v redakčním systému. Když někdo vykonává dvě různé role, nevzniká duplicita, protože jedna instance dostane dvě role (jedná se o Set), a měnění pravomocí je velmi lehké.