Background of the AFD project
The report is based on the firm known as Australian Fashion Design and the overall operational planning for adoption of their new information system. The report will provide an assessment for different kinds of methodologies and make recommendations for suitable methodology and thereafter will present a plan for designing of an effective Human Computer Interface or HCI (Chadli, Idri, Toval and Nicolas, 2016).
Methodology 1: SCRUM
SCRUM is an agile based methodology and is used for development of many projects around the world. This methodology has been influenced by adaptive feedback loops and empirical research. In this methodology the real-world results are considered valuable rather than speculative measures. SCRUM methodology essentially divides the projects into various small part called as sprints that basically lasts for 2-3 weeks. (Chang, 2012)
Advantages of SCRUM methodology
If SCRUM is used as the default methodology for AFD, then the project has following advantages:
- The time being utilized for development would be reduced and therefore so would be the total expenditure.
- The project being developed can be easily tested.
- The project gets updated frequently providing higher clarity in the entire project (ADELL, 2013)
- Since the development is done in small iterations rather than large phases, making room for minor changes in requirements are also possible.
- This methodology allows for constant feedback and exchanges through meeting and thus assessing team’s productivity is also made possible (Craddock, 2012)
- Quality of the output is high.
- The cost associated with the project is low ((Ghosh, Forrest, DiNetta, Wolfe, & Lambert, 2012)
Disadvantages
The disadvantages for the AFD project would the following if they opt for SCRUM methodology:
- The project needs to have an end date and a start date and if the stakeholders come up with new ideas then the project could enter an indefinite scope-creep (Hajjdiab & Taleb, 2011).
- Since SCRUM methodology is a fast-paced methodology, the team must have experience in SCRUM. If they don’t have the knowledge and expertise then the methodology would not be effective enough to realize all the benefits associated with it.
- Because of tight deadlines and major milestones occurring every week or two, the team could remain stressed and pressurized throughout the project ultimately affecting the productivity and the quality of output.
Extreme Programming
Extreme programming is also an agile methodology and quite useful the ADF project. This methodology focuses on agile based development with the focus on customer involvement, effective team communication as well as integrative development. Extreme programming makes use of iterative based cycles of developments each lasting for a week (Shelton, 2008)
Advantages
The advantages for the AFD project would be the following if they opt for XP methodology:
- It would help save time that is essential for the completion of the project.
- As administrative tasks load are less the costs associated with it also reduces automatically.
- The methodology is rather simple compared to many others methodology and thus team members don’t need to have an in-depth experience in order to use this methodology.
- The communication is much more effective in XP as the team members are recommended to work from one location (Farrell, 2017)
Disadvantages:
The disadvantages for the AFD project would the following if they opt for XP methodology:
- The methodology is more focused towards the development and misses out on the designing part.
- It does not focus on unified testing and quality assurance which essentially means that code could have more bugs (Farrell, 2017)
Unified Process Development
Unified process development is a unique methodology that focuses on clear-defined goals for each member of the team and a focus on discussion as to how the goal has to be reached. Also, at its core it’s similar other methodology since it makes use of iterative techniques and unified language for modelling. It considers four major aspects for software development including product, project, process and people.
Advantages of UP
If UP is used as the default methodology for AFD, then the project has following advantages:
- Uses cases help capture the business value for th software development project.
- Since the development plan reflects what people do exactly, it is also easier for the development team to understand this.
Disadvantages of UP
If UP is used as the default methodology for AFD, then the project has following disadvantages:
- The use cases being provided would not define the entire requirement of the AFD project.
- Also, the end users may not be directly involved and therefore company will miss on some essential requirements.
A recommendation for the appropriate methodology is possible based on the current project needs as well as the boundaries set by the company. The requirements include:
- Software development that allows for people to record all the orders in their provided handheld devices which are integrated in their back-end systems.
- The salesperson of the AFD should be empowered ultimately with the help of the system being developed in their day-to-day operations.
- The interface provided for the company should include Address, Email, Discouns given, Sales area, Number, Application date among others (Qi, 2013)
Constraints of the project includes the following:
- In AFD, the record maintenance for the wedding is difficult and the sales reports are only covered on monthly basis. This type of constraint would require advanced planning and development for an appropriate system.
- The staff may not have a good knowledge of IT systems and thus it’s development (Ramsin, 2005)
- Current systems are manual and therefore data migration is also challenging.
- Since the company wishes to hire people from outside for carrying out the project, the overall development should happen fast.
Based on the above, SCRUM is the ideal choice for below provided reasons.
- It would help save on cost, time and ensure development happens with an efficient code that is well-tested.
- Development team could be self-controlled.
- Rapid and readily available feedbacks ensure that the stakeholders are incorporated sufficiently (Qi, 2013)
Overview of Agile and Iterative Development Methodologies
The following steps are essential for an appropriate adoption of HCI in any given system development:
Step 1: SCRUM Team Building – 7 days of 1 Sprint
- Building a team of SCRUM master, product owner from the development agency as well as the project team. A total of 4 people involving both agency and internal people.
- There would need to be 3 different roles in SCRUM including the Project Team member, the SCRUM master and the Product owner. Using this methodology for the development of AFD Project, then these roles would have following responsibilities (AWAD, 2005)
Role |
Responsibilities |
Product Owner |
· Communicate and define project’s priorities and goals to the development team. · Clear all the queries that the development team would have. · Creating of a balance between the team members being involved in the process of development (Craddock, 2012) |
SCRUM Master |
· Facilitation of project team in order to achieve goals. · Helping of project team to eliminate any issues that could be faced in development · Advising the owner of the product to take steps in order to maximize on the ROI (ADELL, 2013) |
Project Team |
· The team needs to have 7 different members that includes 2 programmers, 1 QA expert, 1 user experience designer and another individual software engineer. |
Step 2: Requirement gathering as well as Analysis phase of HCI – 1 Spring lasting 7 days each
- Identifying the sales staff’s needs as well as establishment of clear and well-defined requirements for software development.
- Identification of the goals for development and recording them in the project’s documentation which would be shared with the entire team.
Step 3: Designing and Prototyping – 3 Sprints lasting 7 days each (Kaur & Sengupta, 2011)
- Developing of alternative designs for the system will need to be explored and thereafter the most appropriate design would be chosen.
- Developing of prototypes that would be assessed by several users.
Step 4: HCI implementation, testing as well as feedback loop – 1 sprint lasting 7 days each
- Evaluation of the development process throughout the project that involves users ensuring they provide feedback.
- Creating of new iteration requirement based on several user feedbacks so as to improve the software functionality (Sofia, 2010)
Step: HCI Delivery as well as Next iterations – 2 sprints lasting 7 days each
- Identification of changes needed to incorporate in development and updating of development requirement.
- Making of changes in the system with new codes that needs to be implemented.
The entire development would require 8 sprints each lasting 7 days. Each of the sprint has a clear and well-defined goals that needs to be achieved by the end of the time it finishes as well as the progress would need to be monitored in order to ensure the objectives are met appropriately at each sprint’s end.
The management has decided to make some changes in the system for improving its productivity. The system being developed would have an enhanced form of human computer interaction that would allow for an improvement in the management of orders as well as enhanced customer information and approvals through hand-held devices. In order to accomplish this your co-operation and patience is essential (Vukovi, 2004). The new system would be rolled out soon.
Use Case |
Take order |
Scenario |
AFD takes a new order |
Triggering Event |
A customer places an order |
Description |
Order is taken by registered store. |
Actors |
Sales Person |
Related Use Case |
NA |
Stakeholders |
System Salesperson |
Pre-Condition |
Salesperson is logged in the system |
Post-Condition |
New order has been created successfully |
Flow of activities |
|
Actor Sales person |
System |
1. Salesperson clicks on “Create Order” on the respective dashboard. 3. Sales person fills the form and submits it. (A1) 4. Customer makes payment (A2). |
2. System displays a screen with an order creation form. 5. System generates an invoice. |
Alternate flows |
A1: If a mandatory field is left out then system generates an error message and displays is on the form. A2: : If a mandatory field is left out or incorrect details are entered then system generates an error message and displays is on the form. |
References
Chadli, S. Y., Toval, A., Idri, A., & Nicolás, J. (2016). Software project management tools in global software development: a systematic mapping study. Research Gate.
Chang, C. (2012). Selecting an Appropriate Software Development Lifecycle (SDL) Model in an Agency Environment. Retrieved November 12, 2015, from https://www.metia.com/seattle/chong-chang/2012/08/sdl-model-in-an-agency-environment/
Hajjdiab, H., & Taleb, A. S. (2011). Adopting Agile Software Development: Issues and Challenges. International Journal of Managing Value and Supply Chains (IJMVSC) , 1-10.
ADELL, L. (2013, April 11). BENEFITS & PITFALLS OF USING SCRUM SOFTWARE DEVELOPMENT METHODOLOGY. Retrieved from Belatrix Software Blog: https://blog.belatrixsf.com/benefits-pitfalls-of-using-scrum-software-development-methodology/Craddock, A. (2012). The DSDM Agile Project Framework for Scrum. Nlighten.
Mishra, A., & Dubey, D. (2013). A Comparative Study of Different Software Development Life Cycle Models in Different Scenarios. International Journal of Advance Research in Computer Science and Management Studies , 1 (5), 64-69.
Farrell, A. (2007). Selecting a Software Development Methodology based on Organizational Characteristics . ATHABASCA UNIVERSITY .
Ghosh, S., Forrest, D., DiNetta, T., Wolfe, B., & Lambert, D. C. (2012). Enhance PMBOK® by Comparing it with P2M, ICB, PRINCE2, APM and Scrum Project Management Standards. PM World Today , XIV ( I), 1-77.
Kaur, R., & Sengupta, J. (2011). Software Process Models and Analysis on Failure of Software Development Projects . International Journal of Scientific & Engineering Research , 2 (2), 1-4.
Awad, M. A. (2005). A Comparison between Agile and Traditional Software Development Methodologies . The University of Western Australia.
Issa. (2015). Usability and Human Computer Interaction (HCI) . Springer.
Pierce, W. (2016). Disadvantages and Advantages of Extreme Programming. Atlaz .
Ramsin, R. (2005). Software Development Methodologies. Sharif University of Technology.
Models, Collections and Toolkits for Human Computer Interaction:What Can We Learn? (2010). The 24th BCS Conference on Human Computer Interaction (pp. 1-9). Netherlands: Delft University of Technology.
Shelton, C. (2008, July 9). Agile and CMMI: Better Together. Retrieved from Scrum Alliance: https://www.scrumalliance.org/community/articles/2008/july/agile-and-cmmi-better-together
Vukovi}, Z. (2004). PROJECT MANAGEMENT – SOFTWARE DEVELOPMEN TMETHODOLOGY. Siemens.
Qi, X. (2013). Xiaojun QiThe Software Process. Dgital CS.
Sofia. (2010). Software Development Process – activities and steps. UACG.