Geschreven door studenten die geslaagd zijn Direct beschikbaar na je betaling Online lezen of als PDF Verkeerd document? Gratis ruilen 4,6 TrustPilot
logo-home
Samenvatting

Summary Computer science: an overview - J. Glenn Brookshear

Beoordeling
2.0
(1)
Verkocht
4
Pagina's
17
Geüpload op
17-01-2015
Geschreven in
2014/2015

Een complete samenvatting van het boek van de hoofdstukken benodigd voor het vak Intelligente Data-analyse

Instelling
Vak

Voorbeeld van de inhoud

Computer science: an overview
Hoofdstuk 7: software engineering
Software engineering is the branch of computer science that seeks principles to
guide the development of large, complex software systems.
7.1 The software engineering principle
Een verschil tussen software engineering en engineering is dat engineering kant-
en-klare stukken heeft, zoals een automotor. Software engineering heeft dit op
het begin niet gehad, alles werd vanaf het begin gemaakt. Het tweede verschil is
dat engineering gebruik kan maken van kwantitatieve meettechnieken, software
engineering niet.
Practitioners work toward developing techniques for immediate application and
theoreticians search for underlying principles and theories on which more stable
techniques can someday be constructed.
Computer-aided software engineering (CASE) is the application of computer
technology to the software development process. CASE tools are computerized
systems.
Integrated development environments (IDEs) combine tools for developing
software.
7.2 The software Life cycle
The different phases:
1. Requirements Analysis:
- The goal is to specify what services the proposed system will provide, to
identify any conditions on those services and to define how the outside
world will interact with the system.
- Involves significant input from the stakeholders.
- COTS = commercial off-the-shelf
- In the software requirements specification are the requirements recorded
2. Design:
- Involves creating a plan for the construction of the proposed system.
3. Implementation:
- Involves the actual writing of programs, creation of data fields, and
development of databases.
- A software analyst is involved with the entire development process and a
programmer is primarily involved with the implementation step.
4. Testing
7.3 Software engineering Methodologies
- The waterfall model:
The different phases requirements, analysis, design, implementation and
testing are performed in a strictly sequential manner
- The incremental model:
The desired software system is constructed in increments, the first being a
simplified version of the final product. After this is tested, more features
are added.
- The iterative model:
Hetzelfde als het incrementele model, maar dan wordt in het begin het
gehele ontwerp al gemaakt en telkens geperfectioneerd.

1

, Een voorbeeld is the rational unified process (RUP), which is a software
development paradigm that redefines steps in de development phase of
the software life cycle and provides guidelines for performing those steps.
Dit is later niet-commercieel gemaakt onder de naam unified process.
- Prototyping
Incomplete versions of the proposed system are built and evaluated.
Evolutionary prototyping is gebaseerd op het incrementele model en
throwaway prototyping is gebaseerd op het iteratieve model.
- Open source development
A single author writes an initial version of the software and posts the
source code and its documentation on the internet. From there it can be
downloaded and used by others without charge. Because these other users
have the source code and documentation, they are able to modify or
enhance the software.
- Agile methods
which proposes early and quick implementation on an incremental basis,
responsiveness to changing requirements and a reduced emphasis on
rigorous requirements analysis and design.
An example is extreme programming (XP), in which software is developed
by a team of less than a dozen individuals working in a communal work
space where they freely share ideas and assist each other in the
development project.
7.4 Modularity
Modularity is the division of software in manageable units, called modules.
In de imperatieve paradigm worden zijn de modules procedures, in de object-
georienteerde paradigm zijn de modules objecten.
A structure chart identifies the procedures and indicates the dependencies
among the procedures.
A class is a template that defines the procedures (called methods) and attributes
(called instance variables)
Coupling is the linkage between modules. Control coupling occurs when a module
passes control of execution to another, as in a procedure call. Data coupling is
sharing of data between modules. Data can be explicitly passed as parameters or
data can be shared among modules implicitly in the form of global data, which
are data items that are automatically available to all modules throughout the
system.
Cohesion refers to the degree of relatedness of a module’s internal parts. Logical
cohesion is induced within a module by the fact that its internal elements
perform activities logically similar to nature. Functional cohesion is stronger and
means that all the parts of the module are focused on the performance of a
single activity.
Information hiding refers to the restriction of information to a specific portion of a
software system.
A component is a reusable component of the software. In component
archtitecture the traditional role of the programmer is replaced by a component
assembler.
7.5 Tools of the trade
There are different tools for identifying procedures, such as a data-flow diagram
or a data dictionary.
Unified modeling language is a collection of tools, such as the use case diagram,

2

