0% found this document useful (0 votes)
31 views12 pages

Solutions 1

The document discusses the core principles and practices of system development processes, including requirements gathering, analysis, design, implementation, testing, deployment, maintenance, documentation, and iterative development. It describes problems with the traditional waterfall model like difficulty accommodating changes and testing late in the process. It also explains information support and management for office automation systems, which help with office tasks, and transaction processing systems, which handle routine transactions and provide financial reports.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
31 views12 pages

Solutions 1

The document discusses the core principles and practices of system development processes, including requirements gathering, analysis, design, implementation, testing, deployment, maintenance, documentation, and iterative development. It describes problems with the traditional waterfall model like difficulty accommodating changes and testing late in the process. It also explains information support and management for office automation systems, which help with office tasks, and transaction processing systems, which handle routine transactions and provide financial reports.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

1. What are at the heart of System development Process?

At the heart of system development processes lie several core principles and practices aimed at
ensuring the successful creation, implementation, and maintenance of software systems:

Requirements Gathering: In this phase all the necessary information are collected from user, so
that the system developed should be as per customer’s expectation.

Analysis:
1. Study current system
2. Determine requirements
3. Structure requirements and eliminate redundancies
4. Generate alternative design
5. Compare alternative designs
6. Recommend best alternative design

Design:
1. Defining the overall architecture and structure of the system.
2. Detailing the internal components, interfaces, and workflows.
3. Designing intuitive user interfaces and database schemas.

Implementation/Coding: This is where the actual code is written based on the design
specifications. Developers translate the design into a functioning system using programming
languages and development frameworks.

Testing:
1. Unit Testing: Testing individual components or modules to ensure they function correctly in
isolation.
2. Integration Testing: Verifying that different components work together as expected when
integrated into the system.
3. System Testing: Testing the entire system as a whole to ensure it meets the specified
requirements and functions properly in the intended environment.
4. Acceptance Testing: Evaluating the system's compliance with user requirements and
ensuring it meets the stakeholders' expectations.
5. Regression Testing: Repeating tests to ensure that new changes or updates haven't
introduced unintended side effects or broken existing functionality.
Testing ensures the quality, reliability, and effectiveness of the system before deployment,
reducing the risk of errors and ensuring a positive user experience.

Deployment: After thorough testing, the system is deployed to the production environment.
This involves installing the software, configuring it, and ensuring it works as expected in the real-
world environment.
Maintenance and Support: Once deployed, the system requires ongoing maintenance and
support to address issues, implement updates, and add new features as needed. This ensures
the system remains relevant and effective over time.

Documentation: Throughout the development process, documentation is created to capture


important information about the system's design, functionality, and usage. This helps
developers, users, and other stakeholders understand and work with the system effectively.

These processes are often iterative and may overlap, especially in agile methodologies where
development occurs in short cycles or sprints. Effective communication and collaboration
among team members are also critical to the success of system development projects.

2. List and explain some of the problems with the traditional waterfall model

The waterfall model follows a strict, linear sequence of stages, makes it difficult to
accommodate changes once a stage is completed.
Early documentation of requirements may lead to misunderstandings and inaccuracies, resulting
in a system that doesn't fully meet stakeholders' needs.
Limited client Involvement only at the beginning .
Long Delivery Time
Cannot use in Large Projects
Testing occurs late in the process, making it harder to identify and rectify issues, which can
increase project costs and timelines.
The waterfall model may not be suitable for projects where requirements are likely to evolve or
where rapid iteration is required.
3. Explain information support and nature of management for the folloing systems: 1. Office
automation system 2. Transaction processing system

Office Automation System (OAS):

Information Support: OAS helps with everyday office tasks like creating documents, managing
emails, and scheduling meetings. It makes communication and collaboration easier by storing
and organizing information.

Nature of Management: Managers use OAS to streamline administrative work and coordinate
tasks within their teams. They oversee its implementation and ensure it meets the needs of the
organization.

Transaction Processing System (TPS):

Information Support: TPS handles routine transactions like sales and inventory updates. It
ensures that data is processed accurately and quickly, providing reports on transactions and
financial status.

