ABHELSINKI UNIVERSITY OF TECHN

Samankaltaiset tiedostot
ABHELSINKI UNIVERSITY OF TECHN

ABHELSINKI UNIVERSITY OF TECHN

ABHELSINKI UNIVERSITY OF TECHN

7.4 Variability management

Efficiency change over time

Ohjelmistoarkkitehtuurit Kevät 2016 Johdantoa

Capacity Utilization

7. Product-line architectures

1.3Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä

National Building Code of Finland, Part D1, Building Water Supply and Sewerage Systems, Regulations and guidelines 2007

1.3 Lohkorakenne muodostetaan käyttämällä a) puolipistettä b) aaltosulkeita c) BEGIN ja END lausekkeita d) sisennystä

812336A C++ -kielen perusteet,

toukokuu 2011: Lukion kokeiden kehittämistyöryhmien suunnittelukokous

Arkkitehtuuritietoisku. eli mitä aina olet halunnut tietää arkkitehtuureista, muttet ole uskaltanut kysyä

Other approaches to restrict multipliers

Results on the new polydrug use questions in the Finnish TDI data

Kysymys 5 Compared to the workload, the number of credits awarded was (1 credits equals 27 working hours): (4)

Tarua vai totta: sähkön vähittäismarkkina ei toimi? Satu Viljainen Professori, sähkömarkkinat

Network to Get Work. Tehtäviä opiskelijoille Assignments for students.

TIEKE Verkottaja Service Tools for electronic data interchange utilizers. Heikki Laaksamo

Salasanan vaihto uuteen / How to change password

Alternative DEA Models

VAASAN YLIOPISTO Humanististen tieteiden kandidaatin tutkinto / Filosofian maisterin tutkinto

16. Allocation Models

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

Voice Over LTE (VoLTE) By Miikka Poikselkä;Harri Holma;Jukka Hongisto

On instrument costs in decentralized macroeconomic decision making (Helsingin Kauppakorkeakoulun julkaisuja ; D-31)

4x4cup Rastikuvien tulkinta

Enterprise Architecture TJTSE Yrityksen kokonaisarkkitehtuuri

Teknologia-arkkitehtuurit. Valinta ja mallinnus

Telecommunication Software

Paikkatiedon semanttinen mallinnus, integrointi ja julkaiseminen Case Suomalainen ajallinen paikkaontologia SAPO

Information on preparing Presentation

Rakentamisen 3D-mallit hyötykäyttöön

The CCR Model and Production Correspondence

FinFamily PostgreSQL installation ( ) FinFamily PostgreSQL

Security server v6 installation requirements

Arkeologian valintakoe 2015

S SÄHKÖTEKNIIKKA JA ELEKTRONIIKKA

Collaborative & Co-Creative Design in the Semogen -projects

ECVETin soveltuvuus suomalaisiin tutkinnon perusteisiin. Case:Yrittäjyyskurssi matkailualan opiskelijoille englantilaisen opettajan toteuttamana

Security server v6 installation requirements

HITSAUKSEN TUOTTAVUUSRATKAISUT

LUONNOS RT EN AGREEMENT ON BUILDING WORKS 1 THE PARTIES. May (10)

Uusi Ajatus Löytyy Luonnosta 4 (käsikirja) (Finnish Edition)

Uusia kokeellisia töitä opiskelijoiden tutkimustaitojen kehittämiseen

TietoEnator Pilot. Ari Hirvonen. TietoEnator Oyj. Senior Consultant, Ph. D. (Economics) presentation TietoEnator 2003 Page 1

Sisällysluettelo Table of contents

RINNAKKAINEN OHJELMOINTI A,

Choose Finland-Helsinki Valitse Finland-Helsinki

1 Introduction. TTY Ohjelmistotekniikka. Ohjelmistoarkkitehtuurit Syksy 2006

C++11 seminaari, kevät Johannes Koskinen

Software Signing System System overview and key domain concepts

Prosessien kehittäminen. Prosessien parantaminen. Eri mallien vertailua. Useita eri malleja. Mitä kehitetään?

Skene. Games Refueled. Muokkaa perustyyl. for Health, Kuopio

1. SIT. The handler and dog stop with the dog sitting at heel. When the dog is sitting, the handler cues the dog to heel forward.