, in which interactions are use cases and uses of the system are actors.
The class diagram is a national system for representing the structure of classes
and relationships between classes (called associations)
Interaction diagrams is a sort of UML to express dynamic features. One type is a
sequence diagram.
A CRC (class-responsibility-collaboration) card is a card on which the description
of the object is written, they are used for simulations (structured walkthroughs).
A design pattern is predeveloped model for solving a recurring problem in
software design.
7.6 Quality assurance
Softwate quality assurance (SQA) groups are charged with overseeing and
enforcing the quality control systems adopted by the organization. Some quality
oriented themes are documentation and previews.
Pareto principle: most errors are clustered.
Basis path testing: developing a set of test data that insures that each instruction
is executed at least once.
Glass-box testing: the software tester is aware of the interior structure of the
software and uses this knowledge when designing the test. (bv. Pareto principle
and basis path testing)
Boundary value analysis consists of identifying ranges of data, called equivalence
classes, over which the software should perform in a similar manner and then
testing the software on data close to the edge of those ranges.
Beta testing is giving a preliminarily version of the software to a segment of the
audience with the goal of learning how the software performs in real life
situations. (called alpha testing if the developers test it)
7.7 Documentation
There are three categories of documentation:
- User documentation: is to explain the features of the software and is therefore
expressed in the terminology of the application.
- System documentation: is to describe the software’s internal composition so
that the software can be maintained later in the life cycle.
- Technical documentation: is to describe how a software system should be
installed and serviced.
7.8 The human-machine interface
Ergonomics deals with designing systems that harmonize with the physical
abilities of humans, cognetics with the mental abilities of humans.
The GOMS model, is representative of the search for metrics in the field of
human-machine interface design. The model’s underlying methodology is to
analyze tasks in terms of user goals, operators, methods and selection rules.
7.9 Software ownership and liability
Legal efforts to provide ownership fall under the category of intellectual property
law, much of which is based on the well-established principles of copyright and
patent law. The rights of the developer are formally expressed in legal terms in a
software license. A software license is a legal agreement between the owner and
user of a software product that grans the user certain permissions to use the
product without transferring ownership rights to the intellectual property. To
protect themselves against liability, software developers often include disclaimers
in the software licenses that state the limitations of their liability.
Hoofdstuk 9: Database systems
A database is a system that converts a large collection of data into an abstract

3

Geschreven voor

Instelling
Studie
Vak

Documentinformatie

Geüpload op
17 januari 2015
Aantal pagina's
17
Geschreven in
2014/2015
Type
SAMENVATTING

Onderwerpen

$5.98
Krijg toegang tot het volledige document:

Verkeerd document? Gratis ruilen Binnen 14 dagen na aankoop en voor het downloaden kun je een ander document kiezen. Je kunt het bedrag gewoon opnieuw besteden.
Geschreven door studenten die geslaagd zijn
Direct beschikbaar na je betaling
Online lezen of als PDF

Beoordelingen van geverifieerde kopers

Alle reviews worden weergegeven
8 jaar geleden

2.0

1 beoordelingen

5
0
4
0
3
0
2
1
1
0
Betrouwbare reviews op Stuvia

Alle beoordelingen zijn geschreven door echte Stuvia-gebruikers na geverifieerde aankopen.

Maak kennis met de verkoper

Seller avatar
De reputatie van een verkoper is gebaseerd op het aantal documenten dat iemand tegen betaling verkocht heeft en de beoordelingen die voor die items ontvangen zijn. Er zijn drie niveau’s te onderscheiden: brons, zilver en goud. Hoe beter de reputatie, hoe meer de kwaliteit van zijn of haar werk te vertrouwen is.
VeroniekVeer Technische Universiteit Delft
Volgen Je moet ingelogd zijn om studenten of vakken te kunnen volgen
Verkocht
67
Lid sinds
12 jaar
Aantal volgers
52
Documenten
7
Laatst verkocht
3 jaar geleden

3.0

6 beoordelingen

5
0
4
1
3
4
2
1
1
0

Recent door jou bekeken

Waarom studenten kiezen voor Stuvia

Gemaakt door medestudenten, geverifieerd door reviews

Kwaliteit die je kunt vertrouwen: geschreven door studenten die slaagden en beoordeeld door anderen die dit document gebruikten.

Niet tevreden? Kies een ander document

Geen zorgen! Je kunt voor hetzelfde geld direct een ander document kiezen dat beter past bij wat je zoekt.

Betaal zoals je wilt, start meteen met leren

Geen abonnement, geen verplichtingen. Betaal zoals je gewend bent via iDeal of creditcard en download je PDF-document meteen.

Student with book image

“Gekocht, gedownload en geslaagd. Zo makkelijk kan het dus zijn.”

Alisha Student

Bezig met je bronvermelding?

Maak nauwkeurige citaten in APA, MLA en Harvard met onze gratis bronnengenerator.

Bezig met je bronvermelding?

Veelgestelde vragen