Nature of Management: Managers rely on TPS to track business operations in real-time, manage
inventory, and monitor financial transactions. They oversee its operation and use its reports to
make decisions about operations and resources.

4. What do you mean by Balancing dfd’s? Draw context diagram and data flow diagrams for
online movie rental system that allows its users to watch movie online.

Balancing Data Flow Diagrams (DFDs) refers to the process of ensuring that the input and output
data flows across different levels of the diagram are consistent and accurately represented. This
ensures that all data flows are properly accounted for and that there are no missing or
redundant flows within the system.

Ensure that each data flow leaving a process is accounted for as input to another process or
stored in a data store. Likewise, every data flow entering a process should be sourced from
another process or a data store. This ensures consistency and completeness in depicting how
data moves within the system.

5. Draw a labeled dfd of library automation system


6. Draw er diagram to store data about students, programs, and courses at your college
7. Explain the conceptual data modeling with entity relationship model?

Conceptual data modeling with the Entity-Relationship (ER) model involves:

1. Defining entities (objects) and their attributes (properties).


2. Describing relationships between entities to represent interactions.
3. Specifying cardinality and optionality to indicate the number and type of relationships.
4. Creating an ER diagram to visually represent the data model.
5. Focusing on abstraction to capture essential aspects of the real-world domain.
6. Providing a foundation for designing databases and information systems.

8. Explain the different decision making that takes place when a user withdraw monet=y from
bank atm?

9. Explain Physical database design. Why is physical database design important? Differentiate
logical database design with physical database design.

Physical database design involves translating the logical database model into a physical
structure that can be implemented in a specific database management system (DBMS). It
focuses on the internal details of how data is stored, organized, and accessed within the
database. Here's an explanation of physical database design and its importance:

Physical Database Design:

Storage Structures: Determines how data will be stored on disk, including file organization,
indexing methods, and storage allocation.

Indexing Strategies: Defines which attributes will be indexed to optimize query performance and
data retrieval.

Partitioning: Divides large tables into smaller partitions to improve manageability, scalability,
and performance.

Data Distribution: Determines how data will be distributed across different storage devices or
servers for load balancing and fault tolerance.
Clustering: Groups related data together physically on disk to reduce I/O overhead and improve
query performance.

Normalization and Denormalization: Implements normalization techniques to reduce data


redundancy and improve data integrity. Denormalization may be applied selectively to improve
query performance.

Security and Access Controls: Defines access permissions, encryption, and authentication
mechanisms to ensure data security and privacy.

Importance of Physical Database Design:

Performance Optimization: Proper physical design can significantly improve query performance,
data retrieval speed, and overall system efficiency.

Resource Utilization: Efficient storage structures and indexing strategies minimize resource
usage and optimize disk space utilization.

Scalability: A well-designed physical database can easily accommodate growth in data volume
and user traffic without sacrificing performance.

Data Integrity: By enforcing normalization and other integrity constraints, physical design
ensures data consistency and reliability.

Data Security: Implementing security measures at the physical level safeguards data from
unauthorized access, manipulation, and corruption.

Manageability: Partitioning, clustering, and other design techniques enhance database


manageability, making it easier to administer and maintain.

Differentiation from Logical Database Design:

Logical Database Design: Focuses on defining the logical structure of the database, including
entities, attributes, relationships, and constraints. It describes the data model independent of
any specific DBMS or physical implementation details.

Physical Database Design: Translates the logical data model into a physical database schema,
specifying how data will be stored, indexed, and accessed within the underlying DBMS. It
involves decisions related to storage structures, indexing strategies, partitioning, normalization,
security, and performance optimization.
In summary, physical database design is crucial for translating the logical database model into an
efficient and scalable physical database schema. It addresses the internal details of data storage,
indexing, partitioning, and security to ensure optimal performance, data integrity, and resource
utilization within the database system.

10. Define feasibility study. Explain Economic and schedule feasibility in brief.

A feasibility study is an assessment conducted during the initial stages of a project to determine
whether it is viable and worthwhile to proceed with the project. It evaluates various factors such
as technical, economic, legal, operational, and scheduling aspects to determine the project's
feasibility. The primary goal of a feasibility study is to provide stakeholders with the necessary
information to make informed decisions about whether to proceed with the project, modify it,
or abandon it altogether.

