BIT253 · TU past paper
Systems Analysis and Design 2079 question paper
The complete TU 2079 exam paper for Systems Analysis and Design (BIT253), all 12 questions with solved model answers written to the mark scheme.
Tap a question to open its answer.
- 110 marksSystems development life cycle overviewHideAnswer
What is system development life cycle (SDLC)? Explain each phase of SDLC in detail.[10]
System Development Life Cycle (SDLC)
Definition of SDLC
The System Development Life Cycle (SDLC) is a structured, systematic process or framework used by organizations and system analysts to plan, design, develop, test, implement, and maintain an information system. It provides a well-defined sequence of phases that guides the development team from the initial idea of a system to its final deployment and ongoing maintenance.
SDLC ensures that the final system meets user requirements, is delivered on time, within budget, and is of high quality.
Phases of SDLC
The SDLC consists of the following major phases:
Phase 1: System Planning
This is the first and most fundamental phase of SDLC. It involves:
- Identifying the need or problem that requires a new system or modification of an existing system.
- Conducting a feasibility study to determine whether the project is technically, economically, and operationally viable.
- Technical Feasibility: Can the technology support the system?
- Economic Feasibility: Is the project cost-effective?
- Operational Feasibility: Will the users accept and use the system?
- Defining the scope of the project.
- Preparing a project plan including schedule, resources, and budget.
Output: Feasibility report and project plan.
Phase 2: System Analysis
This phase focuses on understanding the existing system and identifying the requirements of the new system. It involves:
- Gathering information through interviews, questionnaires, observation, and document review.
- Studying the current system to identify its strengths and weaknesses.
- Identifying functional requirements (what the system should do) and non-functional requirements (performance, security, reliability).
- Preparing a System Requirements Specification (SRS) document.
Key activities:
- Requirement gathering
- Data flow analysis
- Problem identification
Output: System Requirements Specification (SRS) document.
Phase 3: System Design
In this phase, the requirements gathered during analysis are translated into a blueprint for the system. It is divided into two levels:
a) Logical Design
- Describes what the system will do without specifying how it will be implemented.
- Includes data flow diagrams (DFDs), entity-relationship (ER) diagrams, and process descriptions.
b) Physical Design
- Describes how the system will be implemented.
- Includes database design, user interface design, network architecture, hardware/software specifications, and file structures.
Output: System Design Document (SDD), database schema, UI prototypes.
Phase 4: System Implementation (Coding)
This phase involves the actual development of the system based on the design documents. It includes:
- Writing source code using appropriate programming languages (e.g., Java, Python, PHP).
- Converting the design into a working system.
- Following coding standards and guidelines.
- Integrating different modules of the system.
- Preparing user manuals and technical documentation.
Output: Working software/system with source code and documentation.
Phase 5: System Testing
Before the system is deployed, it must be thoroughly tested to ensure it works correctly and meets the specified requirements. Testing includes:
Type of Testing Description Unit Testing Testing individual modules or components Integration Testing Testing combined modules together System Testing Testing the complete system as a whole Acceptance Testing Testing by end users to verify requirements are met - Bugs and errors identified are reported and fixed.
- Performance, security, and usability are also evaluated.
Output: Test reports, bug reports, and a verified system.
Phase 6: System Implementation / Deployment
Once testing is complete and the system is approved, it is deployed into the production environment. Deployment strategies include:
-
Direct Cutover: Old system is immediately replaced by the new system.
-
Parallel Running: Both old and new systems run simultaneously for a period.
-
Pilot Implementation: System is first deployed in one department or location.
-
Phased Implementation: System is introduced in stages.
-
User training is provided during this phase.
-
Data migration from the old system to the new system is performed.
Output: Fully deployed and operational system.
Phase 7: System Maintenance
This is the final and ongoing phase of SDLC. After deployment, the system requires continuous maintenance to ensure it remains functional and up-to-date. Types of maintenance include:
Type Description Corrective Maintenance Fixing bugs and errors discovered after deployment Adaptive Maintenance Modifying the system to adapt to new environments or requirements Perfective Maintenance Enhancing performance and adding new features Preventive Maintenance Making changes to prevent future problems Output: Updated and improved system versions.
Summary Diagram of SDLC Phases
Planning --> Analysis --> Design --> Implementation --> Testing --> Deployment --> Maintenance ^ | |____________________(Feedback / Iteration)_________________________________________|
Importance of SDLC
- Provides a structured approach to system development.
- Ensures quality and reliability of the system.
- Helps in cost and time management.
- Improves communication among stakeholders.
- Reduces the risk of project failure.
In conclusion, SDLC is a complete roadmap for developing a high-quality information system. Each phase is dependent on the previous one, and together they ensure that the system is built systematically, satisfies user needs, and is maintainable over time.
- 210 marksProject planning definition and activitiesHideAnswer
What is project planning? Explain project initiation and planning in detail.[10]
Project Planning: Project Initiation and Planning
What is Project Planning?
Project planning is the process of defining the objectives, scope, schedule, resources, costs, and activities required to complete a software project successfully. It is a managerial activity that establishes a roadmap for the entire project lifecycle, helping the project manager to estimate, schedule, and control the project from start to finish.
Project planning answers the key questions:
- What needs to be done?
- How will it be done?
- Who will do it?
- When will it be done?
- How much will it cost?
Project Initiation
Project initiation is the first phase of the project lifecycle. It involves formally recognizing that a new project exists and establishing a foundation for the project before detailed planning begins.
Key Activities in Project Initiation
1. Identifying the Need or Problem
- The project begins when a client, stakeholder, or organization identifies a business need, problem, or opportunity.
- A feasibility study may be conducted to determine whether the project is worth pursuing.
2. Feasibility Study
The feasibility study evaluates the project from multiple angles:
Type Description Technical Feasibility Can the system be built with available technology? Economic Feasibility Is the project cost-effective? (Cost-Benefit Analysis) Operational Feasibility Will the system work in the organization's environment? Schedule Feasibility Can the project be completed within the required timeframe? Legal Feasibility Are there any legal or regulatory constraints? 3. Project Charter / Project Proposal
- A project charter is a formal document that officially authorizes the project.
- It includes:
- Project title and description
- Objectives and goals
- Stakeholders and their roles
- High-level scope
- Initial budget and timeline estimates
- Assumptions and constraints
4. Identifying Stakeholders
- All individuals or groups who have an interest in the project are identified.
- Examples: clients, end users, developers, managers, sponsors.
5. Appointing the Project Manager
- A project manager is formally assigned with authority and responsibility to lead the project.
6. Initial Risk Identification
- High-level risks are identified early so that mitigation strategies can be considered during planning.
Project Planning
Once the project is initiated, project planning begins. This is the most critical phase where detailed plans are created to guide execution and control.
Key Activities in Project Planning
1. Defining Project Scope
- The scope defines the boundaries of the project: what is included and what is excluded.
- A Work Breakdown Structure (WBS) is created to decompose the project into smaller, manageable tasks.
2. Resource Planning
- Identifying the human resources (developers, testers, analysts), hardware, software, and tools required.
- Assigning roles and responsibilities to team members.
3. Time / Schedule Planning
- Estimating the duration of each task.
- Creating a project schedule using tools such as:
- Gantt Charts: Bar charts showing tasks against time.
- PERT (Program Evaluation and Review Technique): Network diagram showing task dependencies and critical path.
- CPM (Critical Path Method): Identifies the longest path of dependent tasks.
4. Cost Estimation and Budgeting
- Estimating the cost of each activity and resource.
- Common estimation techniques:
- LOC (Lines of Code) based estimation
- Function Point Analysis
- COCOMO Model (Constructive Cost Model)
- A project budget is prepared and approved.
5. Risk Management Planning
- Identifying potential risks that could affect the project.
- Analyzing the probability and impact of each risk.
- Developing risk mitigation and contingency plans.
6. Quality Planning
- Defining quality standards and metrics for the project.
- Planning for reviews, inspections, and testing activities.
7. Communication Planning
- Defining how information will be shared among stakeholders.
- Deciding on meeting schedules, reporting formats, and communication channels.
8. Configuration Management Planning
- Planning how changes to project artifacts (code, documents) will be tracked and controlled.
Relationship Between Initiation and Planning
Project Need Identified | v Feasibility Study | v Project Charter (Initiation Complete) | v Scope Definition | v WBS, Schedule, Cost, Risk Plans (Planning Complete) | v Project Execution Begins
Summary Table
Phase Key Output Initiation Project Charter, Feasibility Report, Stakeholder List Planning WBS, Schedule (Gantt/PERT), Budget, Risk Plan, Quality Plan
Conclusion
Project initiation and planning together form the foundation of successful software project management. Initiation establishes the justification and authorization for the project, while planning provides the detailed roadmap. Without proper initiation and planning, projects are likely to face cost overruns, schedule delays, and scope creep, ultimately leading to project failure.
- 310 marksContext diagram and DFD levelsHideAnswer
Draw context diagram and data flow diagram for online food ordering system up to level 2 which is used to sell different food items to its customers online.[10]
--- The context diagram shows the entire system as a single process and identifies all external entities interacting with it. Entity Role ------ Customer Places orders, makes payments, receives food Restaurant/Admin Manages menu, receive...
- 45 marksClass diagram explanationHideAnswer
Explain object-oriented development with class diagram. [5]
Object-Oriented Development (OOD) is a software development approach that organizes a system as a collection of objects that interact with each other to accomplish tasks. It is based on the concept of modeling real-world entities as obje...
- 55 marksProject management definitionHideAnswer
Why is project management important? How can you use network diagram to schedule software projects? [5]
Project management is important in software development for the following reasons: 1. Meeting Deadlines: Ensures the project is completed within the scheduled time by planning and monitoring progress systematically. 2. Cost Control: Help...
- 65 marksData modeling definitionHideAnswer
What is data modeling? Draw an ER diagram to keep records of students, courses, and grades at your college. [5]
Data modeling is the process of creating a conceptual representation of data objects, the associations between different data objects, and the rules governing those objects. It defines how data is connected to each other and how they are...
- 75 marksIdentification and selection of system devHideAnswer
What is identification and selection of system development project? Explain. [5]
Project Identification and Selection is the first phase of the System Development Life Cycle (SDLC) in which an organization recognizes the need for a new information system or improvement to an existing one, evaluates multiple potential...
- 85 marksInterviewing and listening techniquesHideAnswer
How can you use interviewing technique to determine system requirements? Explain. [5]
Interviewing is one of the most widely used and effective fact-finding techniques in system analysis. It involves direct, face-to-face interaction between the system analyst and the stakeholders (users, managers, clients) to gather infor...
- 95 marksInterface and dialogue design processHideAnswer
How do you design interfaces and dialogues? [5]
Note: The reference notes did not contain specific content on this topic. The following answer is based on standard Human-Computer Interaction (HCI) principles as taught in BSc CSIT curriculum. --- Interface design focuses on creating a ...
- 105 marksDocumentation importanceHideAnswer
Why documentation and training are important? [5]
--- Documentation refers to the written records that describe a system, its components, how it works, and how it should be used. It is important for the following reasons: - Documentation serves as a permanent reference for developers, u...
- 115 marksMaintenance phase and system maintenanceHideAnswer
Define system maintenance. How do you conduct system maintenance? [5]
System maintenance is the process of modifying, updating, and improving a software system after it has been delivered and deployed to correct faults, improve performance, adapt to a changed environment, or enhance functionality to meet n...
- 125 marksRapid application developmentHideAnswer
Write short notes on: a) Rapid application development Write short notes on: b) Economic feasibility. [2.5+2.5]
Rapid Application Development (RAD) is an incremental software development process model that emphasizes a short development cycle using component-based construction. - Focuses on speed of development by using reusable components and aut...