Frequently Asked Questions
- What is the ICT Agile Solutions Group?
- When is the ICT Agile Solutions group engaged?
- Where can I find the ICT Agile Solutions group?
- How can I contact the ICT Agile Solutions group?
- What is Agile development?
- Why is the Agile method right for me?
- What are the benefits of using the Agile method?
- How does the Business Stakeholder get involved in this process?
- What happens if I want to change what the ICT Agile developers are working on?
- What type of technology does the ICT Agile Solutions group use?
- What is the process of engagement with the ICT Agile Solutions group?
- Who is involved?
What is the ICT Agile Solutions group?
ICT Agile Solutions group are a software development team who are engaged to develop small to medium web applications in the event when an off-the-shelf solution can’t meet the University’s needs. The team uses Agile development methodology to provide rigorously tested and requirement focussed applications that are ready for public release at the end of a project timeframe.
When is the ICT Agile Solutions group engaged?
The ICT Agile Solutions group is engaged to develop an application for the University if:
- no off-the-shelf market product is available, OR
- no other existing solution exists within the University
In this way, ICT Agile Solutions reflects the ‘build to necessity’ strategy.
Where can I find the ICT Agile Solutions group?
ICT Agile Solutions teams are located in:
Institute Building
Room 432A, Level 4,
Storie Dixson Wing H10,
University of Sydney NSW 2006
How can I contact the ICT Agile Solutions group?
If you are looking to engage the ICT Agile Solutions group for a project or for software development, you need to contact your nominated ICT Relationship Manager or Solutions Manager first, so you can discuss suitable business solutions.
A project is assigned to the ICT Agile Solutions group once it has been approved through the Project Engagement and Approval Process (PEAP).
More information about engaging the ICT Agile Solutions group can be found below.
What is Agile development?
Agile development is an efficient and powerful method for the development of web applications. It operates with shorter time-frames in comparison with other methodologies, incorporates face-to-face communication, and includes both technical personnel and clients as part of a single project team.
Agile methodology places emphasis on clear goals, planning, and iterative delivery and involves Project Managers, Business Stakeholders, Analyst Programmers and Trainers throughout the development lifecycle.
In short, Agile is an highly iterative and evolutionary approach to software development. It is performed in a highly collaborative manner by self-organising teams which produce high quality software that meets the changing needs of its stakeholders in a cost effective and timely manner.
Agile values:
- Individuals and interactions over processes and tools: the effective collaboration of teams of people, including, but not limited to Analyst Programmers, Program Testers, Project Managers and Business Stakeholders
- Working software over comprehensive documentation: producing software quickly and often, giving users what they prefer over copious reams of documentation
- Client collaboration over contract negotiation: working closely and continuously with clients, and
- Responding to change over following a plan: malleability of project plans and room to change as situations change.
Why is the Agile method right for me?
Agile development uses a business-requirement focussed process to deliver working software to the University. The Agile method is right for you if you want:
- Faster delivery of live applications
- A team that can respond to and deliver working software despite of changing project requirements
- Applications that are rigorously and continuously tested during the development lifecycle
What are the benefits of using the Agile method?
The greatest benefit of the Agile method is the speed of delivery of working software that is intimately matched to the Client’s business requirements.
The Agile method delivers success and minimises risks by breaking the project down into small iterations. This way both the Analyst Programmer and the Client can assess project outcomes at the end of each individual iteration rather than evaluating the entire lifecycle of the project, allowing the team to re-evaluate project priorities and build an application to suit changing requirements.
Simplicity in communication, creation and maintenance – which are critical to the Agile process – also allows applications to be built in a short timescale and with minimal costs.
How does the Business Stakeholder get involved in this process?
The Agile development method gives high priority to Client collaboration. To encourage regular face-to-face communication and gain a better understanding of the Client’s business requirements, development resources are often placed in the Client’s regular business environment.
What happens if I want to change what the ICT Agile developers are working on?
As the Business Stakeholder you have the capacity to request new features during the course of the project. Agile developers understand that situations may alter the business requirements and welcome these changes by prioritising constant Client collaboration and communication.
In order to stay within time and budget limitations, you may have to reprioritise your business requirements and re-evaluate some elements of the application in order to make room for your changes.
What type of technology does the ICT Agile Solutions group use?
Ruby on Rails is well known for, but not limited to, the use in application development with the Agile methodology. Rails is a flexible framework for developing data driven web applications, written in the Ruby programming language.
Ruby on Rails is designed to make the proj¬ect development faster, simpler, test driven and more efficient as it allows for fast adjustment and modification of an application during the development lifecycle.
What is the process of engagement with the ICT Agile Solutions group?
Project Scoping
If an off-the-shelf solution cannot meet the University needs, ICT’s Relationship Managers and Solutions Managers should be contacted to discuss suitable business solutions directly with the Business Stakeholders.
A project is assigned to the ICT Agile Solutions group once it has been approved through the Project Engagement and Approval Process (PEAP), an online process which provides a single point of contact through which all project ideas and proposals can be submitted, viewed and tracked by the Client as well as reviewed by the identified governance body for funding, prioritisation and final approval.
Project Development
Once the project is approved it is assigned to an ICT Agile Solutions team that begins with the development of the required application. The Agile teams consist of both Analyst Programmers and Business Representatives who work together during each stage of the development cycle.
Within the project development, the Agile teams meet on a regular basis (eg hour by hour or weekly, depending on the business requirements and needs of the Client). As the project moves closer to deployment stage, the Enterprise Application Training (EAT) team will assist with application documentation and training.
Project Management
Agile teams use the Mingle application (a project management and collaboration tool) for the delivery of management reporting as part of the ongoing application development and delivery cycle.
Application Testing
Throughout the development of the required application the Agile Solutions project team builds test scripts which are continuously run as each part of the application is built.
This method benefits the Client by ensuring the application is ready for immediate release at the end of the project.
Operations
Once the application is deployed, ICT will provide support for the application and take care of the application’s maintenance.
Who is involved?
The team composition within an Agile project is usually cross-functional and self-organised, and independent of any existing corporate hierarchy or the corporate roles of team members. The Agile web development uses Project Managers, Business Stakeholders, Analyst Programmers and Trainers whose roles are described below:
Role of the Business Stakeholder
The Business Stakeholder provides background information and details about the required application.
Working closely together with the Analyst Programmer during the development cycle, the Business Stakeholder ensures that the initial business requirements are met during each development phase of the application and also checks regularly on the project’s progress (daily or weekly, as required).
While monitoring the progress of the project, the Business Stakeholder uses Mingle to add and track development requirements.
Role of the Project Manager
The Project Manager is responsible for the coordination of the primary stakeholders, including planning, execution, and closing of the Software development life cycle.
Role of the Analyst Programmer
In collaboration with the Business Stakeholders and the Client, the Analyst Programmer is engaged in the development of the requested web-application. They are responsible for the building, testing and release of the application in accordance with the Client’s business requirements. Analyst Programmers must work in collaboration with Business Stakeholders, keeping them updated through each iteration and ensuring the application is rigorous and ready for release at the end of the project timeline.
Role of the Trainer - Enterprise Application Training (EAT) team
Once the project plan has been developed, the Enterprise Application Training team will assist with the use of the application, providing training programs, customised team training and documentation such as user guides and quick reference guides.