Bug-Tracking database design

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Topicstarter
Modbreak:Dit topic is afgesplitst van De Devschuur Coffee Corner

Er mailt een vriend van me, die nu ook stage loopt, of ik zijn databaseontwerp even na wil kijken. Het betreft een soort bugtrackingsysteem. Ja, er zijn er al zo veel, maar je moet je stagiairs toch op de één of andere manier aan het werk houden ;)

Willen jullie eens op mijn ontwerp schieten, of mag dat niet in de koffiehoek? Mijn motivatie bij het ontwerp: een user voert work uit aan een feature die voor een version van een project wordt gerealiseerd.
Afbeeldingslocatie: http://tweakers.net/ext/f/bQJCzSOeOMLR5hVUla3cBpJu/full.png

Klopt wel, toch? :P

[ Voor 7% gewijzigd door Woy op 16-12-2009 10:24 ]

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Voor een Bug Tracking systeem mis ik eigenlijk een tabel Bug/Issue ;)

Maar verder is het eigenlijk niet de bedoeling om dit soort dingen hier in de coffee corner te gaan behandelen. Als je een iets uitgebreidere post typt, kun je natuurlijk perfect in SEA een topic openen.

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • D-Raven
  • Registratie: November 2001
  • Laatst online: 10-09 20:32
In dit model MOET een Feature een Version referentie hebben wil het onder een project ingedeeld kunnen worden. Wat je vaak ziet bij het creeeren van nieuwe features in zo'n systeem als deze is dat het wellicht nog niet helemaal duidelijk is voor welke versie deze uitgeleverd gaat worden enzo. Tenminste, dat is mijn ervaring.

Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Topicstarter
@Woy: een feature is natuurlijk ook een bug :+ Vandaar ook het (boolean) veld bug bij de features. Maar laat maar zitten dan, het is mijn project niet en ik geloof het verder wel. Het was zelfs een opdracht voor twee MBO'ers die hij onder zich heeft, en dat ontwerp ziet er toch uit ... :P

[ Voor 54% gewijzigd door CodeCaster op 16-12-2009 10:41 ]

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 23:37
CodeCaster schreef op woensdag 16 december 2009 @ 10:11:
@Woy: een feature is natuurlijk ook een bug :+ Vandaar ook het (boolean) veld bug bij de features. Maar laat maar zitten dan, het is mijn project niet en ik geloof het verder wel. Het was zelfs een opdracht voor twee MBO'ers die hij onder zich heeft, en dat ontwerp ziet er toch uit ... :P
Ik zou een tabel issue maken met een column die het type van de issue aangeeft (geen boolean, maar een enum waarmee je kan zeggen of het een bug, feature-request, etc... is).

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • Woy
  • Registratie: April 2000
  • Niet online

Woy

Moderator Devschuur®
Ik zie bij je user tabel ook een field "deleted". Waarom heb je die alleen in je User tabel? Kunnen andere dingen niet verwijderd worden?

“Build a man a fire, and he'll be warm for a day. Set a man on fire, and he'll be warm for the rest of his life.”


Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Topicstarter
D-Raven schreef op woensdag 16 december 2009 @ 10:10:
In dit model MOET een Feature een Version referentie hebben wil het onder een project ingedeeld kunnen worden. Wat je vaak ziet bij het creeeren van nieuwe features in zo'n systeem als deze is dat het wellicht nog niet helemaal duidelijk is voor welke versie deze uitgeleverd gaat worden enzo. Tenminste, dat is mijn ervaring.
Interessant punt, bedankt :) Je zou natuurlijk versie 0.0.0.0 als "wishlist" aan kunnen maken per project, voor features waarvan nog niet is bepaald in welke versie ze gerealiseerd moeten worden. Is er een manier om een optionele referentiële integriteit af te dwingen? Dus óf er moet een geldig project_id óf een geldige version_id ingevuld zijn?
whoami schreef op woensdag 16 december 2009 @ 10:16:
[...]
Ik zou een tabel issue maken met een column die het type van de issue aangeeft (geen boolean, maar een enum waarmee je kan zeggen of het een bug, feature-request, etc... is).
Issue is inderdaad generieker dan feature, en een enum biedt meer mogelijkheden dan een boolean.
Woy schreef op woensdag 16 december 2009 @ 10:29:
Ik zie bij je user tabel ook een field "deleted". Waarom heb je die alleen in je User tabel? Kunnen andere dingen niet verwijderd worden?
Uiteraard. Vergeten over te nemen, ik heb me gebaseerd op het oorspronkelijke ontwerp, waar ook enkel bij de gebruikerstabel een deleted-veld was geplaatst.

[ Voor 14% gewijzigd door CodeCaster op 16-12-2009 10:41 ]

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 23:37
Woy schreef op woensdag 16 december 2009 @ 10:29:
Ik zie bij je user tabel ook een field "deleted". Waarom heb je die alleen in je User tabel? Kunnen andere dingen niet verwijderd worden?
Misschien is dat omdat je een user enkel 'logisch' kunt verwijderen, zodat het uitgevoerde werk / reports van een user niet mee verwijderd worden, en kan je de andere dingen wel 'hard' verwijderen ?

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Topicstarter
whoami schreef op woensdag 16 december 2009 @ 12:44:
[...]

