Application Development
Our approach to software development projects is based on a flexible working relationship basis where trust and a partnership understanding are critical. Essentially we have three key ways of working, which we use in different circumstances to meet our customer requirements.
Estimate based working
Daily rate contract basis
Fixed price contract basis
During a software project our Project Manager always stays in close contact with our customer, usually face to face on a regular basis. When we are working on an estimate or daily rate basis we never exceed budgets or estimates without permission.
Where InfoSys is taking responsibility for the development, whatever, the commercials basis, we work to the development methodology shown below:
Software Development Methodology (Lotus Notes Projects)
[1] Sales produce either an internal or a customer specification together with an agreed set of information (a pro-forma checklist?) about the project, such as:
- Name of customer & primary contact
- Nature or purpose of the project
- Estimated timescale
- Release of Lotus Notes to be used
- Operating system & version
- Client only, web browser only or both client and browser.
- The development approach required (fixed price or T&M)
- Source code to be provided: yes or no
- Training required (if any)
- Informal vs formal
- Agenda required: yes or no
- Training documentation required: yes or no
- Documentation required (if any) and format:
- User and/or technical
- Paper based and/or on-line help
- The invoicing arrangements agreed with the customer, for example:
- At agreed stages/deliverables
- At the end of the project
- At end of each month’s development
[2] Sales provide the customer with a written quote. PM may have input. The Quote will include:
- A set of standard software development terms and conditions
- A copy of the InfoSys Software Development Methodology document
[3] Once order received, PM contacts the customer to:
- Clarify and agree the scope of project
- Clarify and agree software development requirements
- Clarify documentation requirements
- Clarify and agree training requirements
- Agree a revised specification, as necessary
- Obtain Customer sign-off of the actual work to be done by InfoSys
- All of the above tasks must be completed before any development can begin.
[4] Following discussions with the customer, if the scope of the project has changed or the complexity of the project has increased PM will provides Sales with a revised cost estimate.
Sales may or may not then decide to contact the Customer, discuss the cost implications of the additional work, agree on a new price and a revised number of development days.
[5] Once the development cost, scope of the project and the requirements have been signed off by the customer PM agrees:
The actual timescales for the project (based on current team availability)
[6] PM allocates Developers to the project, books the project into InfoDiary and advises the customer of ‘key’ project dates by providing the customer with a basic project plan.
- The basic project plan will typically include tasks for:
- Project workshop
- Requirements document
- Creation of test plan(s)
- Project hand-over/briefing to developer(s)
- Application design
- Application development
- Prototyping
- Testing (by someone other than the Developer)
- Release and installation
- Implementation support
- Documentation
- Bug-fixing
- Training
[7] PM briefs the allocated project Developer(s) on:
- Scope of the project
- The agreed project plan
- The functionality required
- The agreed deliverables
- The agreed ‘key’ dates
- Customer contact(s)
- PM provides the Developer with all project documentation.
- PM creates a new ‘Project’ document in the ‘Projects’ database.
[8] Developer(s) begin development.
The Developer creates a new ‘Project Activity’ response document in the ‘Projects’ database and enters start of project details.
The Developer(s) spends time planning the work to be completed and the design of the application before commencing any actual development tasks.
The Developer(s) must explain and agree his planned approach and design with the PM or Technical Team Leader before starting any coding.
During development the Developer(s) follows the agreed InfoSys coding standards and development, testing, installation and release procedures.
e.g.
- A new database file to be created for each and every release
- All database files to be created on the appropriate server (local replicas may be made once database created on a server) and in a suitable project folder(e.g. …\customer\Zenith Insurance)
- All database filenames to always include a version number (e.g. InfoStaffv1.0.nsf)
- The version number to be incremental for each and every software release
- The version number to comprise 2 elements – whole number for major releases and decimal for minor releases
- Agreement on what constitutes a minor or major release
The Developer will advise the PM in a timely fashion of any deviations from the agreed project scope and requirements that may require the PM to raise a change control for the customer.
[9] PM meets with the Development Team on at least a weekly basis to:
- Review all projects
- Discuss & review all development related issues
- Check and review project progress
- Compare actual progress with planned progress
Following the weekly meeting, the PM:
- Reports progress back to customers & InfoSys MD/FD
- Prepares, issues and advises customers of any change controls (as necessary)
- Advises and agrees any adjustments to price directly with customers
- Revises project plans (as necessary)
[10] Software will be released to the customer only after someone other than the Developer has tested it.
- The person doing the testing will always complete a test plan’ document created specifically for the application.
- The PM, Developer(s) and Tester will devise and agree a suitable ‘Test Plan’ as part of the development process but prior to the first software release.
- The ‘Test Plan’ document will identify:
- The name of the application (e.g. Zenith InfoPO)
- The application’s version no. (e.g v1.0)
- The file names of all the LN databases making up the application (e.g. infostaffv1.0.nsf & infoSupplierv1.0.nsf
- The Operating System used for testing (e.g. Windows 98)
- The Notes Server & Client versions used for testing (e.g. Server v5.0.2a, Client v5.04)
- The web browsers and versions used for testing (e.g. IE4 & 5, Netscape v4)
- The name of the tester
- The date of testing
- The overall test result
The ‘Test Plan’ document will then list all of the tests to be completed by identifying each design element to be tested (e.g. form, view, action bar buttons, etc), the tests to be performed, the expected outcome and the actual test result.
Completed ‘Test Plans’ will be filed in the Projects database.
[11] Software will only be released to the customer once the agreed test plan has been satisfactorily executed.
When all testing has been satisfactorily completed, the Developer will complete a pro-forma ‘Release Note’ to accompany each and every software releases (i.e. new projects, bug-fixes, maintenance releases, etc).
The software Release Note will identify:
- Operating System version(s) used
- The application’s name
- The application’s version number (incremental for each release)
- Notes version(s) used (if relevant)
- Browser version(s) used (if relevant)
- Database or template file name
- ACL set (default = Manager)
- Design: hidden or not hidden
- Developer responsible
- Contact details (in the event of problems with release)
- The location of the database/template at InfoSys (server and project folder)
- The type of release, e.g. phase I, phase II, final, maintenance, etc.
- A brief statement of the functionality provided or bugs fixed in the release
- Testing completed by InfoSys
- Instructions for customer installation and testing
The Developer creates a new ‘Project Activity’ response document in the ‘Projects’ database to record and accompany each and every release.
Completed ‘Release Notes’ will be filed in the ‘Projects’ database.
[12] During the development process, the Developer will advise the PM in a timely fashion of any deviations from the agreed project scope and requirements that may require the PM to raise a change control for the customer.
The customer will be notified of changes in project scope, requirements or specification by the PM completing and sending a ‘Change Control’ document.
Both InfoSys and the customer will be able to raise Change Control documents during the development process.
The ‘Change Control’ document will identify:
- The application’s name
- The application’s version number
- The current state of the element to be changed
- The proposed change itself
- The impact of the change (cost, time & benefits) from p.o.v of the party proposing change
- The parties affected by the change
- The names of the people to review the change control
Each Change Control document will be filed in the ‘Projects’ database.
In the event of a Change Control document being approved by a Customer. The PM will revise the project plan, adjust the cost and advise the customer as appropriate.
For further information please contact our Sales Team on 01793 544994 or email sales@infosys.co.uk
Back | Go to Top | Forward this page | Bookmark | Printable version
© copyright InfoSys 2008