Tuesday, 19 July 2011

STU199 - ECA MiniPortfolio update 2

Ive been on leave for two weeks and started back yesterday.

We had a meeting for this project yesterday with the head of registry, an ECA representative, our project manager and Mike McMonagle the developer assigned to assisting me.

It has become apparent that the business processes this application will seek to automate have not been explained clearly, we had calum from ECA down yesterday to clarify a few points.

Unfortunately there is a lot more going on manually than we had first thought, as a knock on effect this means we now have to do more work to automate them. This project has gone from a migration to rewriting many of the processes involved.

I now don't think I will be able to complete this project before I leave in august.

Friday, 1 July 2011

STU199 - ECA MiniPortfolio - signoff review

Update before I go on leave next week.

I am now near completion of the applicant side of the ECA application, the staff allocation process is casuing issues in that we are still not 100% sure of how this process is managed as some of it is administered manually.

I am working on the final stages of the applicant side and will be moving on the to final process of staff allocation shortly. The allocation procedure is where I expect the build will become more difficult as this section will need some reworking to make it run correctly, we also need to know what the manual part of this process is.

Signoff meeting

This meeting was attended by a registry representative, the heads of department for application management and technology management, my project manager, riky and Iain (department head) from dev tech.

Devtech have announced their proposal for the shared file system the application will run, this has been protested again by application and technology management on the basis of it being too complicated for them to maintain.

Mark d'amara (technology) has stated he is not satisfied that the project is out of development on the basis he does not understand the file system and it is not specified in my SDS (I understood that this system was part of infrastructure).

The meeting became quite heated, the two department heads were blocking the progress of the design. Iain (devtech) had explained the system in detail however they still held the opinion that it was too complicated for them to maintain, when asked what they would prefer they suggested manually checking all the submitted files on both servers. This raised further argument that no one would want to spend the required amount of time doing this.

It would later be explained to me that the difference of opinion could be a political one as opposed to a practical one. To me sorting through hundreds of images by hand is not practical.

We have been asked to detail this system in the SDS now before it can be signed off.

Friday, 24 June 2011

STU199 - ECA miniportfolio - Build

This week I am in the build phase of the project.

At the start of the week there were no details supplied from devtech regarding the unix accounts for hosting nor the the database logins/passwords. Chased riky up via the pm and some of this has been done.

We now have database we can connect to I can now run the development version of the application as I build it.

We don't have the file storage system up and running yet although devtech are saying that it shouldn't take any extra time since they are looking for the application to handle the file synchronisation. They never said how long though.

SDS

Mike has also finished with my design document, there are two changes required:

  • How will I schedule the staff intake from EUGEX - this will be an scheduled, automated task.
  • remove references of CRON and replace with coldfusion scheduled task - instances now changed.
He has looked over the changes and signed it off on Bills behalf. This will be used for the project signoff next week.

Build Progress

The build is actually going well, I'm not having too much difficulty with the mach-ii framework and I am able to convert the outdated functional implementations to more up to date versions.

As I've said in previous entries there are gaps in the software where manual work is being carried out and some of this still needs clarified.

Friday, 17 June 2011

STU199 - ECA miniportfolio - Design

The familiarisation period is now finished and this week I am now working on the design document. I've also had two days leave, monday and tuesday so three days on the SDS out of five.

What I have done is try my best to automate the manual processes already in the software, as the current system works reasonably well. There does appear to be holes in the processes though, some of it must be done manually around the hard coded areas. It surprises me that they are able to keep track of all the changes that need to be made in this application.

To produce the specification I have followed the business requirements document (BRD), investigated coldfusion functions and data structures and seen what would be suitable for this applications needs.

The original database schema requires some updates I am including a lookup table for the staff and course relationship and adding in a staff table. Extra fields are still being defined at the moment and I am awaiting further information on this.

I have also been consulting with mike mcmonagle, another developer here, he has been reviewing my work.

So far I have been testing methods of automation of some processes and adapting my database to suit.

I will be submitting my design for approval today and I will update when I get it back, it is likely since this is my first big design task that I may need to make a few changes.

Meeting

We also had a progress meeting today, this was more focused around the storage solution being worked on by Riky in devtech, with the servers we are using being load balance over two machines that means we needed to work out how we can store files which would be available to both machines and allow both reading and writing by each server.

