Topic 15: Systems development
AL

Topic 15: Systems development

The success or failure of IT projects depends on project-management skills.The appropriate use of ta...

更新于 2023-12-25
16332
  • The success or failure of IT projects depends on project-management skills.
  • The appropriate use of targets, planning, and analysis are common to all approaches.
  • The classic waterfall method is an easily understood method, which is still relevant.
  • However, agile approaches to project management are more commonly found in practice.

15.1 Project management

15.1.1 concept of and need for project management when developing IT systems.

Project management is the discipline of planning, organizing, and managing resources to successfully complete a specific project within defined constraints. It involves the application of knowledge, skills, tools, and techniques to meet project objectives and deliver desired outcomes.

Project management is about applying a process to enable the completion of a project on time and within budget.

The main purpose of project management is to ensure that projects are completed successfully, on time, and within budget.

Project management is crucial when developing IT systems for several reasons:

  1. Planning and Organization: Project management ensures that the development process is well-planned and organized. It involves defining project goals, scope, objectives, and deliverables. This helps in setting clear expectations and ensuring that all necessary tasks are identified and assigned to the appropriate team members.

  2. Resource Management: IT system development projects require various resources, including human resources, technology, infrastructure, and budget. Project management helps in effectively managing these resources by allocating them appropriately, tracking their utilization, and ensuring that they are available when needed. This ensures efficient use of resources and avoids unnecessary delays or bottlenecks.

  3. Time Management: Developing IT systems involves multiple tasks and activities that need to be completed within specific timeframes. Project management helps in creating a project schedule, setting deadlines, and monitoring progress to ensure that the project stays on track. It helps in identifying potential risks or delays early on and taking corrective actions to mitigate them.

  4. Risk Management: IT system development projects are prone to various risks, such as technical issues, budget overruns, scope creep, and resource constraints. Project management involves identifying and assessing these risks, developing mitigation strategies, and implementing proactive measures to minimize their impact. This helps in avoiding costly mistakes, ensuring project success, and delivering high-quality systems.

  5. Stakeholder Communication: IT system development projects involve multiple stakeholders, including clients, end-users, management, and development teams. Project management facilitates effective communication and collaboration among stakeholders by providing a structured framework for sharing information, discussing requirements, addressing concerns, and providing regular project updates. This helps in managing expectations, resolving conflicts, and ensuring that everyone is aligned towards the project's objectives.

  6. Quality Assurance: Project management ensures that quality standards and best practices are followed throughout the IT system development process. It involves defining quality criteria, conducting regular reviews and inspections, and implementing quality control measures. This helps in identifying and resolving issues early on, ensuring that the final system meets the required quality standards.

In summary, project management is essential for developing IT systems as it helps in planning, organizing, and managing resources, time, risks, stakeholder communication, and quality. It ensures that projects are completed successfully, on time, within budget, and with the desired level of quality.

15.1.2 the characteristics of successful IT projects.

pointexplanation
Relationships with stakeholders
  • shared vision
  • accurate estimations
  • allowance for contingencies
Strong project management
  • ensuring sufficient resources
  • clear change management processing
Good documentation
  • of all processes
  • so that audits are possible
  • team changes are easier
Good communication
  • maintaining good relationships
  • looking at/fixing problems early
  • keeping everyone informed of progress/intentions/changes
On completion
  • fulfil requirements
  • meet the success criteria
  • are delivered within budget
  • complete on time
  • satisfy stakeholders
  1. Relationships with stakeholders: the project team and stakeholders share a common vision and have accurate estimations, with allowance for contingencies, for project timelines.
  2. Strong project management, which ensures that sufficient resources are available and clear change management processes are in place.
  3. Good documentation of all processes, which enables audits and makes team changes easier.
  4. Good communication: The team members foster good relationships and keep in good communication, enabling them to address and resolve issues promptly and keep everyone informed about progress, intentions, and changes.
  5. On completion, successful IT projects fulfill requirements, meet the success criteria, are delivered within budget, are completed on time, and satisfy stakeholders.

  1. Clear Objectives: have well-defined and measurable objectives. The project team understands what needs to be achieved and has a clear vision of the desired outcomes.
  2. Effective Planning: This includes defining project scope, creating a realistic timeline, allocating resources, and identifying potential risks and mitigation strategies.
  3. Strong Leadership: A capable project leader who is able to ensure effective communication, manage conflicts, and make informed decisions to keep the project on track.
  4. Skilled Team: Each team member understands their roles and responsibilities, collaborates effectively, and brings their unique skills to the table.
  5. Stakeholder Engagement: actively engage stakeholders throughout the process. Regular communication, involvement in decision-making, and addressing their concerns contribute to stakeholder satisfaction and project success.
  6. Adequate Resources: Sufficient resources, including budget, technology, infrastructure, and personnel, are allocated to the project. This ensures that the team has what they need to execute the project effectively.
  7. Effective Communication: The project team communicates clearly and regularly with stakeholders, addressing any issues or changes promptly. Keeps everyone informed.
  8. Risk Management: Successful projects anticipate and manage risks effectively. Risk identification, assessment, and mitigation strategies are in place to minimize potential disruptions.
  9. Flexibility and Adaptability: Successful projects are adaptable and can adjust their plans and strategies accordingly to accommodate new requirements or circumstances.
  10. Quality Assurance: Successful projects have processes in place to monitor and evaluate the quality of work throughout the project lifecycle.

