Online Back-to-school Ordering System For School Supplies Pty Ltd
Background
Adaptive System Development
The current system requirements require employment of more adaptive and predictive methodologies because of the changes in business processes (James, 2013). Where high value results are required adaptive approaches to system development can be considered where rapid prototypes are developed rather than focusing on enhancement techniques to improve the system already in place. Highsmith (2013) have supported the ideology that system adaptability id more essential that system optimization. In predictive approach, the outcome or the final product is already known and thus, the development team is task with ensuring that the projected result is met. With adaptive methodology, the end result is not known.
System Development Methodologies refers to the approach in implementing the system development cycle. Analysis, planning, design and implementation are the basic steps in of System development. In the planning phase, it identifies why the system would be build and the process of its creation. Through studying the existing nature and identifying the risks, the team conceptualizes the new system, in design phase, members finalizes how the system operates. (Dennis et. al 2009)
General advantages of Adaptive system methodology include: it allows in-depth engagement of the key stakeholders before the project is started. Secondly, because of continuous engagement between the clients and the development team, the project is more transparent (Peter and Jain, 2016). Thirdly, regular meeting between the stakeholders ensures that the project objectives are met on time and within the budget. One key benefit od adaptive methodology is the fact that the development is more focused on the user which ensures that all the user requirements have been captured which eventually leads to development of a high-quality software product (Pradeep, 2017).
However, this approach is faced with some setbacks like continuous and regular engagement with the client consumes a lot of time and may lead to the client getting bored. In the course of engagement, new requirements may emerge which may delay the delivery of the software product or may lead to development of a totally different software that was not intended (John, 2016). Abrahamson, Warsta, Siponnen and Ronkainen (2013) have argued that testing the solution extensively may lead to failure of the project and may cause the client to incur loses because of the resources that had been dedicated to the project.
The various methodologies of adaptive system development, their advantages and disadvantages are discussed below. According to Rising and Janoff (2010), agile techniques are recommended for adaptive methodology while waterfall approach is recommended for predictive methodology.
Ideal Workflow Process for BTS Stationery Packs
This is a software development design that tries or aims at improving the speed, quality and response to the dynamic requisites of the client or the customer. It allows flexibility within the design process and it is a software build within an unstable environment. It can be grouped into categories which include; fine- scale feedback- this is a test-driven development and it entails planning game and pair programming (John, 2015). Secondly is Shared understanding, it includes software language and coding standards or conventions, a collective code ownership etc.
Some of the advantages of using this approach is that it creates rational schedules and plans, lays concentration of client involvement, more commitment to the project by the development team, and the team is equipped with more enhanced skills to deliver a quality product. However, this approach has some disadvantages for instance, regular meeting is required thus time wastage, development changes are many, the end result is not known, and it’s the people involved that determines the usefulness of the end product.
RAD is a system development approach where solutions are developed rapidly with the intention of offering the quality software quickly. Most online business employ the use of this methodology as it is also convenient to use and not complex (Rihanis and Geyor, 2011, p. 241). This approach is focused on improving the overall functionality of the software development process with emphasis on the active user participation.
Advantages
- Enables customers to have quick access
- There is feedback from clients for maximization of relations
- Quickens the development process
Disadvantages
- Requires the effort of many people
- This methodology restricts working on systems that are modularized.
- Requires high investment
- Needs more advanced experts for the complex operations
The method is good for any business entering online system. Its operations are designed such that a mistake in a previous stage can be corrected later or in the next phase (John and Robert, 2015).
Advantages
- There is transparency
- High quality for fixing problems
- Responds well to evolving changes
Disadvantages
- Inefficient documentation and more focus are on the software.
- There is a high chance of developing undesired product.
This is one of the oldest approaches in software development where the development process is in linear sequence, that is, the second phase depends on the first step, the third step depend on the second step and so on. This ensures that all the requirements are met at every stage and that the next stage improves the result of the first step (Larman, 2015). The happenings in one phase cannot be undone or the process cannot be reversed.
Advantages
- Easy to understand
- Easy to handle
- Faster analysis and testing
- More functional and saves time
The focus of this approach is to minimize the risks that are normally faced in the early stages of the project.
Developers initiate a lower level where risks can be eliminated at any incident, as the process can get into the initial circle part. The triumph of this model is based on observant, consistent and conversant project administration and management (Snoeck and Doden, 2014, 174).
Manager’s Request for a Brief Memorandum
Advantages
- Reduced risk factors
- Suited for large products
- Allows room for extra additions to the software
- Suitable for more complex, integrated projects that are risk
Disadvantages
- Very costly
- Not suitable for low risk investment
- Failure in risk analysis might cause problems to the projects.
This is an incremental and repetitive approach almost similar to rapid application approach but concentrates more on user engagement and involvement. The goal of this methodology is to is to offer the development team an allocated budget and specified timeline for the system development (Reed, 2010). As the name suggest, this methodology works more with the changing needs of its development, this system works best for an integrated system for any business.
Advantages
- Quick functional options and icons
- Easy access for end users
Disadvantages
- A costly undertaking to develop
- Not suitable for small investments or projects
Agile System Methodology
Basing on the above-mentioned methodologies, the best system development methodology that school Supplies Pty Ltd can use would be the Agile System Methodology, this is because the system provides organizations with an ability to quickly transform IS solutions (Highsmith, 2013). As the business is in the risk of old and new changes and technicalities which may include shortfalls in real time production and proceeds, externally and internally performed tasks or unwanted system changes from external factors or overhead competition (Cockburn, 2012). Thus, this requires the implementation or development of a software for a business to responsive to change.
This methodology has the ability to respond quickly to changes ranging from requirements of the system, technology advancement to people, meaning therefore that it can accommodate changing requirements and customer involvement, Rebecca can therefore easily run the activities of BTS Ltd efficiently, as it will help improve shared responsibility and accountability between staff members (McMenamin, 2011). Due to its speed, it will facilitate communication and collaboration between BTS staff and the clients or the customers and thus helps in avoiding delays and time wastage as the system is constantly progressing and sustainable.
Memorandum
TO : Gary Lane & Management
FROM :
DATE : 1st October, 2018
SUBJECT : Human Computer Interface Design
Having gone through your case study and specifically on the new user human computer interface requirement, we specialize in design, evaluation and implementation of interface computer system. The company’s decision on the design was based on the understanding of psychological, organization and social factors of your team and so the company decided on the methodology to aid in the appropriate design that would bring efficient and effective interaction for single users. HCI is the interaction between the user and the computer, it encompasses the design, aesthetic value of the screen and other phenomenon necessitating human use, in creating, and the following Norman’s Seven Principles apply;
- Making things visible
- Make the structure simple
- Standardize when everything fails
- Get map scope right
- Convert challenges to advantages
- Model for a flaw.
Heuristic Evaluation
A methodical sequence of looking user-interface usability challenges. When such a problem is noted in the design process, they are worked on as the empirical or minor involving part of the continuing design process. The following design controls have been considered in coming up with this memo; empirical measurement and early focus on activities and users.
Different Ways to Handle the Design of the HCI
Iterative design
HCI design approaches varies from one designer to another but nonetheless, al must follow the existing approaches which include; Empirical Approach, Predictive Approach, Modelling Approach, Anthropomorphic Approach and Cognitive Approach (Karl and Joy, 2013). BTS system will apply the use of two approaches; Predictive Modelling Approach and Empirical Approach. This design approach is paramount in determining, comparing and examining the conceptual designs usability (Bain, 2016). Pre-production stage is preferred in testing by conducting tests on usability and counter balancing design whereby users mostly prefer design concepts of each element.
Empirical Approach
A web page and its important usability can only be assessed through user preference on conceptual design task performance (Ambler, 2014). One or more conceptual design can be given to a user for testing in a lab, any doing that relates to the web task goal associated to it. For example, if you want to check the user performance then check if the user accomplished or failed to accomplish his intention for example if the user was to do a certain task in five minutes and with less than three errors, if otherwise results are observed, then the amount of time and frequency of errors has to be related to the standard as the substitute to the parent design for the web (Tan and Truex, 2009, p. 122).
Predictive Modeling Approach
GOMS is a technique used to measure individual components of a user experience in relation to time the user comfortably accomplishes the task or achievement of goals. Goals, Operators, Methods, and Selection (GOMS) rules (Shalloway and Trot, 2014). The objectives are the desired outcomes of the website. The development team utilizes operators or atomic-level actions to achieve the objectives such as perceptions, motor actions, and cognitive abilities. The sub-objectives and the series of atomic-level actions are the factors that the user engages with to meet the objectives using procedural techniques. Selection Rules means a decision of the user on which technique will work on a specific problem (Evans, 2012). Different styles can be compared based on the total time to finish an activity. This will help in identifying the most efficient method for completing the task.
First, the overall screen design will have three in build windows or screens. The first window upon opening of the website will be company’s portal; this not included in the design requirements but based upon assumption of the company’s experience. The portal will have companies;
- Home page
- About us
- Join us
- Products and services
- Contact us
- Reviews and feedback
- Delivery
Best Regards,
Consultant.
Event Table
Event |
Trigger |
Source |
Activity/Use Case |
System Response/Output |
Destination |
Parent creates account |
Enter Username (Email) and Password |
Parent |
– |
Account created |
Parent |
Parent log into the account |
Enters email and Password |
parent |
View children list |
Drops children list |
Children list |
Add Student order |
Enter Student Details |
Parent |
Add student details |
List of items and quantities for the students |
Create Book pack |
Create student’s book pack. |
Select the items required |
Parent |
Create students book pack |
Show the items of the book pack. |
Added Book Packs |
Send finalization email |
Finalize Order |
System |
Send finalization email |
Send Email to Parent |
Parent |
Admin Login |
Enter Login Details and press Login |
BTS System Admin |
Confirm Login Details |
Successful Login |
Dashboard |
Register School |
Enter School Details |
BTS System Admin |
Submit School Details |
School Successfully Registered |
View School Details |
School Login |
Enter School login code |
School |
Log into BTS System |
Confirm Login Details |
Booklist |
Select Year Group |
Choose a Year Group |
School |
Submit Year Group |
Select Year Group’s Booklist |
View booklists |
Use Case Name |
Description |
Scenario |
Order book |
Event triggering |
Customer login to the account to make an order |
Short Explanation |
User orders the item, the system verifies the information a complete menu drops, the staff, Rebecca and Gerry create new order, order transactions are created, and finishes the ordering process |
Actors |
The customer, Seller (Rebecca), and Grey |
Associated use cases |
Find out if the item is in stock |
Stakeholders |
Primary information is provided by the sales department and then delivery is done by the shipping department |
Preconditions |
Customer exists Items are available for order |
Post conditions |
The user must create an order |
Activity flow |
Actor System |
1. Rebecca receives the order 2. Creates new order 3. Add items to the order 4. Creates order transaction 5. Finalizes order delivery 6. Customer indicates end of order |
1. Display customer information 2. Creates new order 3. Display item information 4. Add an order item 5. Completes order 6. Computes total cost 7. Finalize order |
Exceptional Condition |
1. If item is not in stock, the customer may decline to buy it 2. If payment is incomplete, the order is cancelled |
Reference List
Abrahamson, P. Warsta, J. Siponnen M.T. and Ronkainen, J. (2013). New Directions on Agile Methods: A Comparative Analysis. The paper was presented at the 25th International Conference on Software Engineering, Portland. Oregon.
Ambler, L. (2014). Agile Model Driven Development with UML 2.0. Cambridge University Press
Bain, S. (2016). Emergent Design. The Evolutionary Nature if Professional Software Development. Addison Wesley. Boston USA.
Cockburn, A. (2012). Writing Effective Use Cases. Addison-Wesley, Boston, MA. USA.
Evans, E. (2012). Domain Driven Design. Tackling Complexity in the Heart of Software Engineering. Addison Wesley. Boston USA.
Highsmith, J.R. (2013). Adaptive Software Development: A Collaborative Approach to Managing Complex Systems.
James, A.H. (July 2013). Adaptive System Development. A Collaborative Approach to Managing Complex Systems: Addison-Wesley Professional
John, S. (2015). Systems analysis and design in a changing world. Boston: Cengage Learning.
John, S. (2016). Oriented analysis and design with unified process. Oxford University Press
John, W.S. and Robert, B.J (2015). System Analysis & Design. 5th Edition. Cambridge Mass Course Technology
Karl, W. and Joy, B. (2013). Software Requirements, 3rd Edition. Microsoft Press.
Larman, C. (2015). Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design. 3rd Ed. Prentice Hall, U.S.A
McMenamin, S.M. (2011). Essential System Analysis. Yourdon Press. NY, USA.
Peter, M. & Radhika (2013). Agile Software Development. Adaptive System Principles & Best Practices, 23:3
Peter, M. and Jain, R. (2016). Agile Software Development: Adaptive Systems Principles and Best Practices. Information Systems Management, 23(3), pp.19-30
Pradeep, M.N. (2017). Predictive cum Adaptive System Development Methodologies
Reed, P.R. (2010). Developing Applications with Java and UML. Addison Wesley, Boston, MA, USA
Rihanis, S. and Geyor, T. (2011). Complexity: An Appropriate Framework for Development Studies. 1(3). 237-245
Rising, L. and Janoff, N. (2010). The Scrum software development process for small teams. IEEE Software, 17(4), pp.26-32.
Shalloway, A. and Trot, J. (2014). Design Patterns Explained. Anew Perspective on Object Oriented Design. Addison Wesley, Boston USA.
Snoeck, M, and Doden, G. (2014) Core Modeling Concepts in Object-Oriented Conceptual Modeling in Proceedings of the Technology Object. pp 170-176
Tan, J. and Truex, D. (2009). Growing Systems in Emerging Organizations. Communications of the AGM. 42(8). 117-123