Hankkeiden vaikuttavuus: Työkaluja hankesuunnittelun tueksi

Software engineering

Information on Finnish Language Courses Spring Semester 2017 Jenni Laine

Lab SBS3.FARM_Hyper-V - Navigating a SharePoint site

Tietorakenteet ja algoritmit

Capacity utilization

NAO- ja ENO-osaamisohjelmien loppuunsaattaminen ajatuksia ja visioita

The Viking Battle - Part Version: Finnish

TIETEEN PÄIVÄT OULUSSA

Expression of interest

MUSEOT KULTTUURIPALVELUINA

Constructive Alignment in Specialisation Studies in Industrial Pharmacy in Finland

Information on Finnish Courses Autumn Semester 2017 Jenni Laine & Päivi Paukku Centre for Language and Communication Studies

T Software Architecture

Vaatimusmäärittely- ja hallinta. Peruskäsitteet. Syyt aikataulun ja budjetin ylitykseen. TJTA330 Ohjelmistotuotanto

Immigration Studying. Studying - University. Stating that you want to enroll. Stating that you want to apply for a course.

RAIN RAKENTAMISEN INTEGRAATIOKYVYKKYYS

Prosessiajattelu. Prosessikuvaukset ja elinkaarimallit. Organisaation prosessikuvaus - CMMI. Sami Kollanus TJTA330 Ohjelmistotuotanto 3.4.

Helsinki Metropolitan Area Council

Vaatimusmäärittely- ja hallinta

2 Description of Software Architectures

Returns to Scale II. S ysteemianalyysin. Laboratorio. Esitelmä 8 Timo Salminen. Teknillinen korkeakoulu

Information on Finnish Language Courses Spring Semester 2018 Päivi Paukku & Jenni Laine Centre for Language and Communication Studies

HMG-CoA Reductase Inhibitors and safety the risk of new onset diabetes/impaired glucose metabolism

3 9-VUOTIAIDEN LASTEN SUORIUTUMINEN BOSTONIN NIMENTÄTESTISTÄ

Automaatiojärjestelmän hankinnassa huomioitavat tietoturva-asiat

Exercise 1. (session: )

Jussi Klemola 3D- KEITTIÖSUUNNITTELUOHJELMAN KÄYTTÖÖNOTTO

4x4cup Rastikuvien tulkinta. 4x4cup Control point picture guidelines

Gap-filling methods for CH 4 data

TAMPEREEN TEKNILLINEN YLIOPISTO Teollisuustalous

Travel General. General - Essentials. General - Conversation. Asking for help. Asking if a person speaks English

Tork Paperipyyhe. etu. tuotteen ominaisuudet. kuvaus. Väri: Valkoinen Malli: Vetopyyhe

OFFICE 365 OPISKELIJOILLE

Green Growth Sessio - Millaisilla kansainvälistymismalleilla kasvumarkkinoille?

OP1. PreDP StudyPlan