15.1.3 project outcomes using SMART targets.

  • produce SMART targets for tutor-created scenarios.
  • produce suitable targets and explain how they fit the SMART criteria

Making a concrete analysis in advance for your time management and setting goals will help you to get to the finishing line of your key performance and not to fall short. You will be motivated to achieve your goals within a certain time period.

A useful time management and goal setting method to achieve this is the so-called SMART Goals or simply SMART. SMART Goals: the acronym explained The smart acronym that stands for Specific, Measurable, Achievable, Relevant and Time Bound.

Peter Drucker is credited with the development of the smart acronym in his goal setting theory about 'Management by Objectives'.

A SMART goal gives direction to what you want to achieve. Setting these objectives and using the smart criteria will give a sense of direction to everyone who wants to achieve the relevant goal and it is highly likely that it can be really completed successfully. A well-formulated goal is easy to understand for everyone.

SMART CriteriaDescription
SpecificClearly define the goal or objective in a precise and unambiguous manner.
MeasurableEstablish concrete criteria or indicators to evaluate progress and determine when the goal is achieved.
AchievableEnsure that the goal is realistic and attainable within the given resources and constraints.
RelevantAlign the goal with the broader objectives and priorities of the individual or organization.
Time-boundSet a specific deadline or time frame for accomplishing the goal, providing a sense of urgency and focus.

I want to be healthier. ✗

My goal is to lose 10 pounds within the next 3 months. I will accomplish this goal by tracking my progress through weekly weigh-ins and following a personalized eating plan and exercise routine created with the help of a nutritionist. Accomplishing this goal will improve my overall health and increase my energy levels. ✓

  • Specific: I want to lose 10 pounds in the next 3 months.
  • Measurable: I will track my progress by weighing myself every week.
  • Achievable: I will consult with a nutritionist and create a healthy eating plan and exercise routine.
  • Relevant: Losing weight will improve my overall health and increase my energy levels.
  • Time-bound: I will achieve this goal within the next 3 months.

An example of a SMART-goal statement might look like this:

Our goal is to [quantifiable objective] by [timeframe or deadline]. [Key players or teams] will accomplish this goal by [what steps you’ll take to achieve the goal]. Accomplishing this goal will [result or benefit].

15.1.4 Be able to specify SMART targets.

Tania has just started her final year at university. She works part time for a company that has a number of mobile phone stores. Her goal is to work in a senior management position for the company after she graduates. She has written objectives using SMART criteria to help her achieve her goal. One of Tania’s objectives is

I will gain promotion to assistant manager status by completing the required training in the next six months, and applying for the role before completing my university course.

CriteriaHow the objective meets the criteria
SpecificTania has set the specific objective of being promoted to assistant manager
MeasurableSuccess can be measured by:
• completing the training (successfully)
• making the application on time/before completing university
• gaining the promotion.
AchievableThe objective is achievable if Tania can complete the training.
Relevant/ RealisticThe objective is relevant because Tania wants to become a senior manager and the assistant manager post would be the first step on the promotion ladder.
OR
realistic as a university student should be able to complete first stage management training.
Time-boundThe objective is time-bound because Tania has set limits of six months for the training/end of course for the application.

15.1.5 tools of project management

Project schedule network diagrams

Project schedule network diagrams show the order in which activities should be scheduled to address logical relationships between these activities.

AON & AOA

Activity-on-node (AON) is a network diagramming technique where the activities are represented as nodes, and the dependencies between activities are represented by arrows or lines connecting the nodes. It is probably the most common type of project schedule network diagram.

An alternative form of presentation is the ‘activities on arrows’ (AOA) method where, as the name indicates, activities are shown as arrows while nodes represent the logical relationships.

Precedence Diagramming Method

Another technique to create project schedule network diagrams is the precedence diagramming method, PDM can be considered as a subset of AON, where the focus is on the specific types of relationships between activities.

**前导图法(Precedence Diagramming Method,PDM)**用于关键路径法,是描述项目进度网络图的一种最常用的方法:矩形是节点,代表项目任务,连接这些节点的是箭头,代表任务之间的依赖关系。

The model can reflect 4 types of dependencies. These dependencies form the connection between successor activities and predecessor activities which are shown as nodes in the diagram. This is similar to the activity-on-node or activity-on arrow method yet more flexible as it allows overlaps of activities

This is similar to the activity-on-node or activity-on arrow method yet more flexible as it allows overlaps of activities

example precedence diagram
example precedence diagram

the design of module B cannot be finished until the design of module A has been completed which takes 10 days. Thus, the path for the design and development of module B is 30 days (20 days development + 10 days design of module A which is longer than the 5 days FF-related activity design of module B).

