Csoport
neve: MAAT
Feladat
sorszáma: 2.
Feladat
címe: Hálózat manager
Objektum
tervezés
Gyakorlatvezető:
WAGNER GYÖRGY
Csoport tagok:
|
Imre
Mihály
|
G-3S8
|
imre@iit.uni-miskolc.hu
|
|
Fazekas
Lajos
|
G-3S1D
|
fazekas@iit.uni-miskolc.hu
|
|
Kis
Simonka József
|
G-3S8
|
kis2@iit.uni-miskolc.hu
|
|
Szűcs
Tamás
|
G-3S8
|
szucst@iit.uni-miskolc.hu
|
2006.
május 12.
Tartalomjegyzék
1. Bevezetés
2. A három-modell egyesítése
3. A tervezés lépései
3.1 Algoritmus tervezés
3.2 Asszociációk tervezése
3.3. Láthatóság biztosítása
4. Nem OO környezethez való illesztés
5. Ütemezési szerkezet kialakítása
6. Optimalizálás
7. Deklarációs sorrend meghatározása
8. Modultervezés
X. Mellékletek
1. Bevezetés
Mivel jelen dokumentumra nem volt ajánlott formula, így
pontjai Ficsor Lajos oktatási segédleteibőlk az OMT
objektum tervezés témaköre alapján
születtek meg. A pontok az idő rövidsége miatt nem
minden esetben kerültek részletezésre.
Igyekeztünk kiragadni a legfontosabbakat, illetve azokat,
amelyekhez kézzel fogható eredményekből tudtunk
támaszkodni.
2. A három-modell egyesítése
A H4 határidőre leadott Analízis dokumentum 3.5-ös
pontjában feltüntetett analízis modell a
fejlesztés átszerkesztésre került. Ezt a
tényt a H5 határidőre benyújtott dokumentumaink
közül a "maat_ANALH5.html"-ben részletezzük.
3. A
tervezés lépései
3.1 Algoritmus tervezés
- public Tree() {}
A metódus szerepe:
A GUI főablakának bal oldalán található
fa-struktúrát ez a metódus tölti fel
hostnevekkel, amit a kliensen keresztül menedzselni tudunk.
Egyelőre a metódusban fixen beállított hostnevek
szerepelnek, tehát nincs ellenőrző algoritmus, ami
megvizsgálja, melyik gépen fut ténylegesen egy
agent.
- public static void main(String[] args) {
MNSplash mnsp = new
MNSplash();
mnsp.setVisible(true);
try {
Thread.sleep(1000);
} catch
(InterruptedException ex) {
ex.printStackTrace();
}
mnsp.setVisible(false);
MNLogin mnl = new MNLogin();
mnl.setVisible(true);
}
A kliens vezérlő alrendszerében ez a metódus
vezérli a kliens elindulásától kezdve a
felhasználó elé kerülő ablakok
sorrendjét: először egy bootsplasht jelenít meg,
majd meghívja az NMLogin osztály egy
példányosított objektumának (mnl)
formját, mely a belépésért felel.
- private void jButton2ActionPerformed(java.awt.event.ActionEvent
evt)
{
System.exit(125);
}
Ez a metódus az NMLogin osztályhoz tartozó formon
található Exit gomb lenyomására
kilép a kliensből.
- private boolean chkPassword(String user, String pass){
String password="123";
String username="root";
if (user.equals(username)
&& pass.equals(password)){
return true;
}
else return false;
}
Ez a metódus egy egyszerű ellenőrzést hajt végre
a private void jButton1ActionPerformed(java.awt.event.ActionEvent
evt) {} metódus kezdeményezésére, amely a
Login gomb megnyomásakor aktiválódik. Arra
szolgál, hogy eldöntse, hogy a beírt
felhasználónév/jelszó páros
megfelelő-e a belépéshez.
- private void jButton1ActionPerformed(java.awt.event.ActionEvent
evt)
{
if
(chkPassword(jTextField1.getText(), new
String(jPasswordField1.getPassword()) )) {
System.out.println("jo" + jPasswordField1.getPassword() );
}
else
System.out.println("rossz"+new String(jPasswordField1.getPassword()));
dispose();
}
Az előbb taglalt értékellenőrzés után ha a
visszatérési érték logikai igaz, akkor a
rendszer közli velünk, hogy a beírt adatok helyesek,
feljogosítanak a belépésre, ellenkező esetben
közli, hogy az adatok rosszak és kilép az
alkalmazásból.
3.2
Asszociációk tervezése
3.3 Láthatóság
biztosítása
4. Nem OO
környezethez való illesztés
Mivel a rendszer java környezetben fog futni, így ezen
szempont nem kerül kifejtésre.
5.
Ütemezési szerkezet kialakítása
6.
Optimalizálás
7.
Deklarációs sorrend meghatározása
8.
Modultervezés
A rendszer moduljai maguk az alrendszerek, tehát
összesen 5 modul (3 a kliensben, 2 az agentben)
A modulok név szerint:
Kliens:
- megjelenítő modul
- vezérlő modul
- kommunikációs modul
Agent:
- vezérlő modul
- kommunikációs modul
X.
Mellékletek