Toon posts:

Methode om systeem te verbeteren

Pagina: 1
Acties:

Verwijderd

Topicstarter
Voor mijn afstuderen moet ik een applicatie verbeteren, maar ik kom er niet echt uit of daar een specifieke methode voor is. Ik wil het graag gestructureerd aanpakken maar kan er op internet niet echt iets over vinden. Het is geen refactoring en het systeem wordt ook niet overnieuw ontwikkeld. Ik moet een aantal performance problemen oplossen die ik eerst zelf mag gaan zoeken. Ik vroeg me af of hier specifieke methodes voor zijn om dit aan te pakken? Op school heb ik er in ieder geval niks over geleerd. Alleen maar het bouwen en ontwerpen van nieuwe applicaties.

Misschien kan iemand me op de juiste weg helpen.

  • mdcroon
  • Registratie: Januari 2005
  • Laatst online: 27-01 13:05
Wat je in ieder geval moet weten op welke plaatsen in de applicatie de performance problemen zich voordoen. Hiervoor kun je een loadtest uitvoeren. Nadat je de 'zwakke' punten kent zul je deze nader moeten gaan uitzoeken. Wellicht moet je ook nog breder gaan kijken omdat performance problemen ook veroorzaakt kunnen worden door keuzes die op andere plekken in de applicatie zijn genomen en die uiteindelijk nadelig blijken te zijn voor de performance.

  • dingstje
  • Registratie: Augustus 2002
  • Laatst online: 02-01-2024
Hiervoor wordt vaak/altijd gebruik gemaakt van profilers om te kijken hoeveel tijd bepaalde functies innemen. Dan ga je nadenken of die tijd aanvaardbaar is voor de taak die je moet doen (zo kan 10 seconden voor een complexe verwerkingsopdracht retesnel zijn en 10 seconden om input te valideren veel te traag). Op die manier vind je makkelijk waar performanceproblemen optreden en kan je gaan doorspitten wat je eraan kan doen.

Maar ik zou eerst proberen een algemeen beeld te krijgen van het systeem, en enkele 'design choices' afwegen op performance. Zo is het bijvoorbeeld mogelijk dat men data op een niet-efficiënte manier opslaat, ...

Zie overigens ook: http://en.wikipedia.org/wiki/Performance_analysis

[ Voor 5% gewijzigd door dingstje op 06-07-2007 11:37 ]

If you can't beat them, try harder


  • BasieP
  • Registratie: Oktober 2000
  • Laatst online: 19-10 08:18
zoals dingstje al zegt:
eerst je project analyseren, dus kijken wat voor proces je hebt, en kijken hoe ze dit opgelost hebben.

Daarna opdelen in stukken, en eventueel sub-stukken. Deze analyseren op snelheid.
Niet direct in code gaan duiken, maar eerst heel globaal dingen bekijken en meten.

This message was sent on 100% recyclable electrons.


  • JKVA
  • Registratie: Januari 2004
  • Niet online

JKVA

Design-by-buzzword fanatic

Los van de profiler zou ik eerst een load test doen met bijvoorbeeld Apache JMeter of ACT (zit bij Visual Studio) om te kijken welke schermen/use cases problemen opleveren. Kost amper moeite, gewoon wat scenario's opnemen en dan een uur koffie drinken. Dan merk je vanzelf waar de bottlenecks zitten.

Daarna kun je bij de trage schermen (uitgaande van een GUI applicatie) gaan kijken wat er onder water gebeurt... (en profilen)

Fat Pizza's pizza, they are big and they are cheezy


  • Xiphalon
  • Registratie: Juni 2001
  • Laatst online: 16:44
Praat met de (eind)gebruikers van het systeem. Die weten precies waar de problemen zitten als je wat doorgraaft en niet altijd alles wat ze zeggen serieus neemt.

Laat vooral niet blijken dat je dingen functioneel kan/mag/gaat veranderen, want dan krijg je daar alleen maar gezeik over :)

  • JKVA
  • Registratie: Januari 2004
  • Niet online

JKVA

Design-by-buzzword fanatic

darkmage schreef op vrijdag 06 juli 2007 @ 12:55:
Praat met de (eind)gebruikers van het systeem. Die weten precies waar de problemen zitten als je wat doorgraaft en niet altijd alles wat ze zeggen serieus neemt.

Laat vooral niet blijken dat je dingen functioneel kan/mag/gaat veranderen, want dan krijg je daar alleen maar gezeik over :)
Zorg sowieso ervoor dat je niet teveel verwachtingen wekt, zeker niet bij eindgebruikers. Dat werkt alleen maar tegen je. Als het niet lukt, zit je met de gebakken peren en mag je vanalles gaan uitleggen, en als het wel lukt, is de blijdschap van de gebruikers ook niet denderend.

Als je daarentegen geen verwachtingen wekt, valt het a) altijd mee en b) zullen de gebruikers extra gelukkig zijn als je een redelijke winst kunt behalen.

Het heeft ook een naam:
http://www.btsg.nl/infobulletin/verwachtings.html

[ Voor 4% gewijzigd door JKVA op 06-07-2007 12:59 ]

Fat Pizza's pizza, they are big and they are cheezy


  • mdcroon
  • Registratie: Januari 2005
  • Laatst online: 27-01 13:05
Ik weet niet precies wat de applicatie functioneel moet doen maar bedenk wel dat voor het verwerken van informatie gewoon tijd nodig is.

Als een applicatie 100000 records naar een database moet wegschrijven dan zal dat niet binnen 1 seconde klaar zijn. Het gaat ook om een stukje bewustwording bij de gebruikers.

Helemaal spannend wordt het als ook nog andere processen (applicaties) een rol gaan spelen. We hebben recent performance problemen meegemaakt bij een klant. Uit de analyse bleek dat de rapportage tool wat ze gebruikten de hele database blokkeerde. Daar gaat je performance.....
Pagina: 1