1 / 23

Messenger project - Distributed Software Development

Messenger project - Distributed Software Development. Members of Messenger project. Final presentation. Project members. Jonas Wadsten: Team leader, documentation, web, database Muhammad Irfan Tahir Sourcecode, database Zdenek Svoboda Web interface, documentation, testing Zahid Mukhtar

samuelo
Download Presentation

Messenger project - Distributed Software Development

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Messenger project-Distributed Software Development

  2. Members of Messenger project Final presentation

  3. Project members Jonas Wadsten: Team leader, documentation, web, database Muhammad Irfan Tahir Sourcecode, database Zdenek Svoboda Web interface, documentation, testing Zahid Mukhtar Chief of documentation + UML Marko Bejuk Testing, documentation of tech stuff Tihana Knaffl Programming c/c++, the core of the program (sourcecode master)

  4. Process • Design • Database • Source code • Software • Web interface • Documentation • Questions?

  5. Class Relationship Diagram (CRD)

  6. Object Sequence diagrams (OSD) • OSD OF System Startup • OSD of Login Session • OSD of Add I/M, Delete I/M, Search • OSD of chat

  7. Object Sequence diagrams OSD OF System Startup

  8. Object Sequence diagrams OSD of Login Session

  9. Object Sequence diagrams OSD of Add I/M, Delete I/M, Search

  10. Object Sequence diagrams OSD of chat

  11. Overview

  12. Messenger Product

  13. Messenger Product(Cont’d)

  14. Messenger Product(Cont’d)

  15. Help GUI

  16. Database Progress… Tables Created(2)

  17. Database Progress… Tables Created(3)

  18. Database Progress…Tables Modified

  19. Source Code • general issues • technical issues • Yahoo! messenger • simplified GUI design • satisfied requirements • upgrade possibilities

  20. Web interface • frame • html design • php code • homepage • favorites

  21. Web interface

  22. Web interface • <?php • ############################################# • # name : project.php • # location : include/ • # by who : jonas wadsten • # purpose : here u can add and change projects • # as long as u are logged in as • # an administrator • # date : 2004-12-18 • # revision/what/who/when: • # changed design, Zdenek, 2004-12-28 • # added edit part + change design, jonas, 2005-01-13 • # added add part, jonas , 2005-01-17 • ############################################# • if ($_SESSION[login] == "") • { • print "<table class='normal'><tr><td>hey, your are not logged in yet...</td></tr></table>"; • } • else • { • print "<table class='normal'>"; • if ($do == "delete") • { • # delet the project, it just change delete value to 1 • $project = $_REQUEST['ProjectID']; • #UPDATE Person SET FirstName = 'Nina' WHERE LastName = 'Rasmussen' • $qUpdateProject = "UPDATE Project SET Deleted = 1 WHERE ProjectID = $project"; • $resultUpdate = mysql_query(qUpdateProject) or die("SQL: $qUpdateProject <br>".mysql_error()); • } • elseif ($do == "add") • { • $what = $_REQUEST['what']; • if ($what == "addProject") • { • $qAddProject = "INSERT INTO Project (ProjectName, StartDate, EndDate, AddedBy) • VALUES('{$_REQUEST['ProjectName']}', '{$_REQUEST['StartDate']}','{$_REQUEST['EndDate']}','{$_REQUEST['AddedBy']}')"; • $resultAddProject = mysql_query($qAddProject) or die("SQL: $qAddProject <br>".mysql_error()); • print "<tr><td colspan=2>project '{$_REQUEST['ProjectName']}' has been added to database....</td></tr>"; • }?> • <tr><td colspan="3" align="left">:: add a project</td></tr> • <tr><td colspan=3>&nbsp;</td></tr> • <tr height=2><td colspan=3 style='background-color: brown'></td></tr> • <tr><td colspan=3>&nbsp;</td></tr> • <form action="index.php?page=project&do=add&what=addProject" method="post" name="add_project"> • <input type="hidden" name="AddedBy" value=<?PHP echo"$_SESSION[memberID]"; ?>> • <tr><td width=150>:: name of project</td><td><input type="text" name="ProjectName"></td></tr> • <tr><td>:: start date</td><td><input type="text" name="StartDate"></td></tr> • <tr><td>:: end date</td><td><input type="text" name="EndDate"></td></tr> • <tr><td>:: added by</td><td><input disabled value="<?PHP echo"$_SESSION[FirstName] $_SESSION[LastName]"; ?>" type="text" name="Name"></td></tr> • <tr><td align="center" height="30"><a href='#' onClick='reset()'>:: reset ::</a></td><td align="center"><a href='#' onClick='add_project.submit()'>:: submit ::</a></td></tr> • </form> • <?PHP • } • elseif ($do == "edit") • { • $what = $_REQUEST['what']; • if ($what == "addPerson") • { • # adds a person to the project • $qAddPerson = "INSERT INTO MemberInProject (ProjectID, MemberID) VALUES('$projectID', '{$_POST['memberID']}')"; • $resultAdd = mysql_query($qAddPerson) or die("SQL: $qAddPerson <br>".mysql_error()); • } • elseif ($what == "update") • { • # update the project • $qUpdateProject = "UPDATE Project SET ProjectName='{$_POST['ProjectName']}', StartDate='{$_POST['StartDate']}', EndDate='{$_POST['EndDate']}' WHERE ProjectID = '{$_POST['ProjectID']}'"; • $resultUpdate = mysql_query(qUpdateProject) or die("SQL: $qUpdateProject <br>".mysql_error()); • } • # if you selected an project via a link this sql query will be executed • if ($projectID != '') • { • # get the project info from 2 tables, Project and TeamMember • $qGetOneProject = "SELECT * FROM Project, TeamMember WHERE ProjectID = $projectID AND Project.AddedBy = TeamMember.MemberID"; • $result2 = mysql_query($qGetOneProject) or die("Query failed: qGetOneProject <br>".mysql_error()); • $numRows2 = mysql_num_rows ($result2); • while ($line = mysql_fetch_array($result2)) • { • $t0 = $line['ProjectID']; • $t1 = $line['ProjectName']; • $t2 = $line['StartDate']; • $t3 = $line['EndDate']; • $t4 = $line['FirstName']; • $t5 = $line['LastName']; • $t6 = $line['AddedBy']; • $t7 = $line['Deleted']; • } • # get info about the teammembers in the project that has been shosen.... • $qGetProjectMembers = "SELECT * FROM MemberInProject, TeamMember WHERE ProjectID = $t0 AND TeamMember.MemberID = MemberInProject.MemberID"; • $result3 = mysql_query($qGetProjectMembers) or die("Query failed: qGetProjectMembers <br>".mysql_error()); • $numRows2 = mysql_num_rows ($result3); • # get info about all the teammembers for adding in project • $qGetAllMembers = "SELECT * FROM TeamMember WHERE deleted = 0"; • $result4 = mysql_query($qGetAllMembers) or die("Query failed: qGetAllMembers <br>".mysql_error()); • $numRows4 = mysql_num_rows ($result4); • } • # Here is the query that collects all the projects in database... • $qGetProjects = "SELECT * FROM Project"; • $result = mysql_query($qGetProjects) or die("Query failed qGetProjects <br>".mysql_error()); • $numRows = mysql_num_rows ($result); • # Here all the projects in database is printed • print "<form name='pick_project' method='post' action='index.php?page=project&do=edit'><tr><td width=150>:: pick a project: </td>"; • print "<td><select name='projectID'>"; • while ($line = mysql_fetch_array($result)) • { • $s0 = $line['ProjectID']; • $s1 = $line['ProjectName']; • $s2 = $line['Deleted']; • print "<option value='$s0'"; • if ($projectID == $s0) • print " selected"; • print ">$s1"; • if ($s2 == 1) • print " (deleted)"; • print "</option>"; • } • print "</select></td><td>&nbsp;&nbsp;<a href='#' onClick='pick_project.submit()'>:: choose ::</a></td></tr></form>"; • # if a project is selected the info will be shown here and possible to edit it • if ($projectID != '') • { • ?> • <tr><td colspan=3>&nbsp;</td></tr> • <tr height=2><td colspan=3 style='background-color: brown'></td></tr> • <tr><td colspan=3>&nbsp;</td></tr> • <form action="index.php?page=project&do=edit&what=update" method="post" name="update_project"> • <input type="hidden" name="AddedBy" value="<?PHP echo"$t6"; ?>"> • <input type="hidden" name="ProjectID" value="<?PHP echo"$t0"; ?>"> • <tr><td width=150>:: name of project</td> • <td colspan="2"><input type="text" name="ProjectName" value="<?PHP echo"$t1"; ?>">&nbsp; • <?PHP • if ($_SESSION[AccessRights] == 3) • print "<a href='index.php?page=project&do=delete&ProjectID=$t0'>:: delete ::</a>"; • ?> • </td></tr> • <tr><td>:: start date</td><td colspan="2"><input type="text" name="StartDate" value="<?PHP echo"$t2"; ?>"></td></tr> • <tr><td>:: end date</td><td colspan="2"><input type="text" name="EndDate" value="<?PHP echo"$t3"; ?>"></td></tr> • <tr><td>:: added by</td><td><input disabled value="<?PHP echo"$t4 $t5"; ?>" type="text" name="Name"></td> • <td align="center"><a href='#' onClick='update_project.submit()'>:: update ::</a></td></tr> • </form> • <tr><td colspan=3>&nbsp;</td></tr> • <tr height=2><td colspan=3 style='background-color: brown'></td></tr> • <tr><td colspan=3>&nbsp;</td></tr> • <tr><td>:: people in this project (email)</td><td colspan="2" align="left">:: company</td></tr> • <tr><td colspan=3>&nbsp;</td></tr> • <?PHP • # here is the result of the query qGetProjectMembers printed, shows all the membes in selected project • if ($numRows2 == 0 || $numRows2 == "") • { • print "<tr><td colspan=3>no people in this project...</td></tr>"; • } • else • { • while ($line = mysql_fetch_array($result3)) • { • $u0 = $line['FirstName']; • $u1 = $line['LastName']; • $u2 = $line['Email']; • $u3 = $line['Phone']; • $u4 = $line['AccessRights']; • $u5 = $line['Company']; • $u6 = $line['Deleted']; • $u7 = $line['MemberID']; • print "<tr><td>$u0 $u1 (<a href='mailto:$u2'>$u2</a>)&nbsp;&nbsp;</td>"; • print "<td> $u5</td><td><a href='index.php?page=project&do=delete&ProjectID=$u7'>:: delete ::</a></td></tr>"; • } • } • print "<tr><td colspan=3>&nbsp;</td></tr><tr height=2><td colspan=3 style='background-color: brown'></td></tr><tr><td colspan=3>&nbsp;</td></tr>"; • # here is the result of the query qGetAllMembers printed, here can you add a person to the project • print "<form name='pick_member' method='post' action='index.php?page=project&do=edit&what=addPerson'><tr><td>:: add member to project: </td>"; • print "<td><select name='memberID'>"; • while ($line = mysql_fetch_array($result4)) • { • $v0 = $line['FirstName']; • $v1 = $line['LastName']; • $v2 = $line['MemberID']; • print "<option value='$v2'>&nbsp;$v0 $v1</option>"; • } • print "</select></td><td>&nbsp;&nbsp;<a href='#' onClick='pick_member.submit()'>:: add ::</a></td></tr>"; • print "<input type=hidden name=projectID value=$projectID></form>"; • } • } • else # If something is wrong and logged in you will get this error-message... • { ?> • <tr><td>hey, your are logged in and looking at the projects (project.php)<br><br>but something is wrong.. try again...</td></tr> • <?PHP } ?> • </table> • <?PHP } ?>

  23. Documentation • Chat contents • Minutes of meeting • Mail correspondence • Importance • The repository http://www.fer.hr/rasip/dsd/projects/8/docs

More Related