Tynnyrivaara, OX2 Tuulivoimahanke. ( Layout 9 x N131 x HH145. Rakennukset Asuinrakennus Lomarakennus 9 x N131 x HH145 Varjostus 1 h/a 8 h/a 20 h/a

Metsälamminkankaan tuulivoimapuiston osayleiskaava

Globaalisti Hajautettu Ohjelmistokehitys Mitä, Miksi & Miten? Maria Paasivaara

BDD (behavior-driven development) suunnittelumenetelmän käyttö open source projektissa, case: SpecFlow/.NET.

KOMPETENSSIT. Koulutus Opiskelija Tuuttori. Business Information Technologies. NQF, Taso 6 - edellyttävä osaaminen

Missä mennään BI? Mikko Kontio

CASE POSTI: KEHITYKSEN KÄRJESSÄ TALOUDEN SUUNNITTELUSSA KETTERÄSTI PALA KERRALLAAN

Use of spatial data in the new production environment and in a data warehouse

Transkriptio:

Software Business and Engineering Institute Casper Lassenius ABHELSINKI UNIVERSITY OF TECHN Software Business and 1(7) Engineering Insti Casper Lassenius, Introduction to Software Engineering Mid-term Exam 1, Take 2, Instructions: Write your name, student number, degree program and signature in the reserved space below Write your name and student number at the bottom of each sheet Answer the questions in the spaces provided on the question sheets. If you run out of room for an answer, continue on the back of the page. You can answer in English, Finnish or Swedish. Ohjeita: Kirjoita nimesi, opiskelijanumerosi, koulutusohjelmasi sekä allekirjoituksesi alla olevaan tilaan Kirjoita nimesi ja opiskelijanumerosi jokaisen paperin alareunaan Vastaa kysymyksiin koepaperissa varattuun tilaan. Jos tarvitset lisätilaa, kirjoita paperin takapuolelle. Voit vastata englanniksi, suomeksi tai ruotsiksi. Instruktioner: Skriv ditt namn, studentnummer, utbildningsprogram samt underskrift i det reserverade utrymmet nedan Skriv ditt namn och studentnummer nere på varje ark Besvara frågorna i utrymmet på provpappren. Om du behöver mera utrymme kan du skriva på arkets baksida. Du kan svara på engelska, svenska eller finska. Question: 1 2 3 4 Total Points: 6 10 7 7 30 Score: Degree program/koulutusohjelma/utbildningsprogram: Signature/Allekirjoitus/Underskrift: 1. Define the following terms. Määrittele seuraavat termit. Definiera följande termer. (a) Software Engineering. Ohjelmistotuotanto. Programvaruproduktion. Solution: One of the following: The establishment and use of sound engineering principles in order to obtain economically software that is reliable and works efficiently on real machines. IEEE:

2(7) 1. The application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software, that is, the application of engineering to software 2. The study of approaches in (1) (b) COCOMO. Solution: An algorithmic estimation model. (COnstructive COst MOdel) (c) Baseline (software configuration management term). Vaihetaso. (ohjelmistojen konfiguraatiohallinnan termi). Baseline (programvarukonfigurationskontrollsterm). Solution: IEEE: A specification or product that has been formally reviewed and agreed upon, that thereafter serves as the basis for further development, and that can be changed only through formal change control procedures. (d) Black-box testing. Mustalaatikkotestaus. Svartlådetestning. Solution: A testing tactic based upon testing the functional requirements of the software and performed without seeing the code the code is in a black-box (e) Software architecture. Ohjelmistoarkkitehtuuri. Programarkitektur. Solution: Bass, Clements, Kazman:...the structure or structures of the system, which comprise software components, the externally visible properties of those components, and the relationships among them. (f) Design class. Sunnitteluluokka. Planerings (design) klass. Solution: An object in the set of classes that refine and add to the analysis classes by providing design detail (such as data structures, methods) that enable the classes to be implemented.

3(7) 2. Are the following statements true or false? Put an X in the box marked for true statements, or in the box marked for false ones. If you don t know, leave the row empty. You will get +1 p for a correct answer, 0p for an empty answer, and -1 p for an incorrect answer. The maximum score for this question is 10, and the minimum 0, i.e., you will not get a negative score even if you have more incorrect than correct answers. Ovatko seuraavat väittämät oikeita vai vääriä? Rastita laatikko oikean väittämän tai laatikko väärän väittämän kohdalla. Jos et tiedä, jätä vastaamatta. Oikeasta vastauksesta saat +1 p, tyhjästä 0p ja väärästä -1 p. Tehtävän maksimipistemäärä on 10 ja minimi 0, eli et saa negatiivista pistemäärää vaikka sinulla olisi enemmän vääriä kuin oikeita vastauksia. Är följande påståenden sanna eller falska? Kryssa rutan efter de som är sanna eller rutan efter de påståenden som är falska. Om du inte vet, lämna tomt. Du får +1 p för korrekt svar, -1 p för fel svar, och 0p för tom lucka. Maximipoängen för denna uppgift är 10, och minimi 0. Du kan alltså inte få negativa poäng fastän du skulle ha flera inkorrekta än korrekta svar. (a) A central theme in the spiral model is risk management. Spiraalimallin keskeinen teema on riskien hallinta. Riskhantering är ett centralt tema i spiralmodellen. Solution: (b) Software configuration management is solely concerned with the management of different versions of software development artifacts. Ohjelmistokonfiguraationhallinta keskittyy pelkästään eri ohjelmistoartefaktien versioiden hallintaan. Programvarukonfigurationskontroll innebär endast hantering av olika versioner av programvaruartifakter. Solution: (c) The term software as used in the field of software engineering refers only to the machine readable code produced by, e.g., a compiler. Termi ohjelmisto ohjelmistotuotannossa viittaa ainoastaan esim. kääntäjän tuottamaan koneluettavaan koodiin. Termen software inom programvaruproduktion refererar endast till den maskinläsbara koden som produceras t.ex. av en kompilator. Solution:

4(7) (d) A good modularization has low cohesion and high coupling. Hyvässä moduulijaossa on matala koheesio ja korkea modulien välisten kytkösten taso. En god modularisering har låg kohesion och hög koppling. Solution: (e) Software project planning should be done only at the outset of the project, not later. Ohjelmistoprojektin suunnittelu on aktiviteetti, joka suoritetaan ainoastaan projektin alussa. Projektplanering bör göras endast i början av projektet. Solution: (f) Using an agile development methodology makes it easy to react to requirement changes late in the project. Ketterän ohjelmistokehitysmallin käytöllä voidaan helposti reagoida vaatimusmuutoksiin, jotka tulevat projektin myöhäisessä vaiheessa. Genom att använda en vig (agil) programvaruutvecklingsmodell kan man göra det lätt att reagera på kravförändringar som kommer in i ett sent skede av projektet. Solution: (g) Beta testing involves a large number of end-users. Ohjelmiston beetatestaukseen osallistuu suuri määrä loppukäyttäjiä. Betatestning involverar ett stort antal slutanvändare. Solution: (h) TSP is a process improvement methodology targeting individual software engineers. TSP on yksittäisiin ohjelmistoinsinööreihin keskittyvä prosessinparannusmenetelmä. TSP är en processförbättringsmetod som koncentrerar sig på den enskilda programingenjören. Solution:

5(7) (i) extreme Programming (XP) is an agile software development methodology especially suitable for well-defined and large projects. extreme Programming (XP) on ketterä ohjelmistokehitysmenetelmä, joka erityisen hyvin soveltuu hyvin määriteltyjen, isojen ohjelmistoprojektien käyttöön. extreme Programming (XP) är en vig (agile) programvaruutvecklingsmetod som speciellt väl passar för väldefinierade och stora utvecklingsprojekt. Solution: (j) Function points is a function-oriented metric which is independent of the programming language being used. Toimintopiste on ohjelmiston toimintoihin liittyvä mittari joka on riippumaton käytössä olevasta ohjelmointikielestä. Funktionspoäng (function points) är mätare av ett programs funktionalitet som är oberoende av använt programmeringsspråk. Solution:

6(7) 3. Explain the figure below in detail. (What are the dimensions on the axes? What does the figure tell us?) Selitä alla oleva kuva yksityiskohtaisesti. (Mitkä ovat kuvaajan ulottuvuudet? Mitä kuva kertoo meille?) Förklara bilden nedan i detalj. (Vilka är diagrammets dimensioner? Vad kan vi lära oss av bilden?) (7p) Solution: The figure shows dimensions and elements of a design model. The dimensions are: The abstraction dimension (y-axis), low to high, shows the level of detail as the analysis model is transformed into the design model The process dimension (x-axis) showing the main elements of the model, indicating the evolution of the design model as design tasks are executed. It contains: architecture elements: depicts the overall layout of the system interface elements: describes the interfaces between the system and the outside world, as well as between internal system elements (three parts: UI, external interfaces, internal interfaces). component-level elements: detailed descriptions of each system element deployment-level elements: how software functionality and subsystems are to be allocated within the physical computing environment that supports the software. the dashed line indicates the boundary between design and analysis models; in some cases it is clear-cut, in others not

7(7) 4. Agile Software Development. Ketterä ohjelmistokehitys. Agil (vig) programvaruutveckling. (7p) Solution: Scoring: Definition and characteristics 3p (philosophy + guidelines; iterative&incremental, customer communication, frequent deliveries etc.) Motivation 1p (reaction to bureaucratic approaches) Set of methodologis; Example models mentioned 1p Applicability 1p (small teams, non-critical software, experienced developers,...) Benefits / Drawbacks 1p