Gjatë veprimtarisë profesionale, një programues duhet të merret me shumë situata që kërkojnë analiza komplekse të fragmenteve të mëdha të kodit burimor apo edhe të aplikacioneve të tëra. Hulumtimi i zgjidhjeve dhe praktikave të suksesshme, analizimi i algoritmeve të zbatuar tashmë, ose thjesht transferimi i një projekti tjetër tek një ekip shpesh e bën të domosdoshme çmontimin e një programi të shkruar nga dikush tjetër.
E nevojshme
- - programi për shikimin e kodit burimor;
- - mundësisht mjete inxhinierike dhe rastesh të kundërta.
Udhëzimet
Hapi 1
Kontrolloni rrjedhën e transferimit të kontrollit të programit që analizohet Identifikoni pikën e hyrjes. Ai, për shembull, është funksioni kryesor në C dhe C ++, fillimi i një blloku strukture të nivelit të parë pa emër, që mbaron me fjalën kyçe FUND me një pikë, në paskal. Duke filluar nga pika e hyrjes, gjurmoni të gjitha rrugët e thirrjet në funksione, procedura, metodat e klasave. Vizatoni një diagram të nivelit të lartë të rrjedhës së kontrollit. Për të thjeshtuar këtë proces, mund të përdorni mjete të ndryshme inxhinierike të kundërt. Analizoni më hollësisht kodin burimor të elementeve strukturorë të programit të analizuar. Vizatoni diagrame të rrjedhës së kontrollit ose diagrame të rrjedhës për funksionet dhe metodat individuale.
Hapi 2
Analizoni rrjedhat e të dhënave të programit që analizohet. Identifikoni strukturat e përdorura për ruajtjen e informacionit dhe transferimin e tij midis elementeve funksionale të aplikacionit. Identifikoni fragmentet e kodit që shndërrojnë të dhënat nga një formë në tjetrën. Bëni një listë të vendeve në program ku informacioni merret nga mjedisi i jashtëm, si dhe rezultatet e tij diku. Mjetet e ri-inxhinierisë dhe mjetet e rastit (për shembull, për të ndërtuar një diagram trashëgimie dhe një diagram varësie) do të ndihmojnë gjithashtu në këtë lloj analize.
Hapi 3
Çmontoni programin, duke pasur një kuptim të plotë të parimeve të funksionimit të tij. Në bazë të njohurive në lidhje me rrjedhën e transferimit të kontrollit midis elementeve strukturore, si dhe brenda tyre, njohuritë e rrjedhave dhe llojet e transformimeve të të dhënave, identifikojnë algoritmet kryesore të punës. Ndani algoritmet për përpunimin e të dhënave dhe kontrollin e ndërfaqes. Zgjidhni algoritme tipike të përpunimit dhe klasifikojini. Identifikoni algoritmet bazuar në bashkëveprimin e përbërësve të ndryshëm (për shembull, kërkimi mund të përdoret si në mënyrë të pavarur ashtu edhe si pjesë e një lloji). Nëse është e nevojshme, përpiloni skemat e rrjedhës me shkallë të ndryshme të detajeve për të ilustruar funksionimin e programit.