This is the final phase of our solar decathlon home management system mockup for the semester. We've been tasked with taking our Balsamiq mockups and converting it to an HTML-Wicket Framework model.
What I learned from this:
I learned a lot about Wicket, and got some very helpful hints on web design as well. I also can see the advantages of a framework like Wicket; it allows the developer to bundle everything into a neat little archive file that can be run from any computer. And in the webpage sector, this involves bundling a webserver (we used Jetty) so that any prospective client can view dynamic web content as long as they have the Java JVM installed. This avoids the difficulty of having to set up a web server or the need to have internet access in order to view a dynamic web page.
What we did well:
I've been lucky enough to be part of a group that has two exceptional web designers and programmers, which makes it incredibly easy and efficient to get things accomplished. I thought that we did a good job on focusing on the development of a template. This really allowed us to push forward quickly with the knowledge that the framework that we were working on was sound and well-developed.
Some Difficulties Encountered:
There was a lot of time spent just figuring out how to get Wicket to do what we wanted to in the HTML markup. There was also some Javascript that we used for some of the interactive portions of the system, and importing different libraries and getting them to sync with the CSS files was challenging to say the least.
What I wish we had done differently:
I would've liked to have created my own CSS file for custom classes. I had to add a few CSS classes and during one instance, I updated the CSS and found that another team member had committed the same CSS file prior to me, resulting in a conflict.
Other than that, we had pretty good communication and met a number of times in-person as well as over the phone to ensure everyone was on the same page.
How did we satisfy the three prime directives?
The three prime directives of open source software engineering are:
- The system successfully accomplishes a useful task.
- An external user can successfully install and use the system.
- An external developer can successfully understand and enhance the system
Directive 1:
This system provides home users with a portal that allows them to view the current status of the major systems within the home. It also allows the user to change settings such as temperature, lighting, and security to name a few.
Directive 2:
Due to the use of the Ant build system, installing and running the embedded jetty server takes a single command: java -jar filename.jar
Directive 3:
Developers can edit the server-side source code via eclipse (distribution file has been included in downloads section).
No comments:
Post a Comment