Alexander's Work

Introduction

Daily sprint meetings as well as reviewing sprint meetings are important sessions during the scrum process. With daily meetings, the scrum team normally use the task board to update the status of the tasks whether completed or needed to be tested. On other hand under reviewing session, the scrum team check the summary of the overall project or certain finished sprint and also try to analyse using graphs if they can improve the sprint process in the next sprint or project. All these sessions need a system which can assist the team not only by effectiveness and efficiency but also by simplicity during usability.

User requirement analysis was carried out and the following features were decided to be implemented as part of solution for these two session:

  • Providing a given story list in a format that can be included in an e-mail or printed would be a very useful feature.
  • Printed story cards for a sprint, including description, name and story points (colour codes, unit work …).
  • Summary of project information and sprint information together with a graph of story points committed versus story points completed.
  • Task Board

Design

User centered-design was used as a methodology for designing the overall system. The intuitive behind this, was to try to optimize the system by refining the user requirement through other methods such as prototyping testing. UML diagrams were used to define user requirements before shifting to prototype design.

During each phase, prototypes were designed with specific purpose in a sense that final decision could be made after evaluation on what to include during implementation for the final high level prototype. Expression Blend tool was used to assist in designing these preliminary sketch prototypes. Furthermore the tool also provided the support feedback tools embedded inside the prototype for user to comment out on the prototype either by using a red draw pen or by type in text and save the feedback in a file. So the procedure was that to design the prototype, present to the user and then gathering the feedback from user for further improvements.

Initial Prototypes Final Prototypes
Garden View Garden View
Garden View Garden View
Garden View Garden View
Garden View Garden View
Garden View Garden View
Garden View Garden View

 

Implementation

.Net Framework together with Windows Presentation Foundation(WPF) was used to implement the system. At the back-end Microsoft SQL Server 2008 Express was used to store the data. Microsoft Visual Studio Ultimate 2010 was used as the development environment together with other design tools such as Microsoft Express Blend 3 and Microsoft Express Design 3 to design the initial prototypes through Blend sketch flow diagram.

The previous prototypes were transformed to functional features separately then the process of integration was done at later stage. The process of implementation was based on scrum methodology where each task corresponded to a sprint. The implementation on each sprint based on initial prototypes. Instead of sketch controls this time real controls with advanced look and feel were used to design the interface followed by implementing the functionality.

Evaluation

In order to ensure software quality and to meet user requirements for the final system base in functionality as well as usability the evaluation process started since the beginning of the design phase. The evaluation process was categorized in two types. The first type of evaluation targeted the core functionality of the system while the last type focused on usability of the system.

In order to achieve functional testing, primary functions were identified per each sprint. These major functions were associated with the main purpose or goals of the system.

After functional testing finished, usability testing followed next. The evaluation processed was restricted to two specific users who are using the current system, due to time constrain. The evaluation was conducted in demonstration based where each feature or
deliverable was presented to users and explained to them what each feature tries to accomplish. Users were free to ask questions encase they did not understand what particular feature tries to achieve. They were also allowed to make comments or suggestions for improvement.

The final results after perfroming these tests showed that the system definitely met the user requirements and hoping to deploy or start using the system next year as soon as possible.

Conclusion

In conclusion, the following features were able to be implemented as part of overall project:

  • Review Section which display summary for the project as well as summary for the sprint.
  • Generate graph which display comparison between sprints completed points VS sprint estimated points.
  • Export of list of stories to an external file thus PDF file type or Word Document type.
  • Print of story cards.
  • Task Board with basic functionality such as adding, editing and updating the tasks.

All features implemented here focus the target goals of the overall system thus effectiveness and easiness of the user interface when using during planning meetings as well as during reviewing meetings. User-centered design methodology was used to accomplish that. Nonetheless, initial sketch prototypes provided a clear-cut understanding of the final user interface while allowing changes to made iteratively.

Functional testing provided the assurance for the quality of the code implemented. Usability testing ensured the acceptance for the final integrated system through feedbacks provided in each iteration or sprint. Conclusively, the final integrated system was a success product due to irrefutable acceptance from the Korbitec main users.

Future Work

  • It could have been useful, quick and effective if internal e-mail client was also to be implemented so that user could just send notification or email to other stakeholders without accessing to external e-mail clients.
  • Since the time was not in our hands, we were not able to implement burn-down chart, which also is quite useful feature during the sprint when tracking of process. The chart would have showed the user how much work-load or hours remaining to meet deadline.