250 likes | 260 Views
This presentation showcases the completed Distributed Software Development WebProject, including demonstrations, team experiences, and lessons learned.
E N D
NOTICE! • These materials are prepared only for the students enrolled in the course Distributed Software Development (DSD) at the Department of Computer Science and Engineering, University of Mälardalen, Västerås, Sweden and at the Faculty of Electrical Engineering and Computing, University of Zagreb, Croatia (year 2005/2006). • For all other purposes, authors’ written permission is needed! • The purpose of these materials is to help students in better understanding of lectures in DSD and not their replacement!
Selected Topics in Software Engineering -Distributed Software Development
WebProject Team WebProjectFinal Presentation
Today: • Finally finished? • How did you do it? • What do you have? • Demonstration • Meet the team • Experiences • Things learned
Finally finished? • Yes!!! • as it is written in the plan "A badly planned project will take three times longer than expected - a well planned project only twice as long as expected."
How did you do it? (I) • mainly by working • ca. 1450 working hours reported • 10 working weeks (“holidays” included) • average of 18 hours / userweek • lots of communicating • ca. 650 e-mails written (private and mailing list) • ca. 1200 CVS automatic messages • countless chat sessions
How did you do it? (II) • CVS log diagrams
How did you do it? (III) • milestones timeliness: 15 / 15 = 100%
What do you have? (I) • all 41 out of 41 requirements fulfilled • 22 WebProject modules • added to system (developing and testing): • ca. 60 users • ca. 60 projects
What do you have? (II) • Project Core Requirements: • Methods for handling database queries • Methods for handling system errors on page • special error handling in 2 modes (debug / no debug) • Handling multilanguage support • easy to use, just call your local translator, no developers
What do you have? (III) • User/Project Administration Requirements: • Multiple users privileges (administrator, manager, vice manager, member) • Adding/deleting/enabling/disabling users Adding/deleting projects • even more: active, finished, cancelled projects • Assigning/removing managers/members • Editing project properties • “Automatic freezing” option • entering project planned cost only once
What do you have? (IV) • Tasks Administration Requirements: • Adding/removing task • types: one-time and milestone • don’t worry: if you freeze the project, it won’t be lost • Editing task properties • Assigning members to task (one member per task) • View current plan
What do you have? (V) • Tasks Administration Requirements: • View Gantt’s chart • a very nice graphical representation of the Project Plan, don’t you agree? • special milestones layout • Enable dependencies between tasks • Finish to Start dependencies • check to make sure it is feasible -> “paint it in red”
What do you have? (VI) • Tasks Administration Requirements: • Freezing current plan • freezing project properties, tasks, labels • Automatic freezing after defined time interval • in the end of every Project Time Period • don’t worry, can be turned off for each project from GUI • Viewing frozen plans
What do you have? (VII) • Reports Administration Requirements: • Viewing submitted members’ reports • you can edit them also, in case of humorous workers • Displaying members’ reports lists by members / time periods / tasks / labels • Viewing members’ suggestions for updating finish dates • automatic update in the database, if accepted
What do you have? (VIII) • Reports Administration Requirements: • Generating report files • project plan • user report • task report • period report • File formats • XML • HTML • PDF
What do you have? (IX) • Web Page Requirements: • Using templates to divide logic and web page generating • Using CSS for easier web design changes • as promised: • two color skins (FER, MdH) • support for Mozilla Firefox, Internet Explorer, Opera
What do you have? (X) • Users’ Preferences Requirements: • e-mail alerts • 1. upon submitting the task report • sent to Managers and Vice Managers • 2. upon generating a report • type the e-mail addresses of your customers • 3. before the milestone • just relax, cron takes care of it • don’t want to receive e-mails? Turn it off from GUI! • choosing the preferred language
What do you have? (XI) • Costs Handling Requirements: • entering the planned cost of the project • it can be entered only once... No cheating! • calculating the cost based on: • fixed costs per time period • users’ payment coefficients • current average users’ cost per hour
What do you have? (XII) • ...but weren’t asked to do...? • RSS feed • test WebProject installation script
Meet the Team • Ji Xiang An • Gurjodh Singh Dhillon • László István Etesi • Sanchez Angel Garcia • Ivana Bosnić • Hrvoje Ðurđević • Krešimir Kroflin • Ranko Radonić
Experiences • a great course and a valuable experience • team members were very motivated • cultural differences – we’re not the same! • quick learning of new technologies • heavy workload • demotivation because of institutional problems at FER side
Things learned • specify the project in details in the beginning • keep in mind differences in education systems • communicate as much as you can • use CVS • even if you’re working alone! • use bugtracking software • keep the team spiritup • be responsible and punctual, ask questions, show solidarity, give (and receive) help, build trust
Thanks to: • WebProject Team members • they have put a great effort in WebProject • FER-RASIP system administrators • they were always helpful and quick • customers and supervisors • they weren’t torturing usnor changing requirements; were giving a great support to us • teaching staff • they decided to make DSD course in this form