Economic Feasibility

Determines if the benefits of the project outweigh the costs.

Considers initial investment, operational costs, and revenue potential.

Analyzes cost-benefit, payback period, and return on investment.

Schedule Feasibility:

Assesses if the project can be completed within the specified timeframe.

Considers project timeline, milestones, and resource availability.

Addresses dependencies, constraints, and potential risks.

11. What are the major activities of system maintaineance ? Expalin.

This phase monitor and support the new system to ensure it continues to meet the business
goals

Fixing the system to work correctly or adapting the system for changes in requirements

Tackling failures or enhancements request for all five components

Fixing Failures
12. Write short note on system requirements and data dictionaries.

System Requirements:

System requirements are detailed descriptions of the functionalities and constraints that a
software system must meet. They are gathered, documented, and managed to ensure that the
system satisfies user needs and project goals.

Data Dictionaries:

Data dictionaries serve as centralized repositories of metadata describing the structure,


semantics, and relationships of data elements within a database or system. They provide a
common vocabulary for stakeholders and support data management, governance, and system
development activities.

13. What do you mean by system testing ? explain different types of testing.

System testing is a crucial phase in the software development lifecycle where the entire system
is tested as a whole to ensure that it meets specified requirements and functions correctly. It
involves testing the integrated system to verify that it meets quality standards, performs as
expected, and is ready for deployment. System testing aims to identify defects, errors, and
discrepancies in the system's behavior and functionality before it is released to users. Here's an
explanation of different types of system testing:

Functional Testing:

Functional testing evaluates the system's behavior against functional requirements to ensure
that it performs as intended. It involves testing individual functions, features, and interactions
within the system.

Types of functional testing include:

Unit Testing: Testing individual units or components of the system in isolation.

Integration Testing: Testing the integration and interactions between different modules or
components of the system.

System Testing: Testing the entire system as a whole to verify end-to-end functionality.
Acceptance Testing: Testing conducted by end-users or stakeholders to validate that the system
meets specified requirements and business needs.

Non-Functional Testing:

Non-functional testing evaluates the system's non-functional attributes such as performance,


reliability, usability, security, and scalability.

Types of non-functional testing include:

Performance Testing: Evaluating the system's responsiveness, speed, and scalability under
various load conditions.

Security Testing: Assessing the system's ability to protect data, prevent unauthorized access,
and withstand security threats.

Usability Testing: Evaluating the system's user interface, ease of use, and user experience.

Reliability Testing: Testing the system's stability, fault tolerance, and ability to operate reliably
over time.

Compatibility Testing: Ensuring that the system functions correctly across different platforms,
devices, and environments.

Regression Testing:

Regression testing ensures that changes or enhancements to the system do not adversely affect
existing functionality.

It involves retesting previously tested functionalities to detect any unintended side effects or
regression defects.

Regression testing can be automated to expedite the testing process and ensure comprehensive
test coverage.

User Acceptance Testing (UAT):

User acceptance testing involves testing the system from the end-users' perspective to ensure
that it meets their needs and expectations.

It is typically conducted by end-users or stakeholders in a real-world environment to validate


that the system satisfies business requirements and delivers value.
System Integration Testing:

System integration testing verifies that individual system components or modules work together
as intended to achieve specific functionalities.

It focuses on testing interfaces, data exchanges, and interactions between different system
components to ensure seamless integration and interoperability.

By conducting various types of system testing, organizations can identify and address defects,
validate system functionality, and ensure the overall quality and reliability of the software
system before it is deployed to users.
14. What are different methodologies of system design ? What do you understand by module
cohesion and coupling?

Waterfall Model: This is a linear sequential approach where progress is seen as flowing steadily
downwards (like a waterfall) through several phases such as requirements, design, implementation,
testing, deployment, and maintenance.

Prototyping: Prototyping involves creating an initial version of the system quickly, which can be used to
gather feedback from stakeholders and refine requirements before the full system is developed.

You might also like