现在的位置: 首页 > 综合 > 正文

Retrospect on a recent university project

2013年09月07日 ⁄ 综合 ⁄ 共 4648字 ⁄ 字号 评论关闭

Group reflections and conclusion


Limitations in terms of functionality

The app is able to perform its main tasks to deliver and discover information on campus. However there are still
limitation in terms of functionality.


Better image recognition.
Currently the TrueView Augmented Reality viewer is delivering information based on location only. We have proposed
a solution based on image recognition using SIFT for feature extraction and Lucene for index searching, but the performance of current implementation is not up to support basic online operations. Image searching against large sample space is still a possible
direction of future work that may greatly enhance the functionality of this app.

Limitations in terms of structure, design, implementation

The design and structure of this app generally fulfills its requirements, capable of providing information to the
client in the way that is flexible, extensible and portable (to other platforms).

However on the implementation side there are still limitations. Based on the performance of general Android hardware,
the performance of the WebKit browser control provided in Android OS and the jQuery library, the interface, when comparing to industry standard like the new native Facebook app, is slower in response. Facebook has been shifting back from HTML 5 to native controls
in order to greatly speed up the interface but that requires a great engineering efforts which is not feasible given the size of team and time limit of this project.

Also the interface design, including color, icon and layout details would be greatly enhanced from a professional
designer’s point of view.

Primary strengths

The main strength of this app is that it is

  • Designed specifically for the University of Sydney
  • Being able to connect real world and virtual word using geo-location and other information sources
  • Providing comprehensive information about the campus including facilities and business.

Reflections on Extreme Programming


The team has been implement some of the best practices from Extreme Programming, including paired programming,
status meeting, quick iteration and test driven programming.

The progress that the team employs XP has shown certain strength as well as weaknesses. Each will be described
below.


Strength:

Paired programming boosts up performance.
The team starts with barely any experience on the Android platform. By requiring members to work in pairs on the
same functionality, members could be learning much quickly. Working alone in a completely new area may sometime make people stuck at the same place making no progress and even worse losing focus unintentionally. By having a peer looking at the same screen
at the same time, discussion could quickly activate minds, find solutions and quickly move on to next problem.


Daily status meeting allow team to correct direction quickly.
We had daily meeting at end of day each day. Everyone in the team describes what have been achieved and what is
pending / blocking. This allows the whole team to understand the overall progress, and allows efficient collaboration and resource assignments to tackle problems.


Quick iteration and TDD.
We started to use TDD at mid-late stage of client development. We wrote a set of tests first and for each check-in
of client code we quickly go through the main list of test cases to ensure that functionalities are implemented correctly and old code isn’t broken. Well chosen test cases and good test performance allows bug fixings to be done within cycles of minutes, not
days.


Limitation of XP:

Basic knowledge and understanding of the process.
XP process encourages, and is built based upon, efficient collaboration and communication within teams with shared
common understanding of the methodology. For example both TDD and Paired Programming both require specific skills to be used effectively rather than being a burden to performance.


Communication skills.
XP methodology was designed based on effective communication within the team. Communication should be kept rather
short, simple but spot on, and are to be focusing on the main point that need to be communicated directly. High professionality of each member, as well as good understanding (or experience of working together) within the team is an important prerequisite to
make this method useful.



Group aspects as well as product and processes

The team has been completed this project based on XP methodologies with process control built upon SVN and Trac
platform. This is a proof that, given required training on process and communication, Agile and XP methodology is suitable for small- or mid- sized projects. It has especially put on great challenge upon, but also helps build, a team such that collaborates
and communicates effectively enough to tackle problems with high efficiency.


The product starts with a clear scope and client has been very supportive helping to make sure that requirements
are clear and valid. This is the most important factor towards a successful product. The product, at it’s current stage, is quite minimal and does only content delivery to the users. The functionality could be greatly extended in the way that more interactions
could be added to make this app both more attractive and useful. Possible extensions to this app includes: interface for content providers (societies, business, faculties and offices, etc), connections to social networks for interactions and sharing, instant
image recognition in AR for content delivering and others.

抱歉!评论已关闭.