• T2 Practical 4 with Alpha Sting

    Feb 17, 2010

    This practical was to practice pointers, templates, sorting and functions in C++.
    Code
    Syntax highlighting thanks to pastie.org

  • T2 Practical 3 With Alpha Sting

    Feb 5, 2010

    For this practical the tasks were to create a flowchart for generateTemperatures and averageTemp ensuring that they correctly used arrays and pointers. This was then implemented using C. Finally it was required that it should pass a testing harness so that the temperatures passed could be validated and verified.
    Code
    Syntax Highlighting thanks to pastie.org

  • A Level Computing Project

    Feb 3, 2010

    This post is skating over my final project in A level Computing. The original document was over 100 pages in length and I doubt anyone will want to read that.
    Task
    The brief for this coursework was fairly vague. A program was to be developed for a company which dealt with a database using commands; Create, Insert, Update, Delete, Select. The solution could be in a variety of formats from Application, Web page or for fewer possible marks the form maker built into MS Access could be used.
    I approached the company Wards Group Ltd, a clothing company, whom I had been working for for around 3 years as a shop assistant. I had found an area which I felt could be greatly improved. At the time they were using a flat-file database style system to manage and record the transfers between their various branches and departments. This was deemed difficult to interpret and time consuming to enter transfers with errors being difficult to find and sort. During this project I had to perform the individual tasks of the software life cycle, up to the maintenance stage.
    After liaising with the company; questionnaires, interviews and analysis of the current system. I generated a suggestion of 2 possible alternative systems. It was agreed that I could attempt to create a system that could be more efficient than the current system and still fulfil the requirements for the coursework.
    Chosen Solution

    Branch transfer entered via a Program interface with a database at the backend at Head Office. This would provide drop down menus and text boxes to be filled in with reduction of avoidable mistakes. This would allow for all details to be confirmable with the Branch Transfer Sheet without the need for scrolling.
    Advantages
    • Information about each transfer is visible without scrolling
    • Typo possibilities kept to a minimum
    • No accidental data overwriting
    • Impossible transfers not possible
    • Transfers stored in a single location for future reference
    • Data need only be entered one time
    • Data validation checks can be implemented
    • Data can be entered by more than one person at a time
    Disadvantages
    • Staff must be retrained
    • Program must be compatible with current and future hardware and software.
    • May be difficult to add categories and branches in the future.

    After this decision I decided upon the objectives and limitations of this solution. Constructed Data Flow Diagrams for both the existing system and the proposed system. And then constructed a system flow chart for my proposed solution.
    Then I began to mock up what I felt would be the best UI design for speed and readability identifying which processes would be performed with user interaction. I used MS Visual Studio to do this quickly and neatly. Free-hand drawings aren't my forte.

    Then I went about the process of coding the program. At this level code efficiency was not a huge issue as the amounts of data being handled were relatively small. The language I used to develop it was C# and using ADO.Net as a way of accessing and manipulating a MS Access Database (selected this as it was least hassle for me and the company to develop and use). I was totally new to C# having only briefly glanced over the C syntax. During the course at College I was taught the basics of VB.Net. Without much relation to OOP at all.
    Output
    One area that was completely new to me was generating a report from the database summarising the total values of a month's worth of transfers. I decided the simplest and smallest format for this was to output into an XML file and use XSLT, which I learnt a little on-the-fly in order to style it so that it was in a user friendly format. Here I encountered some issues with MS Access using ADO.Net and how the SQL commands were different to that in regular SQL. I was unable to use wildcards whilst using dates in the database. So the query did not work, which meant that the XML file was incorrectly created and as realistically the SQL command would have worked in this instance it did not. So as a workaround I added 2 new fields to the database detailing the month and year number. Then instead of wildcards I used these values in the SQL commands.


    Testing
    It was required that I performed various testing including presence check, validation check and range checks. Each of these tests was planned with expected outcomes and then demonstrated with actual outcomes.
    Documentation
    As part of the coursework I was required to create a relational database. This also enabled the company to expand. Adding/removing branches, departments. Using this I made the form itself dynamic and used values from the database to fill the combo-box selections meaning that the program would not need altering in the future.
    I needed to create a user guide for how to install and simply use the program. I simply created a click and drag folder to install the program so it could run off a USB stick if needed. The code listing was also added onto the project to verify that the program would run correctly (as the testing section of the coursework could easily be faked).

  • Review - MS Notebook Optical Mouse 3000

    Feb 1, 2010

    When my Trust mouse decided that it was going to randomly stop clicking midway through a click'n'drag or highlighting text I decided that it was time for a new mouse. So off to PC World I trotted in the hunt for a cheap mouse that would last me a while. The choice was pretty limited with the price range I was looking for.
    I decided on the Microsoft Notebook Optical Mouse 3000. Being reduced from around £18 to £13 it was a fast decision. I have limited desk space so a smaller mouse was more suitable.

    I was a little frustrated that I needed to install the drivers from CD, I prefer hardware to automatically download the drivers for me - lazy as I am. Then more frustratingly I found that there was a problem with the provided drivers - no Windows 7 support. So Action Centre pointed me to the download site for the mouse. Within seconds it was installed and I was using it.
    The first thing I noticed was how the scroll wheel was completely smooth. All other mouses (was told that's the correct plural for computer mouses) that I have used in the past have had a click to it.
    Now what truly sets it apart from the others that I have tried:
    • Horizontal Scrolling
    • What I like to call. 'The extra button'
    For the few occurrences that I find the need to scroll horizontally the scroll wheel can also be used sideways. With a push to the left or right it begins to scroll, neat little feature and it doesn't feel strange or awkward to do either.
    Now 'The extra button'. This, like the scroll wheel click, can be made to perform a specified action from a large list of options.

    The default of which is Magnification, which personally I don't have a need for. Just where your thumb is makes it easy to use and I'm sure in no time I'll get used to just using the extra button instead of minimizing (which I have it set to).