more reading
Some more great reading the jessman found. It’s a whole bunch of pft books, from design to programming, looks like something really worth having a look at.
Fantastic. So thanks to the wonderful source that is the internet!
http://blog.cfabase.com/category/tech/webhtmlcssajax/page/34
Determine and Apply Appropriate Development Methodologies
Research different methodologies and determine which method you have used and describe why you have used that approach.
Extreme Programming
Extreme Programming (XP) is described as being:
- An attempt to reconcile humanity and productivity
- A mechanism for social change
- A path to improvement
- A style of development
- A software development discipline
XP’s main aim is to minimise the cost of change. The method looks to initiate a more flexible and expectation to change model. For more traditional methods, requirements of a project are determined at the beginning of the process, and are fixed to that requirement or outcome for the entire process of the project. This ridged framework results in the cost of changing any of the requirements, to be quiet substantial.
XP recognises five values:
· Communication
· Simplicity
· Feedback
· Courage
· Respect
XP has principles that are built upon the five values, the have been implemented to give a concrete structure and help guide the method in a much more practical manner.
These principles are:
1. Feedback: For this principle to work well, feedback must be done rapidly, utilising time and the opportunity to learn. Contact with the client occurs in small slices, allowing them to be heavily involved in the development of their project. It also for clear insight and the client getting the product they so desire.
2. Assuming simplicity: Treat every problem as though its solution is very easy. The method makes me stage a small step with constant reviewing, and this principle applies in that if work is constantly reviewed big problems should not occur.
3. Embracing Change: Taking change as a positive thing, and something that is expected. Working with change and not against it. So, if a client’s needs change significantly then this can be embraces rather than resulting in frustration.
Links
http://en.wikipedia.org/wiki/Extreme_Programming
Waterfall Methodology
The waterfall methodology is one of the most well known and understood of development methodologies. It is the process of breaking up a project into tasks, and working on these in a logical sequential order. Its process is much like a waterfall, once a step has been completed the project then moves onto the next phase, there is no overlap and each stage has clear guidelines and goals.
It most cases the processes involved in the waterfall methodology are as follows;
http://en.wikipedia.org/wiki/Image:Waterfall_model.png
Some main characteristics of the Waterfall Methodology
- The scope must be defined before the project can begin
- The project is segmented into a hierarchy of tasks.
- Each task can only be commenced when the previous has been completed.
- The waterfall method is a sequential and orderly way of working through a project.
- Reviews of tasks are conducted between each step confirming that the next stage in the process can be conducted.
- Once the water of a waterfall has flowed of the edge of the cliff it cannot go back up, it’s the same principle of the waterfall methodology, once a stage has been completed the follows moves down to the next stage and cannot turn back.
Appeal
An example of the appeal the Waterfall methodology has is to Project managers. Project managers are there to administer and maintain the development process of a project. The distinct advantage of using the waterfall method is it allows for the project to be mapped out, and the progression to be easy tracked and viewed. This can occur because no others stage can be running at the same time, stages have to be completed before the project can continue to move along the development line.. Each stage has clear goals and scope, set out in the initial planning of the project.
Advantages and Disadvantages
A large project has to be planned and thoroughly managed, because such a large number of people, and in most cases a large amount of money will be involved. The advantage of the waterfall method of project management is it allows for stages of a project to be clearly outlined, deadlines to be assigned and managerial control. It allows for a strict process to be implemented giving the stages clear goals to be followed, without any overlap of stages.
However the disadvantage of the waterfall method is that is does not allow for much testing or revision of work completed. Once a project is in the testing stage because of the way the method is structured it is virtually impossible to back track to previous stages to make necessary changes to a problem, that could have easily been over looked in the concept stage of the project development.
Links
http://www.hyperthot.com/pm_sdm.htm
http://searchsoftwarequality.techtarget.com/sDefinition/0,,sid92_gci519580,00.html
http://www.ncycles.com/e_whi_Methodologies.htm#_Toc28065933
http://en.wikipedia.org/wiki/Waterfall_model
http://www.digital-web.com/articles/contract_killers/
The Agile Development Methodology
The agile development methodology is a set of processes intended to create software in a lighter, faster more people-centric way. The method is based around constant re-viewing and frequent communication with clients, reflecting a circular motion of development; it reflects a life-cycle of a project.
The agile development methodology along with Extreme Programming, scrum meetings etc, came as a result of the need for an alternative to the more ridged traditional methodologies such as the waterfall method.
2001 saw the start of the Agile Alliance and the release of the Agile Manifesto, which was a statement of shared values by the Alliance, over viewing the new agile development method.
All those involved in the development of the method, regardless of the specific methods implemented, have said that there are large benefits by using some of the core practices, such as frequent contact with the client and constant reviewing and testing. The most prominate advantage of using the agile development process is the constant contact and reviewal the client is able to have throughout. Resulting in changes to be expected, and made.
- Describe how Agile development compares and contrasts to more traditional development processes (such as the Waterfall model).
The Agile development process came as a consequence of the need for an alternative to the Waterfall development model. This then resulted in the two more of less, contrasting each other. The Agile model would seem to always move along, where as the waterfall model could make it seem as though things are standing still during the development process. This is clearly demonstrated through the definition of each process.
The waterfall model clearly shows that each stage must be completed before the next stage can be started, where as the Agile method demonstrates that multiple stages can be in motion at the one time, thus maximising the time spent on a project. This is the main argument behind the Agile method, it has strongly emphasized the flaw of all development, that not everything can be planned and for seen, things do go wrong, and the method has created a way, that even when there is a fault in the process, or a stage is put on hold, another can be taken up, maximizing productivity and working toward minimising frustration. That is not to say that there would never be any frustration during the process, but it is a process that almost has problems expected and put in the process to help compensate this.
However there has been much disapproval of the method, and it has been seen as being undisciplined. It has been viewed as this because there is so much face-to-face interaction with clients; it produces very little documentation compared to the waterfall model.
Agile methods also emphasize working software as the primary measure of progress. Combined with the preference for face-to-face communication, agile methods produce very little written documentation relative to other methods. This has resulted in criticism of agile methods as being undisciplined.
Link:
http://martinfowler.com/articles/newMethodology.html
http://msdn2.microsoft.com/en-us/architecture/bb404166.aspx
http://en.wikipedia.org/wiki/Agile_software_development
Determine what methodology you have used and describe why you used that approach?
During this semester a number of projects have been running and have needed an appropriate development methodology applied to them.
The method applied to them was a combination of the Waterfall, and the Agile development methodology.
This is displayed in the following ways:
Waterfall:
· Requirements were set
· Stages of development could not start until the earlier stages were complete.
· Limited contact with Client was expected.
Agile:
- Initial requirements were asked to be changed
- Constant reviewing by client
- Multiple stages could be worked consecutively
The reason behind the implementation of this ‘hybrid’ method was because each project required it. Design was initiated, and then agreed to, the requirements were set and development started. But along in the process after a segment of reviewing what had been done so far, by the client, changes were needed and those changes were made.
Reference for “Web design guidelines”
This is a reference created on IBMs website to assist in the development of effective web sites.
Something good to come back to in the early hours of development….
Video and Audio Players
Some helpful links when putting video and audio on web pages.
http://realdev1.realise.com/rossa/rendertest/quicktime.html
http://www.alistapart.com/stories/flashsatay/
Background Maker
Jess and I were talking on the train the other day about textured background images. It seems all the “cool” web 2.0 sites are using these textured background images to give the site a little bit more of an edge.
So what does Jess go and do? He goes and finds a site where you can make your own textured background. I have been having fun with it this morning making a background with my name all over it!! hahaha
Anyway seems really good and an excellent resource to have for the future.
http://bgmaker.ventdaval.com
Go to the gallery, and you can download the already made images or edit your own.
Enjoy, thanks to excentricjester yet again!!
Creating login functionality with PHP
Michael (my tafe teacher….) left Jess and I to watch a video today (Thursday) about creating login functionality with php.
I found the video quite funny and could imagine quite vividly the guy sitting at his computer making it. Throughout you can here his instant messenger going off, made me laugh.
Anyway, about the actual task. When I first watched the video I understood maybe 4 or 5 things he was doing but apart from that I was lost. However after watching it a second time, then having a go and creating what he was doing myself, it was quite good and I feel as though I have some grasp of what it was all one about.
Working prototype can be found here on Jen’s Site
Waterfall Methodology
Waterfall Methodology
The waterfall methodology[1] is one of the most well known and understood of development methodologies. It is the process of breaking up a project into tasks, and working on these in a logical sequential order. Its process is much like a waterfall, once a step has been completed the project then moves onto the next phase, there is no overlap and each stage has clear guidelines and goals.
It most cases the processes involved in the waterfall methodology are as follows;

