SCRUM
Discuss about the Information System Of AFD Business.
AFD is an Australian business that sells woman garments to the retail stores and to individual customers. They specializes in wedding dresses. So the company has appointed sales representatives who goes to the retail shops and offers them discounts to make deals. On the other hand, there are wedding representatives who approaches to individual customers directly to sell wedding dresses. The company uses manual processes for stock management and customer relationship management also. And it uses some computerized solutions for emails, communication, and to manage account receivable and payables. As the business has grown significantly so the manual process has become insufficient to manage the workload. It is now causing problems like lack of communication, more time spent on minor tasks, issues with record keeping and business analysis and so on. Hence, the company has decided to implement an information system that will help to automate the purchase and sales operations of the business.
The scope of the information system is limited within the order taking and processing. But in future, it will be integrated with other information systems for customer relationship management and so on.
The scope of the report is limited within the discussion on a few iterative and agile system development methodologies that can be used for designing and developing the proposed information system for the AFD.
SCRUM is a popular agile software development framework. It is mostly suitable for developing software. A product owner creates a product backlog containing a prioritized to-do list for the project. On the other hand, there is a SCRUM master who manages the SCRUM team. SCRUM team members create sprint backlog that contains decomposed lists of tasks to meet the tasks listed on the product backlog. A sprint backlog plan is implemented in a sprint or an iteration. The duration of each sprint is kept below 2 weeks. And a cross-functional and small team for SCRUM based project is required (Maximini, 2018). Each day, there is a brief meeting. These daily standup meetings help to keep track of the jobs being done by different team members. They also help each other, and share project updates. The product owner also communicates with other team members to explain and guide then in developing the right system. At the end of each sprint, again there are review meetings with the stakeholders (James, 2015).
RAD
The advantages of SCRUM are,
- It is cost effective
- It follows divide and conquer process for large projects by diving it into multiple sprints.
- During sprint review all developments are coded and tested.
- It suitable for fast moving projects.
- It offers better visibility among the team members.
- It collects information from all stakeholders and allows participation of the end users.
- It offers better change management process.
The disadvantages of SCRUM are,
- Risk of scope creep.
- Sometimes it hard to tell the actual project finish date.
- Suitable for experienced team only rather than newbies.
- If there is a lack of cooperation and communication among the team members, then it will lead to project failure.
- Not suitable for large teams. It depends very much on the team members. If a team members leaves a team in midway, then the project may even get cancelled.
RAD is another iterative model for software development. The functional components of a software are developed in parallel. Then those are integrated and tested together. It follows a time-boxed approach to deliver working prototypes assembled together. It also offers end user participation and review process (Setiawan et al., 2011).
The advantages of RAD are,
- The software development time is reduced as it is developed in parallel.
- It offers reusability of code and other components.
- It offers participation of the end users.
- The parallel process of integration helps to solve various system integration issues.
The disadvantages of RAD are (Agarwal et al., 2000),
- The team-work is required for identifying the business requirements and to ensure better performance of the individuals.
- It is only suitable for building information system that have modules.
- It required heavy system designing work
- The cost is higher as it require extensive system modeling and automated code generation.
Extreme Programming is another agile software development methodology. XP is more responsive to changes. There are multiple frequent and iterative releases of partial product during the system development lifecycle. It allows both of the end users and the customers to provide feedbacks and review on the partial products (Meyer, 2014).
Some of the advantages of XP are (Sharp and Hall, 2016),
- It is cost effective and helps to deliver the end product faster.
- It also offer faster product realization
- Timely delivery of the partial product and final product also helps to keep track of the system development process and to offer timely delivery of the system.
- It does not require much documentation.
- It also offers constant user participation and feedbacks
- Simplicity is one of the prime advantages of XP
- The coding standards are kept simple for frequent updates and for organizing the code efficiently
- The process is accountable and visible
Some of the disadvantages of XP are (dos Santos, Pinto and Neto, 2018),
- Sometime, the design part is neglected as more focus is given on the coding part
- It sometimes lacks quality assurance processes.
- It is not suitable for geographically separated teams.
The iterative model is another software development methodology that focuses on the key phases in a software development life cycle. One of such phases is, the simple initial implementation phase. Based on it the next iterations keep adding more functionalities and features on the system. In each iteration, incremental development on the partial product is carried out. Iterative approach requires it to have a set of comprehensive and clear requirements. Once the major requirements are defined then it allows to define other requirements during the development process and in collaboration with the customer. The goals of an iterative model changes over time (Larman and Basili, 2003).
Some of the advantages are,
- It helps the clients to realize the system earlier than the final delivery date.
- Multiple iterations help to find issues and errors in the system faster.
- It helps on cost and time reduction for the final delivery of the product.
- It offers independency among the team members and that helps in keeping the team morale higher.
- It offers continuous integration
- Time-boxed approach help to mitigate issues faster and to reduce the complexity of the work.
- It also helps to detect and correct issues earlier during the software development process.
- More time spent on designing the software rather than the documentation
- It helps to keep track of the project progress easily.
- It helps in better risk management
Some of the disadvantages are,
- It is not suitable for all types of projects
- It may consume more resources
- It require intensive effort on the project management part
- There may be a constraining factor of issues related to the system architecture
- It is hard to tell the actual finish date of the project early
AFD has no prior experience in such project on developing and implementing an automated information system for the organization. As the business process is spanned over multiple citifies, so the information system must follow the distributed architecture for information system implementation. Based on the analysis of the project requirements of the AFD, it is recommended that they should follow the SCRUM approach. They should form a team that will be responsible for the implementation of the system. It needs to hire a special team member or the SCRUM master. The skill of the SCRUM master will help to run the project smoothly. As it is likely that the internal staffs are not skilled in SCRUM methodology (Davis, 2012). So it will require to make a contact with some IT consultancy that will offer the service to the AFD. It will help them to realize the proposed system early and to make any required changes during the system development process (Argue, 2013).
XP
I am happy to inform you about the initiation of the project on development and implementation of an automated purchase order processing system for the AFD. The system will be developed by following the agile methodology based SCRUM framework. One of the primary feature of SCRUM is that it offers participation and involvement of end users during the system development process. Hence, the goal of the project is to develop the system using UCD or User Centered Design approach and the HCI or Human Computer Interaction based approach. These two approaches together will help to develop an information system that will be focused on the requirements of the end users. Due to the nature of the business, there are various groups of stakeholders related to the project. The stakeholders include the employees, customers, business owner, accountant etc. All these people will access the proposed information system for various kinds of tasks (Methodologies et al., 2011). Hence, they should have different interfaces to interact with the information system properly.
UCD approach starts with understanding the end users’ requirement first. The motto is to make the information system more usable to the end users. It ensures that the end users will use the information system fully and the capacity and functionalities of the proposed information system will be utilized properly. So, the approach is being follows for the project (Ritter, Baxter and Churchill, 2014).
HCI of Human Computer Interactions are defined as the flow of activities and operations that helps a human user to communicate with an information system. HCI helps to improve the usability and user experience of a system. And it helps to boost the performance and productivity of the end users. The main motto is to help the users to use the system effectively and effortlessly (Cornell University Ergonomics, 2011).
The integration of UCD and HCI will be followed during the design and development of the proposed information system for the AFD. It can follow the following steps (Carroll, 2013).
- During the requirement analysis phase, it needs to interact with the end users and other stakeholders. The aim must be to understand the main functionalities of the proposed system and then starting the design and development processes based on those identified functionalities.
- Once the core functionalities are uncovered, then it will require to make the designs of the interfaces. Some prototypes can be built to collect user feedbacks on the interface designs.
- Then the system development process will start and it will require to develop the modules as per user requirements.
- Then there should be validation for the interfaces developed for the proposed information system along with the testing for the modules developed for the proposed information system.
The aim of the proposed information system is to help the employees rather than replacing them in the business operations of the AFD. The system will help to align the business operations, reduce the time compared to the manual business processes and to help the business in generating ROI faster.
You are encouraged to learn more about UCD and HCI. For further information, please write back.
The event table for the proposed information system is,
Event |
Event Type |
Source |
Trigger |
Activity/Use Case |
System Response/ Output |
Destination |
A customer makes a registration through the website |
External |
Customer |
Registration form is submitted online. |
Register Customer |
Generates login details |
System |
A sales person takes an order from a customer |
External |
Sales person |
Order details are submitted |
Take Order |
System records the order details |
System |
A sales representative marks a visit for a customer |
External |
Sales representative |
A visit is marked |
Mark Visit |
The visit details are recorded in the system |
System |
A wedding representative submits the sales record |
External |
Wedding representative |
Sales details are submitted to the system |
Add Sales Details |
The sales database is updated |
System |
The purchasing manager checks the stocks |
Internal |
Purchasing manager |
Request for checking stocks is submitted |
Check stocks |
Results are displayed |
System |
The purchasing manager analyze the stocks |
Internal |
Purchasing manager |
Stock analysis request is submitted. |
Analyze purchases |
Analysis reports are generated |
System |
The customer manager requests a search for potential customers |
Internal |
Customer manager |
Search request is submitted |
Find potential customer |
Reports are displayed |
System |
The customer manager requests an analysis of sales data |
Internal |
Customer manager |
Report generation request is submitted |
Analyze Sales Data |
Reports are displayed |
System |
Main Flow |
– Sales person checks the availability of the products according to the requirements of a customer – Then the sales person negotiate a discounted deal with the customer. – Customer places an order through a sales person. – Sales person adds the details to the system – The system records the details of the order – The system sends the order to the order processing team – It generates a reference for the order and forwards the same to the sales person and to the customer – System updates the status of the order as processing. |
Alternative Flow |
– The sales person finds that no deal is possible with a customer – The sales person notes the requirements and forwards the same to the customer manager – The customer management department then tries to negotiate a deal with the customer. |
References
Agarwal, R. et al. (2000) ‘Risks of rapid application development’, Communications of the ACM, 43(11es), p. 1–es. doi: 10.1145/352515.352516.
Argue, B. (2013) Agile Architecture Emerges — or Does It?, Scrum Alliance. Available at: https://www.scrumalliance.org/community/articles/2013/august/agile-architecture-emerges-or-does-it.
Carroll, J. (2013) ‘Human computer interaction (HCI)’, … Encyclopedia of Human-Computer Interaction, …, pp. 1–28. Available at: https://www.interaction-design.org/encyclopedia/human_computer_interaction_hci.html.
Cornell University Ergonomics, Cu. (2011) ‘Ergonomic Guidelines for User-Interface Design’, Ergonomics Human Centered Design, pp. 4–7. Available at: https://ergo.human.cornell.edu/ahtutorials/interface.html.
Davis, B. (2012) Agile Practices for Waterfall Projects: Shifting Processes for Competitive Advantage. J. Ross Pub. (J. Ross Publishing Project Management Professional Series).
James, M. (2015) Scrum Methodology, Scrum Methodology. Available at: https://scrummethodology.com/.
Larman, C. and Basili, V. R. (2003) ‘Iterative and incremental development: A brief history’, Computer, pp. 47–56. doi: 10.1109/MC.2003.1204375.
Maximini, D. (2018) The Scrum Culture: Introducing Agile Methods in Organizations. Springer International Publishing (Management for Professionals).
Methodologies, A. et al. (2011) ‘A Practical Guide to Seven Agile Methodologies , Part 1 A Practical Guide to Seven Agile Methodologies , Part 1’, Seven, pp. 1–5.
Meyer, B. (2014) ‘Agile methods’, in Agile!, pp. 133–143. doi: 10.1007/978-3-319-05155-0_9.
Ritter, F. E., Baxter, G. D. and Churchill, E. F. (2014) ‘User-Centered Systems Design: A Brief History’, Foundations for Designing User-Centered Systems, pp. 33–54. doi: 10.1007/978-1-4471-5134-0.
dos Santos, V. A., Pinto, G. H. L. and Neto, A. G. S. S. (2018) Agile Methods: 8th Brazilian Workshop, WBMA 2017, Belém, Brazil, September 13–14, 2017, Revised Selected Papers. Springer International Publishing (Communications in Computer and Information Science).
Setiawan, A. et al. (2011) ‘Rapid Application Development’, Sistem Informasi, pp. 1–12.
Sharp, H. and Hall, T. (2016) Agile Processes in Software Engineering and Extreme Programming, 17th International Conference, XP. doi: 10.1007/978-3-319-33515-5_13.