Informações da Disciplina

 Preparar para impressão 

Júpiter - Sistema de Gestão Acadêmica da Pró-Reitoria de Graduação


Faculdade de Economia, Administração, Contabilidade e Atuária
 
Contabilidade e Atuária
 
Disciplina: EAC0173 - Logic and Programming in Business

Créditos Aula: 2
Créditos Trabalho: 0
Carga Horária Total: 30 h
Tipo: Semestral
Ativação: 01/01/2022 Desativação:

Objetivos
Course Brief
In a world of ever increasing data and information overload, organizations cannot afford to bypass strong and legitimate computational solutions to boost quality decision-making. Big data, business analytics, data mining, cloud services, distributed processing, or business intelligence are just examples of current topics. The interface between technical computing and business acumen has long been object of study, with both extremes yielding sound payoffs. However, greater payoff tends to be achieved with a blended approach (usually as a result of well-formed teams). In order to perform at the optimal level, team members must step into the “other” area (out of comfort zone). This course is designed to help students with little or no prior knowledge in computer programming, who are interested in learning about logic and programming in the object-oriented paradigm, using Python (a current and relevant language) and C (a powerful and imperative computer language). 

Course Goals and Learning Objectives
In this course students will learn basic concepts in computer programming with emphasis on business. The goal is to help students experience a sound learning environment to develop programming skills in C and Python interacting with databases, to better perform in business. 
Upon successful conclusion of this course, students will be able to: 
1. Develop an attitude towards decision, information, data, systems, and computers, based on a critical view of the new business environment and intensified knowledge economy; 
2. Comprehend how problem-solving and data analytics evolved throughout time; 
3. Discuss programming in a stimulating fashion, beyond its mechanics, aiming at attracting even more talented people to this track; 
4. Analyze problems in light of object-oriented programming; 
5.Comprehend C and Python languages, including variables, expressions, files, flow statements, loop statements, functions, classes, methods, and modules; 
6. Comprehend database concepts and integration, SQL servers/clients, SQL statements; 
7. Apply solutions, mostly in Python, to solve statistical and graphical representation of datasets; 
8. Apply solutions, mostly in Python, to selected business problems.

 
Docente(s) Responsável(eis)
73235 - Edgard Bruno Cornacchione Junior
 
Programa Resumido
1.	INTRODUCTION TO PROGRAMING IN BUSINESS 
2.	C, PYTHON AND THE OPERATIONAL ENVIRONMENT 
3.	VARIABLES, DATA TYPES, ARRAYS, OPERATORS, AND EXPRESSIONS 
4.	PROGRAMS AND FILES 
5.	FLOW CONTROL 
6.	LOOP CONTROL 
7.	FUNCTIONS, PARAMETERS AND RETURN VALUES 
8.	CLASSES, OBJECTS, ATTRIBUTES AND METHODS 
9.	LIBRARIES, MODULES AND PACKAGES 
10.	STATISTICS AND GRAPHICAL REPRESENTATIONS 
11.	DATABASES AND QUERIES 
12.	OPTIMIZATION WITH EXTENSIONS AND COMPILERS
 
Programa
1. INTRODUCTION TO PROGRAMING IN BUSINESS ORGANIZATIONS
1.1.	Knowledge economy, decision challenges, relevance of coding, job postings, future of business. 
1.2.	Problem-solving, structured/unstructured decisions, data, and analytics. 

2. C, PYTHON AND THE OPERATIONAL ENVIRONMENT 
2.1. Logic, computer languages, evolution, purpose, compilers, and interpreters. 
2.2. C, Python. 
2.3. PyCharm. 
2.4. Pytonista. 
2.5. Trinket.io. 
2.6. TutorialsPoint.com/CodingGround. 

3. VARIABLES, DATA TYPES, ARRAYS, OPERATORS, AND EXPRESSIONS 
3.1. Constants, variables, data types. 
3.2. Declarations. 
3.3. Create and manipulate. 
3.4. Operators and expressions. 
3.5. Arrays and operations. 
3.6. Protocol for variable names. 

4. PROGRAMS AND FILES 
4.1. Text editors and GUI programming environments. 
4.2. Input/output control. 
4.3. Persistent data. 
4.4. Managing files (OS). 

5. FLOW CONTROL 
5.1. If / Elif / Else statement. 
5.2. Switch. 
5.3. Examples. 

6. LOOP CONTROL 
6.1. For / Else statement. 
6.2. While / Else statement. 
6.3. Infinite Loop. 
6.4. Break/Continue. 
6.5. Examples. 

7. FUNCTIONS, PARAMETERS AND RETURN VALUES 
7.1. Logic, optimization, clarity, and performance. 
7.2. Reuse. 
7.3. Local / Global scope. 

8. CLASSES, OBJECTS, ATTRIBUTES AND METHODS 
8.1. Definition, uses, implementation, and examples. 

9. LIBRARIES, MODULES AND PACKAGES 
9.1. Concept. 
9.2. Flexible and extensible attributes of Python. 
9.3. Import Statement. 
9.4. Python Library Reference. 
9.5. Date / Time. 
9.6. Random. 
9.7. Financial examples (Numpy). 

