CSC326 · TU past paper
System Analysis and Design 2078 question paper
The complete TU 2078 exam paper for System Analysis and Design (CSC326), all 12 questions with solved model answers written to the mark scheme.
Tap a question to open its answer.
- 110 marksDeveloping Information Systems and the SysHideAnswer
What is system development life cycle (SDLC)? Explain each phase of SDLC in detail.[10]
The System Development Life Cycle (SDLC) is a well-defined, organized, and structured framework consisting of distinct phases that guide the development of an information system from initial planning through maintenance. Each phase has s...
- 210 marksNumericalProcess of Initiating and Planning IS DeveHideAnswer
Assume monetary benefits of an information system of $70,000 the first year and increasing benefits of $10,000 a year for the next four years; one-time development costs of $90,000, and recurring costs of $40,000 per year over the duration of the system's life. The discount rate for the company was 1! percent. Using a five-year time horizon, calculate the net present value of these costs and benefits. Also, calculate the overall return on investment and then present a breakeven analysis. At what point does breakeven occur?[10]
Parameter Value ------ Benefit Year 1 $70,000 Benefit increase $10,000/year (Years 2-5) One-time development cost $90,000 Recurring cost $40,000/year Discount rate 11% (0.11) Time horizon 5 years Benefits: Y1 = 70,000; Y2 = 80,000; Y...
- 310 marksConceptual Data ModelingHideAnswer
What is conceptual data model? How do you gather information for conceptual data modelling? Draw an ER diagram for a retail store in a mall which sells different items to its customers.[10]
--- A conceptual data model is a high-level, abstract representation of the data requirements of an organization or system. It identifies the key entities, their attributes, and the relationships among them, without concern for how the d...
- 45 marksIntroductionHideAnswer
What is system analysis and design? Why is it important for developing information systems? [5]
System analysis and design (SAD) is a complex, challenging, and stimulating organizational process that a team of business and systems professionals uses to develop and maintain computer-based information systems. It is fundamentally an ...
- 55 marksCASE ToolsHideAnswer
Why do we need CASE tool during system development? What are different components of CASE tool? [5]
CASE (Computer-Aided Software Engineering) tools are software applications that provide automated support for software development activities. We need CASE tools during system development for the following reasons: 1. Improved Productivi...
- 65 marksManaging the Information Systems ProjectHideAnswer
What is project management? Explain some activities and skills of a project manager. [5]
Project management is the process of planning, organizing, directing, and controlling resources (people, time, cost, and scope) to achieve specific project goals within defined constraints. It involves initiating, planning, executing, mo...
- 75 marksProcess of Initiating and Planning IS DeveHideAnswer
Explain the process initialing and planning information system development project in brief. [5]
Project management is a controlled process of initiating, planning, executing, monitoring, controlling, and closing a project. Its focus is to ensure that systems development projects meet customer expectations and are delivered within b...
- 85 marksContemporary Methods for Determining SysteHideAnswer
How can you use prototyping for determining system prototyping requirements? Compare throwaway with evolutionary prototyping. [5]
Prototyping is a form of Rapid Application Development (RAD) in which, instead of spending a lot of time producing very detailed specifications, developers find out only generally what the users want. Rather than developing the complete ...
- 95 marksDatabase DesignHideAnswer
What is the purpose of database design? Compare logical design with physical design. [5]
Database design is the organization of data according to a database model. The main purpose of database design is to: - Produce logical and physical designs of the proposed database system - Meet the requirements of users - Ensure high p...
- 105 marksSoftware Application TestingHideAnswer
What is testing? Explain any four different testing techniques. [5]
Testing is the process of evaluating a software system or its components with the intent to find whether it satisfies the specified requirements or not. It is a systematic activity of executing a program or application with the purpose o...
- 115 marksIntroduction to Unified Modeling Language,HideAnswer
What is class diagram? Explain class diagram with suitable example. [5]
Class Diagram
Definition
A class diagram is a type of UML (Unified Modeling Language) structural diagram that consists of classes, interfaces, associations, and collaborations. It represents the object-oriented view of a system, which is static in nature. It is the building block of all object-oriented software systems and helps us identify relationships between different classes or objects.
Components of a Class Diagram
A class in a class diagram is represented as a rectangle divided into three compartments:
+-------------------------+ | Class Name | <-- Top compartment +-------------------------+ | Attributes | <-- Middle compartment +-------------------------+ | Operations | <-- Bottom compartment +-------------------------+Component Description Class Name Name of the class (e.g., Student, Course) Attributes Properties or data members of the class Operations Methods or functions the class can perform Associations Relationships between classes (shown by lines/arrows)
Example: Student and Course
+-------------------------+ enrolls in +-------------------------+ | Student |--------------------------| Course | +-------------------------+ +-------------------------+ | - studentID: int | | - courseID: int | | - name: String | | - courseName: String | | - address: String | | - credits: int | +-------------------------+ +-------------------------+ | + enroll() | | + addStudent() | | + getDetails() | | + getCourseInfo() | +-------------------------+ +-------------------------+Explanation of the Example:
- Student class has attributes like
studentID,name, andaddress, and operations likeenroll()andgetDetails(). - Course class has attributes like
courseID,courseName, andcredits, and operations likeaddStudent()andgetCourseInfo(). - The association between Student and Course shows that a student enrolls in a course, representing the relationship between the two classes.
Importance of Class Diagrams
- Provides a static view of the system structure.
- Helps in identifying relationships (association, inheritance, aggregation) between classes.
- Serves as the foundation for object-oriented design and implementation.
- Useful for both forward engineering (design to code) and reverse engineering (code to design).
- Student class has attributes like
- 125 marksOther ApproachesHideAnswer
Write short notes on: a. Agile development b. Decision tree [5]
Short Notes
a. Agile Development (2.5 marks)
Agile Development is a software development approach mainly intended to help developers build a project that can adapt to transforming (changing) requirements quickly. It was developed to make project achievement easy and rapid.
Key Characteristics:
- Changing requirements can be accommodated at any stage
- Progress can be measured throughout development
- Reduces development time
- Increases reusability of components
- Improves productivity with fewer people in a short time
Phases of Agile Development:
Phase Description Exploration Team practices estimating time needed for various tasks; curious attitude toward work environment, problems, and technologies Planning Developers and customers agree on a delivery date (typically 2 months to 6 months) for business solutions Iterations to First Release The entire architecture of the system is sketched out, even in skeletal/outline form Productionizing The product is released and may be improved by adding further features Maintenance Once released, the system is kept running smoothly
b. Decision Tree (2.5 marks)
A Decision Tree is a flowchart-like tree structure used for classification and decision-making, where:
- Each internal node denotes a test on an attribute
- Each branch represents an outcome of that test
- Each terminal (leaf) node holds a class label (final decision/result)
Diagram:
[Attribute Test] / \ Yes/ \No / \ [Sub-test] [Class Label] / \ [Label] [Label]Key Points:
- It is widely used in decision support systems and information systems development for project evaluation
- It provides a visual and logical representation of decisions and their possible consequences
- It is easy to understand and interpret
- Used in classification problems in machine learning and management decision-making
Example: A decision tree can be used to classify whether a project should be selected based on attributes like cost, duration, and complexity.