predecessor tables

A predecessor table shows dependencies/constraints on tasks/activities.

CPA

Gantt chart

A gantt chart is a horizontal bar chart used in project management to visually represent a project plan over time. Gantt charts typically show you the timeline and status—as well as who’s responsible—for each task in the project.

A Gantt chart can show:

whathow
the start and finish dates of each task• Tasks are listed with their start and finish dates.
• A bar represents each task.
the predecessors for each taskArrows are used to show which tasks are dependent upon other tasks.
the progress of each taskEach bar can be shaded in to show the percentage of the task that has been completed.
the resources required for each taskusually by listing the person responsible for each task.

Gantt chart example
Gantt chart example

source: PlantUML Web Server

CIE 9626_w19_qp_31
CIE 9626_w19_qp_31

a. nodes and Gantt charts b. requirements c. critical path analysis d. precedence tables.

The critical path method (CPM), also known as critical path analysis (CPA), finds a project’s critical path. The critical path identifies which tasks must complete on time in order for the whole project to complete on time, and defines the minimum time in which the project can be completed. It is appropriate for projects where the time needed for each task is known, usually because they are common recurring tasks, for example construction tasks

CPM: critical path method, also known as CPA (critical path analysis) predecessor: a task in a project that must be completed before another task can start

The circles represent milestones in the project and are numbered for identification purposes. The tasks are represented by arrows. The numbers next to each task represent the number of seconds the task will take

Some tasks can be completed in parallel to other tasks. For example, boiling the kettle can take place at the same time as putting tea in the cup, putting sugar in the cup and getting milk out of the fridge. Where there are parallel tasks, the longest timeline forms the critical path.

The total length of the critical path is calculated by adding up all the sequential tasks plus the longest of each of the parallel sets of tasks.

If any of the tasks on the critical path takes longer than planned, then the whole project will be delayed.

15.1.6 the concept of ‘fitness for purpose’ when evaluating systems.

'Fitness for purpose' refers to the evaluation of systems based on their ability to meet the intended objectives or requirements. It is a criterion used to assess whether a particular system is suitable and capable of fulfilling its intended purpose effectively and efficiently.

When evaluating systems for fitness for purpose, the focus is on determining whether the system aligns with the desired outcomes and meets the specific needs of the users or stakeholders. This evaluation involves considering various factors such as functionality, performance, reliability, usability, scalability, and compliance with relevant standards or regulations.

For example, when assessing a software application, fitness for purpose would involve evaluating whether the application has the necessary features, performs the required tasks accurately and efficiently, and meets the user's expectations in terms of usability and reliability.

Overall, the concept of fitness for purpose ensures that systems are evaluated based on their ability to deliver the intended results and meet the specific needs and expectations of the users or stakeholders.

15.2 Waterfall method

15.2.1 the concept and features of the waterfall method.

15.2.2 Understand the phases of the waterfall method

a. requirements/analysis b. design c. implementation d. testing/debugging e. installation f. maintenance.

15.2.3 Understand the type of activities that take place in each phase of the waterfall method.

15.3 Agile approach

15.3.1 the concept and features of an agile approach:

a. iterative b. incremental.

15.3.2 the phases of an agile approach:

a. requirements b. plan c. design d. develop e. release.

15.3.3 the type of activities that take place when using an agile approach:

a. scrum b. sprints


[2022]A transport company needs new software to improve its fleet management and routing systems. It has started a new in‑house project to develop the software. The project will use an agile iterative approach.

(a) Describe what is meant by an agile iterative approach.

• (software) development/writing is divided into sequences of repeated cycles • each cycle/iteration has a fixed length/time-box • each cycle/iteration includes all the (development) stages/the plan, design, check, adjust phases

(b) The project will be led by an agile scrum master. (i) State what is meant by an agile scrum.

  • a framework/process/rules that helps teams work together
  • a framework/process/rules for managing product/software development

(ii) A sprint is an event that happens within a scrum. Give two characteristics of a sprint.

• time-boxed / has fixed start and finish dates • runs sequentially/can only have one sprint at a time • has pre-planned/measurable goals

(c) The first two phases of an agile approach are requirements and planning. These take place before any coding is started. Discuss what needs to be done by the project team in the requirement and planning phases of this project

Responses should be in the context of the requirements and planning for a fleet and route management agile software project

Requirements: • create requirements document(s) • existing problems • end result, what the project is going to achieve • software features, what it will support e.g. types of machine/tool/task • software features, what it will NOT support • keep requirements as simple as possible, features may be added in later versions, avoid mission creep • prioritise the requirements • identify team members and resources

Planning: • team meetings, with the product owner/sponsor to clarify requirements • team meetings, to build the team, analysing project requirements • arrange scrum master role(s) • model the software/system/project architecture • plan/set up the environment, workstations, software tools, workspace • make first estimates for the project’s progress • plan first iteration/sprint/set of coding tasks.