Misschien is dat omdat je een user enkel 'logisch' kunt verwijderen, zodat het uitgevoerde werk / reports van een user niet mee verwijderd worden, en kan je de andere dingen wel 'hard' verwijderen ?
Wanneer een issue onterecht blijkt, of een aantal werk-uren foutief zijn ingevoerd moeten deze toch op de één of andere manier onzichtbaar gemaakt kunnen worden. Uiteindelijk wil je deze zaken, hoewel niet meer bruikbaar, wel bewaren lijkt me?

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 23:37
CodeCaster schreef op woensdag 16 december 2009 @ 12:57:
[...]

Wanneer een issue onterecht blijkt, of een aantal werk-uren foutief zijn ingevoerd moeten deze toch op de één of andere manier onzichtbaar gemaakt kunnen worden. Uiteindelijk wil je deze zaken, hoewel niet meer bruikbaar, wel bewaren lijkt me?
Waarom ? Of je dat wilt of niet, hangt af van de requirements.

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Topicstarter
En die heb ik niet, want het is mijn opdracht niet :)

Maar voor allebei de mogelijkheden (deleted-veld of hard verwijderen) is wel wat te zeggen.

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • Herko_ter_Horst
  • Registratie: November 2002
  • Niet online
Kijk eens naar bestaande issuetrackingsystemen (Trac, Jira, Bugzilla) en welke mogelijkheden die bieden. Vaak zie je de database- c.q. opslagstructuur wel redelijke terug in de interface.

"Any sufficiently advanced technology is indistinguishable from magic."


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Ik heb hier, toevallig hoor, nog een schema liggen van een bugtrack systeem dat we bij een oud werkgever van me gebruikten. De DB stamt echter al, letterlijk, uit de vorige eeuw en er zijn wel een aantal zaken die ik persoonlijk anders aan had gepakt (zoals een aantal tabbelletjes om RBAC te faciliteren, een change/history/log tabel, en de naamgeving van zaken) maar misschien doe je aan de hand hiervan nog wat ideeën op; ik post het dan ook zéér zeker niet om er iets van te leren (of om 't 1-op-1 over te nemen :P ) maar puur ter "inspiratie" ;) (ende vermaeck :+ )

Afbeeldingslocatie: http://tweakers.net/ext/f/sqs9oYRuLD7B4hwRXrH25IIX/thumb.png

[ Voor 7% gewijzigd door RobIII op 16-12-2009 23:32 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • CH4OS
  • Registratie: April 2002
  • Niet online

CH4OS

It's a kind of magic

Waarom zou je bij een user tabel eigenlijk een veld deleted toe willen voegen? Gooi diegene dan gewoon uit de tabel, is die ook deleted. :) Of hernoem dan die deleted naar ban of zo, dat lijkt mij dan weer logischer.

EDIT: Ah, ik zie dat Whoami er eigenlijk al antwoord op geeft, laat mijn vraag dus maar zitten. :)

[ Voor 29% gewijzigd door CH4OS op 16-12-2009 23:39 ]


Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Topicstarter
Herko_ter_Horst schreef op woensdag 16 december 2009 @ 22:56:
Kijk eens naar bestaande issuetrackingsystemen (Trac, Jira, Bugzilla) en welke mogelijkheden die bieden. Vaak zie je de database- c.q. opslagstructuur wel redelijke terug in de interface.
Overkill voor de wensen :) Er hoeft geen SVN-koppeling of Wiki aan te hangen, en daarnaast is Trac danwel Bugzilla voor zover ik weet meer ingericht voor juist één project? Het principe feature-(milestone-)version-project wordt verder overal wel gehandhaafd.

@RobIII: ziet er ... uitgebreid uit. :P
GJtje schreef op woensdag 16 december 2009 @ 23:37:
Waarom zou je bij een user tabel eigenlijk een veld deleted toe willen voegen? Gooi diegene dan gewoon uit de tabel, is die ook deleted. :) Of hernoem dan die deleted naar ban of zo, dat lijkt mij dan weer logischer.
En dan alle projecten die 'ie aanmaakte, alle bugs die 'ie filede en alle uren die 'ie werkte ook weggooien?

[ Voor 41% gewijzigd door CodeCaster op 16-12-2009 23:50 ]

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
CodeCaster schreef op woensdag 16 december 2009 @ 23:42:

@RobIII: ziet er ... uitgebreid uit. :P
:D Uitgebreid? Dit is KARIG man! :o

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Topicstarter
Ik had het ook meer over de resolutie van de afbeelding.

https://oneerlijkewoz.nl
Op papier is hij aan het tekenen, maar in de praktijk...


  • whoami
  • Registratie: December 2000
  • Laatst online: 23:37
* whoami haat prefixen in tablenames & columnnames.
/offtopic.

https://fgheysels.github.io/

Pagina: 1