http://en.wikipedia.org/wiki/Image:Waterfall_model.png
Some main characteristics of the Waterfall Methodology
- The scope must be defined before the project can begin
- The project is segmented into a hierarchy of tasks.
- Each task can only be commenced when the previous has been completed.
- The waterfall method is a sequential and orderly way of working through a project.
- Reviews of tasks are conducted between each step confirming that the next stage in the process can be conducted.
- Once the water of a waterfall has flowed of the edge of the cliff it cannot go back up, it’s the same principle of the waterfall methodology, once a stage has been completed the follows moves down to the next stage and cannot turn back.
Appeal
An example of the appeal the Waterfall methodology has is to Project managers. Project managers are there to administer and maintain the development process of a project. The distinct advantage of using the waterfall method is it allows for the project to be mapped out, and the progression to be easy tracked and viewed. This can occur because no others stage can be running at the same time, stages have to be completed before the project can continue to move along the development line.. Each stage has clear goals and scope, set out in the initial planning of the project.
Advantages and Disadvantages
A large project has to be planned and thoroughly managed, because such a large number of people, and in most cases a large amount of money will be involved. The advantage of the waterfall method of project management is it allows for stages of a project to be clearly outlined, deadlines to be assigned and managerial control. It allows for a strict process to be implemented giving the stages clear goals to be followed, without any overlap of stages.
However the disadvantage of the waterfall method is that is does not allow for much testing or revision of work completed. Once a project is in the testing stage because of the way the method is structured it is virtually impossible to back track to previous stages to make necessary changes to a problem, that could have easily been over looked in the concept stage of the project development.
http://www.digital-web.com/articles/contract_killers/
Excellent article
[1] a set or system of methods, principles, and rules for regulating a given discipline, as in the arts or sciences. http://dictionary.reference.com/browse/methodology
CSS2 and CSS1 Differences
Difference in CSS2 from CSS 1
- Positioning in CSS2 is more flexible, absolute and relative positioning.
- Special cursors available
- Dynamic outlining.
- Specify the size of a page
- media types allow you to specify the rules of how the document is to be displayed.
- More list styles
- Language-sensitive quotation marks.
- More fonts.
- Allows you to define any element as a table element
CSS 3
CSS 3
Here are a few exciting functions coming in CSS3. All pretty self explanatory.
Borders
- border-color
- border-image
- border-radius
- box-shadow
Backgrounds
- background-origin and background-clip
- background-size
- multiple backgrounds
Color
- opacity
- RGBA colors
Text effects
- text-shadow
- text-overflow
User-interface
- box-sizing
- resize
Selectors
- attribute selectors
Other modules
- multi-column layout
Great for preview.