This has introduced the issue of disaster recovery, how we recover this file system seems to be more difficult than than the issue of storage itself. I have been asked to try and work out a coldfusion system of recovery, this system should check both servers local storage for inconsistencies and then copy the files between machines to ensure the shared storage now holds the correct data and that none has been lost while the system was down.




Tuesday, 7 June 2011

ITS199 - ECA Mini Portfolio - Familiarisation

Update

I have now finished the budgeted period of familiarisation for this application.

So far I feel I have a reasonable understanding of how this application works and I feel confident that I can soon move onto the design phase of the project

In order to familiarise myself with the system I took the following steps;

Firstly I broke the system into its applications (as defined in the original business requirements and by the URL's used to navigate to them)
  • Applicants
  • Administrators/Staff
For each of these I drew a UML (there is every possibility it may not be perfect UML) model of the page sequence (and any deviations from it) a user would follow in making a portfolio submission. As I went through this I noted the functions each page used.

Following on from here I then went through the code starting from the Application.cfc file and began to model all the processes used in the Applicants side, where they start and what functions are involved in automating them. This model also took into consideration the datasources used and queries ran for each process.

These step were also repeated for the Admin side, although I ran into problems here as I am unable to access certain parts of the administrator functions and it seems that without getting another administrators passwords, I don't think this will be allowed as the MiniPortfolio is still a live application and so is its database. I don't have access to the ECA's servers so my access is restricted, what I do have access to is the code itself and a read only copy of the database.

The software itself has been written in a procedural style and has vaguely been compartmentalised (i.e. the admin side in an admin directory, business logic in another directory and some form of framework to the architecture). As I missed the chance with iSkills I am going to design this application to use the Mach-II framework (frameworks are the last hard skill I need to have before I leave my placement then that gives me a working experience of them).

I know I will need to add a further table to the database schema however I asked other developers to look at the original and was told its only semi relational and will need changes, at this stage its probably worth redesigning that as well. The database itself is on a Microsoft SQL Server DBMS and will be replaced with the latest Oracle 11g DBMS which is the standard for the university and will not incur further expense in terms of licences. Luckily I have some experience with both.

The issue which may arise here is the application depends heavily on the database and there are LOTS of queries taking place on each page and through many of its functions. If I am to redesign the database then this will make the existing queries obsolete as some of the tables and fields may no longer exist meaning longer development time. To compound this I only have limited experience in relational databases, my DBMS module was a long time ago now and I'll be learning on the job, first I have to find out if its worth the work as there is every chance I might not get to do it as a restructure of the database and rewrite of the existing code may exceed the allocated budget, however I don't know until I ask.

To summarise:

Completed
  • Applicant side modelled
  • Admin side modelled (as far as possible)
  • User (movement through the pages) sequences mapped
  • Database Schema mapped
  • New Schema under development

Thursday, 14 April 2011

ITS066 - iSkills progress

Coldfusion 9 Migration

Application - iSkills

Introduction

The coldfusion migrations have come about in order to bring our older (and unsupported) applications up to date with the current version of Coldfusion server, version 9.

The applications themselves have been written in the old Coldfusion 6 language and most are running on the content management system of the time which is Fusebox. As the applications are upgraded they must be transfered onto the mach-ii framework as this is something that IS apps are looking to do across all of their applications to maintain a standard format to the software we produce and use.

As part of the migration the applications must be as follows;

  • fully compatible with coldfusion 9
  • transfered onto the Mach-ii CMS where appropriate

the project brief is also in the /its066 cf9 migration/iSkills/documents folder.

At this stage there are three developers working on the project and there are also three different applications being upgraded in this batch. My application is iSkills.

iSkills was written around 7/8 years ago and is no longer supported on the cf6 platform, its fusebox framework will also need to be replaced with Mach-ii. The application was written as a resource where anybody could come and search for skills training or teaching of any offered sort.

The site allows users to search its database for resources using a number of parameters and then displays results based on their requirements. The site is not that different from the recent Edge project in terms of what the application is for.

New technology introduced

  • Apache http server – Server software, although it’s used in most places and I have seen it before this is the first time I have used it for myself. I am now running apache in my dev setup to emulate real world server environments.
  • Fusebox – Content management system (CMS), provides a framework to build applications around.
  • Mach-ii – Another CMS does essentially the same thing in a different manner.
  • Mod_rewrite – An apache module which needs to be enabled in the apache configuration file. This allows URL’s to be disguised or redirected, the point being that its making it harder for people to guess their way around your applications directories and be a bit naughty. Secondly it makes it easier for search engines to index the site, the spiders and crawlers used they use to do the indexing generally stay away from query string laden URL’s. Mod-rewrite is a separate component from your web application.



Stage 1 – Familiarisation

The old code was to be studied so that we knew how the old system was working. The steps I took are as follows:

· Obtained old code from the current live system (see issues section).

· Modify code to run on my cf9 development setup.

· Print off all pages and their related debugging output to ascertain what functions and queries were involved in each of the applications transactions. (hard evidence has been kept).

· Follow the above notes to see where and why these functions are used.

There was an initial budget of 1 day for system familiarisation, I don’t think one day was enough and initially thought that would be down to my skill level however I was reassured to see that I was not the only developer needing more time here.

The code was to be obtained from the live system, initially it was to come from MS visual source safe however it can be a hit or miss whether the full working code will be in there so the safer option was to obtain straight from live, support calls were placed through Unidesk as developers don’t generally have rights to the live servers.

Eventually (see issues section) the live code was obtained and required modifications to run locally. Mod_rewrite was a particular issue at this point because I had never experienced it and knew nothing about it, same can be said about fusebox and mach-ii.

Of course not knowing how that worked meant I never understood at first when the application didn’t work correctly and I set about making the changes necessary to run it. When I got a page of the site that needed to pass a query string in the URL I found the sight stopped responding in to commands and started falling back to its defaults.

What I was missing at the time was that the rewrite engine also rewrites the query string and acts like and interpreter between the browser and the software so when I tried passing anything more than a simple page request the adjustments I had made to rewrite were not enough to deal with the requests. A half hour meeting with the original developer sorted that one out and explained how it was working in relation to the iSkills app.

The time given was enough to get an overview of how the application was working however not enough to get deep into it. Bearing in mind I also had to learn about two CMS’s, mod_rewrite and the actual application itself, in a day.

Issues

  • Incomplete code in source safe – solved by requesting the code from live (see images/uniDeskCodeRequest.jpg)
  • Support argued about obtaining the code from live and took nearly a week to pick up the request.

Stage 2 – Impact analysis & Initial Meeting

A meeting was called to discuss the following:

  • the applications suitability for mach-ii
  • the amount of time we require to make the upgrade
  • any issues we should consider across the whole migration project.

Please see bill lee's email dated 03/11, this is the initial invitation and explains what was required of me at the meeting.

We were required to produce a short document outlining our analysis and intentions for the build (this document is in /its066 cf9 migration/iSkills/documents). In this document I outlined the following;

  • The applications mach-ii suitability.
  • My view on my ability to bring the project in within the budget.
  • My concerns over the more advanced levels of code (versus my skill) in the application and what it its impact would be on the time I would take to complete the project.
  • The benefits of this project in terms of IS's aim to implement a common structure to the universities applications.
  • the importance of this project to my development (in terms of CMS frameworks)

My proposal was accepted and the tasks were assigned (see bill lee's email dated 16/03) with the original time scales noted which it was agreed could be adjusted if the project needed it to be. its worth noting at this stage that this was the first batch of migrations to go ahead and all other migrations would follow the template that was set by this initial run.

Stage 3 – Migrate code (Build)

Not a lot of work was required to convert the code to CF9, mainly outdated coldfusion implicit functions needing replaced with more modern equivalents.

However the mod_rewrite issue persisted here, the build went fine through making of the home and search pages, I had not yet started on their functional components yet, I was able to have the pages active and looking like the did on live however when it came to passing parameters around it became a different story. When I tried to click into the third page which was the browse page you are presented with a list of categories on the left of the page, click them and that categories search results are displayed on the right of the page (see images/iskillsBrowseResults).

In order for the application to search for and display those results it has to pass a query string through the url which mod_rewrite has to interpret for the browser to interact with the software. Unfortunately this meant rewriting the first set of pages I done.

At this stage to get the results list working I came across the attributes scope of fusebox, in this application it had been used as a catch all scope which is available throughout the whole application which posed a problem. How could I find what was in that scope if I couldn’t debug the original program? Also if I was able to do so how would I replicate that in mach-ii since that scope doesn’t exist?

It became clear that this would not be a case of copying over chunks of code if the environment they were designed to be in was no longer going to be used.

In order to help me overcome this issue I requested a meeting with the original developer. He explained that the rewriting url was heavily woven into the application as well as the attributes scope, between us we felt that the time needed to redevelop the software in the mould that the project wanted would have been a lot more than was budgeted for.

I took this to the project and resource manager and the mach-ii part of this build was dropped. I was very disappointed at not being able to complete the mach-ii build but on the upside I was confident in making that decision due to what I had learned about software development with Coldfusion.

What bill explained to me was that it was less a reflection of my ability but an indication of my ability to find a potential problem and not just keep butting up against it. knowing where the limits are when it comes budget and timescale.

Iskills is now ready for peer testing, at the time of writing this it is waiting on the development server to be tested, I still have configuration work to do regards to setting up server mappings and datasources, these are actually an integral task to the team setting up the server environment however its not been done and one of the servers is currently serving up error pages which I need someone else to fix. I’m just waiting for the go ahead.

Testing

As the site is divided into two sections, user & admin, I will be testing each section as they are completed, hopefully this should lead to me having a finished and tested application before moving on.

Each section would then be devided into their respective pages and functions which again will be tested on completion.

Although I don't hold a full knowledge of it I believe this leans slightly towards a test driven development methodology, or at lest my interpretation of it.

Issues

  • Tight coupling between application, framework and server. Separation meant massive rework.
  • No supporting documentation available to assist in analysis and debug of old system.
  • Unable to complete a mach-ii build and consider this framework to be the most important stage of this placement so far.

Friday, 8 April 2011

General Update

Hi

There are a number of things going at the moment and due to outside circumstances which have been beyond my control I have been on leave at intermittent intervals over the last month and just getting myself back up to pace now.

Projects active at the moment are:

  • Edge - ITS032 (still)
  • CF9 Migration - ITS066
I will write a catchup to introduce the current migration for ITS066.

Edge

The edge application has been deployed, the url has not yet been disclosed as the service has not formally been launched at this time.

Prior to me going off the application had been brought up to a stage where it was ready to go on the server and be user tested. During the test some issues were identified (please see darcey gillies email dated 24/03 and points 1 to 4 of the attached issues document) which have since been addressed, additionally more requests have been made for off spec changes to be included (point 4 in the above list) and at this stage the project manager is looking for somewhere to draw a line in the sand.

Prior to making the changes our progress was again hampered by confusion over its location (see alex carters email dated 16/03) , I was advised the application was stored on the T drive as per the mapping on alex's email, unfortunately it wasn't there and was put into O drive instead.

A knock on effect of this was that I had no permissions to access this drive which prevented me from doing any configuration on the application, such as the untested automated login system needing to be in the right environment to work. Permission for access was not actually granted to me for another week which was obviously a massive delay to the client.

As of yesterday the stage we are at is that this application should have been wrapped up weeks ago, we have encountered budget problems, clients changing their minds and requesting new features after the build stage and numerous delays in getting access to locations or resources.

We are now looking to add functionality to check for broken links (again the issues document above point 4) however I have been assured this is not much to do.

We will then be looking to retest and redeploy, hopefully this will close of this project.

Friday, 18 March 2011

One to one

Hi,

Ok, at the end of last week was my 121 with Bill. we discussed a number of things currently going on.

Upcoming

Upcoming projects will be focused on the Coldfusion migration project (ITS066), there are four applications in this batch to be converted. The will be upgraded from cf6 to cf9 and where suitable will be upgraded to the mach-ii framework to start bringing all our applications in line with each other and limit the amount of variation between development styles going into our projects.

We are looking at around three weeks quoted per project breaking down to 6.5 days of build time estimated. however at the recent meeting with the other developers it is becoming apparent this may take more that 6.5 days to transfer over to the new framework as this is really the first mach-ii build for two out of the three of us.

Feedback

Edge went well, despite the project being a little eccentric we have delivered the web application the client wanted, we are currently sitting waiting for completion of deployment. I still need to do some configuration on the live server and that subject to other departments doing their thing. the feedback has been positive from Bill (my manager) and from David (project manager), as I mentioned before David wasn't keen on a student doing the work but I think I managed to convince him otherwise and that's a great validator to my ability.

What have I learned

  • What happens when the SDLC is allowed to deviate from its structure
  • software development is a personal thing that can vary quite alot from developer to developer.
  • the difference between the developer and the client, such as requests into the build and the effect that can be caused by off spec changes and delays in getting requirements.
  • The importance of testing, testing, testing, testing, testing.....
  • how attitudes and opinions change between factions of those involved in the dev process and the effects it has on the build. (some want responsibility, some don't that should be but each person should take responsibility for the effects of their involvement)
This is really all there for this meeting, the post will be regarding the migration project.

Tuesday, 15 March 2011

ITS066 - Issues

I have been speaking to martin about some of the problems I have had with this project, it appears martins been having similar issues.

Initially we were advised to take the code from source safe, connect to the required schema's and develop on our local machines, my issues were as follows:

  • code incomplete in VSS
  • live software using Apache mod rewrite to disguise the url string when navigating
  • file not included in the software pulled out of live
  • no password for database access (Infokeep was wrong)
  • several days to get 'official' access to the live code
  • no Technical architecture documents
  • the Dev version of the site was broken so I had to spend half a
    day debugging the old version
I'm glad its not just me having the issues, I was starting to think that it was just me and I was somehow the cause.

Friday, 11 March 2011

ITS032 - Edge Database - Update 5 - issues

Lots of problems this week.

We are having issues with the authentication system which protects the university web software, it appears that the directory we are hosting this site from is not EASE protected therefore not secured.

Further to this the application will look to interact with the ease system and without it will not work.

Unfortunately I have been ill over tuesday, wednesday and thursday and missed those days but catching up on return I found that not much had changed.

What I was finding is that getting my site security sorted wasn't anyone else's priority but mine. I asked martin to double check what I was identifying as the fault to make sure I was right and then started speaking to the people that could make the changes I needed.

I contacted Hugh Brown from applications management via Unidesk, he was able to make the necessary changes to the server infrastructure which included the secure connectivity. He explained what he could do for me and after discussing this with David the project manager he was able to get things moving.

We are now waiting for confirmation that this has been done.

Tuesday, 1 March 2011

New Project ITS066 - CF9 Migration

I am about to begin a new project which will server to bring old applications up to date. The university has a number of applications which have been in place for a few years and still run on the old Coldfusion 8 and Fusebox technologies.

I will be part of a small team put together to bring these applications up to date.

I have been speaking to mike this morning about my experience with mach-ii, I don't yet have experience with it and the migration project will include basing the applications on the new framework. As frameworks have become ubiquitous in web applications it is important for me to get this experience.

Mike assures me its not as difficult as it appears at first glance.

Friday, 25 February 2011

ITS032 - Edge Database - Update 4

Edge was tested at the start of the week by Martin Jones, there are 7 bugs in the application, these are as follows:

  • HTMLEditFormat() formatting needed on text inputs (prevents special characters being passed to the application and database)
  • url parameters in Edit pages should be checked
  • Skills/Work Experience/Schools/Colleges/Status should be unique
  • id's should not be preallocated in add new records
  • Add Opportunity further information text area is limited to 250 characters not words
  • template path to holding page should be changed to relative path
  • login check to get userlevel needs amended to return just that data and nothing else
I have been working through these issues this week, updating JIRA where they are recorded and they are all now resolved, this passes it through the peer test stage.

The next stage is the user acceptance test, this has been arranged by David for next week.

Saturday, 19 February 2011

ITS032 - Edge Database - Update 3

This week I have been working through the task list for the edge project as follows:

Project: ITS032 Employability Opportunities Database
Task: Build tasks - remaining development work
Date: 31/01/2011 TO 11/02/2011
Duration: 10.0d
Effort: 6.0d

Project: ITS032 Employability Opportunities Database
Task: Website integration
Date: 14/02/2011 TO 18/02/2011
Duration: 5.0d
Effort: 1.5d

Project: ITS032 Employability Opportunities Database
Task: System documentation
Date: 14/02/2011 TO 18/02/2011
Duration: 5.0d
Effort: 1.0d

These have been broken up into further tasks using the JIRA application (see Edge update 2 for the task list).

Styling

The application was to be styled by the multi media team (web styling is one of their specialisms), this isn't going ahead any more and I've been asked to do the work. I dont have a problem with this, in fact its another area where I need the experience. The issue here is it was scheduled to be done by a professional in that area and I'm not confident I do the job to that standard.

Alex carter from the media team has provided styling templates to use and apply to the application I have built. I do have styling experience but only from university, however I have done the work and some modification was needed to some of the user facing pages however it has come together quite well.

Testing

The application will be peer tested next week, I will update at this point.

Friday, 11 February 2011

ITS032 - Edge Database - Update 2

This is week two of the Edge project.

So far I have done basic familiarisation with the existing software which I have touched on in my previous entry. I still feel that I am not fully confident in my ability to carry out the required remedial work on the system AND the project tasks. I also believe that this is normal and what I am about to learn will fill that confidence gap.

Meeting 03/02/11

Myself and my project manager attended a meeting at the careers office with two representatives Darcey Gillie and Gavin McCabe. The purpose of this meeting was to ascertain what state the project was in, what work still needed to be done and revise the original requirements and make any required adjustments.

We came away with a number of action points from the client which were discussed and agreed on at the meeting. We have noted at this point the client is asking for features that were not in the initial requirements, as we have a limited budget I feel that agreeing to these will take us well beyond the time/funding allocated.

The outstanding points are as follows:

1. The website is no longer planned to be embedded in Polopoly, but will be available through the Employability website, linked from here: http://www.employability.ed.ac.uk/studentdevelopmentgateway.html This obviously means that we will not have the Polopoly work but will probably have to work with Darcey and co on integrating the application into the above site.

2. Gavin asked about getting two extra fields added to the database, and the related forms/code. These were email address and senders name on Submissions. You told him that would amount to a couple of hours work and this was acceptable. If it is any more, let me know so we can discuss with them.

3. The Notes box on Opportunities needs to be removed from the 'public' Opportunity display. We also discussed making the 'Further Info' box larger.

4. Saving Search results was discussed - all fields should be included and you said you would look at the formatting options for saved searches (e.g PDF)

5. Reporting is waiting on more info from Gavin before starting any work on this. One option I thought of afterwards was using an ODBC connection that would allow them to access the data using MS programs, but with read only access. I will pursue this.

Looking at the tasks in our documentation, the following are outstanding

1. Set up CF email schedule - this is estimated at 1 day's effort, and you said that this was straightforward enough to do.

2. Save search results to file (3 days) - the solution for this will involve some investigation but can be based on work done by Alyson.

3. Managing submitted Opportunities - this has been done.

4. Scheduled task to change status to 'archived' (0.5 day) - again, you thought this would be easy to do.

On a personal note I feel the meeting went well, I felt confident and gave a good demonstration of the software as it currently stands.

Friday, 4 February 2011

ITS032 - Edge Database - Update 5 deployment

The application was to be deployed to the live server this week, the User Acceptance Test is to happen on Monday as there has been delays due to infrastructure problems.

Martin retested the application this week and the build was signed off with the issues being resolved.

The user acceptance test is looking unlikely now, I am not getting the right permissions to be able to deploy the application to the server. I have got a call in to get them but my request is being blocked by the head of applications management, he is of the opinion that developers should not get access to the live system.

As a result of this I am not able to deploy the website myself at this time but we have agreed to put the application into a zip file and pass this to the media team for deployment. Even then I will need access to that server to carry out any system configuration required.

The UAT has been put back and will be rescheduled once everyone has time to carry out the testing.

Tuesday, 1 February 2011

ITS032 - Edge Database - Update

Work is now starting to move on the Edge project, I have had a few issues with getting the right information regarding databases and the permissions to access the databases. Obtaining the code was a further problem.

Bill has explained to me that the project is near completion and should only need some pages to be finished, as I've looked at the code I have spoken with other developers, gabby has referred to it as an excersise in how not to write applications.

He told me that none of the variables are scoped and it runs very inefficiently. The application had no organisational structure and data being passed around within the application was open to outside manipulation and instability. I've taken this to bill and advised him that more time would be required to bring it up to a standard that could be considered professional.

Bill expressed concerns regarding budget however accepted that the remedial work was necessary to produce a quality application. again this is an opportunity to deepen my knowledge of coldfusion further.

I've been given the go ahead to do the work.

Monday, 31 January 2011

Nightside VM server

There have been issues in this project.

We have found that the hardware has been unsuitable for the work we want it for.

The issues have been that when this machine was purchased the manufacturer requirements for software were not checked, as a result we have been unable to succesfully install the VMserver software.

We have now attempted to install VMWares ESXI and virtual server 2, none of these have been fully operational.

Changes needed to be made to the linux kernel we had installed within the operating system and this was done with assistance by peter jackson. he is very good with linux and was ideal to learn from. this made the operating system one less thing to cause issues.

The initial problems suggested that we needed to upgrade the network adapter and the disk controller in the machine, I spoke to peter jackson of the technology team who helped me reach this decision. being relativly new to such a task peter was able to explain to me about the components needed, he explained what manufacturers to approach and what I would need to know to make the correct purchases.

After buying these parts we found that they did not do as we expected. The underlying problem is that we did not have the correct type of processor in the machine and no matter what additional parts we purchased we would always be caught out on that fact.



I contacted hewlet packard and spoke to neil duffy the sales manager for our area in an attempt to exchange the machine for one more suitable. I was informed that HP would not do this and any further parts or machines would be at full purchase price.

I have now been given a software project to work on and will not be taking this any further, unfortunately as a department I do not believe the server will ever provide a virtualisation service.

Thursday, 27 January 2011

New Project: ITS032 EDGE

I've been given a new project, this is my description of the project as I understand it:

Background

The purpose of the Edge project was to build a database for the careers section of Edinburgh University which would enable them to store and advertise career/job opportunities.

The system would allow administrative use for admin staff (ie they are able to alter reference data and approve submissions), general use for internal users or those with EASE credentials so no editing data and a read only section for everybody else.

Foreground

This project is easily two years old now and appears to have been a difficult one from the start, it hasn't followed the typical development procedure we have and is subject to various pressures such as a minimal budget, generous specification for that budget and apparent political influence.

The project was abandoned due to procrastination from the client on specifying requirements, during this the budget ran out and it lay dormant for a year.

Just before it was abandoned the previous placement student had written a design specification and started the build according to the spec, unfortunately the spec wasn't signed off and the application was built to what the project manager thought was 85-90% completion and was passed onto me as such. The task for me was to make up the remaining 10-15%.

The Task

  • Finish off remaining pages
  • test application
  • deploy application


Initial testing

On first glance the application appeared to work correctly, once I had sat down and gone through it with the requirements document it became apparent that it didn't work as well as first though and in order to complete the build which now was alot less the 85% there would need to be some heavy rework.




Nightside VM sever

The VM sever has been purchased to provide visrtual operating systems for developers to log into and do development work on a range of different platform such as windows or unix.

I was given this project as part of my computer rep role and I will be doing the following:
  • register the machine on the network
  • insinstall virtualisation software
  • tall an operating system
This task came about after a discussion with bill lee where he had spoken to me about buying the machine from another department after they found it was unsuitable for their needs and it may be usefull for our devcelopment needs.

As this task includes elements of software and hardware work it would be a usefull addition to my experience here on my placement.

Initially I did not know much about the underlying hardware or the virtualisation software. Most of what I learned came from speaking to colleagues and the internet.

I found that as the task progressed I was using the technical terminology more and more, in order to find out what software I needed to suit the hardware requirement I spoke to the technology teams Ian Fiddes to ascertain exactly what the machine speficifation was. In turn I recieved an email from him detailing the spec in order for me to check what the manufacturers requirements were.

I will be using this as a guide to what software will be compatible with our server.

Monday, 24 January 2011

Project: FIN058 - WebFirst Enhancements

New Project

I've been working on webfirst since early last week, there is no update last week because work stalled on Wednesday pending further information from the client.

Webfirst is not that different from Infinite in principle, it also controls staff access rights across a range of departments. The system receives a packet of data then copies this into a data structure, the structure also contains an array for certain aspects of data.

Once the system has populated the structure it then checks this data against its databases, where a member of staff does not exist (new starts for example) it creates one. Where the staff member does exist it updates their record. Once the main record is updated the system checks their access rights and updates that table with the new ones.

I have written the procedure above today, we are now still awaiting data from the client so the software I wrote can be customised to the data contained in their packet (for example table and data names).

I will update when we next move forward.

18th May 2011

Unfortunately this project hasn't moved any further forward, given the massive time elapsed I don't see it coming back to me. I have asked about it and there's no real explaination other than the client not coming back to us.

Shame.

Friday, 21 January 2011

ITSR21 - QuotaTracker Peer Test

My colleague chrisanne peer tested the quotatracker this week and I'm delighted that it has sailed through without any issues being raised.

The application has now been moved to the media teams server for usage, February will be the first report date.

If anything goes wrong ill update.

Friday, 14 January 2011

Back to work

Today is the end of the first week back after Christmas and new year, being 2011 now it reminds that this is now the second half of my placement here. It also reminds me that this placement ends this year and truth be told I don't want to go back to Napier.

Why some people don't work will always be a mystery to me!

This week has seen me work on a number of smaller jobs, the tasks have been:

  • Set up the departments new server.
  • Repair faults with the media teams tracker, faults introduced by themselves.
  • Review the implementation procedure for the ITS042 (External Event booking service) project.
The Server

Last year the department had a portion of their budget left over, the decision was taken that this would be used to purchase a new server. Bill has been since been looking to use the new machine to serve virtual PC's to remote clients.

The machine is fairly chunky piece of equipment, the rough spec being 1.5 terrabytes of storage, 24 gigs of memory and a 2.4ghz Xeon 5620 processor. Bill had planned to use VMWare server 2.0.2 as the virtualisation software but this is where the issues started to appear.

We had actually started work on this little project before the break, Bill and I spent a day setting the machine up. We initially installed Ubuntu Linux on the system (further utilising what I learned on the Unix course) and on top of that would go the VM software, however VMWare was not compatible with the processor architecture being used.

Intell Xeons come in a good sized range, ours is the 5600 series, one of the few architectures not compatible we discovered. After searching around for information on the difficult install we saw and attempted procedures to patch the operating system to allow the compatibility. We even changed the operating system to Centos 5.5 which is another Linux variant more suited to server applications. Of course none of the procedures we attempted were succesfull as the operating system was not issue, the hardware was.

I had started work on this in the morning and it was threatening to become a late night, it was now way past 5 o'clock and Bill decided enough was enough.

Back in this week and we tried again to get it running, we have since found out that vmware server 2 will not work with our machine due to the hardware issue. As a result we considered another virtualisation product offered by VMWare which was called ESXi (or vSphere) which containts their server 3 software, but this was not without its own problems, version 4.1 was again incompatible with the 5600 xeon.

I decided to downgrade the vSphere to version 4 at this point, I had read that it was compatible with our hardware and felt it offered the best chance of giving us a running system.

Unfortunately this presented us with new problems, although version 4 was processor compatible we found that it had issues with the network adaptor and the disk controller.

So far another two days have been spent on this, Bill has decided not to carry on at this stage and I'm awaiting further instruction before we do anything else with it.

This server was purchased specifically for this purpose, a far as I'm aware there is no other use for it.

The Tracker

The Quota Tracker built for the media team last year was deployed successfully however they attempted to make their own changes to the system which caused a bug in the way it organised its data.

I received an email from Alex at the start of the week regarding this and I worked on the repair and two upgrades on Thursday. These were as follows:

  • Move all data which is outwith the current month into the drill down interface
  • Suppress the display of excess data on the main page
  • Incorporate a system to review and delete expired data (this will keep the database from becoming too large and brings the application in line with data protection rules)
  • apply the changes to the users application
All the development work for this is now complete, I am still awaiting a response from Alex on how he wishes to proceed with applying the fixes.

ITS042 - External event booking

After the work I done on this project last year it was successful in the development environment and promoted to test. Unfortunately there are problems with the software in test however the current issues are not related to the work I did.

I was asked to review the implementation plan for this project, which was written previously by another developer. As no changes were made to infrastructure of the application I didn't make any modifications to the plan.

As I understand it, each environment (dev, test, live) is a little bit different, the reasons being is that the emulation of the live system becomes closer with each stage.

To carry out this task, I spent time mapping out the structure of the application and made comparisons to the different versions stored accross the K drive, the development server, the test server and in Visual Source Safe. I found that between them, there wasn't two identical copies.

The recomendations I made were that we use the development copy as a golden copy for redeployment to test, given that it was the one fully working copy. A tidy should be performed on all stored versions of this software and all copies should be brought in line with one another.

I have since been told that files were missed when the application was deployed to test. I am still receiving emails from the system when errors take place which indicates a problem outwith the scope of my project. Further to this I am aware that a larger project to replace the MyEd website is underway, this will supersede the current MyEd including the event booking system.


Right now I have completed all tasks outstanding for this week, I am using this time to bring my administrative work up to speed with the practical side.