Course File

advertisement

DERS TANITIM BİLGİLERİ (İNGİLİZCE)

Course Information

Course

Name

Cod e

Semeste r

Theory

(hours/week

)

Application

(hours/week

)

Laboratuary

(hours/week

)

Nationa l Credit

ECT

S

Software

Construction

Prequisites

Course

Language

Course

Type

Mode of

Delivery

(face to face, distance learning)

Learning and

Teaching

Strategies

SE

460

2 3

SE332

English

Technical Elective

Face to Face

Lecture

3 5

Instructor(s

)

Course

Objective

Learning

Outcomes

Course

Content

The objective of this course is to cover the software construction referring the detailed creation of working, meaningful software through a combination of coding, verification, unit testing, integration testing, and debugging.

Manage and assess complexity in software construction

Use specific techniques to anticipate change in software construction

Explain techniques for support constructing for verification

Explain essentials of standards in software construction

Explain construction models and their differences

Plan software construction

Collect measurements during software construction

Use construction languages

Manage software construction coding

Administer software construction tests

Reuse already existing codes and libraries

Explain the issues to ensure the quality of software construction

Software construction fundamentals. Software complexity. Construction management. Construction models. Construction planning. Software measurement.

Construction Languages. Coding. Construction Testing. Reuse. Verification and standards in construction. Construction quality. Integration

References Course Book

1. Week

2. Week

3. Week

4. Week

5. Week

6. Week

7. Week

8. Week

9. Week

10. Week

11. Week

12. Week

13. Week

14. Week

15. Week

16. Week

Extreme Programming Explained: Embrace Change, K. Beck, Addison-Wesley,

1999, Chap. 10, 12, 15, 16-18, 21.

Other Sources

Sommerville, Software Engineering, seventh ed., Addison-Wesley, 2005.

J. Bentley, Programming Pearls, second ed., Addison-Wesley, 2000, Chap. 2-

4, 6-11, 13, 14, pp. 175-176.

Hunt and D. Thomas, The Pragmatic Programmer, Addison-Wesley, 2000,

Chap. 7, 8 12, 14-21, 23, 33, 34, 36-40, 42, 43.

IEEE Std 1517-1999, IEEE Standard for Information Technology-Software Life

Cycle Processes- Reuse Processes, IEEE, 1999.

IEEE/EIA 12207.0-1996//ISO/IEC12207:1995, Industry Implementation of Int.

Std. ISO/IEC 12207:95, Standard for Information Technology- Software Life

Cycle Processes, IEEE, 1996.

B.W. Kernighan and R. Pike, The Practice of Programming, Addison-Wesley,

1999, Chap. 2, 3, 5, 6, 9.

S. Maguire, Writing Solid Code: Microsoft’s Techniques for Developing Bug-

Free C Software, Microsoft Press, 1993, Chap. 2-7.

S. McConnell, Code Complete: A Practical Handbook of Software

Construction, Microsoft Press, second ed., 2004.

A Software Engineering Body of Knowledge, Thomas B. Hilburn, Iraj

Hirmanpour, Soheil Khajenoori, Richard Turner, Abir Quasem; Latest Edition.,

2004

Object-Oriented Software Construction (Book/CD-ROM), 2nd Edition, By

Bertrand Meyer, Published by Prentice Hall PTR, 2000

An Introduction to Programming and Object Oriented Design Using Java, by

Jaime Niño, Frederick A. Hosch, J. Nino, F. Hosch, 2003

Weekly Course Outline

Weeks Topics

Minimizing Complexity

Anticipating Change

Construction for Verification

Standards in Construction

Construction Models

Construction Management

Construction Planning

Construction Measurement

Construction Design

Construction Languages

Coding

Construction Testing

Reuse

Construction Quality

Integration

Final Exam

Pre-study

Chapter 1, 2,3, other sources 9

Chapter 1, 2,3, other sources 9

Chapter 1, 2,3, other sources 9 other sources 1 other sources 1

Chapter 12

Chapter 15

Other sources 9

Chapter 17

Chapter 16

Chapter 16

Chapter 18 other sources 9 other sources 9 other sources 9

Assesment Methods

Course Activities

Attendance

Laboratory

Application

In-class Activity

Specific Practical Training (if any)

Assignments

Presentation

Projects

Seminars

Midterms

Final Exam

Total

Percentage of semester activities contributing grade success

Percentage of final exam contributing grade success

Total

Number

3

2

1

Workload and ECTS Calculation

Activities

Course Duration (x14)

Laboratory

Application

Specific practical training (if any)

Field Activities

Study Hours Out of Class (Preliminary work, reinforcement, ect)

Presentation / Seminar Preparation

Projects

Homework assignment

Midterms ( Study duration )

Final ( Study duration )

Total Workload

Number Duration

(Hours)

16 3

16

3

2

1

3

7

10

15

Percentage %

48

48

21

10

15

152

15

5

40

40

100

60

40

100

Total Work Load

Matrix of the Course Learning Outcomes Versus Program Outcomes

Program Outcomes Contribution Level*

1 2 3 4 5

X 1 An ability to apply knowledge of computing, sciences and

mathematics to solve software engineering problems.

2 An ability to analyze and model a domain specific problem, identify and define the appropriate software requirements for its

solution.

3 An ability to design, implement and evaluate a software system,

component, process or program to meet specified requirements.

4 An ability to use the modern techniques and engineering tools

necessary for software engineering practices.

5 An ability to gather/acquire, analyze and interpret data to

understand software requirements.

6 The ability to demonstrate the necessary organizational and business skills to work effectively in inter/inner disciplinary

teams or individually.

7 An ability to communicate effectively in Turkish and English.

8 Recognition of the need for, and the ability to access information, to follow recent developments in science and

technology and to engage in life-long learning.

9 An understanding of professional, legal, ethical and social issues

and responsibilities.

10 Skills in project and risk management, awareness about importance of entrepreneurship, innovation and long-term development, and recognition of international standards and

methodologies.

11 An understanding about the impact of software engineering

solutions in a global societal and legal context.

12 An ability to apply algorithmic principles, mathematical foundations, and computer science theory in the modeling and design of computer-based systems with the tradeoffs involved in

design choices.

13 The ability to apply engineering approach to the development of software systems by analyzing, designing, implementing,

verifying, validating and maintaining software systems.

1: Lowest, 2: Low, 3: Average, 4: High, 5: Highest

X

X

X

X

X

X

Download