Software engineering
  
Code:
 INEA00004
 Supervisor:Jan Nikodem, PhD
  Didactis team: Marek Woda, PhD

 

 

Workload
(Hours / sem. (h))
LectureTutorialsLaboratoryProjectSeminar
1500750

 

 

 

Outcome:

Basic understanding of the principles of software engineering and practice in teaming skills. Experience in self-study of specific solutions in software engineering, preparation to assume positions of software designers and developers. Hands-on experience with teamwork, interpersonal communication, design and problem-solving.

 

Content:

 

Fundamentals and application of software engineering principles and techniques: the problems of requirements analysis, proposal formulation, high-level design, software architecture detailed design, implementation, testing, program interfacing, and ethical considerations as carried out in a team setting. Concepts will be applied in a team-based project with team oral presentations and written deliverables. Project assignments will combine seminar and laboratory meetings, individual and team work to design and implement working software systems.

 

Literature:


1. H. van Vliet, Software Engineering: Principles and Practice, 3rd Edition
2. UC Berkeley WEBS Project, nesC: A Programming Language for Deeply Networked Systems

3. W. Weber, J.M. Rabaey, E. Aarts (Eds.), Ambient Intelligence
4.
N. Bulusu and S. Jha (Eds.), Wireless Sensor Networks: A Systems Perspective