10. STATISTICS AND GRAPHICAL REPRESENTATIONS 
10.1. Statistics examples (Scipy) 
10.2. Graphical examples (Matplotlib) 

11. DATABASES AND QUERIES
11.1. Databases, tables, views, procedures. 
11.2. Normalization. SQL statements. 
11.3. NoSQL paradigm, JSON. 
11.4. Multiple access control. 
11.5. Connections, Client/Server. 
11.6. Pandas, SQLite3, MYSQL. 

12. OPTIMIZATION WITH EXTENSIONS AND COMPILERS 
12.1. py2app, py2exe, pyInstaller. 
12.2. Cython. 
12.3. GCC.
 
Avaliação
     
Método
LEARNING ASSESSMENT As learning strategy, we will use active lectures (laboratory), short videos, readings, quizzes, peer evaluation and programming assignments targeting computing techniques in business areas. To improve knowledge in this field, participants will prepare short programs and evaluate programs prepared by their peers. Upon completion of this course students will have developed a valuable skill: introductory, but functional, comprehension of C, Python and SQL-databases to better perform in organizations in light of the aforementioned business scenario. According to the course focus, a student-centered approach is adopted based on the experiential model. A combination of conceptual and practical application of topics is present in all classes with lectures or videos to present content or instruction, followed by practical application in the computer laboratory or home assignments. The course is supported by Moodle (LMS at USP). There are various components to assessing participants, helping to create a more comprehensive understanding of student performance. The course adopts (a) program-exercises (with peer evaluation), (b) quizzes on discussed topics, (c) performance on exams, and (d) participation & surprise me! Next are the contributions of each assessment component (proportions) to the final grade of the participant: (a) Program-exercises (with peer evaluation) 25% (b) Quizzes on discussed topics 20% (c) Exams (Mid-term and Final) 40% (d) Participation & Surprise me! 15% DEVELOPED SKILLS AND ATTITUDES: The learning space proposed in this course tends to help students develop highly demanded skills such as communication (written and oral), critical thinking, and business-oriented logical thinking (algorithms). It will also help develop a positive attitude towards the application of computational thinking in the business area.
Critério
Criterion: Final evaluation will be expressed by a value between zero and ten (0 to 10). To pass the course, student must have a minimum value of 5 (five) and minimum attendance of 70%. Less than 70% of attendance will cause course failure, regardless of the value. Less than a value of three (3) will cause course failure, regardless of the attendance.).
Norma de Recuperação
Re-assessment: According to USP regulations, students above a minimum value of three (3) and bellow a value of five (5) will be offered a chance to take a re-assessment, in case they have reached the required minimum attendance level. The final grade will be calculated by the average between the first grade and re-assessment grade. To pass the course, student must have a minimum value of 5 (five) in the final grade after the re-assessment.
 
Bibliografia
     
MAIN BIBLIOGRAPHY:
Bailey, T. (2005). An introduction to C programming language and software design. U of Utah. Retrieved from http://www.eng.utah.edu/~bigham/ctext.pdf 
Borges, L. E. (2010). Python para desenvolvedores (2 ed.). Rio de Janeiro: Edição do autor. 
Ford, P. (2015). What is code? Bloomberg (June 11, 2015). Retrived from http://www.bloomberg.com/graphics/2015-paul-ford-what-is-code 
Kernighan, B. W. & Ritchie, D. M. (1988). The C programming language, 2nd ed. New Jersey/NY: Prentice Hall. 
Meyer, C. (2015). Should accounting students learn to code? Retrieved from https://www.aicpa.org/interestareas/accountingeducation/newsandpublications/pages/should-accounting-students-code.aspx. 
Swaroop, C. H. (2016). A byte of Python. Retrieved from http://swaroopch.com/notes/python. 

COMPLEMENTARY BIBLIOGRAPHY:
Downey, A. (2012). Think Python: How to think like a computer scientist. Needham, MA: Green Tea Press. Retrieved from http://greenteapress.com/thinkpython/thinkpython.pdf 
Matthes, E. (2012). Introduction to Python. Retrieved from http://www.introtopython.org. 
McKinney, W. (2016). Pandas: Powerful Python data analysis toolkit. Retrieved from http://pandas.pydata.org/pandas-docs/stable/pandas.pdf. 
McMillan, S. (?). C language tutorial. Drexel U. Retrieved from http://www.physics.drexel.edu/students/courses/Comp_Phys/General/C_basics/ 
Meyers, C. (2015). SQL introduction for Python programmers. Retrieved from http://www.openbookproject.net/py4fun/sql/sql.html. 
Reitz, K. (2016). Python guide documentation. Retrieved from https://media.readthedocs.org/pdf/python-docs/latest/python-docs.pdf. 
Rossum, G. (2016). Python tutorial (release 2.7.11). Python Software Foundation. Retrieved from https://docs.python.org/2/tutorial. 
Varoquaux, G., Gouillart, E., and Vahtras, O. (2015). Scipy lecture notes. Retrieved from http://www.scipy-lectures.org/_downloads/ScipyLectures.pdf
 

Clique para consultar os requisitos para EAC0173

Clique para consultar o oferecimento para EAC0173

Créditos | Fale conosco
© 1999 - 2024 - Superintendência de Tecnologia da Informação/USP