0% found this document useful (0 votes)
38 views4 pages

Revision

Uploaded by

muscabahmet68
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
38 views4 pages

Revision

Uploaded by

muscabahmet68
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 4

Software engineering

Chapter 1
1. Software: Computer programs and associated documentation.
2. Program: is an executable code, which serves some computational purpose.
3. software product: Software, when made for a specific requirement
4. Engineering: is all about developing products, using well-defined, scientific principles and
methods.
5. Software products: updates, requirements, testing, system design, code design, deployment,
maintenance.
6. software crisis: the difficulty of writing useful and efficient computer programs in the required
time.
7. Software Engineering: is an engineering discipline that is concerned with all aspects of
software production.
8. Software costs often dominate system costs.
9. Software consists: program, data, documentation.
10. Documentation types: system documentation and user documentation.
11. Types of software:
a) Generic products: Stand-alone systems that are marketed and sold to any customer who
wishes to buy them.
b) Customized products: Software that is commissioned by a specific customer to meet their
own needs.
12. Difference between Computer Science and Software Engineering
a) Computer Science: Theory, Fundamentals.
b) Software Engineering: Practicalities of software design, development and delivery.
13. Difference between Systems Engineering and Software Engineering:
a) Systems Engineering: All aspects of computer-based systems development HW + SW +
Process and its Older than SWE.
b) Software Engineering: Deals with the design, development and delivery of SW and it Is part
of Systems Engineering.
14. Attributes of good software: Good software should deliver the required functionality and
performance to the user and should be maintainable, dependable and usable.
15. Fundamental software engineering activities: Software specification, software development,
software validation and software evolution.
16. Challenges facing software engineering: Coping with increasing diversity, demands for reduced
delivery times and developing trustworthy software.
17. What differences has the web made to software engineering:
a) The web has led to the availability of software services and the possibility of developing
highly distributed service-based systems.
b) Web-based systems development has led to important advances in programming languages
and software reuse.
18. Software Paradigms: steps to design and develop software.
19. Software Paradigms types:
a) Software Development Paradigms: software engineering paradigms where all the
engineering concepts pertaining to the development of software are applied and it includes
requirement gathering, software design and programming.
b) Software Design Paradigm: This paradigm is a part of Software Development and includes
Design, Maintenance, Programming.
Software engineering

c) Programming Paradigm: This paradigm is related closely to programming aspect of


software development. This includes Coding, Testing and Integration.
20. Characteristics of Good Software:
a) Operational: tells us how well software works in operations. It can be measured on:
Efficiency, Dependability, Security, Safety and Correctness
b) Transitional: This aspect is important when the software is moved from one platform to
another: Portability, Interoperability, Reusability, Adaptability.
c) Maintenance: This aspect briefs about how well a software has the capabilities to maintain
itself in the ever- changing environment: Modularity, Maintainability, Flexibility, Scalability.
21. Software Development Life Cycles (SDLC): is a well-defined, structured sequence of stages in
software engineering to develop the intended software product.
22. Steps of SDLC:
a) Communication: This is the first step where the user initiates the request for a desired
software product.
b) requirement gathering: This step onwards the software development team works to carry
on the project.
• The requirements are collected using a number of practices as given:
• Conducting interviews of users and developers,
• Referring to the database or
• Collecting answers from the questionnaires.
c) Feasibility Study: At this step the team analyzes if a software can be made to fulfill all
requirements of the user and if there is any possibility of software being no more useful.
d) System Analysis: At this step the developers decide a roadmap of their plan and try to bring
up the best software model suitable for the project.
e) Software Design: Next step is to bring down whole knowledge of requirements and analysis
on the desk and design the software product and the output of this step comes in the form of
two designs; logical design and physical design.
f) Coding: This step is also known as programming phase.
g) Testing
h) Integration
i) Implementation: This means installing the software on user machines.
j) Operation and Maintenance: This phase confirms the software operation in terms of more
efficiency and less errors.
k) Disposition: This phase includes archiving data and required software components, closing
down the system.
23. Waterfall Model: It says the all the phases of SDLC will function one after another in linear
manner……. Requirement gathering, system analysis, coding, testing, implementation,
operation and maintenance.
24. Engineering Process Model:
a) Specification: Set out the requirements and constraints on the system.
b) Design: Produce a model of the system.
c) Manufacture: Build the system.
d) Test: Check the system meets the required specifications.
e) Install: Deliver the system to the customer and ensure it is operational.
f) Maintain: Repair faults in the system as they are discovered.
25. Professional Responsibility issues:
a) Development of military systems
Software engineering

b) Whistle blowing
26. Ethical Issues:
a) Confidentiality
b) Competence
c) Intellectual property rights
d) Computer misuse

Chapter 2
1. Software Requirement: are description of features and functionalities of the target system.
2. Requirement Engineering: The process to gathering, analyzing and documenting requirement
engineering
3. Requirement Engineering process:
a) Feasibility study
b) Requirement gathering
c) Software requirement specification
d) Software requirement validation
4. Requirement Elicitation Process
a) Requirements gathering
b) Organizing Requirements
c) Negotiation & discussion
d) Documentation
5. Requirement Elicitation Techniques
a) Interviews
 Structured
 Non-structured
 Oral
 One-to-one
 Group
b) Surveys
c) Questionnaires
d) Task analysis
e) Domain Analysis
f) Brainstorming
g) Prototyping
h) Observation
6. Software Requirements
a) Functional Requirements: functional aspects of software
b) Non-Functional Requirements: to install software that you need and it include security,
logging, storage, performance and flexibility.
7. User Interface requirements: UI is an important part of any software or hardware or hybrid
system.
8. User interface requirements are briefly mentioned in: Content presentation, Easy Navigation,
Simple interface, Responsive.
Software engineering

Chapter 3
1. Software design: is a process to transform user requirements into some suitable form.
2. Software Design Levels
a) Architectural Design - is the highest abstract version of the system.
b) high-level Design- breaks the single entity, multiple components into entity showing.
c) Detailed Design- multiple entity showed or every detail.
3. Modularization: is a technique to divide a software system into multiple discrete and
independent modules
4. Advantage of modularization:
a) Smaller components are easier to maintain
b) Concurrent execution can be made possible
c) Desired from security aspect
5. Concurrency: do multiple job at a same time.
6. Cohesion: group of modules that are depend each other/ intradependability.
7. Types of cohesion:
a) Co-incidental cohesion – unplanned and random.
b) Logical cohesion – group of modules which perform same task.
c) Temporal Cohesion - group of module are organized such that they are processed at a similar
point in time.
d) Procedural cohesion – modules are executed sequentially.
e) Communicational cohesion - When elements of module are grouped together, which are
executed sequentially and work on same data .
f) Sequential cohesion - group of modules which output of one element serves as input to
another.
g) Functional cohesion: - group of multiple modules that perform single well defined function.
8. Coupling: is a measure that defines the level of inter-dependability among modules of a program.
9. Levels of coupling:
a) Content coupling - When a module can directly access or modify or refer to the content of
another module.
b) Common coupling- When multiple modules have read and write access to some global data,
c) Control coupling- Two modules are called control-coupled.
d) Stamp coupling- When multiple modules share common data structure and work on different
part of it.
e) Data coupling- Data coupling is when two modules interact with each other by means of
passing data (as parameter).

END

You might also like