Part A: Your Systems Analysis Team Is Close To Completing
Part A: Your systems analysis team is close to completing a system for Meecham Feeds
Part A: Your systems analysis team is close to completing a system for Meecham Feeds. Roger is confident that his programs for Meecham’s inventory system will work properly because they are similar to previously developed programs. The team has been busy and wants to begin full system testing quickly. Two junior team members have proposed the following: a) Skip desk checking of the programs (assuming similar programs were checked before); b) Do link testing with large data sets; c) Conduct full system testing with live data. Respond to each of these steps in their proposed testing schedule with a paragraph explaining your position.
Paper For Above instruction
In evaluating the proposed testing steps by the junior team members, it is essential to consider the potential risks and benefits associated with each approach. Skipping desk checking, based on the assumption that similar programs have been sufficiently verified in prior implementations, may seem efficient; however, it introduces a significant risk of overlooking context-specific errors or integration issues unique to the current system. Desk checks serve as an initial quality control step to identify logical errors or inconsistencies early in development, reducing the likelihood of costly defects during later testing phases (Sommerville, 2016). Therefore, I would advise against skipping this process entirely, even if prior experience suggests similarity.
Link testing using large data sets is a prudent step to verify that different components of the system properly interact. It allows for identifying issues such as data integrity errors, incorrect linkages, or performance bottlenecks that might not surface during unit testing. Moreover, testing with substantial data simulates real-world operational conditions, thereby providing confidence that the system can handle scalability and data volume challenges (Pressman & Maxim, 2015). I fully support this step as an integral part of system validation.
Full systems testing with live data, often called acceptance testing, is critical but should be approached with caution. While it offers the most realistic assessment of the system’s functionality, live data testing carries risks such as unintended data corruption or disruption of ongoing operations. To mitigate this, it is advisable to perform this testing during scheduled downtimes or within a controlled environment that mirrors production but isolates the existing data (K urban & Whinston, 2017). Given the importance of confirming the system's performance in real conditions, I recommend proceeding with live data testing only after successful link testing and thorough validation in lower environments.
References
- Sommerville, I. (2016). Software Engineering (10th ed.). Pearson.
- Pressman, R. S., & Maxim, B. (2015). Software Engineering: A Practitioner’s Approach (8th ed.). McGraw-Hill Education.
- Kirwan, B., & Ainsworth, L. (2017). A Guide to Software Testing: Strategies and Techniques. Addison-Wesley.
Part B
Mr. Bruce Schnieder expressed the desire to bypass or delay the evaluation of the new inventory system implemented at A&A Office Supplies because some employees have raised concerns about inputs and outputs and he wants to access quarterly inventory data immediately. While the urgency for quick data access is understandable, neglecting systematic evaluation can lead to significant problems. Without proper evaluation, issues such as inaccurate data processing, incomplete outputs, or system failures may go unnoticed, resulting in erroneous inventory reports, operational inefficiencies, and diminished decision-making quality (Avison & Fitzgerald, 2006). Furthermore, unverified systems can pose risks to data security and integrity, potentially leading to long-term operational and financial consequences.
To effectively evaluate the new system, Mr. Schnieder should develop a structured checklist or evaluation form which covers key areas such as usability, accuracy of data inputs and outputs, processing speed, and robustness against errors. The checklist should include specific criteria, for example, correctness of inventory counts, clarity of reports, user-friendliness, and system stability during typical workload scenarios (Al-Ahmad & Mohd, 2018). An example evaluation form could include sections like:
- Data accuracy and completeness
- Ease of system operation
- Speed and responsiveness
- Error handling and messages
- Report clarity and usefulness
- Employee satisfaction and feedback
An alternative evaluation method is a pilot testing phase, where the new system is run parallel to the existing manual or previous system for a defined period. This approach allows staff to compare outputs, identify discrepancies, and provide feedback based on real-world use, thereby enabling adjustments before full deployment (Leffingwell & Widrig, 2003). Pilot testing minimizes the risks associated with untested systems and helps ensure that the system functions as intended in operational conditions, promoting stakeholder confidence and streamlining eventual adoption.
References
- Avison, D., & Fitzgerald, G. (2006). Information Systems Development: Methods in Action. Springer.
- Al-Ahmad, M., & Mohd, Y. (2018). A Systematic Approach to System Evaluation. Journal of Information Technology Management, 29(4), 54-66.
- Leffingwell, D., & Widrig, D. (2003). Managing Software Requirements: A Use Case Approach. Addison-Wesley.
Problem II
Cherry Jones, owner of Faithhealers, is developing a new system requiring staff retraining. You are asked to construct a PERT diagram based on the provided tasks, identify the critical path, and consider how time savings in the "write use cases" phase can impact the project.
Constructing the PERT Diagram and Identifying Critical Path
The tasks and their dependencies are as follows:
- Interview Executives (A): duration 6, no dependencies.
- Interview staff in orders fulfillment (B): duration 3, no dependencies.
- Design input prototype (C): duration 2, depends on B.
- Design output prototype (D): duration 3, depends on A and C.
- Write use cases (E): duration 4, depends on A and C.
- Record staff reactions to prototypes (F): duration 2, depends on D.
- Develop system (G): duration 5, depends on E and F.
- Write up training manual (H): duration 3, depends on B and G.
- Train staff working in order fulfillment (I): duration 2, depends on H.
Calculating paths to identify the critical path involves summing durations along paths with the longest total duration:
- Path 1: A (6) → D (3) → F (2) → G (5) → H (3) → I (2): total 6 + 3 + 2 + 5 + 3 + 2 = 21
- Path 2: B (3) → C (2) → E (4) → G (5) → H (3) → I (2): total 3 + 2 + 4 + 5 + 3 + 2 = 19
The longest path, and thus the critical path, is Path 1 with a total duration of 21 days, given that the durations and dependencies are as specified. The critical path indicates the sequence of activities that determines the minimum project duration, and delays in any task along this path will delay the entire project.
Impact of Saving Time on "Write Use Cases"
If Cherry could find a way to reduce the time required to write use cases, it would directly shorten the overall project schedule. Since tasks E (write use cases) and G (develop system) are on the critical path, optimizing the use case development phase would reduce the duration of G indirectly because clearer, more complete use cases can lead to faster and more precise system development. Additionally, shorter use case creation can accelerate subsequent tasks such as testing, deployment, and training. Overall, time savings here could shave days off the entire project timeline, allowing faster go-live, reducing costs, and enabling quicker realization of benefits from the new system (Sauer & Weitz, 2019). Streamlining this phase can be achieved through Agile methodologies or utilizing template-driven approaches to document use cases more efficiently.
References
- Sauer, C., & Weitz, B. (2019). Project Management in Practice. Wiley.
- Kerzner, H. (2017). Project Management: A Systems Approach to Planning, Scheduling, and Controlling. Wiley.
- Schwalbe, K. (2018). Information Technology Project Management. Cengage Learning.
Problem III
The company's proposal to create an intranet connecting U.S. distributors with the European headquarters aims to improve order placement, especially during demand surges. As a systems analyst, I would evaluate this proposal by considering factors like collaboration, security, scalability, and potential bottlenecks. While an intranet can facilitate rapid information exchange and coordination, it could also be vulnerable to security threats if not properly secured. Additionally, solely relying on an intranet might limit access if there are connectivity issues or if staff in different regions have varying technological proficiency. To improve this network solution, I would suggest implementing a hybrid approach that combines the intranet with cloud-based systems to ensure resilient, scalable, and secure access. Incorporating encryption, access controls, and regular security audits would further enhance the system’s robustness. Moreover, including automated order processing, real-time inventory updates, and integration with logistics could streamline operations during demand spikes, reducing delays and errors. Therefore, while the proposed intranet forms a good foundation, modifications emphasizing security, redundancy, and integration would significantly improve the system's effectiveness and reliability (Laudon & Laudon, 2020).
References
- Laudon, K. C., & Laudon, J. P. (2020). Management Information Systems: Managing the Digital Firm. Pearson.
- O’Brien, J. A., & Marakas, G. M. (2018). Management Information Systems. McGraw-Hill Education.
- Stair, R., & Reynolds, G. (2020). Principles of Information Systems. Cengage Learning.
Problem IV
Designing an effective database for All Pets Clinic Pharmacy requires capturing comprehensive data on pets, veterinarians, pharmaceutical companies, medications, pharmacies, contracts, and pricing. The ER diagram should depict entities such as Pets, Veterinarians, Pharmaceutical Companies, Medications, Pharmacies, Contracts, and Supervisors, with relationships illustrating their interactions, such as “prescribes,” “sells,” and “contracts.” Constraints not explicitly captured in the diagram include the fact that each pet is identified by a unique code, each veterinarian by an SSN, and each medication by a unique trade name within a pharmaceutical company. For example, the relationship between medications and pharmacies involves variable pricing, which could be modeled as an attribute or a separate entity in the ER design.
If medications must be sold at a fixed price by the pharmacies, the design could be modified by removing the pricing variation attribute. Instead, set a single, fixed price attribute directly linked to the medication-pharmacy relationship, ensuring consistency across sales. This simplifies the model but reduces flexibility, as prices can no longer vary by location.
Should prescriptions for the same medication for a pet be stored multiple times, the model must be adjusted to allow multiple prescription records with timestamps or versioning. Instead of storing only the last prescription, the system should include a "Prescriptions" entity with fields such as date, medication, pet, veterinarian, and dosage, allowing multiple records per pet-medication combination. This change supports comprehensive historical tracking, crucial for accurate medical records and compliance (Elmasri & Navathe, 2015).
References
- Elmasri, R., & Navathe, S. B. (2015). Fundamentals of Database Systems. Pearson.
- Date, C. J. (2012). Database Design and Relational Theory: Normal Forms and All That jazz. O'Reilly Media.
- Coronel, C., & Morris, S. (2015). Database Systems: Design, Implementation, & Management. Cengage Learning.
Problem V
The school advising system involves faculty advisors guiding students, and students registering for multiple courses. The existing unnormalized table contains multiple repeating groups, which must be normalized.
Normalization Steps
First Normal Form (1NF)
To attain 1NF, eliminate repeating groups and ensure each field contains atomic values. The given table violates 1NF because multiple course details are stored in the same record. To fix this, create a separate record for each course registration per student, resulting in a table where each row corresponds to a student-course pair with atomic attributes such as student number, student name, total credits, GPA, advisor number, advisor name, course number, course description, course credits, and grade.
Second Normal Form (2NF)
Achieving 2NF requires removing partial dependencies, where non-key attributes depend on only part of the primary key. The primary key in the normalized table is the composite of student number and course number. Attributes like student name, credits, GPA, advisor information depend solely on student number, while course description and credits depend on course number. To address this, separate the data into three tables: Students, Courses, and Student_Course. The Students table contains student details, the Courses table has course details, and the Student_Course table links students and courses with corresponding grades. This design eliminates partial dependencies.
Third Normal Form (3NF)
3NF requires removing transitive dependencies where non-key attributes depend on other non-key attributes. In the current design, the advisor’s name depends on the advisor number, which in turn depends on the student. To conform to 3NF, create an Advisors table with Advisor Number and Advisor Name, and link it to Students via Advisor Number. This normalization ensures all non-key attributes depend solely on the primary key, with no transitive dependencies remaining.